Skip to main content

The HtmlGenerator Class Reference

Generator for HTML output. More...

Declaration

class HtmlGenerator { ... }

Included Headers

#include <src/htmlgen.h>

Base classes

classOutputGenerator

Base class for shared implementation for all output generators. More...

classOutputGenIntf

Abstract interface for output generators. More...

Public Constructors Index

HtmlGenerator ()
HtmlGenerator (const HtmlGenerator &)
HtmlGenerator (HtmlGenerator &&)=delete

Public Destructor Index

~HtmlGenerator ()

Public Operators Index

HtmlGenerator &operator= (const HtmlGenerator &)
HtmlGenerator &operator= (HtmlGenerator &&)=delete

Public Member Functions Index

voidclearBuffer ()
OutputTypetype () const override
std::unique_ptr< OutputGenIntf >clone () override
voidaddCodeGen (OutputCodeList &list) override
voidcleanup () override
voidwriteDoc (const IDocNodeAST *node, const Definition *, const MemberDef *, int id) override
voidstartFile (const QCString &name, const QCString &manName, const QCString &title, int id, int hierarchyLevel) override
voidendFile () override
voidwriteFooter (const QCString &navPath) override
voidwriteSearchInfo () override
voidstartIndexSection (IndexSection) override
voidendIndexSection (IndexSection) override
voidwritePageLink (const QCString &, bool) override
voidstartProjectNumber () override
voidendProjectNumber () override
voidwriteStyleInfo (int part) override
voidstartTitleHead (const QCString &) override
voidendTitleHead (const QCString &, const QCString &) override
voidstartParagraph (const QCString &classDef) override
voidendParagraph () override
voidwriteString (const QCString &text) override
voidstartIndexListItem () override
voidendIndexListItem () override
voidstartIndexList () override
voidendIndexList () override
voidstartIndexKey () override
voidendIndexKey () override
voidstartIndexValue (bool) override
voidendIndexValue (const QCString &, bool) override
voidstartItemList () override
voidendItemList () override
voidstartIndexItem (const QCString &ref, const QCString &file) override
voidendIndexItem (const QCString &ref, const QCString &file) override
voiddocify (const QCString &text) override
voidwriteObjectLink (const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name) override
voidstartTextLink (const QCString &file, const QCString &anchor) override
voidendTextLink () override
voidstartTypewriter () override
voidendTypewriter () override
voidstartGroupHeader (const QCString &, int) override
voidendGroupHeader (int) override
voidstartItemListItem () override
voidendItemListItem () override
voidstartMemberSections () override
voidendMemberSections () override
voidstartHeaderSection () override
voidendHeaderSection () override
voidstartMemberHeader (const QCString &, int) override
voidendMemberHeader () override
voidstartMemberSubtitle () override
voidendMemberSubtitle () override
voidstartMemberDocList () override
voidendMemberDocList () override
voidstartMemberList () override
voidendMemberList () override
voidstartInlineHeader () override
voidendInlineHeader () override
voidstartAnonTypeScope (int) override
voidendAnonTypeScope (int) override
voidstartMemberItem (const QCString &anchor, MemberItemType, const QCString &inheritId) override
voidendMemberItem (MemberItemType) override
voidstartMemberTemplateParams () override
voidendMemberTemplateParams (const QCString &anchor, const QCString &inheritId) override
voidstartCompoundTemplateParams () override
voidendCompoundTemplateParams () override
voidstartMemberGroupHeader (const QCString &, bool) override
voidendMemberGroupHeader () override
voidstartMemberGroupDocs () override
voidendMemberGroupDocs () override
voidstartMemberGroup () override
voidendMemberGroup (bool) override
voidinsertMemberAlign (bool) override
voidinsertMemberAlignLeft (MemberItemType, bool) override
voidstartMemberDescription (const QCString &anchor, const QCString &inheritId, bool typ) override
voidendMemberDescription () override
voidstartMemberDeclaration () override
voidendMemberDeclaration (const QCString &anchor, const QCString &inheritId) override
voidwriteInheritedSectionTitle (const QCString &id, const QCString &ref, const QCString &file, const QCString &anchor, const QCString &title, const QCString &name) override
voidwriteRuler () override
voidwriteAnchor (const QCString &, const QCString &name) override
voidstartEmphasis () override
voidendEmphasis () override
voidstartBold () override
voidendBold () override
voidstartDescForItem () override
voidendDescForItem () override
voidlineBreak (const QCString &style) override
voidwriteChar (char c) override
voidstartMemberDoc (const QCString &clName, const QCString &memName, const QCString &anchor, const QCString &title, int memCount, int memTotal, bool showInline) override
voidendMemberDoc (bool) override
voidstartDoxyAnchor (const QCString &fName, const QCString &manName, const QCString &anchor, const QCString &name, const QCString &args) override
voidendDoxyAnchor (const QCString &fName, const QCString &anchor) override
voidaddLabel (const QCString &, const QCString &) override
voidwriteLatexSpacing () override
voidwriteStartAnnoItem (const QCString &type, const QCString &file, const QCString &path, const QCString &name) override
voidstartCenter () override
voidendCenter () override
voidstartSmall () override
voidendSmall () override
voidstartExamples () override
voidendExamples () override
voidstartSection (const QCString &, const QCString &, SectionType) override
voidendSection (const QCString &, SectionType) override
voidaddIndexItem (const QCString &, const QCString &) override
voidstartIndent () override
voidendIndent () override
voidwriteSynopsis () override
voidstartClassDiagram () override
voidendClassDiagram (const ClassDiagram &, const QCString &, const QCString &) override
voidstartPageRef () override
voidendPageRef (const QCString &, const QCString &) override
voidstartQuickIndices () override
voidendQuickIndices () override
voidwriteSplitBar (const QCString &name, const QCString &allMembersFile) override
voidwriteNavigationPath (const QCString &s) override
voidwriteLogo () override
voidwriteQuickLinks (HighlightedItem hli, const QCString &file, bool extraTabs) override
voidwriteSummaryLink (const QCString &file, const QCString &anchor, const QCString &title, bool first) override
voidwritePageOutline () override
voidstartContents () override
voidendContents () override
voidstartPageDoc (const QCString &pageTitle) override
voidendPageDoc () override
voidwriteNonBreakableSpace (int) override
voidstartDescTable (const QCString &title, const bool hasInits) override
voidendDescTable () override
voidstartDescTableRow () override
voidendDescTableRow () override
voidstartDescTableTitle () override
voidendDescTableTitle () override
voidstartDescTableInit () override
voidendDescTableInit () override
voidstartDescTableData () override
voidendDescTableData () override
voidstartDotGraph () override
voidendDotGraph (DotClassGraph &g) override
voidstartInclDepGraph () override
voidendInclDepGraph (DotInclDepGraph &g) override
voidstartGroupCollaboration () override
voidendGroupCollaboration (DotGroupCollaboration &g) override
voidstartCallGraph () override
voidendCallGraph (DotCallGraph &g) override
voidstartDirDepGraph () override
voidendDirDepGraph (DotDirDeps &g) override
voidwriteGraphicalHierarchy (DotGfxHierarchyTable &g) override
voidstartTextBlock (bool) override
voidendTextBlock (bool) override
voidlastIndexPage () override
voidstartMemberDocPrefixItem () override
voidendMemberDocPrefixItem () override
voidstartMemberDocName (bool) override
voidendMemberDocName () override
voidstartParameterType (bool first, const QCString &key) override
voidendParameterType () override
voidstartParameterName (bool) override
voidendParameterName () override
voidstartParameterExtra () override
voidendParameterExtra (bool last, bool emptyList, bool closeBracket) override
voidstartParameterDefVal (const char *sep) override
voidendParameterDefVal () override
voidstartParameterList (bool) override
voidendParameterList () override
voidexceptionEntry (const QCString &, bool) override
voidstartConstraintList (const QCString &) override
voidstartConstraintParam () override
voidendConstraintParam () override
voidstartConstraintType () override
voidendConstraintType () override
voidstartConstraintDocs () override
voidendConstraintDocs () override
voidendConstraintList () override
voidstartMemberDocSimple (bool) override
voidendMemberDocSimple (bool) override
voidstartInlineMemberType () override
voidendInlineMemberType () override
voidstartInlineMemberName () override
voidendInlineMemberName () override
voidstartInlineMemberDoc () override
voidendInlineMemberDoc () override
voidstartLabels () override
voidwriteLabel (const QCString &l, bool isLast) override
voidendLabels () override
voidstartLocalToc (int level) override
voidendLocalToc () override
voidstartTocEntry (const SectionInfo *si) override
voidendTocEntry (const SectionInfo *si) override
voidstartPlainFile (const QCString &name) override
voidendPlainFile () override

Private Member Functions Index

voidstartTitle ()
voidendTitle ()
voiddocify_ (const QCString &text, bool inHtmlComment)

Private Member Attributes Index

QCStringm_lastTitle
QCStringm_lastFile
QCStringm_relPath
intm_sectionCount = 0
boolm_emptySection = false
std::unique_ptr< OutputCodeList >m_codeList
HtmlCodeGenerator *m_codeGen = nullptr
intm_pageOutlineIndent = 0
TocStatem_tocState

Public Static Functions Index

static voidinit ()
static voidwriteStyleSheetFile (TextStream &t)
static voidwriteHeaderFile (TextStream &t, const QCString &cssname)
static voidwriteFooterFile (TextStream &t)
static voidwriteTabData ()

Additional initialization after indices have been created. More...

static voidwriteSearchInfoStatic (TextStream &t, const QCString &relPath)
static voidwriteSearchData (const QCString &dir)
static voidwriteSearchPage ()
static voidwriteExternalSearchPage ()
static QCStringwriteLogoAsString (const QCString &path)
static QCStringwriteSplitBarAsString (const QCString &name, const QCString &relpath, const QCString &allMembersFile)
static QCStringgetMathJaxMacros ()
static QCStringgetNavTreeCss ()

Private Static Functions Index

static voidwritePageFooter (TextStream &t, const QCString &, const QCString &, const QCString &)

Description

Generator for HTML output.

Definition at line 95 of file htmlgen.h.

Public Constructors

HtmlGenerator()

HtmlGenerator::HtmlGenerator ()

Declaration at line 98 of file htmlgen.h, definition at line 1090 of file htmlgen.cpp.

1091 : OutputGenerator(Config_getString(HTML_OUTPUT))
1092 , m_codeList(std::make_unique<OutputCodeList>())
1093{
1094 //printf("%p:HtmlGenerator()\n",(void*)this);
1096}

References Config_getString, m_codeGen, m_codeList, OutputGenerator::m_t and OutputGenerator::OutputGenerator.

Referenced by HtmlGenerator, HtmlGenerator, operator= and operator=.

HtmlGenerator()

HtmlGenerator::HtmlGenerator (const HtmlGenerator & og)

Declaration at line 99 of file htmlgen.h, definition at line 1098 of file htmlgen.cpp.

1099{
1100 //printf("%p:HtmlGenerator(copy %p)\n",(void*)this,(void*)&og);
1101 m_codeList = std::make_unique<OutputCodeList>(*og.m_codeList);
1103 m_codeGen->setTextStream(&m_t);
1106 m_relPath = og.m_relPath;
1109}

References Html, HtmlGenerator, m_codeGen, m_codeList, OutputGenerator::m_dir, m_emptySection, m_lastFile, m_lastTitle, m_relPath, m_sectionCount, OutputGenerator::m_t and OutputGenerator::OutputGenerator.

HtmlGenerator()

HtmlGenerator::HtmlGenerator (HtmlGenerator &&)
delete

Definition at line 101 of file htmlgen.h.

Reference HtmlGenerator.

Public Destructor

~HtmlGenerator()

HtmlGenerator::~HtmlGenerator ()

Definition at line 103 of file htmlgen.h.

Reference OutputGenerator::dir.

Public Operators

operator=()

HtmlGenerator & HtmlGenerator::operator= (const HtmlGenerator & og)

Declaration at line 100 of file htmlgen.h, definition at line 1111 of file htmlgen.cpp.

1112{
1113 //printf("%p:HtmlGenerator(copy assign %p)\n",(void*)this,(void*)&og);
1114 if (this!=&og)
1115 {
1116 m_dir = og.m_dir;
1117 m_codeList = std::make_unique<OutputCodeList>(*og.m_codeList);
1119 m_codeGen->setTextStream(&m_t);
1122 m_relPath = og.m_relPath;
1125 }
1126 return *this;
1127}

References Html, HtmlGenerator, m_codeGen, m_codeList, OutputGenerator::m_dir, m_emptySection, m_lastFile, m_lastTitle, m_relPath, m_sectionCount and OutputGenerator::m_t.

operator=()

HtmlGenerator & HtmlGenerator::operator= (HtmlGenerator &&)
delete

Definition at line 102 of file htmlgen.h.

Reference HtmlGenerator.

Public Member Functions

addCodeGen()

void HtmlGenerator::addCodeGen (OutputCodeList & list)
virtual

Declaration at line 124 of file htmlgen.h, definition at line 1131 of file htmlgen.cpp.

References OutputCodeList::add and m_codeGen.

addIndexItem()

void HtmlGenerator::addIndexItem (const QCString &, const QCString &)
virtual

Declaration at line 242 of file htmlgen.h, definition at line 2548 of file htmlgen.cpp.

2549{
2550}

addLabel()

void HtmlGenerator::addLabel (const QCString &, const QCString &)
virtual

Declaration at line 230 of file htmlgen.h, definition at line 1658 of file htmlgen.cpp.

1659{
1660}

cleanup()

void HtmlGenerator::cleanup ()
virtual

Declaration at line 125 of file htmlgen.h, definition at line 1275 of file htmlgen.cpp.

1276{
1277 QCString dname = Config_getString(HTML_OUTPUT);
1278 Dir d(dname.str());
1279 clearSubDirs(d);
1280}

References clearSubDirs, Config_getString and QCString::str.

clearBuffer()

void HtmlGenerator::clearBuffer ()

Definition at line 118 of file htmlgen.h.

clone()

std::unique_ptr< OutputGenIntf > HtmlGenerator::clone ()
inline virtual

Definition at line 123 of file htmlgen.h.

123 std::unique_ptr<OutputGenIntf> clone() override { return std::make_unique<HtmlGenerator>(*this); }

docify()

void HtmlGenerator::docify (const QCString & text)
virtual

Declaration at line 157 of file htmlgen.h, definition at line 1854 of file htmlgen.cpp.

1855{
1856 docify_(str,FALSE);
1857}

References docify_ and FALSE.

Referenced by startExamples, startMemberDoc, startParameterDefVal, writeChar, writeObjectLink and writeStartAnnoItem.

endAnonTypeScope()

void HtmlGenerator::endAnonTypeScope (int)
inline virtual

Definition at line 186 of file htmlgen.h.

186 void endAnonTypeScope(int) override {}

endBold()

void HtmlGenerator::endBold ()
inline virtual

Definition at line 217 of file htmlgen.h.

217 void endBold() override { m_t << "</b>"; }

Reference OutputGenerator::m_t.

endCallGraph()

endCenter()

void HtmlGenerator::endCenter ()
inline virtual

Definition at line 235 of file htmlgen.h.

235 void endCenter() override { m_t << "</center>\n"; }

Reference OutputGenerator::m_t.

endClassDiagram()

void HtmlGenerator::endClassDiagram (const ClassDiagram & d, const QCString & fileName, const QCString & name)
virtual

