1 #############################################################################
3 ## Purpose: Main configuration file for the wxWidgets manual
4 ## Author: Francesco Montorsi
6 ## Licence: wxWindows licence
7 #############################################################################
9 #---------------------------------------------------------------------------
11 #---------------------------------------------------------------------------
13 DOXYFILE_ENCODING = UTF-8
14 PROJECT_NAME = wxWidgets
15 PROJECT_NUMBER = 2.9.3
16 OUTPUT_DIRECTORY = out
18 OUTPUT_LANGUAGE = English
19 BRIEF_MEMBER_DESC = YES
22 ALWAYS_DETAILED_SEC = YES
23 INLINE_INHERITED_MEMB = NO
25 STRIP_FROM_PATH = "$(WXWIDGETS)/"
26 STRIP_FROM_INC_PATH = "$(WXWIDGETS)/include/" \
27 "$(WXWIDGETS)/interface/"
29 JAVADOC_AUTOBRIEF = YES
31 MULTILINE_CPP_IS_BRIEF = NO
33 SEPARATE_MEMBER_PAGES = NO
35 OPTIMIZE_OUTPUT_FOR_C = NO
36 OPTIMIZE_OUTPUT_JAVA = NO
37 OPTIMIZE_FOR_FORTRAN = NO
38 OPTIMIZE_OUTPUT_VHDL = NO
39 BUILTIN_STL_SUPPORT = NO
42 IDL_PROPERTY_SUPPORT = NO
43 DISTRIBUTE_GROUP_DOC = YES
45 TYPEDEF_HIDES_STRUCT = NO
48 # This is the most important part of the wxWidgets Doxyfile; aliases allow
49 # us to keep the headers readable and "implement" wxWidgets-specific commands:
51 #---------------------------------------------------------------------------
52 # Aliases - for use when documenting C++ classes
53 #---------------------------------------------------------------------------
55 # aliases to be used by classes which emit wxEvents (e.g. wxWindow, wxTextCtrl, etc):
56 ALIASES = beginEventEmissionTable="\n<h2>Events emitted by this class</h2><p>Event macros for events emitted by this class:</p><div>"
57 ALIASES += beginEventEmissionTable{1}="\n<h2>Events emitted by this class</h2><p>The following event handler macros redirect the events to member function handlers '<b>func</b>' with prototypes like: <div class='eventHandler'><span>void handlerFuncName(\1& event)</span></div></p>Event macros for events emitted by this class:<div>"
58 ALIASES += beginEventEmissionTable{2}="\n<h2>Events emitted by this class</h2><p>The following event handler macros redirect the events to member function handlers '<b>func</b>' with prototypes like: <div class='eventHandler'><span>void handlerFuncName(\1& event)</span> or <span>void handlerFuncName(\2& event)</span></div></p>Event macros for events emitted by this class:<div>"
60 # aliases to be used in wxEvent-derived classes:
61 ALIASES += beginEventTable{1}="\n<h2>Events using this class</h2><p>The following event handler macros redirect the events to member function handlers '<b>func</b>' with prototypes like: <div class='eventHandler'><span>void handlerFuncName(\1& event)</span></div></p>Event macros:<div>"
62 ALIASES += beginEventTable{2}="\n<h2>Events using this class</h2><p>The following event handler macros redirect the events to member function handlers '<b>func</b>' with prototypes like: <div class='eventHandler'><span>void handlerFuncName(\1& event)</span> or <span>void handlerFuncName(\2& event)</span></div></p>Event macros:<div>"
64 # common event aliases:
65 ALIASES += event{1}="</div>\li <span class='event'>\1</span>:<div class='eventDesc'>"
66 ALIASES += event{2}="</div>\li <span class='event'>\1, \2</span>:<div class='eventDesc'>"
67 ALIASES += event{3}="</div>\li <span class='event'>\1, \2, \3</span>:<div class='eventDesc'>"
68 ALIASES += event{4}="</div>\li <span class='event'>\1, \2, \3, \4</span>:<div class='eventDesc'>"
69 ALIASES += endEventTable="</div>\n"
72 ALIASES += beginStyleTable="\n<h2>Styles</h2><p>This class supports the following styles:</p><div>"
73 ALIASES += style{1}="</div>\li <span class='style'>\1</span>:<div class='styleDesc'>"
74 ALIASES += endStyleTable="</div>\n"
77 ALIASES += beginExtraStyleTable="\n<hr><h2>Extra styles</h2><p>This class supports the following extra styles:</p><div>"
78 ALIASES += endExtraStyleTable="</div>\n"
81 ALIASES += beginFlagTable="<div>"
82 ALIASES += flag{1}="</div>\li <span class='flag'>\1</span>:<div class='flagDesc'>"
83 ALIASES += endFlagTable="</div>\n"
85 # creates appearance section: this should be used for all main GUI controls
86 # that look different in different ports. genericAppearance can be used for the
87 # controls that always look the same.
88 ALIASES += appearance{1}="\htmlonly <br><div><span class='appearance'>Appearance:</span><br><table class='appearance'><tr><td><img src='wxmsw/\1' alt='wxMSW appearance' class='appearance'/></td><td><img src='wxgtk/\1' alt='wxGTK appearance' class='appearance'/></td><td><img src='wxmac/\1' alt='wxMac appearance' class='appearance'/></td></tr><tr><td>wxMSW appearance</td><td>wxGTK appearance</td><td>wxMac appearance</td></tr></table></div> \endhtmlonly"
89 ALIASES += genericAppearance{1}="\htmlonly <br><div><span class='appearance'>Appearance:</span><br><table class='appearance'><tr><td><img src='generic/\1' alt='Generic appearance' class='appearance'/></td></tr></table></div> \endhtmlonly"
91 # aliases for the creation of "named member groups"
92 # USAGE: the first argument must not contain spaces and be a unique identifier
93 # of the member group for the class being documented;
94 # the second argument is the member group name and can contain spaces
95 # See wxString as an usage example.
96 # NOTE: no warnings are given for wrong member group names so be careful and check
97 # the doxygen output to verify that there are no typos
98 ALIASES += member_group_name{2}="<a name='\1'></a> \name \2"
99 ALIASES += ref_member_group{2}="<a href='#\1' class='el'>\2</a>"
102 #---------------------------------------------------------------------------
103 # Aliases - for use when documenting any C++ entity
104 #---------------------------------------------------------------------------
106 # aliases for additional wx-specific infos
107 ALIASES += category{1}="\ingroup group_class_\1 \n<div><span class='category'>Category:</span> <span class='category_text'>\ref group_class_\1</span></div>"
108 ALIASES += category{2}="\ingroup group_class_\1 group_class_\2 \n<div><span class='category'>Category:</span> <span class='category_text'>\ref group_class_\1, \ref group_class_\2</span></div>"
109 ALIASES += category{3}="\ingroup group_class_\1 group_class_\2 group_class_\3 \n<div><span class='category'>Category:</span> <span class='category_text'>\ref group_class_\1, \ref group_class_\2, \ref group_class_\3</span></div>"
110 ALIASES += library{1}="<h2></h2><div><span class='lib'>Library:</span> <span class='lib_text'>\ref page_libs_\1</span></div>"
111 ALIASES += nolibrary="<h2></h2><div><span class='lib'>Library:</span> <span class='lib_text'>None; this class implementation is entirely header-based.</span></div>"
112 ALIASES += stdobjects="<span class='stdobj'>Predefined objects/pointers:</span>"
114 # native implementation infos:
115 ALIASES += nativeimpl{1}="<div><span class='impl'>Implementations:</span> native under \ref page_port_\1 port; a generic implementation is used elsewhere.</div>"
116 ALIASES += nativeimpl{2}="<div><span class='impl'>Implementations:</span> native under \ref page_port_\1, \ref page_port_\2 ports; a generic implementation is used elsewhere.</div>"
117 ALIASES += nativeimpl{3}="<div><span class='impl'>Implementations:</span> native under \ref page_port_\1, \ref page_port_\2, \ref page_port_\3 ports; a generic implementation is used elsewhere.</div>"
118 ALIASES += nativeimpl{4}="<div><span class='impl'>Implementations:</span> native under \ref page_port_\1, \ref page_port_\2, \ref page_port_\3, \ref page_port_\4 ports; a generic implementation is used elsewhere.</div>"
121 # NOTE: we need to be able to retrieve these infos also from the XML output, thus
122 # we use the \xmlonly and \endxmlonly commands to include custom XML tags
123 ALIASES += onlyfor{1}="<div><span class='avail'>Availability:</span> only available for the \ref page_port_\1 port.</div> \xmlonly <onlyfor>\1</onlyfor> \endxmlonly"
124 ALIASES += onlyfor{2}="<div><span class='avail'>Availability:</span> only available for the \ref page_port_\1, \ref page_port_\2 ports.</div> \xmlonly <onlyfor>\1,\2</onlyfor> \endxmlonly"
125 ALIASES += onlyfor{3}="<div><span class='avail'>Availability:</span> only available for the \ref page_port_\1, \ref page_port_\2, \ref page_port_\3 ports.</div> \xmlonly <onlyfor>\1,\2,\3</onlyfor> \endxmlonly"
126 ALIASES += onlyfor{4}="<div><span class='avail'>Availability:</span> only available for the \ref page_port_\1, \ref page_port_\2, \ref page_port_\3, \ref page_port_\4 ports.</div> \xmlonly <onlyfor>\1,\2,\3,\4</onlyfor> \endxmlonly"
128 # Use this in grouped global functions, and macros since they
129 # wouldn't otherwise indicate what header they are defined in.
130 ALIASES += header{1}="Include file:\n \verbatim #include <\1> \endverbatim"
132 # some formatting aliases
133 ALIASES += true="<span class='literal'>true</span>"
134 ALIASES += false="<span class='literal'>false</span>"
135 ALIASES += NULL="<span class='literal'>NULL</span>"
136 ALIASES += NUL="<span class='literal'>NUL</span>"
138 # NOTE: these are important as you can't write in the docs
139 # just #ifdef since the # character is used by Doxygen
140 # for explicit linking; use the following aliases instead!
141 # However to avoid overwriting e.g. \if Doxygen command the _
142 # character is postfixed
143 ALIASES += ifdef_="<span class='literal'>\#ifdef</span>"
144 ALIASES += ifndef_="<span class='literal'>\#ifndef</span>"
145 ALIASES += if_="<span class='literal'>\#if</span>"
146 ALIASES += endif_="<span class='literal'>\#endif</span>"
148 # table aliases for 2 and 3 column tables
149 ALIASES += beginTable="<table class='doctable' border='1' cellspacing='0' cellpadding='3'>"
150 ALIASES += beginInvisibleTable="<table class='doctable' border='0' cellspacing='0' cellpadding='4'>"
151 ALIASES += row2col{2}="<tr><td>\1</td> <td>\2</td></tr>"
152 ALIASES += row2col{3}="<tr><td>\1</td> <td>\2,\3</td></tr>"
153 ALIASES += row2col{4}="<tr><td>\1</td> <td>\2,\3,\4</td></tr>"
154 ALIASES += row2col{5}="<tr><td>\1</td> <td>\2,\3,\4,\5</td></tr>"
155 ALIASES += row2col{6}="<tr><td>\1</td> <td>\2,\3,\4,\5,\6</td></tr>"
156 ALIASES += row2col{7}="<tr><td>\1</td> <td>\2,\3,\4,\5,\6,\7</td></tr>"
157 ALIASES += row2col{8}="<tr><td>\1</td> <td>\2,\3,\4,\5,\6,\7,\8</td></tr>"
158 ALIASES += row2col{9}="<tr><td>\1</td> <td>\2,\3,\4,\5,\6,\7,\8,\9</td></tr>"
159 ALIASES += row2col{10}="<tr><td>\1</td> <td>\2,\3,\4,\5,\6,\7,\8,\9,\10</td></tr>"
160 ALIASES += row3col{3}="<tr><td>\1</td> <td>\2</td> <td>\3</td></tr>"
161 ALIASES += row3col{4}="<tr><td>\1</td> <td>\2</td> <td>\3,\4</td></tr>"
162 ALIASES += row3col{5}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5</td></tr>"
163 ALIASES += row3col{6}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5,\6</td></tr>"
164 ALIASES += row3col{7}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5,\6,\7</td></tr>"
165 ALIASES += row3col{8}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5,\6,\7,\8</td></tr>"
166 ALIASES += row3col{9}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5,\6,\7,\8,\9</td></tr>"
167 ALIASES += row3col{10}="<tr><td>\1</td> <td>\2</td> <td>\3,\4,\5,\6,\7,\8,\9,\10</td></tr>"
168 ALIASES += hdr3col{3}="<tr><th>\1</th> <th>\2</th> <th>\3</th></tr>"
169 ALIASES += endTable="</table>"
171 # definition list aliases
172 # a definition list currently is rendered as 2-column table but it may use as
173 # well the <dl>, <dt> and <dd> HTML tags in future.
174 # In any case a definition list differs from a table because of its semantic
175 # nature and because it is always the association of a "title" with a "description"
176 # (in contrast a table may have more than 2 columns of data)...
177 ALIASES += beginDefList="<table class='doclist' border='1' cellspacing='0'>"
178 ALIASES += itemdef{2}="<tr><td><span class='itemdef'>\1</span></td> <td>\2</td></tr>"
179 ALIASES += itemdef{3}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3</td></tr>"
180 ALIASES += itemdef{4}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4</td></tr>"
181 ALIASES += itemdef{5}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5</td></tr>"
182 ALIASES += itemdef{6}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5,\6</td></tr>"
183 ALIASES += itemdef{7}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5,\6,\7</td></tr>"
184 ALIASES += itemdef{8}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5,\6,\7,\8</td></tr>"
185 ALIASES += itemdef{9}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5,\6,\7,\8,\9</td></tr>"
186 ALIASES += itemdef{10}="<tr><td><span class='itemdef'>\1</span></td> <td>\2,\3,\4,\5,\6,\7,\8,\9,\10</td></tr>"
187 ALIASES += endDefList="</table>"
188 ALIASES += stock{3}="<tr><td><span class='itemdef'>\1</span></td> <td> @image html gtk-\2.png\n</td><td>\3</td></tr>"
190 #---------------------------------------------------------------------------
191 # Aliases - for use when documenting wxPerl/wxPython-specific parts
192 #---------------------------------------------------------------------------
194 # See ENABLED_SECTIONS configuration key for more info about these:
195 ALIASES += beginWxPerlOnly="\if WXPERL_MANUAL <b>wxPerl Note:</b> "
196 ALIASES += endWxPerlOnly="\endif"
197 ALIASES += beginWxPythonOnly="\if WXPYTHON_MANUAL <b>wxPython Note:</b> "
198 ALIASES += endWxPythonOnly="\endif"
200 # This is to get around a bug in Doxygen that prevents use of '{' or '}'
201 # inside of any aliased command in parameters.
202 ALIASES += leftCurly="{"
203 ALIASES += rightCurly="}"
205 #---------------------------------------------------------------------------
206 # Aliases - for use when documenting samples
207 #---------------------------------------------------------------------------
209 # For indicating a sample location
210 ALIASES += sampledir{1}="@e Location: @c samples/\1 subdirectory of your wxWidgets installation or http://svn.wxwidgets.org/viewvc/wx/wxWidgets/trunk/\1"
212 # For refering to the corresponding sample in a class document or a overview
213 # Usually placed in the queue of @see
214 ALIASES += sample{1}="\ref page_samples_\1"
216 # For generating a general description for a sample
217 # \1 could be a class or an overview or a descriptive sentence
218 # Shall be replaced by manual written description soon
219 ALIASES += sampleabout{1}="This sample demonstrates \1."
221 # For indicating the necessary condition of a sample or a class
222 # \1 is the wxUSE_XXX macro
223 ALIASES += buildwith{1}="<b>Build Note:</b> You may need to build the wxWidgets library with <tt>\1</tt> being set to 1 to be able to make it work, please read comments in @c <wx/setup_inc.h> for more info."
224 ALIASES += buildwith{2}="<b>Build Note:</b> You may need to build the wxWidgets library with <tt>\1</tt> and <tt>\2</tt> being set to 1 to be able to make it work, please read comments in @c <wx/setup_inc.h> for more info."
226 #---------------------------------------------------------------------------
228 #---------------------------------------------------------------------------
233 EXTRACT_LOCAL_CLASSES = YES
234 EXTRACT_LOCAL_METHODS = NO
235 EXTRACT_ANON_NSPACES = YES
236 HIDE_UNDOC_MEMBERS = NO
237 HIDE_UNDOC_CLASSES = NO
238 HIDE_FRIEND_COMPOUNDS = NO
239 HIDE_IN_BODY_DOCS = NO
241 CASE_SENSE_NAMES = NO
242 HIDE_SCOPE_NAMES = NO
243 SHOW_INCLUDE_FILES = YES
245 SORT_MEMBER_DOCS = YES
246 SORT_BRIEF_DOCS = NO # Don't set to YES, it renders our named groups out of order.
247 SORT_GROUP_NAMES = YES
248 SORT_BY_SCOPE_NAME = NO
249 GENERATE_TODOLIST = YES
250 GENERATE_TESTLIST = YES
251 GENERATE_BUGLIST = YES
252 GENERATE_DEPRECATEDLIST= YES
254 # can contain WXPERL_MANUAL, WXPYTHON_MANUAL keywords
255 ENABLED_SECTIONS = WXPERL_MANUAL WXPYTHON_MANUAL
257 MAX_INITIALIZER_LINES = 30
259 SHOW_DIRECTORIES = YES
262 FILE_VERSION_FILTER =
263 LAYOUT_FILE = DoxygenLayout.xml
265 #---------------------------------------------------------------------------
266 # Warning and Progress Message Options
267 #---------------------------------------------------------------------------
271 WARN_IF_UNDOCUMENTED = YES
272 WARN_IF_DOC_ERROR = YES
273 WARN_NO_PARAMDOC = YES
274 WARN_FORMAT = "$file:$line: $text "
275 WARN_LOGFILE = doxygen.log
277 #---------------------------------------------------------------------------
279 #---------------------------------------------------------------------------
281 INPUT = ./mainpages ./groups ./overviews ../../interface
282 INPUT_ENCODING = UTF-8
283 FILE_PATTERNS = *.h *.txt
286 EXCLUDE_SYMLINKS = NO
291 EXAMPLE_RECURSIVE = NO
295 FILTER_SOURCE_FILES = NO
297 #---------------------------------------------------------------------------
298 # Source Browsing Options
299 #---------------------------------------------------------------------------
303 STRIP_CODE_COMMENTS = YES
304 REFERENCED_BY_RELATION = NO
305 REFERENCES_RELATION = NO
306 REFERENCES_LINK_SOURCE = YES
308 VERBATIM_HEADERS = NO
310 #---------------------------------------------------------------------------
311 # Alphabetical Class Index Options
312 #---------------------------------------------------------------------------
314 ALPHABETICAL_INDEX = YES
315 COLS_IN_ALPHA_INDEX = 5
318 #---------------------------------------------------------------------------
319 # configuration options related to the HTML output
320 #---------------------------------------------------------------------------
321 GENERATE_HTML = NO # Only change in format output configs
323 HTML_FILE_EXTENSION = .html
324 HTML_HEADER = htmlheader.inc
325 HTML_FOOTER = htmlfooter.inc
327 HTML_ALIGN_MEMBERS = YES
328 HTML_DYNAMIC_SECTIONS = YES
329 GENERATE_DOCSET = NO # Only change in format output configs
330 DOCSET_FEEDNAME = "wxWidgets 2.9"
331 DOCSET_BUNDLE_ID = org.wxwidgets.doxygen.wx29
332 DOCSET_PUBLISHER_ID = org.wxwidgets.doxygen
333 DOCSET_PUBLISHER_NAME = wxWidgets Team
334 GENERATE_HTMLHELP = NO # Only change in format output configs
335 CHM_FILE = ..\wx.chm # NOTE: Windows style separator needed
336 HHC_LOCATION = hhc.exe # Don't modify, see Doxyfile_chm for info
342 QHP_NAMESPACE = org.wxwidgets.doxygen
343 QHP_VIRTUAL_FOLDER = doc
346 ENUM_VALUES_PER_LINE = 1
347 GENERATE_TREEVIEW = NONE
349 FORMULA_FONTSIZE = 10
351 #---------------------------------------------------------------------------
352 # LaTeX Output Options
353 #---------------------------------------------------------------------------
355 GENERATE_LATEX = NO # Only change in format output configs
357 LATEX_CMD_NAME = latex
358 MAKEINDEX_CMD_NAME = makeindex
362 LATEX_HEADER = latexdocstart.inc
365 LATEX_BATCHMODE = YES
366 LATEX_HIDE_INDICES = NO
368 #---------------------------------------------------------------------------
370 #---------------------------------------------------------------------------
372 GENERATE_RTF = NO # Only change in format output configs
376 RTF_STYLESHEET_FILE =
377 RTF_EXTENSIONS_FILE =
379 #---------------------------------------------------------------------------
380 # Man Page Output Options
381 #---------------------------------------------------------------------------
383 GENERATE_MAN = NO # Only change in format output configs
388 #---------------------------------------------------------------------------
390 #---------------------------------------------------------------------------
392 GENERATE_XML = NO # Only change in format output configs
396 XML_PROGRAMLISTING = NO
398 #---------------------------------------------------------------------------
399 # AutoGen Definitions Output Options
400 #---------------------------------------------------------------------------
402 GENERATE_AUTOGEN_DEF = NO # Only change in format output configs
404 #---------------------------------------------------------------------------
405 # Perl Module Output Options
406 #---------------------------------------------------------------------------
408 GENERATE_PERLMOD = NO # Only change in format output configs
411 PERLMOD_MAKEVAR_PREFIX =
413 #---------------------------------------------------------------------------
414 # Preprocessor Options
415 #---------------------------------------------------------------------------
417 ENABLE_PREPROCESSING = YES
419 EXPAND_ONLY_PREDEF = NO
420 SEARCH_INCLUDES = YES
422 INCLUDE_FILE_PATTERNS =
425 SKIP_FUNCTION_MACROS = YES
427 #---------------------------------------------------------------------------
428 # Additions Related to External References
429 #---------------------------------------------------------------------------
434 EXTERNAL_GROUPS = YES
435 PERL_PATH = /usr/bin/perl
437 #---------------------------------------------------------------------------
439 #---------------------------------------------------------------------------
443 HIDE_UNDOC_RELATIONS = YES
445 DOT_FONTNAME = FreeSans
449 COLLABORATION_GRAPH = NO
452 TEMPLATE_RELATIONS = NO
454 INCLUDED_BY_GRAPH = NO
457 GRAPHICAL_HIERARCHY = NO
459 DOT_IMAGE_FORMAT = png
461 DOT_GRAPH_MAX_NODES = 50
462 MAX_DOT_GRAPH_DEPTH = 1000
464 DOT_MULTI_TARGETS = NO
465 GENERATE_LEGEND = YES
468 # instead of setting a value for DOT_PATH it's easier and more portable to
469 # put your dot utility in the PATH; if you are on a Unix system this is usually
470 # done automatically; if you're on Windows you'll need to install GraphViz tools
471 # and then manually add it to the PATH environment variable
474 #---------------------------------------------------------------------------
475 # Search Engine Options
476 #---------------------------------------------------------------------------