73 void addItem(
const char *first,
const char *
second,
109 const char *
url,
const char *anchor,
bool hasLink,
113 if (level2) key+= (
QCString)
"?" + level2;
174 bool level2Started=
FALSE;
175 for (;(f=ifli.current());++ifli)
189 if (level1!=lastLevel1)
191 if (level2Started) t <<
" </UL>" <<
endl;
208 if (level1 != nextLevel1)
216 t <<
" <LI><OBJECT type=\"text/sitemap\">";
219 t <<
"<param name=\"Name\" value=\"" <<
m_help->
recode(level1) <<
"\">" 226 t <<
" <LI><OBJECT type=\"text/sitemap\">";
229 t <<
"<param name=\"Name\" value=\"" <<
m_help->
recode(level1) <<
"\">" 234 t <<
" <LI><OBJECT type=\"text/sitemap\">";
235 t <<
"<param name=\"See Also\" value=\"" <<
m_help->
recode(level1) <<
"\">";
236 t <<
"<param name=\"Name\" value=\"" <<
m_help->
recode(level1) <<
"\">" 241 if (!level2Started && !level2.
isEmpty())
243 t <<
" <UL>" <<
endl;
246 else if (level2Started && level2.
isEmpty())
248 t <<
" </UL>" <<
endl;
253 t <<
" <LI><OBJECT type=\"text/sitemap\">";
256 t <<
"<param name=\"Name\" value=\"" <<
m_help->
recode(level2) <<
"\">" 259 lastLevel1 = level1.
copy();
261 if (level2Started) t <<
" </UL>" <<
endl;
306 if (!str) str =
"CP1250";
310 err(
"unsupported character conversion for CHM_INDEX_ENCODING: '%s'->'UTF-8'\n", str);
319 err(
"Could not open file %s for writing\n",fName.
data());
324 cts <<
"<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\">\n" 325 "<HTML><HEAD></HEAD><BODY>\n" 326 "<OBJECT type=\"text/site properties\">\n" 327 "<param name=\"FrameName\" value=\"right\">\n" 336 err(
"Could not open file %s for writing\n",fName.
data());
341 kts <<
"<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\">\n" 342 "<HTML><HEAD></HEAD><BODY>\n" 343 "<OBJECT type=\"text/site properties\">\n" 344 "<param name=\"FrameName\" value=\"right\">\n" 439 s_languageDict.insert(
"macedonian",
new QCString(
"0x042f Macedonian (Former Yugoslav Republic of Macedonia)"));
460 return "0x409 English (United States)";
480 t <<
"Compatibility=1.1\n" 481 "Full-text search=Yes\n" 482 "Contents file=index.hhc\n" 483 "Default Window=main\n" 484 "Default topic=" << indexName <<
"\n" 485 "Index file=index.hhk\n" 491 t <<
"[WINDOWS]" <<
endl;
506 "\"index.hhk\",\"" << indexName <<
"\",\"" <<
507 indexName <<
"\",,,,,0x23520,,0x70387e,,,,,,,,0" << endl <<
endl;
512 "\"index.hhk\",\"" << indexName <<
"\",\"" <<
513 indexName <<
"\",,,,,0x23520,,0x10387e,,,,,,,,0" << endl <<
endl;
516 t <<
"[FILES]" <<
endl;
532 err(
"Could not open file %s for writing\n",fName.
data());
579 int i;
for (i=0;i<
dc+1;i++)
cts <<
" ";
590 int i;
for (i=0;i<
dc;i++)
cts <<
" ";
598 int oSize = iSize*4+1;
600 size_t iLeft = iSize;
601 size_t oLeft = oSize;
608 output.
at(oSize)=
'\0';
645 int i;
for (i=0;i<
dc;i++)
cts <<
" ";
646 cts <<
"<LI><OBJECT type=\"text/sitemap\">";
650 if (file && (file[0]==
'!' || file[0]==
'^'))
652 cts <<
"<param name=\"";
653 if (file[0]==
'^')
cts <<
"URL";
else cts <<
"Local";
654 cts <<
"\" value=\"";
659 cts <<
"<param name=\"Local\" value=\"";
661 if (anchor)
cts <<
"#" << anchor;
665 cts <<
"<param name=\"ImageNumber\" value=\"";
675 cts <<
"</OBJECT>\n";
680 const char *sectionAnchor,
const char *
word)
684 static bool separateMemberPages =
Config_getBool(
"SEPARATE_MEMBER_PAGES");
692 if (context==0)
return;
698 QCString contRef = separateMemberPages ? cfname : cfiname;
void addContentsItem(bool isDir, const char *name, const char *ref, const char *file, const char *anchor, bool separateIndex, bool addToNavIndex, Definition *def)
The QRegExp class provides pattern matching using regular expressions or wildcards.
static QCString htmlFileExtension
void setDevice(QIODevice *)
size_t portable_iconv(void *cd, char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
QCString left(uint len) const
Simplified and optimized version of QTextStream.
int find(char c, int index=0, bool cs=TRUE) const
virtual QCString getOutputFileBase() const =0
void append(const char *key, const T *d)
QDict< void > indexFileDict
void setAutoDelete(bool val)
int portable_iconv_close(void *cd)
uint contains(const type *d) const
FileDef * getFileDef() const
static HtmlHelp * theInstance
const QCString & name() const
int qstricmp(const char *str1, const char *str2)
QCString convertToHtml(const char *s, bool keepEntities)
QCString right(uint len) const
void addIndexFile(const char *name)
void addImageFile(const char *)
void addIndexItem(Definition *context, MemberDef *md, const char *sectionAnchor, const char *title)
void append(const type *d)
A bunch of utility functions.
const char * data() const
void writeFields(FTextStream &t)
QCString recode(const QCString &s)
#define Config_getString(val)
HtmlHelpIndex(HtmlHelp *help)
static QDict< QCString > s_languageDict
void * portable_iconv_open(const char *tocode, const char *fromcode)
#define Config_getBool(val)
void err(const char *fmt,...)
The QFile class is an I/O device that operates on files.
static QCString field2URL(const IndexField *f, bool checkReversed)
GroupDef * getGroupDef() const
virtual QCString idLanguage()=0
QCString getOutputFileBase() const
void addItem(const char *first, const char *second, const char *url, const char *anchor, bool hasLink, bool reversed)
Translator * theTranslator
static QCString getLanguageString()
int compareValues(const IndexField *item1, const IndexField *item2) const
second_as<> second
Type of time stored in seconds, in double precision.
T * find(const char *key)
friend class HtmlHelpIndex
union ptb::content::word::word word
Portable versions of functions that are platform dependent.
QTextStream & endl(QTextStream &s)