Declaration at line 247 of file htmlgen.h, definition at line 1978 of file htmlgen.cpp.

1979 const QCString &fileName,const QCString &name)
1980{
1985 TextStream tt;
1987 if (!tt.empty())
1988 {
1989 m_t << " <div class=\"center\">\n";
1990 m_t << " <img src=\"";
1991 m_t << m_relPath << fileName << ".png\" usemap=\"#" << convertToId(name);
1992 m_t << "_map\" alt=\"\"/>\n";
1993 m_t << " <map id=\"" << convertToId(name);
1994 m_t << "_map\" name=\"" << convertToId(name);
1995 m_t << "_map\">\n";
1996 m_t << tt.str();
1997 m_t << " </map>\n";
1998 m_t << "</div>";
1999 }
2000 else
2001 {
2002 m_t << " <div class=\"center\">\n";
2003 m_t << " <img src=\"";
2004 m_t << m_relPath << fileName << ".png\" alt=\"\"/>\n";
2005 m_t << " </div>";
2006 }
2009}

References convertToId, OutputGenerator::dir, TextStream::empty, endSectionContent, endSectionHeader, endSectionSummary, OutputGenerator::fileName, m_relPath, m_sectionCount, OutputGenerator::m_t, startSectionContent, startSectionSummary, TextStream::str and ClassDiagram::writeImage.

endCompoundTemplateParams()

void HtmlGenerator::endCompoundTemplateParams ()
virtual

Declaration at line 192 of file htmlgen.h, definition at line 2077 of file htmlgen.cpp.

2078{
2079 m_t << "</div>";
2080}

Reference OutputGenerator::m_t.

endConstraintDocs()

void HtmlGenerator::endConstraintDocs ()
virtual

Declaration at line 313 of file htmlgen.h, definition at line 3306 of file htmlgen.cpp.

3307{
3308 m_t << "</td></tr>\n";
3309}

Reference OutputGenerator::m_t.

endConstraintList()

void HtmlGenerator::endConstraintList ()
virtual

Declaration at line 314 of file htmlgen.h, definition at line 3311 of file htmlgen.cpp.

3312{
3313 m_t << "</table>\n";
3314 m_t << "</dd>\n";
3315 m_t << "</dl>\n";
3316 m_t << "</div>\n";
3317}

Reference OutputGenerator::m_t.

endConstraintParam()

void HtmlGenerator::endConstraintParam ()
virtual

Declaration at line 309 of file htmlgen.h, definition at line 3286 of file htmlgen.cpp.

3287{
3288 m_t << "</em></td>";
3289}

Reference OutputGenerator::m_t.

endConstraintType()

void HtmlGenerator::endConstraintType ()
virtual

Declaration at line 311 of file htmlgen.h, definition at line 3296 of file htmlgen.cpp.

3297{
3298 m_t << "</em></td>";
3299}

Reference OutputGenerator::m_t.

endContents()

void HtmlGenerator::endContents ()
virtual

Declaration at line 259 of file htmlgen.h, definition at line 3048 of file htmlgen.cpp.

3049{
3050 m_t << "</div><!-- contents -->\n";
3051}

Reference OutputGenerator::m_t.

endDescForItem()

void HtmlGenerator::endDescForItem ()
inline virtual

Definition at line 219 of file htmlgen.h.

219 void endDescForItem() override { m_t << "</dd>\n"; }

Reference OutputGenerator::m_t.

endDescTable()

void HtmlGenerator::endDescTable ()
virtual

Declaration at line 265 of file htmlgen.h, definition at line 2565 of file htmlgen.cpp.

2566{
2567 m_t << "</table>\n";
2568}

Reference OutputGenerator::m_t.

endDescTableData()

void HtmlGenerator::endDescTableData ()
virtual

Declaration at line 273 of file htmlgen.h, definition at line 2605 of file htmlgen.cpp.

2606{
2607 m_t << "</td>";
2608}

Reference OutputGenerator::m_t.

endDescTableInit()

void HtmlGenerator::endDescTableInit ()
virtual

Declaration at line 271 of file htmlgen.h, definition at line 2595 of file htmlgen.cpp.

2596{
2597 m_t << "&#160;</td>";
2598}

Reference OutputGenerator::m_t.

endDescTableRow()

void HtmlGenerator::endDescTableRow ()
virtual

Declaration at line 267 of file htmlgen.h, definition at line 2575 of file htmlgen.cpp.

2576{
2577 m_t << "</tr>\n";
2578}

Reference OutputGenerator::m_t.

endDescTableTitle()

void HtmlGenerator::endDescTableTitle ()
virtual

Declaration at line 269 of file htmlgen.h, definition at line 2585 of file htmlgen.cpp.

2586{
2587 m_t << "&#160;</td>";
2588}

Reference OutputGenerator::m_t.

endDirDepGraph()

endDotGraph()

void HtmlGenerator::endDotGraph (DotClassGraph & g)
virtual

Declaration at line 276 of file htmlgen.h, definition at line 2401 of file htmlgen.cpp.

2402{
2403 bool generateLegend = Config_getBool(GENERATE_LEGEND);
2404 bool umlLook = Config_getBool(UML_LOOK);
2409
2411 if (generateLegend && !umlLook)
2412 {
2413 QCString url = m_relPath+"graph_legend"+Doxygen::htmlFileExtension;
2414 m_t << "<center><span class=\"legend\">[";
2415 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
2416 m_t << "<a ";
2417 if (generateTreeView) m_t << "target=\"top\" ";
2418 m_t << "href=\"";
2419 if (!url.isEmpty()) m_t << url;
2420 m_t << "\">";
2421 m_t << theTranslator->trLegend();
2422 m_t << "</a>";
2423 m_t << "]</span></center>";
2424 }
2425
2428}

References BITMAP, Config_getBool, OutputGenerator::dir, endSectionContent, endSectionHeader, endSectionSummary, OutputGenerator::fileName, Html, Doxygen::htmlFileExtension, QCString::isEmpty, m_relPath, m_sectionCount, OutputGenerator::m_t, startSectionContent, startSectionSummary, theTranslator, TRUE and DotClassGraph::writeGraph.

endDoxyAnchor()

void HtmlGenerator::endDoxyAnchor (const QCString & fName, const QCString & anchor)
virtual

Declaration at line 229 of file htmlgen.h, definition at line 1654 of file htmlgen.cpp.

1655{
1656}

endEmphasis()

void HtmlGenerator::endEmphasis ()
inline virtual

Definition at line 215 of file htmlgen.h.

215 void endEmphasis() override { m_t << "</em>"; }

Reference OutputGenerator::m_t.

endExamples()

void HtmlGenerator::endExamples ()
virtual

Declaration at line 239 of file htmlgen.h, definition at line 2617 of file htmlgen.cpp.

2618{
2619 m_t << "</dl>\n";
2620}

Reference OutputGenerator::m_t.

endFile()

void HtmlGenerator::endFile ()
virtual

Declaration at line 128 of file htmlgen.h, definition at line 1561 of file htmlgen.cpp.

1562{
1563 endPlainFile();
1564}

Reference endPlainFile.

endGroupCollaboration()

endGroupHeader()

void HtmlGenerator::endGroupHeader (int extraIndentLevel)
virtual

Declaration at line 167 of file htmlgen.h, definition at line 1807 of file htmlgen.cpp.

1807void HtmlGenerator::endGroupHeader(int extraIndentLevel)
1808{
1809 if (extraIndentLevel==2)
1810 {
1811 m_t << "</h4>\n";
1812 }
1813 else if (extraIndentLevel==1)
1814 {
1815 m_t << "</h3>\n";
1816 }
1817 else
1818 {
1819 m_t << "</h2>\n";
1820 }
1821}

Reference OutputGenerator::m_t.

endHeaderSection()

void HtmlGenerator::endHeaderSection ()
virtual

Declaration at line 174 of file htmlgen.h, definition at line 3348 of file htmlgen.cpp.

3349{
3350 m_t << "</div><!--header-->\n";
3351}

Reference OutputGenerator::m_t.

endInclDepGraph()

endIndent()

void HtmlGenerator::endIndent ()
virtual

Declaration at line 244 of file htmlgen.h, definition at line 2542 of file htmlgen.cpp.

2543{
2544 DBG_HTML(m_t << "<!-- endIndent -->\n";)
2545 m_t << "\n</div>\n" << "</div>\n";
2546}

References DBG_HTML and OutputGenerator::m_t.

endIndexItem()

void HtmlGenerator::endIndexItem (const QCString & ref, const QCString & file)
virtual

Declaration at line 156 of file htmlgen.h, definition at line 1720 of file htmlgen.cpp.

1721{
1722 //printf("HtmlGenerator::endIndexItem(%s,%s,%s)\n",ref,f,name);
1723 if (!ref.isEmpty() || !f.isEmpty())
1724 {
1725 m_t << "</a>";
1726 }
1727 else
1728 {
1729 m_t << "</b>";
1730 }
1731}

References QCString::isEmpty and OutputGenerator::m_t.

endIndexKey()

void HtmlGenerator::endIndexKey ()
virtual

Declaration at line 150 of file htmlgen.h, definition at line 2205 of file htmlgen.cpp.

2206{
2207 //m_t << "</td>";
2208}

endIndexList()

void HtmlGenerator::endIndexList ()
virtual

Declaration at line 148 of file htmlgen.h, definition at line 2195 of file htmlgen.cpp.

2196{
2197 m_t << "</table>\n";
2198}

Reference OutputGenerator::m_t.

endIndexListItem()

void HtmlGenerator::endIndexListItem ()
virtual

Declaration at line 146 of file htmlgen.h, definition at line 1685 of file htmlgen.cpp.

1686{
1687 m_t << "</li>\n";
1688}

Reference OutputGenerator::m_t.

endIndexSection()

void HtmlGenerator::endIndexSection (IndexSection)
inline virtual

Definition at line 134 of file htmlgen.h.

134 void endIndexSection(IndexSection) override {}

endIndexValue()

void HtmlGenerator::endIndexValue (const QCString &, bool)
virtual

Declaration at line 152 of file htmlgen.h, definition at line 2215 of file htmlgen.cpp.

2216{
2217 //m_t << "</td></tr>\n";
2218}

endInlineHeader()

void HtmlGenerator::endInlineHeader ()
virtual

Declaration at line 184 of file htmlgen.h, definition at line 3363 of file htmlgen.cpp.

3364{
3365 m_t << "</h3></td></tr>\n";
3366}

Reference OutputGenerator::m_t.

endInlineMemberDoc()

void HtmlGenerator::endInlineMemberDoc ()
virtual

Declaration at line 323 of file htmlgen.h, definition at line 3413 of file htmlgen.cpp.

3414{
3415 DBG_HTML(m_t << "<!-- endInlineMemberDoc -->\n";)
3416 m_t << "</td></tr>\n";
3417}

References DBG_HTML and OutputGenerator::m_t.

endInlineMemberName()

void HtmlGenerator::endInlineMemberName ()
virtual

Declaration at line 321 of file htmlgen.h, definition at line 3401 of file htmlgen.cpp.

3402{
3403 DBG_HTML(m_t << "<!-- endInlineMemberName -->\n";)
3404 m_t << "</td>\n";
3405}

References DBG_HTML and OutputGenerator::m_t.

endInlineMemberType()

void HtmlGenerator::endInlineMemberType ()
virtual

Declaration at line 319 of file htmlgen.h, definition at line 3389 of file htmlgen.cpp.

3390{
3391 DBG_HTML(m_t << "<!-- endInlineMemberType -->\n";)
3392 m_t << "</td>\n";
3393}

References DBG_HTML and OutputGenerator::m_t.

endItemList()

void HtmlGenerator::endItemList ()
inline virtual

Definition at line 154 of file htmlgen.h.

154 void endItemList() override { m_t << "</ul>\n"; }

Reference OutputGenerator::m_t.

endItemListItem()

void HtmlGenerator::endItemListItem ()
inline virtual

Definition at line 169 of file htmlgen.h.

169 void endItemListItem() override { m_t << "</li>\n"; }

Reference OutputGenerator::m_t.

endLabels()

void HtmlGenerator::endLabels ()
virtual

Declaration at line 327 of file htmlgen.h, definition at line 3465 of file htmlgen.cpp.

3466{
3467 DBG_HTML(m_t << "<!-- endLabels -->\n";)
3468 m_t << "</span>";
3469}

References DBG_HTML and OutputGenerator::m_t.

endLocalToc()

void HtmlGenerator::endLocalToc ()
virtual

Declaration at line 330 of file htmlgen.h, definition at line 3565 of file htmlgen.cpp.

3566{
3567 if (m_tocState.level > m_tocState.maxLevel) m_tocState.level = m_tocState.maxLevel;
3568 while (m_tocState.level>0)
3569 {
3570 m_tocState.decIndent(m_t,"</li>");
3571 m_tocState.decIndent(m_t,"</ul>");
3572 m_tocState.level--;
3573 }
3574 m_t << "</div>\n";
3575}

References OutputGenerator::m_t and m_tocState.

endMemberDeclaration()

void HtmlGenerator::endMemberDeclaration (const QCString & anchor, const QCString & inheritId)
virtual

Declaration at line 206 of file htmlgen.h, definition at line 3540 of file htmlgen.cpp.

3540void HtmlGenerator::endMemberDeclaration(const QCString &anchor,const QCString &inheritId)
3541{
3542}

endMemberDescription()

void HtmlGenerator::endMemberDescription ()
virtual

Declaration at line 204 of file htmlgen.h, definition at line 2119 of file htmlgen.cpp.

2120{
2121 DBG_HTML(m_t << "<!-- endMemberDescription -->\n")
2122 m_t << "<br /></td></tr>\n";
2123}

References DBG_HTML and OutputGenerator::m_t.

endMemberDoc()

void HtmlGenerator::endMemberDoc (bool hasArgs)
virtual

Declaration at line 225 of file htmlgen.h, definition at line 2385 of file htmlgen.cpp.

2386{
2387 DBG_HTML(m_t << "<!-- endMemberDoc -->\n";)
2388 if (!hasArgs)
2389 {
2390 m_t << " </tr>\n";
2391 }
2392 m_t << " </table>\n";
2393 // m_t << "</div>\n";
2394}

References DBG_HTML and OutputGenerator::m_t.

endMemberDocList()

void HtmlGenerator::endMemberDocList ()
virtual

Declaration at line 180 of file htmlgen.h, definition at line 2225 of file htmlgen.cpp.

2226{
2227 DBG_HTML(m_t << "<!-- endMemberDocList -->\n";)
2228}

References DBG_HTML and OutputGenerator::m_t.

endMemberDocName()

void HtmlGenerator::endMemberDocName ()
virtual

Declaration at line 294 of file htmlgen.h, definition at line 2269 of file htmlgen.cpp.

2270{
2271 DBG_HTML(m_t << "<!-- endMemberDocName -->\n";)
2272 m_t << "</td>\n";
2273}

References DBG_HTML and OutputGenerator::m_t.

endMemberDocPrefixItem()

void HtmlGenerator::endMemberDocPrefixItem ()
virtual

Declaration at line 292 of file htmlgen.h, definition at line 2253 of file htmlgen.cpp.

2254{
2255 DBG_HTML(m_t << "<!-- endMemberDocPrefixItem -->\n";)
2256 m_t << "</div>\n";
2257}

References DBG_HTML and OutputGenerator::m_t.

endMemberDocSimple()

void HtmlGenerator::endMemberDocSimple (bool)
virtual

