Doxygen
Loading...
Searching...
No Matches
htmlgen.h
Go to the documentation of this file.
1/******************************************************************************
2 *
3 * Copyright (C) 1997-2023 by Dimitri van Heesch.
4 *
5 * Permission to use, copy, modify, and distribute this software and its
6 * documentation under the terms of the GNU General Public License is hereby
7 * granted. No representations are made about the suitability of this software
8 * for any purpose. It is provided "as is" without express or implied warranty.
9 * See the GNU General Public License for more details.
10 *
11 * Documents produced by Doxygen are derivative works derived from the
12 * input used in their production; they are not affected by this license.
13 *
14 */
15
16#ifndef HTMLGEN_H
17#define HTMLGEN_H
18
19#include "outputgen.h"
20
21/** Generator for HTML code fragments */
23{
24 public:
25 HtmlCodeGenerator(TextStream *t,const DString &relPath);
27
28 void setTextStream(TextStream *t) { m_t = t; }
31
32 OutputType type() const override { return OutputType::Html; }
33 std::unique_ptr<OutputCodeIntf> clone() override { return std::make_unique<HtmlCodeGenerator>(*this); }
34 void codify(const DString &text) override;
35 void stripCodeComments(bool b) override;
36 void startSpecialComment() override;
37 void endSpecialComment() override;
38 void setStripIndentAmount(size_t amount) override;
40 const DString &ref,const DString &file,
41 const DString &anchor,const DString &name,
42 const DString &tooltip) override;
43 void writeTooltip(const DString &id,
44 const DocLinkInfo &docInfo,
45 const DString &decl,
46 const DString &desc,
47 const SourceLinkInfo &defInfo,
48 const SourceLinkInfo &declInfo
49 ) override;
50 void writeLineNumber(const DString &,const DString &,const DString &,int, bool) override;
51 void startCodeLine(int) override;
52 void endCodeLine() override;
53 void startFontClass(const DString &s) override;
54 void endFontClass() override;
55 void writeCodeAnchor(const DString &anchor) override;
56 void startCodeFragment(const DString &style) override;
57 void endCodeFragment(const DString &) override;
58 void startFold(int,const DString &,const DString &) override;
59 void endFold() override;
60
61 void setRelativePath(const DString &path);
62 private:
63 void _writeCodeLink(const DString &className,
64 const DString &ref,const DString &file,
65 const DString &anchor,const DString &name,
66 const DString &tooltip);
67 void _startOpenLine();
68 //void docify(const DString &str);
70 size_t m_col = 0;
73 bool m_lineOpen = false;
74 bool m_stripCodeComments = false;
75 bool m_hide = false;
76 struct LineInfo
77 {
79 LineInfo(const DString &r,const DString &f,const DString &a,int l,bool wa)
80 : ref(r), fileName(f), anchor(a), line(l), writeAnchor(wa) {}
84 int line = -1;
85 bool writeAnchor = false;
86 };
89};
90
91/** Generator for HTML output */
92class HtmlGenerator final : public OutputGenerator, public OutputGenIntf
93{
94 public:
101
102 static void init();
103 static void writeStyleSheetFile(TextStream &t);
104 static void writeHeaderFile(TextStream &t, const DString &cssname);
105 static void writeFooterFile(TextStream &t);
106 static void writeTabData();
107 static void writeSearchInfoStatic(TextStream &t,const DString &relPath);
108 static void writeSearchData(const DString &dir);
109 static void writeSearchPage();
110 static void writeExternalSearchPage();
111 static DString writeLogoAsString(const DString &path);
112 static DString writeSplitBarAsString(const DString &name,const DString &relpath,const DString &allMembersFile);
113 static DString getNavTreeCss();
114 static DString fixSpaces(const DString &s);
116
117 //---------------------------------------------------------------------
118
119 OutputType type() const override { return OutputType::Html; }
120 std::unique_ptr<OutputGenIntf> clone() override { return std::make_unique<HtmlGenerator>(*this); }
121 void addCodeGen(OutputCodeList &list) override;
122 void cleanup() override;
123 void writeDoc(const IDocNodeAST *node,const Definition *,const MemberDef *,int id,int sectionLevel) override;
124 void startFile(const DString &name,bool isSource,const DString &manName,const DString &title,int id, int hierarchyLevel) override;
125 void endFile() override;
126
127 void writeFooter(const DString &navPath) override;
128 void writeSearchInfo() override;
129
132 void writePageLink(const DString &,bool) override {}
133 void startProjectNumber() override;
134 void endProjectNumber() override;
135 void writeStyleInfo(int part) override;
136 void startTitleHead(const DString &) override;
137 void endTitleHead(const DString &,const DString &) override;
138
139 void startParagraph(const DString &classDef) override;
140 void endParagraph() override;
141 void writeString(const DString &text) override;
142 void startIndexListItem() override;
143 void endIndexListItem() override;
144 void startIndexList() override;
145 void endIndexList() override;
146 void startIndexKey() override;
147 void endIndexKey() override;
148 void startIndexValue(bool) override;
149 void endIndexValue(const DString &,bool) override;
150 void startItemList() override { m_t << "<ul>\n"; }
151 void endItemList() override { m_t << "</ul>\n"; }
152 void startIndexItem(const DString &ref,const DString &file) override;
153 void endIndexItem(const DString &ref,const DString &file) override;
154 void docify(const DString &text) override;
155
156 void writeObjectLink(const DString &ref,const DString &file,
157 const DString &anchor,const DString &name) override;
158
159 void startTextLink(const DString &file,const DString &anchor) override;
160 void endTextLink() override;
161 void startTypewriter() override { m_t << "<code>"; }
162 void endTypewriter() override { m_t << "</code>"; }
163 void startGroupHeader(const DString &,int) override;
164 void endGroupHeader(int) override;
165 void startItemListItem() override { m_t << "<li>"; }
166 void endItemListItem() override { m_t << "</li>\n"; }
167
168 void startMemberSections() override;
169 void endMemberSections() override;
170 void startHeaderSection() override;
171 void endHeaderSection() override;
172 void startMemberHeader(const DString &, int) override;
173 void endMemberHeader() override;
174 void startMemberSubtitle() override;
175 void endMemberSubtitle() override;
176 void startMemberDocList() override;
177 void endMemberDocList() override;
178 void startMemberList() override;
179 void endMemberList() override;
180 void startInlineHeader() override;
181 void endInlineHeader() override;
182 void startAnonTypeScope(int) override {}
183 void endAnonTypeScope(int) override {}
184 void startMemberItem(const DString &anchor,MemberItemType,const DString &inheritId) override;
185 void endMemberItem(MemberItemType) override;
186 void startMemberTemplateParams() override;
187 void endMemberTemplateParams(const DString &anchor,const DString &inheritId) override;
188 void startCompoundTemplateParams() override;
189 void endCompoundTemplateParams() override;
190
191 void startMemberGroupHeader(const DString &,bool) override;
192 void endMemberGroupHeader(bool) override;
193 void startMemberGroupDocs() override;
194 void endMemberGroupDocs() override;
195 void startMemberGroup() override;
196 void endMemberGroup(bool) override;
197
198 void insertMemberAlign(bool) override;
199 void insertMemberAlignLeft(MemberItemType,bool) override;
200 void startMemberDescription(const DString &anchor,const DString &inheritId, bool typ) override;
201 void endMemberDescription() override;
202 void startMemberDeclaration() override {}
203 void endMemberDeclaration(const DString &anchor,const DString &inheritId) override;
204 void writeInheritedSectionTitle(const DString &id, const DString &ref,
205 const DString &file, const DString &anchor,
206 const DString &title,const DString &name) override;
207
208 void writeRuler() override { m_t << "<hr/>"; }
209 void writeAnchor(const DString &,const DString &name)
210 override { m_t << "<a name=\"" << name <<"\" id=\"" << name << "\"></a>"; }
211 void startEmphasis() override { m_t << "<em>"; }
212 void endEmphasis() override { m_t << "</em>"; }
213 void startBold() override { m_t << "<b>"; }
214 void endBold() override { m_t << "</b>"; }
215 void startDescForItem() override { m_t << "<dd>"; }
216 void endDescForItem() override { m_t << "</dd>\n"; }
217 void lineBreak(const DString &style) override;
218 void writeChar(char c) override;
219 void startMemberDoc(const DString &clName, const DString &memName,
220 const DString &anchor, const DString &title,
221 int memCount, int memTotal, bool showInline) override;
222 void endMemberDoc(bool) override;
223 void startDoxyAnchor(const DString &fName,const DString &manName,
224 const DString &anchor,const DString &name,
225 const DString &args) override;
226 void endDoxyAnchor(const DString &fName,const DString &anchor) override;
227 void addLabel(const DString &,const DString &) override;
228 void writeLatexSpacing() override {}
229 void writeStartAnnoItem(const DString &type,const DString &file,
230 const DString &path,const DString &name) override;
231 void startCenter() override { m_t << "<center>\n"; }
232 void endCenter() override { m_t << "</center>\n"; }
233 void startSmall() override { m_t << "<small>\n"; }
234 void endSmall() override { m_t << "</small>\n"; }
235 void startExamples() override;
236 void endExamples() override;
237 void startSection(const DString &,const DString &,SectionType) override;
238 void endSection(const DString &,SectionType) override;
239 void addIndexItem(const DString &,const DString &) override;
240 void startIndent() override;
241 void endIndent() override;
242 void writeSynopsis() override {}
243 void startClassDiagram() override;
244 void endClassDiagram(const ClassDiagram &,const DString &,const DString &) override;
245 void startPageRef() override {}
246 void endPageRef(const DString &,const DString &) override {}
247 void startQuickIndices() override {}
248 void endQuickIndices() override;
249 void writeSplitBar(const DString &name,const DString &allMembersFile) override;
250 void writeNavigationPath(const DString &s) override;
251 void writeLogo() override;
252 void writeQuickLinks(HighlightedItem hli,const DString &file,bool extraTabs) override;
253 void writeSummaryLink(const DString &file,const DString &anchor,const DString &title,bool first) override;
254 void writePageOutline() override;
255 void startContents() override;
256 void endContents() override;
257 void startPageDoc(const DString &pageTitle) override;
258 void endPageDoc() override;
259 void writeNonBreakableSpace(int) override;
260
261 void startDescTable(const DString &title,const bool hasInits) override;
262 void endDescTable() override;
263 void startDescTableRow() override;
264 void endDescTableRow() override;
265 void startDescTableTitle() override;
266 void endDescTableTitle() override;
267 void startDescTableInit() override;
268 void endDescTableInit() override;
269 void startDescTableData() override;
270 void endDescTableData() override;
271
272 void startDotGraph() override;
273 void endDotGraph(DotClassGraph &g) override;
274 void startInclDepGraph() override;
275 void endInclDepGraph(DotInclDepGraph &g) override;
276 void startGroupCollaboration() override;
278 void startCallGraph() override;
279 void endCallGraph(DotCallGraph &g) override;
280 void startDirDepGraph() override;
281 void endDirDepGraph(DotDirDeps &g) override;
283
284 void startTextBlock(bool) override { m_t << "<div class=\"textblock\">"; }
285 void endTextBlock(bool) override { m_t << "</div>"; }
286 void lastIndexPage() override {}
287
288 void startMemberDocPrefixItem() override;
289 void endMemberDocPrefixItem() override;
290 void startMemberDocName(bool) override;
291 void endMemberDocName() override;
292 void startParameterType(bool first,const DString &key) override;
293 void endParameterType() override;
294 void startParameterName(bool) override;
295 void endParameterName() override;
296 void startParameterExtra() override;
297 void endParameterExtra(bool last,bool emptyList,bool closeBracket) override;
298 void startParameterDefVal(const char *sep) override;
299 void endParameterDefVal() override;
300 void startParameterList(bool) override;
301 void endParameterList() override;
302 void exceptionEntry(const DString &,bool) override;
303
304 void startConstraintList(const DString &) override;
305 void startConstraintParam() override;
306 void endConstraintParam() override;
307 void startConstraintType() override;
308 void endConstraintType() override;
309 void startConstraintDocs() override;
310 void endConstraintDocs() override;
311 void endConstraintList() override;
312
313 void startMemberDocSimple(bool) override;
314 void endMemberDocSimple(bool) override;
315 void startInlineMemberType() override;
316 void endInlineMemberType() override;
317 void startInlineMemberName() override;
318 void endInlineMemberName() override;
319 void startInlineMemberDoc() override;
320 void endInlineMemberDoc() override;
321
322 void startLabels() override;
323 void writeLabel(const DString &l,bool isLast) override;
324 void endLabels() override;
325
326 void startLocalToc(int level) override;
327 void endLocalToc() override;
328 void startTocEntry(const SectionInfo *si) override;
329 void endTocEntry(const SectionInfo *si) override;
330
331 void startPlainFile(const DString &name) override { OutputGenerator::startPlainFile(name); }
333
334 void startEmbeddedDoc(size_t) override;
335 void endEmbeddedDoc() override;
336
337 private:
338 void startTitle() { m_t << "<div class=\"title\">"; }
339 void endTitle() { m_t << "</div>"; }
340 static void writePageFooter(TextStream &t,const DString &,const DString &,const DString &);
341 void docify_(const DString &text,bool inHtmlComment);
342
347 bool m_emptySection = false;
348 std::unique_ptr<OutputCodeList> m_codeList;
351
352 struct TocState
353 {
354 int level = 0;
355 int indent = 0;
356 int maxLevel = 0;
358 void writeIndent(TextStream &t) { for (int i=0;i<indent*2;i++) t << " "; }
359 void incIndent(TextStream &t,const DString &text) { writeIndent(t); t << text << "\n"; indent++; }
360 void decIndent(TextStream &t,const DString &text) { indent--; writeIndent(t); t << text << "\n"; }
361 };
363};
364
365#endif
Class representing a built-in class diagram.
Definition diagram.h:29
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
Definition dstring.h:88
The common base class of all entity definitions found in the sources.
Definition definition.h:77
Representation of an call graph.
Representation of a class inheritance or dependency graph.
Representation of an directory dependency graph.
Definition dotdirdeps.h:27
Represents a graphical class hierarchy.
Representation of a group collaboration graph.
Representation of an include dependency graph.
Generator for HTML code fragments.
Definition htmlgen.h:23
bool m_stripCodeComments
Definition htmlgen.h:74
void codify(const DString &text) override
Definition htmlgen.cpp:849
void startSpecialComment() override
Definition htmlgen.cpp:939
HtmlCodeGenerator(TextStream *t, const DString &relPath)
Definition htmlgen.cpp:838
void endCodeLine() override
Definition htmlgen.cpp:1124
DString fileName()
Definition htmlgen.h:30
size_t m_stripIndentAmount
Definition htmlgen.h:88
void writeCodeLink(CodeSymbolType type, const DString &ref, const DString &file, const DString &anchor, const DString &name, const DString &tooltip) override
Definition htmlgen.cpp:988
void startCodeFragment(const DString &style) override
Definition htmlgen.cpp:1158
void startFold(int, const DString &, const DString &) override
Definition htmlgen.cpp:1175
void _writeCodeLink(const DString &className, const DString &ref, const DString &file, const DString &anchor, const DString &name, const DString &tooltip)
Definition htmlgen.cpp:1004
void startCodeLine(int) override
Definition htmlgen.cpp:1112
void setFileName(const DString fileName)
Definition htmlgen.h:29
void endFold() override
Definition htmlgen.cpp:1211
void startFontClass(const DString &s) override
Definition htmlgen.cpp:1140
DString m_fileName
Definition htmlgen.h:72
void writeLineNumber(const DString &, const DString &, const DString &, int, bool) override
Definition htmlgen.cpp:956
void setRelativePath(const DString &path)
Definition htmlgen.cpp:844
void setStripIndentAmount(size_t amount) override
Definition htmlgen.cpp:951
void endSpecialComment() override
Definition htmlgen.cpp:945
void endFontClass() override
Definition htmlgen.cpp:1146
void writeCodeAnchor(const DString &anchor) override
Definition htmlgen.cpp:1152
DString m_relPath
Definition htmlgen.h:71
std::unique_ptr< OutputCodeIntf > clone() override
Definition htmlgen.h:33
TextStream * m_t
Definition htmlgen.h:69
void setTextStream(TextStream *t)
Definition htmlgen.h:28
void writeTooltip(const DString &id, const DocLinkInfo &docInfo, const DString &decl, const DString &desc, const SourceLinkInfo &defInfo, const SourceLinkInfo &declInfo) override
Definition htmlgen.cpp:1032
void endCodeFragment(const DString &) override
Definition htmlgen.cpp:1163
LineInfo m_lastLineInfo
Definition htmlgen.h:87
void stripCodeComments(bool b) override
Definition htmlgen.cpp:934
OutputType type() const override
Definition htmlgen.h:32
void startClassDiagram() override
Definition htmlgen.cpp:2173
void docify(const DString &text) override
Definition htmlgen.cpp:2054
static void writeSearchData(const DString &dir)
Definition htmlgen.cpp:1462
void startDescTable(const DString &title, const bool hasInits) override
Definition htmlgen.cpp:2766
void writeLogo() override
Definition htmlgen.cpp:1738
void startDescForItem() override
Definition htmlgen.h:215
static DString getNavTreeCss()
Definition htmlgen.cpp:3773
void endParameterExtra(bool last, bool emptyList, bool closeBracket) override
Definition htmlgen.cpp:2529
static void init()
Definition htmlgen.cpp:1282
void startTocEntry(const SectionInfo *si) override
Definition htmlgen.cpp:3806
void writeQuickLinks(HighlightedItem hli, const DString &file, bool extraTabs) override
Definition htmlgen.cpp:3273
void startInlineMemberName() override
Definition htmlgen.cpp:3604
void endDescTableInit() override
Definition htmlgen.cpp:2801
void startMemberGroupHeader(const DString &, bool) override
Definition htmlgen.cpp:2713
void startTitle()
Definition htmlgen.h:338
void startInlineMemberType() override
Definition htmlgen.cpp:3592
void endDescTable() override
Definition htmlgen.cpp:2771
void startEmphasis() override
Definition htmlgen.h:211
void startParameterDefVal(const char *sep) override
Definition htmlgen.cpp:2553
void startIndexKey() override
Definition htmlgen.cpp:2406
void endClassDiagram(const ClassDiagram &, const DString &, const DString &) override
Definition htmlgen.cpp:2178
void writePageLink(const DString &, bool) override
Definition htmlgen.h:132
void startParameterName(bool) override
Definition htmlgen.cpp:2512
void startDoxyAnchor(const DString &fName, const DString &manName, const DString &anchor, const DString &name, const DString &args) override
Definition htmlgen.cpp:1847
static void writeSearchPage()
Definition htmlgen.cpp:3279
void startInclDepGraph() override
Definition htmlgen.cpp:2636
void insertMemberAlignLeft(MemberItemType, bool) override
Definition htmlgen.cpp:2292
void startGroupHeader(const DString &, int) override
Definition htmlgen.cpp:1986
void startMemberSubtitle() override
Definition htmlgen.cpp:2379
void startMemberDeclaration() override
Definition htmlgen.h:202
HtmlGenerator & operator=(const HtmlGenerator &)
Definition htmlgen.cpp:1248
void startTextLink(const DString &file, const DString &anchor) override
Definition htmlgen.cpp:1969
void startItemListItem() override
Definition htmlgen.h:165
void endAnonTypeScope(int) override
Definition htmlgen.h:183
int m_sectionCount
Definition htmlgen.h:346
void startMemberDocName(bool) override
Definition htmlgen.cpp:2465
void startParagraph(const DString &classDef) override
Definition htmlgen.cpp:1862
void endParameterType() override
Definition htmlgen.cpp:2506
void startLabels() override
Definition htmlgen.cpp:3640
void startCallGraph() override
Definition htmlgen.cpp:2672
TocState m_tocState
Definition htmlgen.h:362
void endMemberList() override
Definition htmlgen.cpp:2217
void endIndexList() override
Definition htmlgen.cpp:2401
void writeSearchInfo() override
Definition htmlgen.cpp:1710
void startCenter() override
Definition htmlgen.h:231
void startContents() override
Definition htmlgen.cpp:3253
void startDescTableRow() override
Definition htmlgen.cpp:2776
void startBold() override
Definition htmlgen.h:213
void startDirDepGraph() override
Definition htmlgen.cpp:2690
void startCompoundTemplateParams() override
Definition htmlgen.cpp:2276
void startConstraintParam() override
Definition htmlgen.cpp:3490
void endGroupHeader(int) override
Definition htmlgen.cpp:2007
void startTypewriter() override
Definition htmlgen.h:161
void endEmphasis() override
Definition htmlgen.h:212
void writeRuler() override
Definition htmlgen.h:208
void writeChar(char c) override
Definition htmlgen.cpp:2096
void endConstraintList() override
Definition htmlgen.cpp:3520
void endParameterList() override
Definition htmlgen.cpp:2565
static void writePageFooter(TextStream &t, const DString &, const DString &, const DString &)
Definition htmlgen.cpp:1743
void startDotGraph() override
Definition htmlgen.cpp:2602
void writeLatexSpacing() override
Definition htmlgen.h:228
void endIndent() override
Definition htmlgen.cpp:2748
void writeSplitBar(const DString &name, const DString &allMembersFile) override
Definition htmlgen.cpp:3243
void endParameterName() override
Definition htmlgen.cpp:2518
void endPageDoc() override
Definition htmlgen.cpp:3268
void startMemberDocList() override
Definition htmlgen.cpp:2426
void endDescTableRow() override
Definition htmlgen.cpp:2781
void startQuickIndices() override
Definition htmlgen.h:247
void startDescTableInit() override
Definition htmlgen.cpp:2796
void startMemberDescription(const DString &anchor, const DString &inheritId, bool typ) override
Definition htmlgen.cpp:2304
void startLocalToc(int level) override
Definition htmlgen.cpp:3784
void startMemberList() override
Definition htmlgen.cpp:2212
static void writeHeaderFile(TextStream &t, const DString &cssname)
Definition htmlgen.cpp:1630
void endQuickIndices() override
Definition htmlgen.cpp:3199
void startHeaderSection() override
Definition htmlgen.cpp:3540
void startDescTableTitle() override
Definition htmlgen.cpp:2786
void endIndexValue(const DString &, bool) override
Definition htmlgen.cpp:2421
void startMemberDoc(const DString &clName, const DString &memName, const DString &anchor, const DString &title, int memCount, int memTotal, bool showInline) override
Definition htmlgen.cpp:2436
void endDirDepGraph(DotDirDeps &g) override
Definition htmlgen.cpp:2695
void endSmall() override
Definition htmlgen.h:234
void startIndexList() override
Definition htmlgen.cpp:2396
void endItemListItem() override
Definition htmlgen.h:166
void startEmbeddedDoc(size_t) override
Definition htmlgen.cpp:3628
void endParameterDefVal() override
Definition htmlgen.cpp:2560
void endMemberGroup(bool) override
Definition htmlgen.cpp:2737
void lineBreak(const DString &style) override
Definition htmlgen.cpp:3528
void endInlineHeader() override
Definition htmlgen.cpp:3572
void writeSynopsis() override
Definition htmlgen.h:242
void endEmbeddedDoc() override
Definition htmlgen.cpp:3634
void startPageDoc(const DString &pageTitle) override
Definition htmlgen.cpp:3263
static void writeFooterFile(TextStream &t)
Definition htmlgen.cpp:1636
void endMemberDescription() override
Definition htmlgen.cpp:2325
void startGroupCollaboration() override
Definition htmlgen.cpp:2654
void endConstraintDocs() override
Definition htmlgen.cpp:3515
void writeNonBreakableSpace(int) override
Definition htmlgen.cpp:2758
void endMemberGroupHeader(bool) override
Definition htmlgen.cpp:2718
DString m_lastTitle
Definition htmlgen.h:343
void writePageOutline() override
Definition htmlgen.cpp:3758
void startInlineMemberDoc() override
Definition htmlgen.cpp:3616
static void writeTabData()
Additional initialization after indices have been created.
Definition htmlgen.cpp:1446
void endExamples() override
Definition htmlgen.cpp:2823
void endIndexKey() override
Definition htmlgen.cpp:2411
void addLabel(const DString &, const DString &) override
Definition htmlgen.cpp:1858
HtmlGenerator(HtmlGenerator &&)=delete
void endMemberDocName() override
Definition htmlgen.cpp:2475
void endContents() override
Definition htmlgen.cpp:3258
void endInlineMemberType() override
Definition htmlgen.cpp:3598
void writeLabel(const DString &l, bool isLast) override
Definition htmlgen.cpp:3646
void startMemberGroupDocs() override
Definition htmlgen.cpp:2723
void startMemberDocSimple(bool) override
Definition htmlgen.cpp:3577
DString m_lastFile
Definition htmlgen.h:344
void endDescForItem() override
Definition htmlgen.h:216
OutputType type() const override
Definition htmlgen.h:119
void endHeaderSection() override
Definition htmlgen.cpp:3557
void startIndent() override
Definition htmlgen.cpp:2741
void writeStyleInfo(int part) override
Definition htmlgen.cpp:1769
int m_pageOutlineIndent
Definition htmlgen.h:350
void endMemberGroupDocs() override
Definition htmlgen.cpp:2728
void cleanup() override
Definition htmlgen.cpp:1438
void endDotGraph(DotClassGraph &g) override
Definition htmlgen.cpp:2607
void endMemberDeclaration(const DString &anchor, const DString &inheritId) override
Definition htmlgen.cpp:3769
void startIndexSection(IndexSection) override
Definition htmlgen.h:130
void endMemberHeader() override
Definition htmlgen.cpp:2373
void startMemberItem(const DString &anchor, MemberItemType, const DString &inheritId) override
Definition htmlgen.cpp:2226
void endTextLink() override
Definition htmlgen.cpp:1981
void startConstraintList(const DString &) override
Definition htmlgen.cpp:3483
void startMemberSections() override
Definition htmlgen.cpp:2331
void startTitleHead(const DString &) override
Definition htmlgen.cpp:3545
void endMemberSections() override
Definition htmlgen.cpp:2339
void endMemberDocList() override
Definition htmlgen.cpp:2431
void endCompoundTemplateParams() override
Definition htmlgen.cpp:2281
void addIndexItem(const DString &, const DString &) override
Definition htmlgen.cpp:2754
static void writeExternalSearchPage()
Definition htmlgen.cpp:3378
void startSection(const DString &, const DString &, SectionType) override
Definition htmlgen.cpp:2023
void endDescTableData() override
Definition htmlgen.cpp:2811
void writeSummaryLink(const DString &file, const DString &anchor, const DString &title, bool first) override
Definition htmlgen.cpp:3731
void endCenter() override
Definition htmlgen.h:232
void startDescTableData() override
Definition htmlgen.cpp:2806
void endParagraph() override
Definition htmlgen.cpp:1870
void insertMemberAlign(bool) override
Definition htmlgen.cpp:2286
static void writeStyleSheetFile(TextStream &t)
Definition htmlgen.cpp:1624
DString m_relPath
Definition htmlgen.h:345
void endPageRef(const DString &, const DString &) override
Definition htmlgen.h:246
void startMemberTemplateParams() override
Definition htmlgen.cpp:2259
void writeFooter(const DString &navPath) override
Definition htmlgen.cpp:1749
void endLabels() override
Definition htmlgen.cpp:3686
HtmlCodeGenerator * m_codeGen
Definition htmlgen.h:349
HtmlGenerator & operator=(HtmlGenerator &&)=delete
void startIndexItem(const DString &ref, const DString &file) override
Definition htmlgen.cpp:1890
void startMemberHeader(const DString &, int) override
Definition htmlgen.cpp:2348
void startIndexValue(bool) override
Definition htmlgen.cpp:2416
void endGroupCollaboration(DotGroupCollaboration &g) override
Definition htmlgen.cpp:2659
void endSection(const DString &, SectionType) override
Definition htmlgen.cpp:2039
void endLocalToc() override
Definition htmlgen.cpp:3794
std::unique_ptr< OutputCodeList > m_codeList
Definition htmlgen.h:348
void startConstraintType() override
Definition htmlgen.cpp:3500
void endConstraintParam() override
Definition htmlgen.cpp:3495
void endMemberTemplateParams(const DString &anchor, const DString &inheritId) override
Definition htmlgen.cpp:2263
void addCodeGen(OutputCodeList &list) override
Definition htmlgen.cpp:1268
void startConstraintDocs() override
Definition htmlgen.cpp:3510
void lastIndexPage() override
Definition htmlgen.h:286
void docify_(const DString &text, bool inHtmlComment)
Definition htmlgen.cpp:2059
void endPlainFile() override
Definition htmlgen.h:332
void startIndexListItem() override
Definition htmlgen.cpp:1880
void endProjectNumber() override
Definition htmlgen.cpp:1764
void startPageRef() override
Definition htmlgen.h:245
void endBold() override
Definition htmlgen.h:214
void writeDoc(const IDocNodeAST *node, const Definition *, const MemberDef *, int id, int sectionLevel) override
Definition htmlgen.cpp:2828
void endMemberDocPrefixItem() override
Definition htmlgen.cpp:2459
void endDescTableTitle() override
Definition htmlgen.cpp:2791
void endInclDepGraph(DotInclDepGraph &g) override
Definition htmlgen.cpp:2641
void startParameterExtra() override
Definition htmlgen.cpp:2524
void writeNavigationPath(const DString &s) override
Definition htmlgen.cpp:3248
static DString writeLogoAsString(const DString &path)
Definition htmlgen.cpp:1716
void startProjectNumber() override
Definition htmlgen.cpp:1759
void endIndexSection(IndexSection) override
Definition htmlgen.h:131
void endDoxyAnchor(const DString &fName, const DString &anchor) override
Definition htmlgen.cpp:1854
void startPlainFile(const DString &name) override
Definition htmlgen.h:331
void writeString(const DString &text) override
Definition htmlgen.cpp:1875
void writeGraphicalHierarchy(DotGfxHierarchyTable &g) override
Definition htmlgen.cpp:2708
void startExamples() override
Definition htmlgen.cpp:2816
void endTitleHead(const DString &, const DString &) override
Definition htmlgen.cpp:3551
void writeInheritedSectionTitle(const DString &id, const DString &ref, const DString &file, const DString &anchor, const DString &title, const DString &name) override
Definition htmlgen.cpp:3692
std::unique_ptr< OutputGenIntf > clone() override
Definition htmlgen.h:120
void startAnonTypeScope(int) override
Definition htmlgen.h:182
void endTextBlock(bool) override
Definition htmlgen.h:285
void writeStartAnnoItem(const DString &type, const DString &file, const DString &path, const DString &name) override
Definition htmlgen.cpp:1933
void startTextBlock(bool) override
Definition htmlgen.h:284
bool m_emptySection
Definition htmlgen.h:347
void endInlineMemberDoc() override
Definition htmlgen.cpp:3622
void endCallGraph(DotCallGraph &g) override
Definition htmlgen.cpp:2677
void endConstraintType() override
Definition htmlgen.cpp:3505
void endMemberSubtitle() override
Definition htmlgen.cpp:2390
void endTitle()
Definition htmlgen.h:339
void startMemberDocPrefixItem() override
Definition htmlgen.cpp:2453
void endTocEntry(const SectionInfo *si) override
Definition htmlgen.cpp:3850
void endMemberItem(MemberItemType) override
Definition htmlgen.cpp:2250
void startMemberGroup() override
Definition htmlgen.cpp:2733
void endMemberDoc(bool) override
Definition htmlgen.cpp:2591
static void writeSearchInfoStatic(TextStream &t, const DString &relPath)
Definition htmlgen.cpp:1683
void endIndexItem(const DString &ref, const DString &file) override
Definition htmlgen.cpp:1920
void startInlineHeader() override
Definition htmlgen.cpp:3562
void endInlineMemberName() override
Definition htmlgen.cpp:3610
void endMemberDocSimple(bool) override
Definition htmlgen.cpp:3586
static DString fixSpaces(const DString &s)
Definition htmlgen.cpp:3779
void exceptionEntry(const DString &, bool) override
Definition htmlgen.cpp:2572
void clearBuffer()
void writeObjectLink(const DString &ref, const DString &file, const DString &anchor, const DString &name) override
Definition htmlgen.cpp:1945
void endIndexListItem() override
Definition htmlgen.cpp:1885
void startParameterList(bool) override
Definition htmlgen.cpp:2481
void writeAnchor(const DString &, const DString &name) override
Definition htmlgen.h:209
void endTypewriter() override
Definition htmlgen.h:162
void startSmall() override
Definition htmlgen.h:233
static DString writeSplitBarAsString(const DString &name, const DString &relpath, const DString &allMembersFile)
Definition htmlgen.cpp:3209
void startItemList() override
Definition htmlgen.h:150
void endItemList() override
Definition htmlgen.h:151
void startParameterType(bool first, const DString &key) override
Definition htmlgen.cpp:2489
opaque representation of the abstract syntax tree (AST)
Definition docparser.h:50
A model of a class/file/namespace member symbol.
Definition memberdef.h:45
OutputCodeIntf()=default
Class representing a list of different code generators.
Definition outputlist.h:162
Abstract interface for output generators.
Definition outputgen.h:124
DString dir() const
Definition outputgen.cpp:50
void startPlainFile(const DString &name)
Definition outputgen.cpp:30
void endPlainFile()
Definition outputgen.cpp:42
TextStream m_t
Definition outputgen.h:113
class that provide information about a section.
Definition section.h:58
Text streaming class that buffers data.
Definition textstream.h:36
std::vector< bool > BoolVector
Definition containers.h:36
void endFile(OutputList &ol, bool skipNavIndex, bool skipEndContents, const DString &navPath)
Definition index.cpp:430
void startFile(OutputList &ol, const DString &name, bool isSource, const DString &manName, const DString &title, HighlightedItem hli, bool additionalIndices, const DString &altSidebarName, int hierarchyLevel, const DString &allMembersFile)
Definition index.cpp:404
HighlightedItem
Definition index.h:58
IndexSection
Definition index.h:31
OutputType
Definition outputgen.h:56
LineInfo(const DString &r, const DString &f, const DString &a, int l, bool wa)
Definition htmlgen.h:79
void writeIndent(TextStream &t)
Definition htmlgen.h:358
void incIndent(TextStream &t, const DString &text)
Definition htmlgen.h:359
void decIndent(TextStream &t, const DString &text)
Definition htmlgen.h:360
CodeSymbolType
Definition types.h:481