Root/
Source at commit 1322 created 12 years 8 months ago. By meklort, Add doxygen to utils folder | |
---|---|
1 | /******************************************************************************␊ |
2 | *␊ |
3 | * $Id: htmlgen.h,v 1.15 1998/11/28 11:33:19 root Exp $␊ |
4 | *␊ |
5 | * Copyright (C) 1997-2011 by Dimitri van Heesch.␊ |
6 | *␊ |
7 | * Permission to use, copy, modify, and distribute this software and its␊ |
8 | * documentation under the terms of the GNU General Public License is hereby ␊ |
9 | * granted. No representations are made about the suitability of this software ␊ |
10 | * for any purpose. It is provided "as is" without express or implied warranty.␊ |
11 | * See the GNU General Public License for more details.␊ |
12 | *␊ |
13 | * Documents produced by Doxygen are derivative works derived from the␊ |
14 | * input used in their production; they are not affected by this license.␊ |
15 | *␊ |
16 | */␊ |
17 | ␊ |
18 | #ifndef MANGEN_H␊ |
19 | #define MANGEN_H␊ |
20 | ␊ |
21 | #include "outputgen.h"␊ |
22 | ␊ |
23 | class QFile;␊ |
24 | ␊ |
25 | class ManGenerator : public OutputGenerator␊ |
26 | {␊ |
27 | public:␊ |
28 | ManGenerator();␊ |
29 | ~ManGenerator();␊ |
30 | ␊ |
31 | //OutputGenerator *copy() { return new ManGenerator; } ␊ |
32 | //OutputGenerator *clone() { return new ManGenerator(*this); }␊ |
33 | //void append(const OutputGenerator *o);␊ |
34 | void enable() ␊ |
35 | { if (genStack->top()) active=*genStack->top(); else active=TRUE; }␊ |
36 | void disable() { active=FALSE; }␊ |
37 | void enableIf(OutputType o) { if (o==Man) active=TRUE; }␊ |
38 | void disableIf(OutputType o) { if (o==Man) active=FALSE; }␊ |
39 | void disableIfNot(OutputType o) { if (o!=Man) active=FALSE; }␊ |
40 | bool isEnabled(OutputType o) { return (o==Man && active); } ␊ |
41 | OutputGenerator *get(OutputType o) { return (o==Man) ? this : 0; }␊ |
42 | ␊ |
43 | void printDoc(DocNode *,const char *);␊ |
44 | ␊ |
45 | static void init();␊ |
46 | void startFile(const char *name,const char *manName,const char *title);␊ |
47 | void writeFooter() {}␊ |
48 | void endFile();␊ |
49 | void clearBuffer();␊ |
50 | ␊ |
51 | void startIndexSection(IndexSections) {}␊ |
52 | void endIndexSection(IndexSections) {}␊ |
53 | void writePageLink(const char *,bool) {}␊ |
54 | void startProjectNumber() {}␊ |
55 | void endProjectNumber() {}␊ |
56 | void writeStyleInfo(int) {}␊ |
57 | void startTitleHead(const char *) {}␊ |
58 | void endTitleHead(const char *,const char *);␊ |
59 | void startTitle();␊ |
60 | void endTitle();␊ |
61 | ␊ |
62 | void newParagraph();␊ |
63 | void startParagraph();␊ |
64 | void endParagraph();␊ |
65 | void writeString(const char *text);␊ |
66 | void startIndexListItem() {}␊ |
67 | void endIndexListItem() {}␊ |
68 | void startIndexList() {}␊ |
69 | void endIndexList() { newParagraph(); } ␊ |
70 | void startIndexKey() {}␊ |
71 | void endIndexKey() {} ␊ |
72 | void startIndexValue(bool) {}␊ |
73 | void endIndexValue(const char *,bool) {} ␊ |
74 | void startItemList() {}␊ |
75 | void endItemList() { newParagraph(); }␊ |
76 | void startIndexItem(const char *ref,const char *file);␊ |
77 | void endIndexItem(const char *ref,const char *file);␊ |
78 | void docify(const char *text);␊ |
79 | void codify(const char *text);␊ |
80 | void writeObjectLink(const char *ref,const char *file,␊ |
81 | const char *anchor,const char *name);␊ |
82 | void writeCodeLink(const char *ref,const char *file,␊ |
83 | const char *anchor,const char *name,␊ |
84 | const char *tooltip);␊ |
85 | void startTextLink(const char *,const char *) {}␊ |
86 | void endTextLink() {}␊ |
87 | void startHtmlLink(const char *url);␊ |
88 | void endHtmlLink();␊ |
89 | void startTypewriter() { t << "\\fC"; firstCol=FALSE; }␊ |
90 | void endTypewriter() { t << "\\fP"; firstCol=FALSE; }␊ |
91 | void startGroupHeader(int);␊ |
92 | void endGroupHeader(int);␊ |
93 | void startMemberSections() {}␊ |
94 | void endMemberSections() {}␊ |
95 | void startHeaderSection() {}␊ |
96 | void endHeaderSection() {}␊ |
97 | void startMemberHeader(const char *);␊ |
98 | void endMemberHeader();␊ |
99 | void insertMemberAlign(bool) {}␊ |
100 | void startMemberSubtitle() {}␊ |
101 | void endMemberSubtitle() {}␊ |
102 | //void writeListItem();␊ |
103 | void startItemListItem();␊ |
104 | void endItemListItem();␊ |
105 | void startMemberDocList() {}␊ |
106 | void endMemberDocList() {}␊ |
107 | void startMemberList();␊ |
108 | void endMemberList();␊ |
109 | void startInlineDescription();␊ |
110 | void endInlineDescription();␊ |
111 | void startInlineHeader();␊ |
112 | void endInlineHeader();␊ |
113 | void startAnonTypeScope(int);␊ |
114 | void endAnonTypeScope(int);␊ |
115 | void startMemberItem(int);␊ |
116 | void endMemberItem();␊ |
117 | void startMemberTemplateParams() {}␊ |
118 | void endMemberTemplateParams() {}␊ |
119 | ␊ |
120 | void startMemberGroupHeader(bool);␊ |
121 | void endMemberGroupHeader();␊ |
122 | void startMemberGroupDocs();␊ |
123 | void endMemberGroupDocs();␊ |
124 | void startMemberGroup();␊ |
125 | void endMemberGroup(bool);␊ |
126 | ␊ |
127 | void writeRuler() {}␊ |
128 | void writeAnchor(const char *,const char *) {}␊ |
129 | void startCodeFragment();␊ |
130 | void endCodeFragment();␊ |
131 | void writeLineNumber(const char *,const char *,const char *,int l) { t << l << " "; }␊ |
132 | void startCodeLine() {}␊ |
133 | void endCodeLine() { codify("\n"); col=0; }␊ |
134 | void startEmphasis() { t << "\\fI"; firstCol=FALSE; }␊ |
135 | void endEmphasis() { t << "\\fP"; firstCol=FALSE; }␊ |
136 | void startBold() { t << "\\fB"; firstCol=FALSE; }␊ |
137 | void endBold() { t << "\\fP"; firstCol=FALSE; }␊ |
138 | void startDescription() {}␊ |
139 | void endDescription() {}␊ |
140 | void startDescItem();␊ |
141 | void endDescItem();␊ |
142 | void lineBreak(const char *) { t << "\n.br" << endl; }␊ |
143 | void writeChar(char c);␊ |
144 | void startMemberDoc(const char *,const char *,const char *,const char *,bool);␊ |
145 | void endMemberDoc(bool);␊ |
146 | void startDoxyAnchor(const char *,const char *,const char *,const char *,const char *);␊ |
147 | void endDoxyAnchor(const char *,const char *) {}␊ |
148 | void startCodeAnchor(const char *) {}␊ |
149 | void endCodeAnchor() {}␊ |
150 | void writeLatexSpacing() {}␊ |
151 | void writeStartAnnoItem(const char *type,const char *file,␊ |
152 | const char *path,const char *name);␊ |
153 | void writeEndAnnoItem(const char *) { t << endl; firstCol=TRUE; }␊ |
154 | void startSubsection();␊ |
155 | void endSubsection();␊ |
156 | void startSubsubsection();␊ |
157 | void endSubsubsection();␊ |
158 | void startCenter() {}␊ |
159 | void endCenter() {}␊ |
160 | void startSmall() {}␊ |
161 | void endSmall() {}␊ |
162 | void startMemberDescription() { t << "\n.RI \"\\fI"; firstCol=FALSE; }␊ |
163 | void endMemberDescription() { t << "\\fP\""; firstCol=FALSE; }␊ |
164 | void startDescList(SectionTypes);␊ |
165 | void endDescList() {}␊ |
166 | void startSimpleSect(SectionTypes,const char *,const char *,const char *);␊ |
167 | void endSimpleSect();␊ |
168 | void startParamList(ParamListTypes,const char *title);␊ |
169 | void endParamList();␊ |
170 | //void writeDescItem();␊ |
171 | void startDescForItem();␊ |
172 | void endDescForItem();␊ |
173 | void startSection(const char *,const char *,SectionInfo::SectionType);␊ |
174 | void endSection(const char *,SectionInfo::SectionType);␊ |
175 | void addIndexItem(const char *,const char *) {}␊ |
176 | void startIndent() {}␊ |
177 | void endIndent() {}␊ |
178 | void writeSynopsis();␊ |
179 | void startClassDiagram() {}␊ |
180 | void endClassDiagram(const ClassDiagram &,const char *,const char *) {}␊ |
181 | void startPageRef() {}␊ |
182 | void endPageRef(const char *,const char *) {}␊ |
183 | void startQuickIndices() {}␊ |
184 | void endQuickIndices() {}␊ |
185 | void writeSplitBar(const char *) {}␊ |
186 | void writeLogo() {}␊ |
187 | void writeQuickLinks(bool,HighlightedItem) {}␊ |
188 | void startContents() {}␊ |
189 | void endContents() {}␊ |
190 | void writeNonBreakableSpace(int n) { int i; for (i=0;i<n;i++) t << " "; }␊ |
191 | ␊ |
192 | void startDescTable() {}␊ |
193 | void endDescTable() {}␊ |
194 | void startDescTableTitle() { startItemListItem(); startBold(); startEmphasis(); endItemListItem(); }␊ |
195 | void endDescTableTitle() { endEmphasis(); endBold(); }␊ |
196 | void startDescTableData() { t << endl; firstCol=TRUE; }␊ |
197 | void endDescTableData() {}␊ |
198 | ␊ |
199 | void startDotGraph() {}␊ |
200 | void endDotGraph(const DotClassGraph &) {}␊ |
201 | void startInclDepGraph() {}␊ |
202 | void endInclDepGraph(const DotInclDepGraph &) {}␊ |
203 | void startGroupCollaboration() {}␊ |
204 | void endGroupCollaboration(const DotGroupCollaboration &) {}␊ |
205 | void startCallGraph() {}␊ |
206 | void endCallGraph(const DotCallGraph &) {}␊ |
207 | void startDirDepGraph() {} ␊ |
208 | void endDirDepGraph(const DotDirDeps &) {}␊ |
209 | void writeGraphicalHierarchy(const DotGfxHierarchyTable &) {}␊ |
210 | ␊ |
211 | void startTextBlock(bool) {}␊ |
212 | void endTextBlock(bool) {}␊ |
213 | void lastIndexPage() {}␊ |
214 | ␊ |
215 | void startMemberDocPrefixItem() {}␊ |
216 | void endMemberDocPrefixItem() {}␊ |
217 | void startMemberDocName(bool) {}␊ |
218 | void endMemberDocName() {}␊ |
219 | void startParameterType(bool,const char *) {}␊ |
220 | void endParameterType() {}␊ |
221 | void startParameterName(bool) {}␊ |
222 | void endParameterName(bool,bool,bool) {}␊ |
223 | void startParameterList(bool) {}␊ |
224 | void endParameterList() {}␊ |
225 | ␊ |
226 | void startFontClass(const char *) {}␊ |
227 | void endFontClass() {}␊ |
228 | ␊ |
229 | void startConstraintList(const char *);␊ |
230 | void startConstraintParam();␊ |
231 | void endConstraintParam();␊ |
232 | void startConstraintType();␊ |
233 | void endConstraintType();␊ |
234 | void startConstraintDocs();␊ |
235 | void endConstraintDocs();␊ |
236 | void endConstraintList();␊ |
237 | ␊ |
238 | void writeCodeAnchor(const char *) {}␊ |
239 | void linkableSymbol(int,const char *,Definition *,Definition *) {}␊ |
240 | ␊ |
241 | private:␊ |
242 | bool firstCol;␊ |
243 | bool paragraph;␊ |
244 | int col;␊ |
245 | bool upperCase;␊ |
246 | bool insideTabbing;␊ |
247 | bool inHeader;␊ |
248 | ␊ |
249 | ManGenerator(const ManGenerator &g);␊ |
250 | ManGenerator &operator=(const ManGenerator &g);␊ |
251 | };␊ |
252 | ␊ |
253 | #endif␊ |
254 |