Declaration at line 317 of file htmlgen.h, definition at line 3377 of file htmlgen.cpp.

3378{
3379 DBG_HTML(m_t << "<!-- endMemberDocSimple -->\n";)
3380 m_t << "</table>\n";
3381}

References DBG_HTML and OutputGenerator::m_t.

endMemberGroup()

void HtmlGenerator::endMemberGroup (bool)
virtual

Declaration at line 199 of file htmlgen.h, definition at line 2531 of file htmlgen.cpp.

2532{
2533}

endMemberGroupDocs()

void HtmlGenerator::endMemberGroupDocs ()
virtual

Declaration at line 197 of file htmlgen.h, definition at line 2522 of file htmlgen.cpp.

2523{
2524 m_t << "</div></td></tr>\n";
2525}

Reference OutputGenerator::m_t.

endMemberGroupHeader()

void HtmlGenerator::endMemberGroupHeader ()
virtual

Declaration at line 195 of file htmlgen.h, definition at line 2512 of file htmlgen.cpp.

2513{
2514 m_t << "</div></td></tr>\n";
2515}

Reference OutputGenerator::m_t.

endMemberHeader()

void HtmlGenerator::endMemberHeader ()
virtual

Declaration at line 176 of file htmlgen.h, definition at line 2167 of file htmlgen.cpp.

2168{
2169 DBG_HTML(m_t << "<!-- endMemberHeader -->\n")
2170 m_t << "</h2></td></tr>\n";
2171}

References DBG_HTML and OutputGenerator::m_t.

endMemberItem()

void HtmlGenerator::endMemberItem (MemberItemType type)
virtual

Declaration at line 188 of file htmlgen.h, definition at line 2048 of file htmlgen.cpp.

2049{
2051 {
2052 insertMemberAlign(false);
2053 }
2054 m_t << "</td></tr>\n";
2055}

References OutputGenerator::AnonymousStart, insertMemberAlign, OutputGenerator::m_t and type.

endMemberList()

void HtmlGenerator::endMemberList ()
virtual

Declaration at line 182 of file htmlgen.h, definition at line 2017 of file htmlgen.cpp.

2018{
2019 DBG_HTML(m_t << "<!-- endMemberList -->\n")
2020}

References DBG_HTML and OutputGenerator::m_t.

endMemberSections()

void HtmlGenerator::endMemberSections ()
virtual

Declaration at line 172 of file htmlgen.h, definition at line 2133 of file htmlgen.cpp.

2134{
2135 DBG_HTML(m_t << "<!-- endMemberSections -->\n")
2136 if (!m_emptySection)
2137 {
2138 m_t << "</table>\n";
2139 }
2140}

References DBG_HTML, m_emptySection and OutputGenerator::m_t.

endMemberSubtitle()

void HtmlGenerator::endMemberSubtitle ()
virtual

Declaration at line 178 of file htmlgen.h, definition at line 2184 of file htmlgen.cpp.

2185{
2186 DBG_HTML(m_t << "<!-- endMemberSubtitle -->\n")
2187 m_t << "</td></tr>\n";
2188}

References DBG_HTML and OutputGenerator::m_t.

endMemberTemplateParams()

void HtmlGenerator::endMemberTemplateParams (const QCString & anchor, const QCString & inheritId)
virtual

Declaration at line 190 of file htmlgen.h, definition at line 2061 of file htmlgen.cpp.

2061void HtmlGenerator::endMemberTemplateParams(const QCString &anchor,const QCString &inheritId)
2062{
2063 m_t << "</td></tr>\n";
2064 m_t << "<tr class=\"memitem:" << convertToId(anchor);
2065 if (!inheritId.isEmpty())
2066 {
2067 m_t << " inherit " << inheritId;
2068 }
2069 m_t << " template\"><td class=\"memItemLeft\" align=\"right\" valign=\"top\">";
2070}

References convertToId, QCString::isEmpty and OutputGenerator::m_t.

endPageDoc()

void HtmlGenerator::endPageDoc ()
virtual

Declaration at line 261 of file htmlgen.h, definition at line 3058 of file htmlgen.cpp.

3059{
3060 m_t << "</div><!-- PageDoc -->\n";
3061}

Reference OutputGenerator::m_t.

endPageRef()

void HtmlGenerator::endPageRef (const QCString &, const QCString &)
inline virtual

Definition at line 249 of file htmlgen.h.

249 void endPageRef(const QCString &,const QCString &) override {}

endParagraph()

void HtmlGenerator::endParagraph ()
virtual

Declaration at line 143 of file htmlgen.h, definition at line 1670 of file htmlgen.cpp.

1671{
1672 m_t << "</p>\n";
1673}

Reference OutputGenerator::m_t.

endParameterDefVal()

void HtmlGenerator::endParameterDefVal ()
virtual

Declaration at line 302 of file htmlgen.h, definition at line 2354 of file htmlgen.cpp.

2355{
2356 m_t << "</span>";
2357}

Reference OutputGenerator::m_t.

endParameterExtra()

void HtmlGenerator::endParameterExtra (bool last, bool emptyList, bool closeBracket)
virtual

Declaration at line 300 of file htmlgen.h, definition at line 2323 of file htmlgen.cpp.

2323void HtmlGenerator::endParameterExtra(bool last,bool emptyList, bool closeBracket)
2324{
2325 DBG_HTML(m_t << "<!-- endParameterExtra -->\n";)
2326 if (last)
2327 {
2328 if (emptyList)
2329 {
2330 if (closeBracket) m_t << "</td><td>)";
2331 m_t << "</td>\n";
2332 m_t << " <td>";
2333 }
2334 else
2335 {
2336 m_t << "&#160;";
2337 if (closeBracket) m_t << ")";
2338 }
2339 }
2340 else
2341 {
2342 m_t << "</td>\n";
2343 m_t << " </tr>\n";
2344 }
2345}

References DBG_HTML and OutputGenerator::m_t.

endParameterList()

void HtmlGenerator::endParameterList ()
virtual

Declaration at line 304 of file htmlgen.h, definition at line 2359 of file htmlgen.cpp.

2360{
2361 DBG_HTML(m_t << "<!-- endParameterList -->\n";)
2362 m_t << "</td>\n";
2363 m_t << " </tr>\n";
2364}

References DBG_HTML and OutputGenerator::m_t.

endParameterName()

void HtmlGenerator::endParameterName ()
virtual

Declaration at line 298 of file htmlgen.h, definition at line 2312 of file htmlgen.cpp.

2313{
2314 DBG_HTML(m_t << "<!-- endParameterName -->\n";)
2315 m_t << "</em></span>";
2316}

References DBG_HTML and OutputGenerator::m_t.

endParameterType()

void HtmlGenerator::endParameterType ()
virtual

Declaration at line 296 of file htmlgen.h, definition at line 2300 of file htmlgen.cpp.

2301{
2302 DBG_HTML(m_t << "<!-- endParameterType -->\n";)
2303 m_t << "</td>";
2304}

References DBG_HTML and OutputGenerator::m_t.

endPlainFile()

void HtmlGenerator::endPlainFile ()
inline virtual

Definition at line 335 of file htmlgen.h.

Reference OutputGenerator::endPlainFile.

Referenced by endFile and writeStyleInfo.

endProjectNumber()

void HtmlGenerator::endProjectNumber ()
virtual

Declaration at line 137 of file htmlgen.h, definition at line 1571 of file htmlgen.cpp.

1572{
1573 m_t << "</h3>";
1574}

Reference OutputGenerator::m_t.

endQuickIndices()

void HtmlGenerator::endQuickIndices ()
virtual

Declaration at line 251 of file htmlgen.h, definition at line 2988 of file htmlgen.cpp.

2989{
2990 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
2991 m_t << "</div><!-- top -->\n";
2992 if (!generateTreeView)
2993 {
2994 m_t << "<div id=\"doc-content\">\n";
2995 }
2996}

References Config_getBool and OutputGenerator::m_t.

endSection()

void HtmlGenerator::endSection (const QCString &, SectionType type)
virtual

Declaration at line 241 of file htmlgen.h, definition at line 1839 of file htmlgen.cpp.

1840{
1841 switch(type.level())
1842 {
1843 case SectionType::Page: m_t << "</h1>"; break;
1844 case SectionType::Section: m_t << "</h2>"; break;
1845 case SectionType::Subsection: m_t << "</h3>"; break;
1846 case SectionType::Subsubsection: m_t << "</h4>"; break;
1847 case SectionType::Paragraph: m_t << "</h5>"; break;
1848 case SectionType::Subparagraph: m_t << "</h6>"; break;
1849 case SectionType::Subsubparagraph: m_t << "</h6>"; break;
1850 default: ASSERT(0); break;
1851 }
1852}

References ASSERT, OutputGenerator::m_t, SectionType::Page, SectionType::Paragraph, SectionType::Section, SectionType::Subparagraph, SectionType::Subsection, SectionType::Subsubparagraph, SectionType::Subsubsection and type.

endSmall()

void HtmlGenerator::endSmall ()
inline virtual

Definition at line 237 of file htmlgen.h.

237 void endSmall() override { m_t << "</small>\n"; }

Reference OutputGenerator::m_t.

endTextBlock()

void HtmlGenerator::endTextBlock (bool)
inline virtual

Definition at line 288 of file htmlgen.h.

288 void endTextBlock(bool) override { m_t << "</div>"; }

Reference OutputGenerator::m_t.

endTextLink()

void HtmlGenerator::endTextLink ()
virtual

Declaration at line 163 of file htmlgen.h, definition at line 1781 of file htmlgen.cpp.

1782{
1783 m_t << "</a>";
1784}

Reference OutputGenerator::m_t.

endTitleHead()

void HtmlGenerator::endTitleHead (const QCString &, const QCString &)
virtual

Declaration at line 140 of file htmlgen.h, definition at line 3342 of file htmlgen.cpp.

3343{
3344 endTitle();
3345 m_t << "</div>\n";
3346}

References endTitle and OutputGenerator::m_t.

endTocEntry()

void HtmlGenerator::endTocEntry (const SectionInfo * si)
virtual

Declaration at line 332 of file htmlgen.h, definition at line 3621 of file htmlgen.cpp.

3622{
3623 SectionType type = si->type();
3624 int nextLevel = type.level();
3625 if (type.isSection() && nextLevel<=m_tocState.maxLevel)
3626 {
3627 m_t << "</a>\n";
3628 m_tocState.inLi[nextLevel]=true;
3629 m_tocState.level = nextLevel;
3630 }
3631}

References OutputGenerator::m_t, m_tocState, type and SectionInfo::type.

endTypewriter()

void HtmlGenerator::endTypewriter ()
inline virtual

Definition at line 165 of file htmlgen.h.

165 void endTypewriter() override { m_t << "</code>"; }

Reference OutputGenerator::m_t.

exceptionEntry()

void HtmlGenerator::exceptionEntry (const QCString & prefix, bool closeBracket)
virtual

Declaration at line 305 of file htmlgen.h, definition at line 2366 of file htmlgen.cpp.

2366void HtmlGenerator::exceptionEntry(const QCString &prefix,bool closeBracket)
2367{
2368 DBG_HTML(m_t << "<!-- exceptionEntry -->\n";)
2369 if (!closeBracket)
2370 {
2371 m_t << "</td>\n";
2372 m_t << " </tr>\n";
2373 m_t << " <tr>\n";
2374 m_t << " <td align=\"right\">";
2375 }
2376 // colspan 2 so it gets both parameter type and parameter name columns
2377 if (!prefix.isEmpty())
2378 m_t << prefix << "</td><td>(</td><td colspan=\"2\">";
2379 else if (closeBracket)
2380 m_t << "&#160;)</td><td></td><td></td><td>";
2381 else
2382 m_t << "</td><td></td><td colspan=\"2\">";
2383}

References DBG_HTML, OutputGenerator::m_t and prefix.

insertMemberAlign()

void HtmlGenerator::insertMemberAlign (bool)
virtual

Declaration at line 201 of file htmlgen.h, definition at line 2082 of file htmlgen.cpp.

2083{
2084 DBG_HTML(m_t << "<!-- insertMemberAlign -->\n")
2085 m_t << "&#160;</td><td class=\"memItemRight\" valign=\"bottom\">";
2086}

References DBG_HTML and OutputGenerator::m_t.

Referenced by endMemberItem.

insertMemberAlignLeft()

void HtmlGenerator::insertMemberAlignLeft (MemberItemType type, bool initTag)
virtual

Declaration at line 202 of file htmlgen.h, definition at line 2088 of file htmlgen.cpp.

2089{
2090 if (!initTag) m_t << "&#160;</td>";
2091 switch (type)
2092 {
2093 case MemberItemType::Normal: m_t << "<td class=\"memItemLeft\" align=\"right\" valign=\"top\">"; break;
2094 case MemberItemType::AnonymousStart: m_t << "<td class=\"memItemLeft anon\">"; break;
2095 case MemberItemType::AnonymousEnd: m_t << "<td class=\"memItemLeft anonEnd\" valign=\"top\">"; break;
2096 case MemberItemType::Templated: m_t << "<td class=\"memTemplParams\" colspan=\"2\">"; break;
2097 }
2098}

References OutputGenerator::AnonymousEnd, OutputGenerator::AnonymousStart, OutputGenerator::m_t, OutputGenerator::Normal, OutputGenerator::Templated and type.

Referenced by startMemberItem.

lastIndexPage()

void HtmlGenerator::lastIndexPage ()
inline virtual

Definition at line 289 of file htmlgen.h.

289 void lastIndexPage() override {}

lineBreak()

void HtmlGenerator::lineBreak (const QCString & style)
virtual

Declaration at line 220 of file htmlgen.h, definition at line 3319 of file htmlgen.cpp.

3320{
3321 if (!style.isEmpty())
3322 {
3323 m_t << "<br class=\"" << style << "\" />\n";
3324 }
3325 else
3326 {
3327 m_t << "<br />\n";
3328 }
3329}

References QCString::isEmpty and OutputGenerator::m_t.

startAnonTypeScope()

void HtmlGenerator::startAnonTypeScope (int)
inline virtual

Definition at line 185 of file htmlgen.h.

185 void startAnonTypeScope(int) override {}

startBold()

void HtmlGenerator::startBold ()
inline virtual

Definition at line 216 of file htmlgen.h.

216 void startBold() override { m_t << "<b>"; }

Reference OutputGenerator::m_t.

startCallGraph()

void HtmlGenerator::startCallGraph ()
virtual

Declaration at line 281 of file htmlgen.h, definition at line 2466 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startCenter()

void HtmlGenerator::startCenter ()
inline virtual

Definition at line 234 of file htmlgen.h.

234 void startCenter() override { m_t << "<center>\n"; }

Reference OutputGenerator::m_t.

startClassDiagram()

void HtmlGenerator::startClassDiagram ()
virtual

Declaration at line 246 of file htmlgen.h, definition at line 1973 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startCompoundTemplateParams()

void HtmlGenerator::startCompoundTemplateParams ()
virtual

Declaration at line 191 of file htmlgen.h, definition at line 2072 of file htmlgen.cpp.

2073{
2074 m_t << "<div class=\"compoundTemplParams\">";
2075}

Reference OutputGenerator::m_t.

startConstraintDocs()

void HtmlGenerator::startConstraintDocs ()
virtual

Declaration at line 312 of file htmlgen.h, definition at line 3301 of file htmlgen.cpp.

3302{
3303 m_t << "<td>&#160;";
3304}

Reference OutputGenerator::m_t.

startConstraintList()

void HtmlGenerator::startConstraintList (const QCString & header)
virtual

Declaration at line 307 of file htmlgen.h, definition at line 3274 of file htmlgen.cpp.

3275{
3276 m_t << "<div class=\"typeconstraint\">\n";
3277 m_t << "<dl><dt><b>" << header << "</b></dt><dd>\n";
3278 m_t << "<table border=\"0\" cellspacing=\"2\" cellpadding=\"0\">\n";
3279}

Reference OutputGenerator::m_t.

startConstraintParam()

void HtmlGenerator::startConstraintParam ()
virtual

Declaration at line 308 of file htmlgen.h, definition at line 3281 of file htmlgen.cpp.

3282{
3283 m_t << "<tr><td valign=\"top\"><em>";
3284}

Reference OutputGenerator::m_t.

startConstraintType()

void HtmlGenerator::startConstraintType ()
virtual

Declaration at line 310 of file htmlgen.h, definition at line 3291 of file htmlgen.cpp.

3292{
3293 m_t << "<td>&#160;:</td><td valign=\"top\"><em>";
3294}

Reference OutputGenerator::m_t.

startContents()

void HtmlGenerator::startContents ()
virtual

Declaration at line 258 of file htmlgen.h, definition at line 3043 of file htmlgen.cpp.

3044{
3045 m_t << "<div class=\"contents\">\n";
3046}

Reference OutputGenerator::m_t.

startDescForItem()

void HtmlGenerator::startDescForItem ()
inline virtual

Definition at line 218 of file htmlgen.h.

218 void startDescForItem() override { m_t << "<dd>"; }

Reference OutputGenerator::m_t.

startDescTable()

void HtmlGenerator::startDescTable (const QCString & title, const bool hasInits)
virtual

Declaration at line 264 of file htmlgen.h, definition at line 2560 of file htmlgen.cpp.

2560void HtmlGenerator::startDescTable(const QCString &title,const bool hasInits)
2561{
2562 m_t << "<table class=\"fieldtable\">\n"
2563 << "<tr><th colspan=\"" << (hasInits?3:2) << "\">" << title << "</th></tr>";
2564}

Reference OutputGenerator::m_t.

startDescTableData()

void HtmlGenerator::startDescTableData ()
virtual

Declaration at line 272 of file htmlgen.h, definition at line 2600 of file htmlgen.cpp.

2601{
2602 m_t << "<td class=\"fielddoc\">";
2603}

Reference OutputGenerator::m_t.

startDescTableInit()

void HtmlGenerator::startDescTableInit ()
virtual

Declaration at line 270 of file htmlgen.h, definition at line 2590 of file htmlgen.cpp.

2591{
2592 m_t << "<td class=\"fieldinit\">";
2593}

Reference OutputGenerator::m_t.

startDescTableRow()

void HtmlGenerator::startDescTableRow ()
virtual

Declaration at line 266 of file htmlgen.h, definition at line 2570 of file htmlgen.cpp.

2571{
2572 m_t << "<tr>";
2573}

Reference OutputGenerator::m_t.

startDescTableTitle()

void HtmlGenerator::startDescTableTitle ()
virtual

Declaration at line 268 of file htmlgen.h, definition at line 2580 of file htmlgen.cpp.

2581{
2582 m_t << "<td class=\"fieldname\">";
2583}

Reference OutputGenerator::m_t.

startDirDepGraph()

void HtmlGenerator::startDirDepGraph ()
virtual

Declaration at line 283 of file htmlgen.h, definition at line 2484 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startDotGraph()

void HtmlGenerator::startDotGraph ()
virtual

Declaration at line 275 of file htmlgen.h, definition at line 2396 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startDoxyAnchor()

void HtmlGenerator::startDoxyAnchor (const QCString & fName, const QCString & manName, const QCString & anchor, const QCString & name, const QCString & args)
virtual

Declaration at line 226 of file htmlgen.h, definition at line 1647 of file htmlgen.cpp.

1648 const QCString &anchor, const QCString &,
1649 const QCString &)
1650{
1651 m_t << "<a id=\"" << anchor << "\" name=\"" << anchor << "\"></a>";
1652}

Reference OutputGenerator::m_t.

startEmphasis()

void HtmlGenerator::startEmphasis ()
inline virtual

Definition at line 214 of file htmlgen.h.

214 void startEmphasis() override { m_t << "<em>"; }

Reference OutputGenerator::m_t.

startExamples()

void HtmlGenerator::startExamples ()
virtual

Declaration at line 238 of file htmlgen.h, definition at line 2610 of file htmlgen.cpp.

2611{
2612 m_t << "<dl class=\"section examples\"><dt>";
2613 docify(theTranslator->trExamples());
2614 m_t << "</dt>";
2615}

References docify, OutputGenerator::m_t and theTranslator.

startFile()

void HtmlGenerator::startFile (const QCString & name, const QCString & manName, const QCString & title, int id, int hierarchyLevel)
virtual

Declaration at line 127 of file htmlgen.h, definition at line 1448 of file htmlgen.cpp.

1449 const QCString &title,int /*id*/, int /*hierarchyLevel*/)
1450{
1451 //printf("HtmlGenerator::startFile(%s)\n",qPrint(name));
1453 QCString fileName = name;
1455 m_lastTitle=title;
1456
1458 m_codeGen->setFileName(fileName);
1459 m_codeGen->setRelativePath(m_relPath);
1460 {
1461 std::lock_guard<std::mutex> lock(g_indexLock);
1462 Doxygen::indexList->addIndexFile(fileName);
1463 }
1464
1467
1468 m_t << "<!-- " << theTranslator->trGeneratedBy() << " Doxygen "
1469 << getDoxygenVersion() << " -->\n";
1470 bool searchEngine = Config_getBool(SEARCHENGINE);
1471 if (searchEngine /*&& !generateTreeView*/)
1472 {
1473 m_t << "<script type=\"text/javascript\">\n";
1474 m_t << "var searchBox = new SearchBox(\"searchBox\", \""
1475 << m_relPath<< "search/\",'" << Doxygen::htmlFileExtension << "');\n";
1476 m_t << "</script>\n";
1477 }
1478 if (Config_getBool(HTML_CODE_FOLDING))
1479 {
1480 m_t << "<script type=\"text/javascript\">\n";
1481 m_t << "$(function() { codefold.init(); });\n";
1482 m_t << "</script>\n";
1483 }
1485}

References addHtmlExtensionIfMissing, Config_getBool, convertToHtml, OutputGenerator::fileName, filterTitle, g_header, g_header_file, g_indexLock, Doxygen::htmlFileExtension, Doxygen::indexList, m_codeGen, m_lastFile, m_lastTitle, m_relPath, m_sectionCount, OutputGenerator::m_t, relativePathToRoot, startPlainFile, substituteHtmlKeywords and theTranslator.

startGroupCollaboration()

void HtmlGenerator::startGroupCollaboration ()
virtual

Declaration at line 279 of file htmlgen.h, definition at line 2448 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startGroupHeader()

void HtmlGenerator::startGroupHeader (const QCString & id, int extraIndentLevel)
virtual

Declaration at line 166 of file htmlgen.h, definition at line 1786 of file htmlgen.cpp.

1786void HtmlGenerator::startGroupHeader(const QCString &id,int extraIndentLevel)
1787{
1788 if (extraIndentLevel==2)
1789 {
1790 m_t << "<h4";
1791 }
1792 else if (extraIndentLevel==1)
1793 {
1794 m_t << "<h3";
1795 }
1796 else // extraIndentLevel==0
1797 {
1798 m_t << "<h2";
1799 }
1800 if (!id.isEmpty())
1801 {
1802 m_t <<" id=\"header-"+convertToId(id)+"\"";
1803 }
1804 m_t << " class=\"groupheader\">";
1805}

References convertToId and OutputGenerator::m_t.

startHeaderSection()

void HtmlGenerator::startHeaderSection ()
virtual

Declaration at line 173 of file htmlgen.h, definition at line 3331 of file htmlgen.cpp.

3332{
3333 m_t << "<div class=\"header\">\n";
3334}

Reference OutputGenerator::m_t.

startInclDepGraph()

void HtmlGenerator::startInclDepGraph ()
virtual

Declaration at line 277 of file htmlgen.h, definition at line 2430 of file htmlgen.cpp.

References m_relPath, m_sectionCount, OutputGenerator::m_t and startSectionHeader.

startIndent()

void HtmlGenerator::startIndent ()
virtual

Declaration at line 243 of file htmlgen.h, definition at line 2535 of file htmlgen.cpp.

2536{
2537 DBG_HTML(m_t << "<!-- startIndent -->\n";)
2538
2539 m_t << "<div class=\"memdoc\">\n";
2540}

References DBG_HTML and OutputGenerator::m_t.

startIndexItem()

void HtmlGenerator::startIndexItem (const QCString & ref, const QCString & file)
virtual

Declaration at line 155 of file htmlgen.h, definition at line 1690 of file htmlgen.cpp.

1691{
1692 //printf("HtmlGenerator::startIndexItem(%s,%s)\n",ref,f);
1693 if (!ref.isEmpty() || !f.isEmpty())
1694 {
1695 if (!ref.isEmpty())
1696 {
1697 m_t << "<a class=\"elRef\" ";
1699 }
1700 else
1701 {
1702 m_t << "<a class=\"el\" ";
1703 }
1704 m_t << "href=\"";
1706 if (!f.isEmpty())
1707 {
1708 QCString fn=f;
1710 m_t << fn;
1711 }
1712 m_t << "\">";
1713 }
1714 else
1715 {
1716 m_t << "<b>";
1717 }
1718}

References addHtmlExtensionIfMissing, externalLinkTarget, externalRef, QCString::isEmpty, m_relPath, OutputGenerator::m_t and TRUE.

startIndexKey()

void HtmlGenerator::startIndexKey ()
virtual

Declaration at line 149 of file htmlgen.h, definition at line 2200 of file htmlgen.cpp.

2201{
2202 //m_t << " <tr><td class=\"indexkey\">";
2203}

startIndexList()

void HtmlGenerator::startIndexList ()
virtual

Declaration at line 147 of file htmlgen.h, definition at line 2190 of file htmlgen.cpp.

2191{
2192 m_t << "<table>\n";
2193}

Reference OutputGenerator::m_t.

startIndexListItem()

void HtmlGenerator::startIndexListItem ()
virtual

Declaration at line 145 of file htmlgen.h, definition at line 1680 of file htmlgen.cpp.

1681{
1682 m_t << "<li>";
1683}

Reference OutputGenerator::m_t.

startIndexSection()

void HtmlGenerator::startIndexSection (IndexSection)
inline virtual

Definition at line 133 of file htmlgen.h.

startIndexValue()

void HtmlGenerator::startIndexValue (bool)
virtual

Declaration at line 151 of file htmlgen.h, definition at line 2210 of file htmlgen.cpp.

2211{
2212 //m_t << "<td class=\"indexvalue\">";
2213}

startInlineHeader()

void HtmlGenerator::startInlineHeader ()
virtual

Declaration at line 183 of file htmlgen.h, definition at line 3353 of file htmlgen.cpp.

3354{
3355 if (m_emptySection)
3356 {
3357 m_t << "<table class=\"memberdecls\">\n";
3359 }
3360 m_t << "<tr><td colspan=\"2\"><h3>";
3361}

References FALSE, m_emptySection and OutputGenerator::m_t.

startInlineMemberDoc()

void HtmlGenerator::startInlineMemberDoc ()
virtual

Declaration at line 322 of file htmlgen.h, definition at line 3407 of file htmlgen.cpp.

3408{
3409 DBG_HTML(m_t << "<!-- startInlineMemberDoc -->\n";)
3410 m_t << "<td class=\"fielddoc\">\n";
3411}

References DBG_HTML and OutputGenerator::m_t.

startInlineMemberName()

void HtmlGenerator::startInlineMemberName ()
virtual

Declaration at line 320 of file htmlgen.h, definition at line 3395 of file htmlgen.cpp.

3396{
3397 DBG_HTML(m_t << "<!-- startInlineMemberName -->\n";)
3398 m_t << "<td class=\"fieldname\">\n";
3399}

References DBG_HTML and OutputGenerator::m_t.

startInlineMemberType()

void HtmlGenerator::startInlineMemberType ()
virtual

Declaration at line 318 of file htmlgen.h, definition at line 3383 of file htmlgen.cpp.

3384{
3385 DBG_HTML(m_t << "<!-- startInlineMemberType -->\n";)
3386 m_t << "<tr><td class=\"fieldtype\">\n";
3387}

References DBG_HTML and OutputGenerator::m_t.

startItemList()

void HtmlGenerator::startItemList ()
inline virtual

Definition at line 153 of file htmlgen.h.

153 void startItemList() override { m_t << "<ul>\n"; }

Reference OutputGenerator::m_t.

startItemListItem()

void HtmlGenerator::startItemListItem ()
inline virtual

Definition at line 168 of file htmlgen.h.

168 void startItemListItem() override { m_t << "<li>"; }

Reference OutputGenerator::m_t.

startLabels()

void HtmlGenerator::startLabels ()
virtual

Declaration at line 325 of file htmlgen.h, definition at line 3419 of file htmlgen.cpp.

3420{
3421 DBG_HTML(m_t << "<!-- startLabels -->\n";)
3422 m_t << "<span class=\"mlabels\">";
3423}

References DBG_HTML and OutputGenerator::m_t.

startLocalToc()

void HtmlGenerator::startLocalToc (int level)
virtual

Declaration at line 329 of file htmlgen.h, definition at line 3555 of file htmlgen.cpp.

3556{
3557 m_tocState.level=0;
3558 m_tocState.indent=0;
3559 m_tocState.maxLevel=level;
3560 m_tocState.inLi = BoolVector(level+1,false);
3561 m_t << "<div class=\"toc\">";
3562 m_t << "<h3>" << theTranslator->trRTFTableOfContents() << "</h3>\n";
3563}

References OutputGenerator::m_t, m_tocState and theTranslator.

startMemberDeclaration()

void HtmlGenerator::startMemberDeclaration ()
inline virtual

Definition at line 205 of file htmlgen.h.

205 void startMemberDeclaration() override {}

startMemberDescription()

void HtmlGenerator::startMemberDescription (const QCString & anchor, const QCString & inheritId, bool typ)
virtual

Declaration at line 203 of file htmlgen.h, definition at line 2100 of file htmlgen.cpp.

2100void HtmlGenerator::startMemberDescription(const QCString &anchor,const QCString &inheritId, bool typ)
2101{
2102 DBG_HTML(m_t << "<!-- startMemberDescription -->\n")
2103 if (m_emptySection)
2104 {
2105 m_t << "<table class=\"memberdecls\">\n";
2107 }
2108 m_t << "<tr class=\"memdesc:" << anchor;
2109 if (!inheritId.isEmpty())
2110 {
2111 m_t << " inherit " << inheritId;
2112 }
2113 m_t << "\">";
2114 m_t << "<td class=\"mdescLeft\">&#160;</td>";
2115 if (typ) m_t << "<td class=\"mdescLeft\">&#160;</td>";
2116 m_t << "<td class=\"mdescRight\">";
2117}

References DBG_HTML, FALSE, QCString::isEmpty, m_emptySection and OutputGenerator::m_t.

startMemberDoc()

void HtmlGenerator::startMemberDoc (const QCString & clName, const QCString & memName, const QCString & anchor, const QCString & title, int memCount, int memTotal, bool showInline)
virtual

Declaration at line 222 of file htmlgen.h, definition at line 2230 of file htmlgen.cpp.

2230void HtmlGenerator::startMemberDoc( const QCString &/* clName */, const QCString &/* memName */,
2231 const QCString &anchor, const QCString &title,
2232 int memCount, int memTotal, bool /* showInline */)
2233{
2234 DBG_HTML(m_t << "<!-- startMemberDoc -->\n";)
2235 m_t << "\n<h2 class=\"memtitle\">"
2236 << "<span class=\"permalink\"><a href=\"#" << anchor << "\">&#9670;&#160;</a></span>";
2237 docify(title);
2238 if (memTotal>1)
2239 {
2240 m_t << " <span class=\"overload\">[" << memCount << "/" << memTotal <<"]</span>";
2241 }
2242 m_t << "</h2>\n";
2243 m_t << "\n<div class=\"memitem\">\n";
2244 m_t << "<div class=\"memproto\">\n";
2245}

References DBG_HTML, docify and OutputGenerator::m_t.

startMemberDocList()

void HtmlGenerator::startMemberDocList ()
virtual

Declaration at line 179 of file htmlgen.h, definition at line 2220 of file htmlgen.cpp.

2221{
2222 DBG_HTML(m_t << "<!-- startMemberDocList -->\n";)
2223}

References DBG_HTML and OutputGenerator::m_t.

startMemberDocName()

void HtmlGenerator::startMemberDocName (bool)
virtual

Declaration at line 293 of file htmlgen.h, definition at line 2259 of file htmlgen.cpp.

2260{
2261 DBG_HTML(m_t << "<!-- startMemberDocName -->\n";)
2262
2263 m_t << " <table class=\"memname\">\n";
2264
2265 m_t << " <tr>\n";
2266 m_t << " <td class=\"memname\">";
2267}

References DBG_HTML and OutputGenerator::m_t.

startMemberDocPrefixItem()

void HtmlGenerator::startMemberDocPrefixItem ()
virtual

Declaration at line 291 of file htmlgen.h, definition at line 2247 of file htmlgen.cpp.

2248{
2249 DBG_HTML(m_t << "<!-- startMemberDocPrefixItem -->\n";)
2250 m_t << "<div class=\"memtemplate\">\n";
2251}

References DBG_HTML and OutputGenerator::m_t.

startMemberDocSimple()

void HtmlGenerator::startMemberDocSimple (bool isEnum)
virtual

Declaration at line 316 of file htmlgen.h, definition at line 3368 of file htmlgen.cpp.

3369{
3370 DBG_HTML(m_t << "<!-- startMemberDocSimple -->\n";)
3371 m_t << "<table class=\"fieldtable\">\n";
3372 m_t << "<tr><th colspan=\"" << (isEnum?"2":"3") << "\">";
3373 m_t << (isEnum? theTranslator->trEnumerationValues() :
3374 theTranslator->trCompoundMembers()) << "</th></tr>\n";
3375}

References DBG_HTML, OutputGenerator::m_t and theTranslator.

startMemberGroup()

void HtmlGenerator::startMemberGroup ()
virtual

Declaration at line 198 of file htmlgen.h, definition at line 2527 of file htmlgen.cpp.

startMemberGroupDocs()

void HtmlGenerator::startMemberGroupDocs ()
virtual

Declaration at line 196 of file htmlgen.h, definition at line 2517 of file htmlgen.cpp.

2518{
2519 m_t << "<tr><td colspan=\"2\" class=\"ititle\"><div class=\"groupText\">";
2520}

Reference OutputGenerator::m_t.

startMemberGroupHeader()

void HtmlGenerator::startMemberGroupHeader (const QCString & id, bool)
virtual

Declaration at line 194 of file htmlgen.h, definition at line 2507 of file htmlgen.cpp.

2508{
2509 m_t << "<tr id=\"" << id << "\" class=\"groupHeader\"><td colspan=\"2\"><div class=\"groupHeader\">";
2510}

Reference OutputGenerator::m_t.

startMemberHeader()

void HtmlGenerator::startMemberHeader (const QCString & anchor, int typ)
virtual

Declaration at line 175 of file htmlgen.h, definition at line 2142 of file htmlgen.cpp.

2142void HtmlGenerator::startMemberHeader(const QCString &anchor, int typ)
2143{
2144 DBG_HTML(m_t << "<!-- startMemberHeader -->\n")
2145 if (!m_emptySection)
2146 {
2147 m_t << "</table>";
2149 }
2150 if (m_emptySection)
2151 {
2152 m_t << "<table class=\"memberdecls\">\n";
2154 }
2155 m_t << "<tr class=\"heading\"><td colspan=\"" << typ << "\"><h2";
2156 if (!anchor.isEmpty())
2157 {
2158 m_t << " id=\"header-" << anchor << "\"";
2159 }
2160 m_t << " class=\"groupheader\">";
2161 if (!anchor.isEmpty())
2162 {
2163 m_t << "<a id=\"" << anchor << "\" name=\"" << anchor << "\"></a>\n";
2164 }
2165}

References DBG_HTML, FALSE, QCString::isEmpty, m_emptySection, OutputGenerator::m_t and TRUE.

startMemberItem()

void HtmlGenerator::startMemberItem (const QCString & anchor, MemberItemType type, const QCString & inheritId)
virtual

Declaration at line 187 of file htmlgen.h, definition at line 2026 of file htmlgen.cpp.

2027{
2028 DBG_HTML(m_t << "<!-- startMemberItem() -->\n")
2029 if (m_emptySection)
2030 {
2031 m_t << "<table class=\"memberdecls\">\n";
2033 }
2034 m_t << "<tr class=\"memitem:" << convertToId(anchor);
2035 if (!inheritId.isEmpty())
2036 {
2037 m_t << " inherit " << inheritId;
2038 }
2039 m_t << "\"";
2040 if (!anchor.isEmpty())
2041 {
2042 m_t << " id=\"r_" << convertToId(anchor) << "\"";
2043 }
2044 m_t << ">";
2046}

References convertToId, DBG_HTML, FALSE, insertMemberAlignLeft, QCString::isEmpty, m_emptySection, OutputGenerator::m_t and type.

startMemberList()

void HtmlGenerator::startMemberList ()
virtual

Declaration at line 181 of file htmlgen.h, definition at line 2012 of file htmlgen.cpp.

2013{
2014 DBG_HTML(m_t << "<!-- startMemberList -->\n")
2015}

References DBG_HTML and OutputGenerator::m_t.

startMemberSections()

void HtmlGenerator::startMemberSections ()
virtual

Declaration at line 171 of file htmlgen.h, definition at line 2125 of file htmlgen.cpp.

2126{
2127 DBG_HTML(m_t << "<!-- startMemberSections -->\n")
2128 m_emptySection=TRUE; // we postpone writing <table> until we actually
2129 // write a row to prevent empty tables, which
2130 // are not valid XHTML!
2131}

References DBG_HTML, m_emptySection, OutputGenerator::m_t and TRUE.

startMemberSubtitle()

void HtmlGenerator::startMemberSubtitle ()
virtual

Declaration at line 177 of file htmlgen.h, definition at line 2173 of file htmlgen.cpp.

2174{
2175 DBG_HTML(m_t << "<!-- startMemberSubtitle -->\n")
2176 if (m_emptySection)
2177 {
2178 m_t << "<table class=\"memberdecls\">\n";
2180 }
2181 m_t << "<tr><td class=\"ititle\" colspan=\"2\">";
2182}

References DBG_HTML, FALSE, m_emptySection and OutputGenerator::m_t.

startMemberTemplateParams()

void HtmlGenerator::startMemberTemplateParams ()
virtual

Declaration at line 189 of file htmlgen.h, definition at line 2057 of file htmlgen.cpp.

startPageDoc()

void HtmlGenerator::startPageDoc (const QCString & pageTitle)
virtual

Declaration at line 260 of file htmlgen.h, definition at line 3053 of file htmlgen.cpp.

3053void HtmlGenerator::startPageDoc(const QCString &/* pageTitle */)
3054{
3055 m_t << "<div>";
3056}

Reference OutputGenerator::m_t.

startPageRef()

void HtmlGenerator::startPageRef ()
inline virtual

Definition at line 248 of file htmlgen.h.

248 void startPageRef() override {}

startParagraph()

void HtmlGenerator::startParagraph (const QCString & classDef)
virtual

Declaration at line 142 of file htmlgen.h, definition at line 1662 of file htmlgen.cpp.

1663{
1664 if (!classDef.isEmpty())
1665 m_t << "\n<p class=\"" << classDef << "\">";
1666 else
1667 m_t << "\n<p>";
1668}

References QCString::isEmpty and OutputGenerator::m_t.

startParameterDefVal()

void HtmlGenerator::startParameterDefVal (const char * sep)
virtual

Declaration at line 301 of file htmlgen.h, definition at line 2347 of file htmlgen.cpp.

2348{
2349 m_t << "<span class=\"paramdefsep\">";
2350 docify(s);
2351 m_t << "</span><span class=\"paramdefval\">";
2352}

References docify and OutputGenerator::m_t.

startParameterExtra()

void HtmlGenerator::startParameterExtra ()
virtual

Declaration at line 299 of file htmlgen.h, definition at line 2318 of file htmlgen.cpp.

2319{
2320 DBG_HTML(m_t << "<!-- startParameterExtra -->\n";)
2321}

References DBG_HTML and OutputGenerator::m_t.

startParameterList()

void HtmlGenerator::startParameterList (bool openBracket)
virtual

Declaration at line 303 of file htmlgen.h, definition at line 2275 of file htmlgen.cpp.

2276{
2277 DBG_HTML(m_t << "<!-- startParameterList -->\n";)
2278 m_t << " <td>";
2279 if (openBracket) m_t << "(";
2280 m_t << "</td>\n";
2281}

References DBG_HTML and OutputGenerator::m_t.

startParameterName()

void HtmlGenerator::startParameterName (bool)
virtual

Declaration at line 297 of file htmlgen.h, definition at line 2306 of file htmlgen.cpp.

2306void HtmlGenerator::startParameterName(bool /*oneArgOnly*/)
2307{
2308 DBG_HTML(m_t << "<!-- startParameterName -->\n";)
2309 m_t << " <td class=\"paramname\"><span class=\"paramname\"><em>";
2310}

References DBG_HTML and OutputGenerator::m_t.

startParameterType()

void HtmlGenerator::startParameterType (bool first, const QCString & key)
virtual

Declaration at line 295 of file htmlgen.h, definition at line 2283 of file htmlgen.cpp.

2284{
2285 if (first)
2286 {
2287 DBG_HTML(m_t << "<!-- startFirstParameterType -->\n";)
2288 m_t << " <td class=\"paramtype\">";
2289 }
2290 else
2291 {
2292 DBG_HTML(m_t << "<!-- startParameterType -->\n";)
2293 m_t << " <tr>\n";
2294 m_t << " <td class=\"paramkey\">" << key << "</td>\n";
2295 m_t << " <td></td>\n";
2296 m_t << " <td class=\"paramtype\">";
2297 }
2298}

References DBG_HTML and OutputGenerator::m_t.

startPlainFile()

void HtmlGenerator::startPlainFile (const QCString & name)
inline virtual

Definition at line 334 of file htmlgen.h.

334 void startPlainFile(const QCString &name) override { OutputGenerator::startPlainFile(name); }

Reference OutputGenerator::startPlainFile.

Referenced by startFile and writeStyleInfo.

startProjectNumber()

void HtmlGenerator::startProjectNumber ()
virtual

Declaration at line 136 of file htmlgen.h, definition at line 1566 of file htmlgen.cpp.

1567{
1568 m_t << "<h3 class=\"version\">";
1569}

Reference OutputGenerator::m_t.

startQuickIndices()

void HtmlGenerator::startQuickIndices ()
inline virtual

Definition at line 250 of file htmlgen.h.

250 void startQuickIndices() override {}

startSection()

void HtmlGenerator::startSection (const QCString & lab, const QCString &, SectionType type)
virtual

Declaration at line 240 of file htmlgen.h, definition at line 1823 of file htmlgen.cpp.

1824{
1825 switch(type.level())
1826 {
1827 case SectionType::Page: m_t << "\n\n<h1 class=\"doxsection\">"; break;
1828 case SectionType::Section: m_t << "\n\n<h2 class=\"doxsection\">"; break;
1829 case SectionType::Subsection: m_t << "\n\n<h3 class=\"doxsection\">"; break;
1830 case SectionType::Subsubsection: m_t << "\n\n<h4 class=\"doxsection\">"; break;
1831 case SectionType::Paragraph: m_t << "\n\n<h5 class=\"doxsection\">"; break;
1832 case SectionType::Subparagraph: m_t << "\n\n<h6 class=\"doxsection\">"; break;
1833 case SectionType::Subsubparagraph: m_t << "\n\n<h6 class=\"doxsection\">"; break;
1834 default: ASSERT(0); break;
1835 }
1836 m_t << "<a id=\"" << lab << "\" name=\"" << lab << "\"></a>";
1837}

References ASSERT, OutputGenerator::m_t, SectionType::Page, SectionType::Paragraph, SectionType::Section, SectionType::Subparagraph, SectionType::Subsection, SectionType::Subsubparagraph, SectionType::Subsubsection and type.

startSmall()

void HtmlGenerator::startSmall ()
inline virtual

Definition at line 236 of file htmlgen.h.

236 void startSmall() override { m_t << "<small>\n"; }

Reference OutputGenerator::m_t.

startTextBlock()

void HtmlGenerator::startTextBlock (bool)
inline virtual

Definition at line 287 of file htmlgen.h.

287 void startTextBlock(bool) override { m_t << "<div class=\"textblock\">"; }

Reference OutputGenerator::m_t.

startTextLink()

void HtmlGenerator::startTextLink (const QCString & file, const QCString & anchor)
virtual

Declaration at line 162 of file htmlgen.h, definition at line 1769 of file htmlgen.cpp.

1770{
1771 m_t << "<a href=\"";
1772 QCString fn = f;
1774 m_t << createHtmlUrl(m_relPath,"",true,
1775 fileName() == Config_getString(HTML_OUTPUT)+"/"+fn,
1776 fn,
1777 anchor);
1778 m_t << "\">";
1779}

References addHtmlExtensionIfMissing, Config_getString, createHtmlUrl, OutputGenerator::fileName, m_relPath and OutputGenerator::m_t.

startTitleHead()

void HtmlGenerator::startTitleHead (const QCString &)
virtual

Declaration at line 139 of file htmlgen.h, definition at line 3336 of file htmlgen.cpp.

3337{
3338 m_t << " <div class=\"headertitle\">";
3339 startTitle();
3340}

References OutputGenerator::m_t and startTitle.

startTocEntry()

void HtmlGenerator::startTocEntry (const SectionInfo * si)
virtual

Declaration at line 331 of file htmlgen.h, definition at line 3577 of file htmlgen.cpp.

3578{
3579 SectionType type = si->type();
3580 if (type.isSection())
3581 {
3582 //printf(" level=%d title=%s maxLevel=%d\n",level,qPrint(si->title()),maxLevel);
3583 int nextLevel = type.level();
3584 if (nextLevel>m_tocState.level)
3585 {
3586 for (int l=m_tocState.level;l<nextLevel;l++)
3587 {
3588 if (l < m_tocState.maxLevel)
3589 {
3590 m_tocState.incIndent(m_t,"<ul>");
3591 char cs[2] = { static_cast<char>('0'+l+1), 0 };
3592 const char *empty = (l!=nextLevel-1) ? " empty" : "";
3593 m_tocState.incIndent(m_t,"<li class=\"level" + QCString(cs) + empty + "\">");
3594 }
3595 }
3596 }
3597 else if (nextLevel<m_tocState.level)
3598 {
3599 for (int l=m_tocState.level;l>nextLevel;l--)
3600 {
3601 if (l <= m_tocState.maxLevel) m_tocState.decIndent(m_t,"</li>");
3602 m_tocState.inLi[l] = false;
3603 if (l <= m_tocState.maxLevel) m_tocState.decIndent(m_t,"</ul>");
3604 }
3605 }
3606 if (nextLevel <= m_tocState.maxLevel)
3607 {
3608 if (m_tocState.inLi[nextLevel] || m_tocState.level>nextLevel)
3609 {
3610 m_tocState.decIndent(m_t,"</li>");
3611 char cs[2] = { static_cast<char>('0'+nextLevel), 0 };
3612 m_tocState.incIndent(m_t,"<li class=\"level" + QCString(cs) + "\">");
3613 }
3614 QCString label = si->label();
3615 m_tocState.writeIndent(m_t);
3616 m_t << "<a href=\"#"+label+"\">";
3617 }
3618 }
3619}

References SectionInfo::label, OutputGenerator::m_t, m_tocState, type and SectionInfo::type.

startTypewriter()

void HtmlGenerator::startTypewriter ()
inline virtual

Definition at line 164 of file htmlgen.h.

164 void startTypewriter() override { m_t << "<code>"; }

Reference OutputGenerator::m_t.

type()

OutputType HtmlGenerator::type ()
inline virtual

Definition at line 122 of file htmlgen.h.

122 OutputType type() const override { return OutputType::Html; }

Reference Html.

Referenced by endMemberItem, endSection, endTocEntry, insertMemberAlignLeft, startMemberItem, startSection and startTocEntry.

writeAnchor()

void HtmlGenerator::writeAnchor (const QCString &, const QCString & name)
inline virtual

Definition at line 212 of file htmlgen.h.

212 void writeAnchor(const QCString &,const QCString &name)
213 override { m_t << "<a name=\"" << name <<"\" id=\"" << name << "\"></a>"; }

Reference OutputGenerator::m_t.

writeChar()

void HtmlGenerator::writeChar (char c)
virtual

Declaration at line 221 of file htmlgen.h, definition at line 1892 of file htmlgen.cpp.

1893{
1894 char cs[2];
1895 cs[0]=c;
1896 cs[1]=0;
1897 docify(cs);
1898}

Reference docify.

writeDoc()

void HtmlGenerator::writeDoc (const IDocNodeAST * node, const Definition * ctx, const MemberDef *, int id)
virtual

Declaration at line 126 of file htmlgen.h, definition at line 2622 of file htmlgen.cpp.

2622void HtmlGenerator::writeDoc(const IDocNodeAST *ast,const Definition *ctx,const MemberDef *,int id)
2623{
2624 const DocNodeAST *astImpl = dynamic_cast<const DocNodeAST*>(ast);
2625 if (astImpl)
2626 {
2627 m_codeList->setId(id);
2628 HtmlDocVisitor visitor(m_t,*m_codeList,ctx,fileName());
2629 std::visit(visitor,astImpl->root);
2630 }
2631}

References OutputGenerator::fileName, m_codeList, OutputGenerator::m_t and DocNodeAST::root.

writeFooter()

void HtmlGenerator::writeFooter (const QCString & navPath)
virtual

Declaration at line 130 of file htmlgen.h, definition at line 1556 of file htmlgen.cpp.

1557{
1559}

References m_lastTitle, m_relPath, OutputGenerator::m_t and writePageFooter.

writeGraphicalHierarchy()

void HtmlGenerator::writeGraphicalHierarchy (DotGfxHierarchyTable & g)
virtual

writeInheritedSectionTitle()

void HtmlGenerator::writeInheritedSectionTitle (const QCString & id, const QCString & ref, const QCString & file, const QCString & anchor, const QCString & title, const QCString & name)
virtual

Declaration at line 207 of file htmlgen.h, definition at line 3471 of file htmlgen.cpp.

3472 const QCString &id, const QCString &ref,
3473 const QCString &file, const QCString &anchor,
3474 const QCString &title, const QCString &name)
3475{
3476 DBG_HTML(m_t << "<!-- writeInheritedSectionTitle -->\n";)
3477 QCString a = anchor;
3478 if (!a.isEmpty()) a.prepend("#");
3479 QCString classLink = QCString("<a class=\"el\" ");
3480 if (!ref.isEmpty())
3481 {
3482 classLink+= externalLinkTarget();
3483 classLink += " href=\"";
3484 classLink+= externalRef(m_relPath,ref,TRUE);
3485 }
3486 else
3487 {
3488 classLink += "href=\"";
3489 classLink+=m_relPath;
3490 }
3491 QCString fn = file;
3493 classLink=classLink+fn+a;
3494 classLink+=QCString("\">")+convertToHtml(name,FALSE)+"</a>";
3495 m_t << "<tr class=\"inherit_header " << id << "\">"
3496 << "<td colspan=\"2\" onclick=\"javascript:dynsection.toggleInherit('" << id << "')\">"
3497 << "<span class=\"dynarrow\"><span class=\"arrowhead closed\"></span></span>"
3498 << theTranslator->trInheritedFrom(convertToHtml(title,FALSE),classLink)
3499 << "</td></tr>\n";
3500}

References addHtmlExtensionIfMissing, convertToHtml, DBG_HTML, externalLinkTarget, externalRef, FALSE, QCString::isEmpty, m_relPath, OutputGenerator::m_t, QCString::prepend, theTranslator and TRUE.

writeLabel()

void HtmlGenerator::writeLabel (const QCString & l, bool isLast)
virtual

Declaration at line 326 of file htmlgen.h, definition at line 3425 of file htmlgen.cpp.

3425void HtmlGenerator::writeLabel(const QCString &label,bool /*isLast*/)
3426{
3427 DBG_HTML(m_t << "<!-- writeLabel(" << label << ") -->\n";)
3428
3429 auto convertLabelToClass = [](const std::string &lab) {
3430 QCString input = convertUTF8ToLower(lab);
3431 QCString result;
3432 size_t l=input.length();
3433 result.reserve(l);
3434
3435 // Create valid class selector, see 10.2 here https://www.w3.org/TR/selectors-3/#w3cselgrammar
3436 // ident [-]?{nmstart}{nmchar}*
3437 // nmstart [_a-z]|{nonascii}
3438 // nonascii [^\0-\177]
3439 // nmchar [_a-z0-9-]|{nonascii}
3440
3441 bool nmstart=false;
3442 for (size_t i=0; i<l; i++)
3443 {
3444 char c = input.at(i);
3445 if (c<0 || (c>='a' && c<='z') || c=='_') // nmstart pattern
3446 {
3447 nmstart=true;
3448 result+=c;
3449 }
3450 else if (nmstart && (c<0 || (c>='a' && c<='z') || (c>='0' && c<='9') || c=='_')) // nmchar pattern
3451 {
3452 result+=c;
3453 }
3454 else if (nmstart && (c==' ' || c=='-')) // show whitespace as -
3455 {
3456 result+='-';
3457 }
3458 }
3459 return result;
3460 };
3461
3462 m_t << "<span class=\"mlabel " << convertLabelToClass(label.stripWhiteSpace().str()) << "\">" << label << "</span>";
3463}

References QCString::at, convertUTF8ToLower, DBG_HTML, QCString::length, OutputGenerator::m_t, QCString::reserve, QCString::str and QCString::stripWhiteSpace.

writeLatexSpacing()

void HtmlGenerator::writeLatexSpacing ()
inline virtual

Definition at line 231 of file htmlgen.h.

231 void writeLatexSpacing() override {}

writeLogo()

void HtmlGenerator::writeLogo ()
virtual

Declaration at line 254 of file htmlgen.h, definition at line 1545 of file htmlgen.cpp.

References m_relPath, OutputGenerator::m_t and writeLogoAsString.

writeNavigationPath()

void HtmlGenerator::writeNavigationPath (const QCString & s)
virtual

Declaration at line 253 of file htmlgen.h, definition at line 3038 of file htmlgen.cpp.

3039{
3040 m_t << substitute(s,"$relpath^",m_relPath);
3041}

References m_relPath, OutputGenerator::m_t and substitute.

writeNonBreakableSpace()

void HtmlGenerator::writeNonBreakableSpace (int n)
virtual

Declaration at line 262 of file htmlgen.h, definition at line 2552 of file htmlgen.cpp.

2553{
2554 for (int i=0; i<n; i++)
2555 {
2556 m_t << "&#160;";
2557 }
2558}

Reference OutputGenerator::m_t.

writeObjectLink()

void HtmlGenerator::writeObjectLink (const QCString & ref, const QCString & file, const QCString & anchor, const QCString & name)
virtual

Declaration at line 159 of file htmlgen.h, definition at line 1745 of file htmlgen.cpp.

1746 const QCString &anchor, const QCString &name)
1747{
1748 if (!ref.isEmpty())
1749 {
1750 m_t << "<a class=\"elRef\" ";
1752 }
1753 else
1754 {
1755 m_t << "<a class=\"el\" ";
1756 }
1757 m_t << "href=\"";
1758 QCString fn = f;
1760 m_t << createHtmlUrl(m_relPath,ref,true,
1761 fileName() == Config_getString(HTML_OUTPUT)+"/"+fn,
1762 fn,
1763 anchor);
1764 m_t << "\">";
1765 docify(name);
1766 m_t << "</a>";
1767}

References addHtmlExtensionIfMissing, Config_getString, createHtmlUrl, docify, externalLinkTarget, OutputGenerator::fileName, QCString::isEmpty, m_relPath and OutputGenerator::m_t.

writePageLink()

void HtmlGenerator::writePageLink (const QCString &, bool)
inline virtual

Definition at line 135 of file htmlgen.h.

135 void writePageLink(const QCString &,bool) override {}

writePageOutline()

void HtmlGenerator::writePageOutline ()
virtual

Declaration at line 257 of file htmlgen.h, definition at line 3529 of file htmlgen.cpp.

3530{
3531 m_t << "<div id=\"page-nav\" class=\"page-nav-panel\">\n";
3532 m_t << "<div id=\"page-nav-resize-handle\"></div>\n";
3533 m_t << "<div id=\"page-nav-tree\">\n";
3534 m_t << "<div id=\"page-nav-contents\">\n";
3535 m_t << "</div><!-- page-nav-contents -->\n";
3536 m_t << "</div><!-- page-nav-tree -->\n";
3537 m_t << "</div><!-- page-nav -->\n";
3538}

Reference OutputGenerator::m_t.

writeQuickLinks()

void HtmlGenerator::writeQuickLinks (HighlightedItem hli, const QCString & file, bool extraTabs)
virtual

Declaration at line 255 of file htmlgen.h, definition at line 3063 of file htmlgen.cpp.

3063void HtmlGenerator::writeQuickLinks(HighlightedItem hli,const QCString &file,bool extraTabs)
3064{
3065 writeDefaultQuickLinks(m_t,hli,file,m_relPath,extraTabs);
3066}

References m_relPath, OutputGenerator::m_t and writeDefaultQuickLinks.

writeRuler()

void HtmlGenerator::writeRuler ()
inline virtual

Definition at line 211 of file htmlgen.h.

211 void writeRuler() override { m_t << "<hr/>"; }

Reference OutputGenerator::m_t.

writeSearchInfo()

void HtmlGenerator::writeSearchInfo ()
virtual

Declaration at line 131 of file htmlgen.h, definition at line 1517 of file htmlgen.cpp.

References m_relPath, OutputGenerator::m_t and writeSearchInfoStatic.

writeSplitBar()

void HtmlGenerator::writeSplitBar (const QCString & name, const QCString & allMembersFile)
virtual

Declaration at line 252 of file htmlgen.h, definition at line 3033 of file htmlgen.cpp.

3033void HtmlGenerator::writeSplitBar(const QCString &name,const QCString &allMembersFile)
3034{
3035 m_t << writeSplitBarAsString(name,m_relPath,allMembersFile);
3036}

References m_relPath, OutputGenerator::m_t and writeSplitBarAsString.

writeStartAnnoItem()

void HtmlGenerator::writeStartAnnoItem (const QCString & type, const QCString & file, const QCString & path, const QCString & name)
virtual

Declaration at line 232 of file htmlgen.h, definition at line 1733 of file htmlgen.cpp.

1734 const QCString &path,const QCString &name)
1735{
1736 m_t << "<li>";
1737 if (!path.isEmpty()) docify(path);
1738 QCString fn = f;
1740 m_t << "<a class=\"el\" href=\"" << fn << "\">";
1741 docify(name);
1742 m_t << "</a> ";
1743}

References addHtmlExtensionIfMissing, docify, QCString::isEmpty and OutputGenerator::m_t.

writeString()

void HtmlGenerator::writeString (const QCString & text)
virtual

Declaration at line 144 of file htmlgen.h, definition at line 1675 of file htmlgen.cpp.

1676{
1677 m_t << text;
1678}

Reference OutputGenerator::m_t.

writeStyleInfo()

void HtmlGenerator::writeStyleInfo (int part)
virtual

Declaration at line 138 of file htmlgen.h, definition at line 1576 of file htmlgen.cpp.

1577{
1578 //printf("writeStyleInfo(%d)\n",part);
1579 if (part==0)
1580 {
1581 if (Config_getString(HTML_STYLESHEET).isEmpty()) // write default style sheet
1582 {
1583 //printf("write doxygen.css\n");
1584 startPlainFile("doxygen.css");
1586 endPlainFile();
1587 Doxygen::indexList->addStyleSheetFile("doxygen.css");
1588 }
1589 else // write user defined style sheet
1590 {
1591 QCString cssName=Config_getString(HTML_STYLESHEET);
1592 if (!cssName.startsWith("http:") && !cssName.startsWith("https:"))
1593 {
1594 FileInfo cssfi(cssName.str());
1595 if (!cssfi.exists() || !cssfi.isFile() || !cssfi.isReadable())
1596 {
1597 err("style sheet {} does not exist or is not readable!\n", Config_getString(HTML_STYLESHEET));
1598 }
1599 else
1600 {
1601 // convert style sheet to string
1602 QCString fileStr = fileToString(cssName);
1603 // write the string into the output dir
1604 startPlainFile(cssfi.fileName().c_str());
1605 m_t << fileStr;
1606 endPlainFile();
1607 }
1608 Doxygen::indexList->addStyleSheetFile(cssfi.fileName().c_str());
1609 }
1610 }
1611 const StringVector &extraCssFiles = Config_getList(HTML_EXTRA_STYLESHEET);
1612 for (const auto &fileName : extraCssFiles)
1613 {
1614 if (!fileName.empty())
1615 {
1616 FileInfo fi(fileName);
1617 if (fi.exists())
1618 {
1619 Doxygen::indexList->addStyleSheetFile(fi.fileName().c_str());
1620 }
1621 }
1622 }
1623
1624 Doxygen::indexList->addStyleSheetFile("jquery.js");
1625 Doxygen::indexList->addStyleSheetFile("navtree.css");
1626
1627 Doxygen::indexList->addStyleSheetFile("dynsections.js");
1628
1629 if (Config_getEnum(HTML_COLORSTYLE)==HTML_COLORSTYLE_t::TOGGLE)
1630 {
1631 Doxygen::indexList->addStyleSheetFile("darkmode_toggle.js");
1632 }
1633
1634 if (Config_getBool(INTERACTIVE_SVG))
1635 {
1636 Doxygen::indexList->addStyleSheetFile("svg.min.js");
1637 }
1638
1639 if (!Config_getBool(DISABLE_INDEX) && Config_getBool(HTML_DYNAMIC_MENUS))
1640 {
1641 Doxygen::indexList->addStyleSheetFile("menu.js");
1642 Doxygen::indexList->addStyleSheetFile("menudata.js");
1643 }
1644 }
1645}

References Config_getBool, Config_getEnum, Config_getList, Config_getString, endPlainFile, err, FileInfo::exists, FileInfo::fileName, OutputGenerator::fileName, fileToString, Doxygen::indexList, FileInfo::isFile, FileInfo::isReadable, OutputGenerator::m_t, startPlainFile, QCString::startsWith, QCString::str and writeDefaultStyleSheet.

writeSummaryLink()

void HtmlGenerator::writeSummaryLink (const QCString & file, const QCString & anchor, const QCString & title, bool first)
virtual

Declaration at line 256 of file htmlgen.h, definition at line 3502 of file htmlgen.cpp.

3502void HtmlGenerator::writeSummaryLink(const QCString &file,const QCString &anchor,const QCString &title,bool first)
3503{
3504 if (first)
3505 {
3506 m_t << " <div class=\"summary\">\n";
3507 }
3508 else
3509 {
3510 m_t << " &#124;\n";
3511 }
3512 m_t << "<a href=\"";
3513 if (!file.isEmpty())
3514 {
3515 QCString fn = file;
3517 m_t << m_relPath << fn;
3518 }
3519 else if (!anchor.isEmpty())
3520 {
3521 m_t << "#";
3522 m_t << anchor;
3523 }
3524 m_t << "\">";
3525 m_t << title;
3526 m_t << "</a>";
3527}

References addHtmlExtensionIfMissing, QCString::isEmpty, m_relPath and OutputGenerator::m_t.

writeSynopsis()

void HtmlGenerator::writeSynopsis ()
inline virtual

Definition at line 245 of file htmlgen.h.

245 void writeSynopsis() override {}

Private Member Functions

docify_()

void HtmlGenerator::docify_ (const QCString & text, bool inHtmlComment)

Declaration at line 341 of file htmlgen.h, definition at line 1859 of file htmlgen.cpp.

1859void HtmlGenerator::docify_(const QCString &str,bool inHtmlComment)
1860{
1861 if (!str.isEmpty())
1862 {
1863 const char *p=str.data();
1864 while (*p)
1865 {
1866 char c=*p++;
1867 switch(c)
1868 {
1869 case '<': m_t << "&lt;"; break;
1870 case '>': m_t << "&gt;"; break;
1871 case '&': m_t << "&amp;"; break;
1872 case '"': m_t << "&quot;"; break;
1873 case '-': if (inHtmlComment) m_t << "&#45;"; else m_t << "-"; break;
1874 case '\\':
1875 if (*p=='<')
1876 { m_t << "&lt;"; p++; }
1877 else if (*p=='>')
1878 { m_t << "&gt;"; p++; }
1879 else if (*p=='(')
1880 { m_t << "\\&zwj;("; p++; }
1881 else if (*p==')')
1882 { m_t << "\\&zwj;)"; p++; }
1883 else
1884 m_t << "\\";
1885 break;
1886 default: m_t << c;
1887 }
1888 }
1889 }
1890}

References QCString::data, QCString::isEmpty and OutputGenerator::m_t.

Referenced by docify.

endTitle()

void HtmlGenerator::endTitle ()
inline

Definition at line 339 of file htmlgen.h.

339 void endTitle() { m_t << "</div>"; }

Reference OutputGenerator::m_t.

Referenced by endTitleHead.

startTitle()

void HtmlGenerator::startTitle ()
inline

Definition at line 338 of file htmlgen.h.

338 void startTitle() { m_t << "<div class=\"title\">"; }

Reference OutputGenerator::m_t.

Referenced by startTitleHead.

Private Member Attributes

m_codeGen

HtmlCodeGenerator* HtmlGenerator::m_codeGen = nullptr

Definition at line 349 of file htmlgen.h.

Referenced by addCodeGen, HtmlGenerator, HtmlGenerator, operator= and startFile.

m_codeList

std::unique_ptr<OutputCodeList> HtmlGenerator::m_codeList

Definition at line 348 of file htmlgen.h.

348 std::unique_ptr<OutputCodeList> m_codeList;

Referenced by HtmlGenerator, HtmlGenerator, operator= and writeDoc.

m_emptySection

bool HtmlGenerator::m_emptySection = false

m_lastFile

QCString HtmlGenerator::m_lastFile

Definition at line 344 of file htmlgen.h.

Referenced by HtmlGenerator, operator= and startFile.

m_lastTitle

QCString HtmlGenerator::m_lastTitle

Definition at line 343 of file htmlgen.h.

Referenced by HtmlGenerator, operator=, startFile and writeFooter.

m_pageOutlineIndent

int HtmlGenerator::m_pageOutlineIndent = 0

Definition at line 350 of file htmlgen.h.

m_relPath

m_sectionCount

m_tocState

TocState HtmlGenerator::m_tocState

Definition at line 362 of file htmlgen.h.

Referenced by endLocalToc, endTocEntry, startLocalToc and startTocEntry.

Public Static Functions

getMathJaxMacros()

QCString HtmlGenerator::getMathJaxMacros ()
static

Declaration at line 116 of file htmlgen.h, definition at line 3544 of file htmlgen.cpp.

Reference getConvertLatexMacro.

getNavTreeCss()

QCString HtmlGenerator::getNavTreeCss ()
static

Declaration at line 117 of file htmlgen.h, definition at line 3549 of file htmlgen.cpp.

3550{
3552 return replaceVariables(mgr.getAsString("navtree.css"));
3553}

References ResourceMgr::getAsString, ResourceMgr::instance and replaceVariables.

Referenced by init.

init()

void HtmlGenerator::init ()
static

Declaration at line 105 of file htmlgen.h, definition at line 1136 of file htmlgen.cpp.

1137{
1138 QCString dname = Config_getString(HTML_OUTPUT);
1139 Dir d(dname.str());
1140 if (!d.exists() && !d.mkdir(dname.str()))
1141 {
1142 term("Could not create output directory {}\n",dname);
1143 }
1144 //writeLogo(dname);
1145 if (!Config_getString(HTML_HEADER).isEmpty())
1146 {
1147 g_header_file=Config_getString(HTML_HEADER);
1149 //printf("g_header='%s'\n",qPrint(g_header));
1151 checkBlocks(result,Config_getString(HTML_HEADER),htmlMarkerInfo);
1152 }
1153 else
1154 {
1155 g_header_file="header.html";
1158 checkBlocks(result,"<default header.html>",htmlMarkerInfo);
1159 }
1160
1161 if (!Config_getString(HTML_FOOTER).isEmpty())
1162 {
1163 g_footer_file=Config_getString(HTML_FOOTER);
1165 //printf("g_footer='%s'\n",qPrint(g_footer));
1167 checkBlocks(result,Config_getString(HTML_FOOTER),htmlMarkerInfo);
1168 }
1169 else
1170 {
1171 g_footer_file = "footer.html";
1174 checkBlocks(result,"<default footer.html>",htmlMarkerInfo);
1175 }
1176
1177 if (Config_getBool(USE_MATHJAX))
1178 {
1179 if (!Config_getString(MATHJAX_CODEFILE).isEmpty())
1180 {
1182 //printf("g_mathjax_code='%s'\n",qPrint(g_mathjax_code));
1183 }
1185 //printf("converted g_latex_macro='%s'\n",qPrint(g_latex_macro));
1186 }
1187 createSubDirs(d);
1188
1190
1192
1193 {
1194 QCString tabsCss;
1195 if (Config_getBool(HTML_DYNAMIC_MENUS))
1196 {
1197 tabsCss = mgr.getAsString("tabs.css");
1198 }
1199 else // stylesheet for the 'old' static tabs
1200 {
1201 tabsCss = mgr.getAsString("fixed_tabs.css");
1202 }
1203
1204 std::ofstream f = Portable::openOutputStream(dname+"/tabs.css");
1205 if (f.is_open())
1206 {
1207 TextStream t(&f);
1208 t << replaceVariables(tabsCss);
1209 }
1210 }
1211
1212
1213 mgr.copyResource("jquery.js",dname);
1214 if (Config_getBool(INTERACTIVE_SVG))
1215 {
1216 mgr.copyResource("svg.min.js",dname);
1217 }
1218
1219 if (!Config_getBool(DISABLE_INDEX) && Config_getBool(HTML_DYNAMIC_MENUS))
1220 {
1221 mgr.copyResource("menu.js",dname);
1222 }
1223
1224 // copy navtree.css
1225 {
1226 std::ofstream f = Portable::openOutputStream(dname+"/navtree.css");
1227 if (f.is_open())
1228 {
1229 TextStream t(&f);
1230 t << getNavTreeCss();
1231 }
1232 }
1233
1234 if (Config_getBool(HTML_COPY_CLIPBOARD))
1235 {
1236 std::ofstream f = Portable::openOutputStream(dname+"/clipboard.js");
1237 if (f.is_open())
1238 {
1239 TextStream t(&f);
1240 t << substitute(mgr.getAsString("clipboard.js"),"$copy_to_clipboard_text",theTranslator->trCopyToClipboard());
1241 }
1242 }
1243
1244 bool hasCookie = Config_getBool(GENERATE_TREEVIEW) || Config_getBool(SEARCHENGINE) || Config_getEnum(HTML_COLORSTYLE)==HTML_COLORSTYLE_t::TOGGLE;
1245 if (hasCookie)
1246 {
1247 mgr.copyResource("cookie.js",dname);
1248 }
1249
1250 if (Config_getBool(HTML_COLORSTYLE)==HTML_COLORSTYLE_t::TOGGLE)
1251 {
1252 std::ofstream f = Portable::openOutputStream(dname+"/darkmode_toggle.js");
1253 if (f.is_open())
1254 {
1255 TextStream t(&f);
1256 t << substitute(replaceColorMarkers(mgr.getAsString("darkmode_toggle.js")),
1257 "$PROJECTID",getProjectId());
1258 }
1259 }
1260
1261 {
1262 std::ofstream f = Portable::openOutputStream(dname+"/dynsections.js");
1263 if (f.is_open())
1264 {
1265 TextStream t(&f);
1266 t << replaceVariables(mgr.getAsString("dynsections.js"));
1267 if (Config_getBool(SOURCE_BROWSER) && Config_getBool(SOURCE_TOOLTIPS))
1268 {
1269 t << replaceVariables(mgr.getAsString("dynsections_tooltips.js"));
1270 }
1271 }
1272 }
1273}

References checkBlocks, Config_getBool, Config_getEnum, Config_getString, ResourceMgr::copyResource, createSubDirs, Dir::exists, fileToString, fillColorStyleMaps, g_footer, g_footer_file, g_header, g_header_file, g_latex_macro, g_mathjax_code, ResourceMgr::getAsString, getConvertLatexMacro, getNavTreeCss, getProjectId, htmlMarkerInfo, ResourceMgr::instance, Dir::mkdir, Portable::openOutputStream, replaceColorMarkers, replaceVariables, QCString::str, substitute, substituteHtmlKeywords, term and theTranslator.

Referenced by generateOutput.

writeExternalSearchPage()

void HtmlGenerator::writeExternalSearchPage ()
static

Declaration at line 113 of file htmlgen.h, definition at line 3168 of file htmlgen.cpp.

3169{
3170 bool disableIndex = Config_getBool(DISABLE_INDEX);
3171 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
3172 bool fullSidebar = Config_getBool(FULL_SIDEBAR);
3173 bool quickLinksAfterSplitbar = !disableIndex && generateTreeView && fullSidebar;
3174 QCString dname = Config_getString(HTML_OUTPUT);
3176 std::ofstream f = Portable::openOutputStream(fileName);
3177 if (f.is_open())
3178 {
3179 TextStream t(&f);
3181
3182 t << "<!-- " << theTranslator->trGeneratedBy() << " Doxygen "
3183 << getDoxygenVersion() << " -->\n";
3184 t << "<script type=\"text/javascript\">\n";
3185 t << "var searchBox = new SearchBox(\"searchBox\", \""
3186 << "search/\",'" << Doxygen::htmlFileExtension << "');\n";
3187 t << "</script>\n";
3188
3189 if (!disableIndex && !quickLinksAfterSplitbar)
3190 {
3192 }
3193 if (generateTreeView)
3194 {
3195 t << "</div><!-- top -->\n";
3196 }
3197 t << writeSplitBarAsString("search.php",QCString(),QCString());
3198 if (quickLinksAfterSplitbar)
3199 {
3201 }
3202
3203 t << "<div class=\"header\">\n";
3204 t << " <div class=\"headertitle\">\n";
3205 t << " <div class=\"title\">" << theTranslator->trSearchResultsTitle() << "</div>\n";
3206 t << " </div>\n";
3207 t << "</div>\n";
3208 t << "<div class=\"contents\">\n";
3209
3210 t << "<div id=\"searchresults\"></div>\n";
3211 t << "</div>\n";
3212
3213 if (generateTreeView)
3214 {
3215 t << "</div><!-- doc-content -->\n";
3216 t << "</div><!-- container -->\n";
3217 }
3218
3219 writePageFooter(t,"Search","","");
3220
3221 }
3222 f.close();
3223
3224 QCString scriptName = dname+"/search/search.js";
3225 f = Portable::openOutputStream(scriptName);
3226 if (f.is_open())
3227 {
3228 TextStream t(&f);
3229 t << "var searchResultsText=["
3230 << "\"" << theTranslator->trSearchResults(0) << "\","
3231 << "\"" << theTranslator->trSearchResults(1) << "\","
3232 << "\"" << theTranslator->trSearchResults(2) << "\"];\n";
3233 t << "var serverUrl=\"" << Config_getString(SEARCHENGINE_URL) << "\";\n";
3234 t << "var tagMap = {\n";
3235 bool first=TRUE;
3236 // add search mappings
3237 const StringVector &extraSearchMappings = Config_getList(EXTRA_SEARCH_MAPPINGS);
3238 for (const auto &ml : extraSearchMappings)
3239 {
3240 QCString mapLine = ml.c_str();
3241 int eqPos = mapLine.find('=');
3242 if (eqPos!=-1) // tag command contains a destination
3243 {
3244 QCString tagName = mapLine.left(eqPos).stripWhiteSpace();
3245 QCString destName = mapLine.right(mapLine.length()-eqPos-1).stripWhiteSpace();
3246 if (!tagName.isEmpty())
3247 {
3248 if (!first) t << ",\n";
3249 t << " \"" << tagName << "\": \"" << destName << "\"";
3250 first=FALSE;
3251 }
3252 }
3253 }
3254 if (!first) t << "\n";
3255 t << "};\n\n";
3256 t << ResourceMgr::instance().getAsString("extsearch.js");
3257 t << "\n";
3258 t << "$(function() {\n";
3259 t << " var query = trim(getURLParameter('query'));\n";
3260 t << " if (query) {\n";
3261 t << " searchFor(query,0,20);\n";
3262 t << " } else {\n";
3263 t << " var results = $('#results');\n";
3264 t << " results.html('<p>" << theTranslator->trSearchResults(0) << "</p>');\n";
3265 t << " }\n";
3266 t << "});\n";
3267 }
3268 else
3269 {
3270 err("Failed to open file '{}' for writing...\n",scriptName);
3271 }
3272}

References Config_getBool, Config_getList, Config_getString, err, FALSE, OutputGenerator::fileName, QCString::find, g_header, g_header_file, ResourceMgr::getAsString, Doxygen::htmlFileExtension, ResourceMgr::instance, QCString::isEmpty, QCString::left, QCString::length, Portable::openOutputStream, QCString::right, Search, QCString::stripWhiteSpace, substituteHtmlKeywords, theTranslator, TRUE, writeDefaultQuickLinks, writePageFooter and writeSplitBarAsString.

Referenced by generateOutput.

writeFooterFile()

void HtmlGenerator::writeFooterFile (TextStream & t)
static

Declaration at line 108 of file htmlgen.h, definition at line 1440 of file htmlgen.cpp.

1441{
1442 t << "<!-- HTML footer for doxygen " << getDoxygenVersion() << "-->\n";
1443 t << ResourceMgr::instance().getAsString("footer.html");
1444}

References ResourceMgr::getAsString and ResourceMgr::instance.

Referenced by readConfiguration.

writeHeaderFile()

void HtmlGenerator::writeHeaderFile (TextStream & t, const QCString & cssname)
static

Declaration at line 107 of file htmlgen.h, definition at line 1434 of file htmlgen.cpp.

1435{
1436 t << "<!-- HTML header for doxygen " << getDoxygenVersion() << "-->\n";
1437 t << ResourceMgr::instance().getAsString("header.html");
1438}

References ResourceMgr::getAsString and ResourceMgr::instance.

Referenced by readConfiguration.

writeLogoAsString()

QCString HtmlGenerator::writeLogoAsString (const QCString & path)
static

Declaration at line 114 of file htmlgen.h, definition at line 1523 of file htmlgen.cpp.

1524{
1525 QCString result;
1526 switch (Config_getEnum(TIMESTAMP))
1527 {
1528 case TIMESTAMP_t::NO:
1529 result = theTranslator->trGeneratedBy();
1530 break;
1531 default:
1532 result = theTranslator->trGeneratedAt("<span class=\"timestamp\"></span>",
1533 convertToHtml(Config_getString(PROJECT_NAME)));
1534 break;
1535 }
1536 result += "&#160;\n<a href=\"https://www.doxygen.org/index.html\">\n"
1537 "<img class=\"footer\" src=\"";
1538 result += path;
1539 result += "doxygen.svg\" width=\"104\" height=\"31\" alt=\"doxygen\"/></a> ";
1540 result += getDoxygenVersion();
1541 result += " ";
1542 return result;
1543}

References Config_getEnum, Config_getString, convertToHtml and theTranslator.

Referenced by writeLogo and writeSearchPage.

writeSearchData()

void HtmlGenerator::writeSearchData (const QCString & dir)
static

Declaration at line 111 of file htmlgen.h, definition at line 1292 of file htmlgen.cpp.

1293{
1294 //bool serverBasedSearch = Config_getBool(SERVER_BASED_SEARCH);
1295 //writeImgData(dname,serverBasedSearch ? search_server_data : search_client_data);
1297
1298 QCString searchDirName = dname;
1299 std::ofstream f = Portable::openOutputStream(searchDirName+"/search.css");
1300 if (f.is_open())
1301 {
1302 TextStream t(&f);
1303 QCString searchCss;
1304 // the position of the search box depends on a number of settings.
1305 // Insert the right piece of CSS code depending on which options are selected
1306 if (Config_getBool(GENERATE_TREEVIEW) && Config_getBool(FULL_SIDEBAR))
1307 {
1308 searchCss = mgr.getAsString("search_sidebar.css"); // we have a full height side bar
1309 }
1310 else if (Config_getBool(DISABLE_INDEX))
1311 {
1312 if (Config_getBool(HTML_COLORSTYLE)==HTML_COLORSTYLE_t::TOGGLE)
1313 {
1314 searchCss = mgr.getAsString("search_nomenu_toggle.css"); // we have no tabs but do have a darkmode button
1315 }
1316 else
1317 {
1318 searchCss = mgr.getAsString("search_nomenu.css"); // we have no tabs and no darkmode button
1319 }
1320 }
1321 else if (!Config_getBool(HTML_DYNAMIC_MENUS))
1322 {
1323 searchCss = mgr.getAsString("search_fixedtabs.css"); // we have tabs, but they are static
1324 }
1325 else
1326 {
1327 searchCss = mgr.getAsString("search.css"); // default case with a dynamic menu bar
1328 }
1329 // and then add the option independent part of the styling
1330 searchCss += mgr.getAsString("search_common.css");
1331 searchCss = substitute(searchCss,"$doxygenversion",getDoxygenVersion());
1332 t << replaceVariables(searchCss);
1333 Doxygen::indexList->addStyleSheetFile("search/search.css");
1334 }
1335}

References Config_getBool, ResourceMgr::getAsString, Doxygen::indexList, ResourceMgr::instance, Portable::openOutputStream, replaceVariables and substitute.

Referenced by generateOutput.

writeSearchInfoStatic()

void HtmlGenerator::writeSearchInfoStatic (TextStream & t, const QCString & relPath)
static

Declaration at line 110 of file htmlgen.h, definition at line 1487 of file htmlgen.cpp.

1488{
1489 bool searchEngine = Config_getBool(SEARCHENGINE);
1490 bool serverBasedSearch = Config_getBool(SERVER_BASED_SEARCH);
1491 if (searchEngine && !serverBasedSearch)
1492 {
1493 t << "<!-- window showing the filter options -->\n";
1494 t << "<div id=\"MSearchSelectWindow\"\n";
1495 t << " onmouseover=\"return searchBox.OnSearchSelectShow()\"\n";
1496 t << " onmouseout=\"return searchBox.OnSearchSelectHide()\"\n";
1497 t << " onkeydown=\"return searchBox.OnSearchSelectKey(event)\">\n";
1498 t << "</div>\n";
1499 t << "\n";
1500 t << "<!-- iframe showing the search results (closed by default) -->\n";
1501 t << "<div id=\"MSearchResultsWindow\">\n";
1502 t << "<div id=\"MSearchResults\">\n";
1503 t << "<div class=\"SRPage\">\n";
1504 t << "<div id=\"SRIndex\">\n";
1505 t << "<div id=\"SRResults\"></div>\n"; // here the results will be inserted
1506 t << "<div class=\"SRStatus\" id=\"Loading\">" << theTranslator->trLoading() << "</div>\n";
1507 t << "<div class=\"SRStatus\" id=\"Searching\">" << theTranslator->trSearching() << "</div>\n";
1508 t << "<div class=\"SRStatus\" id=\"NoMatches\">" << theTranslator->trNoMatches() << "</div>\n";
1509 t << "</div>\n"; // SRIndex
1510 t << "</div>\n"; // SRPage
1511 t << "</div>\n"; // MSearchResults
1512 t << "</div>\n"; // MSearchResultsWindow
1513 t << "\n";
1514 }
1515}

References Config_getBool and theTranslator.

Referenced by writeSearchInfo.

writeSearchPage()

void HtmlGenerator::writeSearchPage ()
static

Declaration at line 112 of file htmlgen.h, definition at line 3069 of file htmlgen.cpp.

3070{
3071 bool disableIndex = Config_getBool(DISABLE_INDEX);
3072 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
3073 bool fullSidebar = Config_getBool(FULL_SIDEBAR);
3074 bool quickLinksAfterSplitbar = !disableIndex && generateTreeView && fullSidebar;
3075 QCString projectName = Config_getString(PROJECT_NAME);
3076 QCString htmlOutput = Config_getString(HTML_OUTPUT);
3077
3078 // OPENSEARCH_PROVIDER {
3079 QCString configFileName = htmlOutput+"/search_config.php";
3080 std::ofstream f = Portable::openOutputStream(configFileName);
3081 if (f.is_open())
3082 {
3083 TextStream t(&f);
3084 t << "<?php\n\n";
3085 t << "$config = array(\n";
3086 t << " 'PROJECT_NAME' => \"" << convertToHtml(projectName) << "\",\n";
3087 t << " 'GENERATE_TREEVIEW' => " << (generateTreeView?"true":"false") << ",\n";
3088 t << " 'DISABLE_INDEX' => " << (disableIndex?"true":"false") << ",\n";
3089 t << " 'FULL_SIDEBAR' => " << (fullSidebar?"true":"false") << ",\n";
3090 t << ");\n\n";
3091 t << "$translator = array(\n";
3092 t << " 'search_results_title' => \"" << theTranslator->trSearchResultsTitle() << "\",\n";
3093 t << " 'search_results' => array(\n";
3094 t << " 0 => \"" << theTranslator->trSearchResults(0) << "\",\n";
3095 t << " 1 => \"" << theTranslator->trSearchResults(1) << "\",\n";
3096 t << " 2 => \"" << substitute(theTranslator->trSearchResults(2), "$", "\\$") << "\",\n";
3097 t << " ),\n";
3098 t << " 'search_matches' => \"" << theTranslator->trSearchMatches() << "\",\n";
3099 t << " 'search' => \"" << theTranslator->trSearch() << "\",\n";
3100 t << " 'logo' => \"" << substitute(substitute(writeLogoAsString(""), "\"","\\\""), "\n","\\n") << "\",\n";
3101 t << ");\n\n";
3102 t << "?>\n";
3103 }
3104 f.close();
3105
3106 ResourceMgr::instance().copyResource("search_functions.php",htmlOutput);
3107 ResourceMgr::instance().copyResource("search_opensearch.php",htmlOutput);
3108 // OPENSEARCH_PROVIDER }
3109
3110 QCString fileName = htmlOutput+"/search.php";
3112 if (f.is_open())
3113 {
3114 TextStream t(&f);
3116
3117 t << "<!-- " << theTranslator->trGeneratedBy() << " Doxygen "
3118 << getDoxygenVersion() << " -->\n";
3119 t << "<script type=\"text/javascript\">\n";
3120 t << "var searchBox = new SearchBox(\"searchBox\", \""
3121 << "search/\",'" << Doxygen::htmlFileExtension << "');\n";
3122 t << "</script>\n";
3123
3124 if (!disableIndex && !quickLinksAfterSplitbar)
3125 {
3127 }
3128 if (generateTreeView)
3129 {
3130 t << "</div><!-- top -->\n";
3131 }
3132 t << writeSplitBarAsString("search.php",QCString(),QCString());
3133 if (quickLinksAfterSplitbar)
3134 {
3136 }
3137 t << "<!-- generated -->\n";
3138
3139 t << "<?php\n";
3140 t << "require_once \"search_functions.php\";\n";
3141 t << "main();\n";
3142 t << "?>\n";
3143
3144 // Write empty navigation path, to make footer connect properly
3145 if (generateTreeView)
3146 {
3147 t << "</div><!-- doc-content -->\n";
3148 t << "</div><!-- container -->\n";
3149 }
3150
3151 writePageFooter(t,"Search","","");
3152 }
3153 f.close();
3154
3155 QCString scriptName = htmlOutput+"/search/search.js";
3156 f = Portable::openOutputStream(scriptName);
3157 if (f.is_open())
3158 {
3159 TextStream t(&f);
3160 t << ResourceMgr::instance().getAsString("extsearch.js");
3161 }
3162 else
3163 {
3164 err("Failed to open file '{}' for writing...\n",scriptName);
3165 }
3166}

References Config_getBool, Config_getString, convertToHtml, ResourceMgr::copyResource, err, OutputGenerator::fileName, g_header, g_header_file, ResourceMgr::getAsString, Doxygen::htmlFileExtension, ResourceMgr::instance, Portable::openOutputStream, Search, substitute, substituteHtmlKeywords, theTranslator, writeDefaultQuickLinks, writeLogoAsString, writePageFooter and writeSplitBarAsString.

Referenced by generateOutput.

writeSplitBarAsString()

QCString HtmlGenerator::writeSplitBarAsString (const QCString & name, const QCString & relpath, const QCString & allMembersFile)
static

Declaration at line 115 of file htmlgen.h, definition at line 2998 of file htmlgen.cpp.

2998QCString HtmlGenerator::writeSplitBarAsString(const QCString &name,const QCString &relpath,const QCString &allMembersFile)
2999{
3000 bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
3001 QCString result;
3002 // write split bar
3003 if (generateTreeView)
3004 {
3005 QCString fn = name;
3007 if (!Config_getBool(FULL_SIDEBAR))
3008 {
3009 result += QCString(
3010 "<div id=\"side-nav\" class=\"ui-resizable side-nav-resizable\">\n");
3011 }
3012 result+=
3013 " <div id=\"nav-tree\">\n"
3014 " <div id=\"nav-tree-contents\">\n"
3015 " <div id=\"nav-sync\" class=\"sync\"></div>\n"
3016 " </div>\n"
3017 " </div>\n"
3018 " <div id=\"splitbar\" style=\"-moz-user-select:none;\" \n"
3019 " class=\"ui-resizable-handle\">\n"
3020 " </div>\n"
3021 "</div>\n"
3022 "<script type=\"text/javascript\">\n"
3023 "$(function(){initNavTree('" + fn + "','" + relpath + "','" + allMembersFile + "'); });\n"
3024 "</script>\n";
3025 if (Config_getBool(DISABLE_INDEX) || !Config_getBool(FULL_SIDEBAR))
3026 {
3027 result+="<div id=\"container\">\n<div id=\"doc-content\">\n";
3028 }
3029 }
3030 return result;
3031}

References addHtmlExtensionIfMissing and Config_getBool.

Referenced by writeExternalSearchPage, writeSearchPage and writeSplitBar.

writeStyleSheetFile()

void HtmlGenerator::writeStyleSheetFile (TextStream & t)
static

Declaration at line 106 of file htmlgen.h, definition at line 1428 of file htmlgen.cpp.

References fillColorStyleMaps and writeDefaultStyleSheet.

Referenced by readConfiguration.

writeTabData()

void HtmlGenerator::writeTabData ()
static

Additional initialization after indices have been created.

Declaration at line 109 of file htmlgen.h, definition at line 1283 of file htmlgen.cpp.

1284{
1285 Doxygen::indexList->addStyleSheetFile("tabs.css");
1286 QCString dname=Config_getString(HTML_OUTPUT);
1288 mgr.copyResource("doxygen.svg",dname);
1289 Doxygen::indexList->addImageFile("doxygen.svg");
1290}

References Config_getString, ResourceMgr::copyResource, Doxygen::indexList and ResourceMgr::instance.

Referenced by generateOutput.

Private Static Functions

writePageFooter()

void HtmlGenerator::writePageFooter (TextStream & t, const QCString & lastTitle, const QCString & relPath, const QCString & navPath)
static

Declaration at line 340 of file htmlgen.h, definition at line 1550 of file htmlgen.cpp.

1551 const QCString &relPath,const QCString &navPath)
1552{
1553 t << substituteHtmlKeywords(g_footer_file,g_footer,convertToHtml(lastTitle),relPath,navPath);
1554}

References convertToHtml, g_footer, g_footer_file and substituteHtmlKeywords.

Referenced by writeExternalSearchPage, writeFooter and writeSearchPage.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus by Doxygen 1.14.0.