Commit 10d977e2 authored by dimitri's avatar dimitri

Release-1.8.4

parent 7b57ba3c
DOXYGEN Version 1.8.3.1-20130512 DOXYGEN Version 1.8.4
Please read the installation section of the manual Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions. (http://www.doxygen.org/install.html) for instructions.
-------- --------
Dimitri van Heesch (12 May 2013) Dimitri van Heesch (19 May 2013)
DOXYGEN Version 1.8.3.1_20130512 DOXYGEN Version 1.8.4
Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions.
...@@ -26,4 +26,4 @@ forum. ...@@ -26,4 +26,4 @@ forum.
Enjoy, Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (12 May 2013) Dimitri van Heesch (dimitri@stack.nl) (19 May 2013)
...@@ -17,10 +17,10 @@ ...@@ -17,10 +17,10 @@
doxygen_version_major=1 doxygen_version_major=1
doxygen_version_minor=8 doxygen_version_minor=8
doxygen_version_revision=3.1 doxygen_version_revision=4
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package. #NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20130512 doxygen_version_mmn=NO
bin_dirs=`echo $PATH | sed -e "s/:/ /g"` bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
...@@ -478,7 +478,7 @@ if test "$f_libclang" = YES; then ...@@ -478,7 +478,7 @@ if test "$f_libclang" = YES; then
if test "$f_libclangstatic" = NO; then if test "$f_libclangstatic" = NO; then
libclang_link="-L $i -lclang" libclang_link="-L $i -lclang"
else else
libclang_link="$i/libLLVMBitReader.a $i/libLLVMMC.a $i/libLLVMMCParser.a $i/libLLVMSupport.a $i/libclang.a $i/libclangAST.a $i/libclangAnalysis.a $i/libclangBasic.a $i/libclangDriver.a $i/libclangEdit.a $i/libclangFrontend.a $i/libclangLex.a $i/libclangParse.a $i/libclangRewriteCore.a $i/libclangSema.a $i/libclangSerialization.a $i/libclangStaticAnalyzerCore.a" libclang_link="$i/libclang.a $i/libclangFrontend.a $i/libclangSerialization.a $i/libclangParse.a $i/libclangSema.a $i/libclangAnalysis.a $i/libclangStaticAnalyzerCore.a $i/libclangAST.a $i/libclangBasic.a $i/libclangDriver.a $i/libclangEdit.a $i/libclangLex.a $i/libclangRewriteCore.a $i/libLLVMBitReader.a $i/libLLVMMC.a $i/libLLVMMCParser.a $i/libLLVMSupport.a -ldl -lpthread"
fi fi
break break
fi fi
......
/** \page changelog Changelog /** \page changelog Changelog
\tableofcontents \tableofcontents
\section log_1_8 Release 1.8 \section log_1_8 Release 1.8
\subsection log_1_8_4 Release 1.8.4
\htmlonly
<b>(release date 19-05-2013)</b>
<a name="1.8.3.1"></a>
<h3>Changes</h3>
<ul>
<li> id 686384: When INLINE_SIMPLE_STRUCTS is enabled, also structs with
simple typedefs will be inlined.
<li> Doxywizard: scrolling with mouse wheel no longer affects the values in
the expert view.
<li> id 681733: More consistent warnings and errors.
</ul>
<h3>New features</h3>
<ul>
<li> Added support for "clang assisted parsing", which allows
the code to also be parsed via libclang (C/C++ frontend of LLVM)
and can improve the quality of the syntax highting, cross-references,
and call graphs, especially for template heavy C++ code. To enable
this feature you have to configure doxygen with the --with-libclang
option. Then you get two new configuration options: CLANG_ASSISTED_PARSING
to enable or disable parsing via clang and CLANG_OPTIONS to pass additional
compiler options needed to compile the files. Note that enabling this feature
has a significant performance penality.
<li> Included patch donated by Intel which adds Docbook support.
This can be enabled via GENERATE_DOCBOOK and the output location can
be controlled using DOCBOOK_OUTPUT. Docbook specific sections can be
added using \docbookonly ... \enddocbookonly
<li> Added support for UNO IDL (interace language used in Open/Libre Office), thanks to
Michael Stahl for the patch.
<li> Included patch by Adrian Negreanu which stores data gathered by
doxygen in a sqlite3 database. Currently still work in progress and
can only be enabled using --with-sqlite3 during ./configure.
<li> For interactive SVG graphs, edges are now highlighted when hovered by
the mouse.
<li> Include patch by Adrian Negreanu to show duration statistics after a run.
You can enable this by running doxygen with the "-d Time" option.
<li> Included patch by Markus Geimer which adds a new option
LATEX_EXTRA_FILES which works similarily to HTML_EXTRA_FILES in that
it copied specified files to the LaTeX output directory.
<li> id 698223: Added support for C++11 keyword alignas
<li> id 693178: Added support for processing DocSets with Dash (thanks to
Bogdan Popescu for the patch
<li> id 684782: Added option EXTERNAL_PAGES which can be used to determine
whether or not pages importated via tags will appear under related
pages (similar to EXTERNAL_GROUPS).
<li> id 692227: Added new MathJax command MATHJAX_CODEFILE which supports
including a file with MathJax related scripting to be inserted before
the MathJax script is loaded. Thanks to Albert for the patch.
<li> id 693537: Comments in the config file starting with ## will now be
kept when upgrading the file with doxygen -u (and doxygen -s -u).
Thanks to Albert for the patch.
<li> id 693422: Adds support for Latvian (thanks to a patch by Lauris).
<li> Included language updates for Ukrainian, Romanian, and Korean
</ul>
<h3>Bug fixes (ids refer to the <a href="http://bugzilla.gnome.org/buglist.cgi?product=doxygen&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=NEEDINFO&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&status_whiteboard=&status_whiteboard_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&newqueryname=&form_name=query&order=bugs.bug_id">bugzilla</a> database)</h3>
<ul>
<li> id 145294: Fixed parse issue when using less than inside a template
argument.
<li> id 325266 man page output was missing a linebreak before .SH when
definition a group with a section.
<li> id 338205: @anchor were wrong when CREATE_SUBDIRS was enabled.
<li> id 427012: Putting a @todo in front of an anonoymous namespace caused
bogus entry in the todo list.
<li> id 564462: Fixed alignment issue with tabs and multibyte characters.
<li> id 567542: Character entities in titles were not rendered correctly
in the HTML navigation tree.
<li> id 571561: No space between * and tag (e.g. \endcode) made parser
misbehave
<li> id 583233: Included patch to limit generated Doxyfile comments to 80
columns
<li> id 592626: Fixed off-by-one with MAX_DOT_GRAPH_DEPTH.
<li> id 619790: Improved linking to template specializations.
Thanks to David Haney for the patch.
<li> id 627712: Doxygen Header in C Files makes empty Lines in HTML Source
Code when starts in Line 1
<li> id 639954: Fortran: array constructors with brackets were not correctly
recognized.
<li> id 646428: The generated man pages had a .PP just before the subject
description
<li> id 646431: On generated manpages the return section is incorrectly
indented
<li> id 650004: use \page now generates a man page were the . is not
replaced by _8.
<li> id 657704: Fixed issue with PROJECT_LOGO when using backslashes in
the path.
<li> id 666008: Fortran: Using @var at module levele didn't work.
expect a file/path name.
<li> id 673218: Replaced "echo -n" with "printf" in the configure script.
<li> id 674856: Removed warning when using \endinternal
<li> id 675607: Added &, @, and # as allowed characters for commands that
<li> id 679626: Included patch by Abert to correctly link pages in the manual
<li> id 681874: Added support for single column Markdown tables.
<li> id 682369: Incomplete documentation on doxygen -w latex
<li> id 683516: Doxygen crashed when structural commands (like \var) appeared
in .md files.
<li> id 686259: Fixed character encoding problem when multibytes characters
were used in anchors.
<li> id 691071: Documentation before an anonymous member did not appear.
<li> id 692162: Fixed Markdown related indentation problem.
<li> id 692320: Regression: Text after @copydoc was not visible anymore.
<li> id 692537: Linked to external pages was done using the page label
rather than the file name.
<li> id 693331: build using ./configure ; make did not work if the path
contained a space.
<li> id 693406: Tag files are now identfied by the full path instead of
only the name of the tag file.
<li> id 694376: In some cases members were missing from the tag file.
<li> id 694027: Fortran: derive intent from documentation in case no
intent is specified
<li> id 694610: Warning was not reported at the correct line in two cases.
<li> id 694631, 694632: @cond..@endcond did not work properly for removing
macro definitions.
<li> id 694685: Fixed crash when adding two different functions with the
same name to the same group.
<li> id 694726: VHDL: fixed issue generating LaTeX output.
<li> id 695277: Fortran: improved handling of protected statement
<li> id 695974: Fortran: Fixed issue resulting in
"Stack buffers nested too deeply" error.
<li> id 696708: @cond was not handled properly by the preprocessor.
<li> id 697233: @copyright command did not end a brief description.
<li> id 697249: Markdown tables caused errors reported at wrong line number.
<li> id 697494: Removed double entry from the messages produced by doxygen.
<li> id 698818: Fixed problem handling @cond for #define's
<li> id 698007: Fixed potential crash when searching files.
<li> id 696925: #include's inside namespace could result in duplicate entries.
<li> id 696954: Doxywizard: Labels of items are now also grayed out
when an item is disabled (thanks to Albert for the patch).
<li> id 699195: Changed Markdown page label to support multiple .md files
with the same name.
<li> id 699218: Fixed issue with margin computation in resize.js.
<li> id 699381: Lonely h4,h5,h6 end tag caused assert.
<li> id 699437: Trailing comments were not always rendered properly if
MARKDOWN_SUPPORT was enabled.
<li> id 699460: Updated doxygen man page (thanks to Manuel for the patch).
<li> id 699464: Added reference to \xmlonly and \docbookonly in \htmlonly
<li> id 699731: LaTeX: switch to using the xtabular package instead of
longtable to prevent overfull vbox errors.
<li> id 699732: Template parameters and Exceptions were rendered differently
than Parameters and Return Values in the LaTeX output.
<li> id 700153: Tcl: Fixed crash when parsing certain Tcl code.
<li> id 700345: Comment blocking ending with ///// made slashes appear in
the output.
<li> id 700456: Added support for separating auto list items with an
empty paragraph.
<li> Included a couple of VHDL fixes (thanks to Martin Kreis for the patch)
<li> \include and \includelineno both showed line numbers.
<li> Putting '// @endverbatim' inside a C comment block was not handled
properly by the preprocessor.
<li> Fixed various typo's in the manual and improved cross referencing
(thanks to Albert and Guillem Jover for their help)
<li> Added a couple of missing configuration dependencies.
</ul>
\endhtmlonly
\subsection log_1_8_3_1 Release 1.8.3.1 \subsection log_1_8_3_1 Release 1.8.3.1
\htmlonly \htmlonly
<b>(release date 20-01-2013)</b> <b>(release date 20-01-2013)</b>
...@@ -27,7 +182,7 @@ ...@@ -27,7 +182,7 @@
<li> To make navindex section without any link inside a layout file you <li> To make navindex section without any link inside a layout file you
can use usergroup with special title [none]. can use usergroup with special title [none].
</ul> </ul>
<h3>Bug fixes (ids refer to the <a href="http://bugzilla.gnome.org/buglist.cgi?product=doxygen&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=NEEDINFO&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&status_whiteboard=&status_whiteboard_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&newqueryname=&form_name=query&order=bugs.bug_id">bugzilla</a> database)</h3> <h3>Bug fixes</h3>
<ul> <ul>
<li> id 644350: Fortran: Included patch to improve parsing line continuation <li> id 644350: Fortran: Included patch to improve parsing line continuation
characters. characters.
......
...@@ -35,6 +35,7 @@ If in addition to the above argument specifiers [square] brackets are used the a ...@@ -35,6 +35,7 @@ If in addition to the above argument specifiers [square] brackets are used the a
Here is an alphabetically sorted list of all commands with references to their Here is an alphabetically sorted list of all commands with references to their
documentation: documentation:
\anchor showsecreflist
\secreflist \secreflist
\refitem cmda \\a \refitem cmda \\a
\refitem cmdaddindex \\addindex \refitem cmdaddindex \\addindex
...@@ -85,6 +86,7 @@ documentation: ...@@ -85,6 +86,7 @@ documentation:
\refitem cmdendmanonly \\endmanonly \refitem cmdendmanonly \\endmanonly
\refitem cmdendmsc \\endmsc \refitem cmdendmsc \\endmsc
\refitem cmdendrtfonly \\endrtfonly \refitem cmdendrtfonly \\endrtfonly
\refitem cmdendsecreflist \\endsecreflist
\refitem cmdendverbatim \\endverbatim \refitem cmdendverbatim \\endverbatim
\refitem cmdendxmlonly \\endxmlonly \refitem cmdendxmlonly \\endxmlonly
\refitem cmdenum \\enum \refitem cmdenum \\enum
...@@ -102,6 +104,7 @@ documentation: ...@@ -102,6 +104,7 @@ documentation:
\refitem cmdhideinitializer \\hideinitializer \refitem cmdhideinitializer \\hideinitializer
\refitem cmdhtmlinclude \\htmlinclude \refitem cmdhtmlinclude \\htmlinclude
\refitem cmdhtmlonly \\htmlonly \refitem cmdhtmlonly \\htmlonly
\refitem cmdidlexcept \\idlexcept
\refitem cmdif \\if \refitem cmdif \\if
\refitem cmdifnot \\ifnot \refitem cmdifnot \\ifnot
\refitem cmdimage \\image \refitem cmdimage \\image
...@@ -136,14 +139,16 @@ documentation: ...@@ -136,14 +139,16 @@ documentation:
\refitem cmdpost \\post \refitem cmdpost \\post
\refitem cmdpre \\pre \refitem cmdpre \\pre
\refitem cmdprivate \\private \refitem cmdprivate \\private
\refitem cmdprivate \\privatesection \refitem cmdprivatesection \\privatesection
\refitem cmdproperty \\property \refitem cmdproperty \\property
\refitem cmdprotected \\protected \refitem cmdprotected \\protected
\refitem cmdprotected \\protectedsection \refitem cmdprotectedsection \\protectedsection
\refitem cmdprotocol \\protocol \refitem cmdprotocol \\protocol
\refitem cmdpublic \\public \refitem cmdpublic \\public
\refitem cmdpublic \\publicsection \refitem cmdpublicsection \\publicsection
\refitem cmdpure \\pure
\refitem cmdref \\ref \refitem cmdref \\ref
\refitem cmdrefitem \\refitem
\refitem cmdrelated \\related \refitem cmdrelated \\related
\refitem cmdrelates \\relates \refitem cmdrelates \\relates
\refitem cmdrelatedalso \\relatedalso \refitem cmdrelatedalso \\relatedalso
...@@ -156,6 +161,7 @@ documentation: ...@@ -156,6 +161,7 @@ documentation:
\refitem cmdretval \\retval \refitem cmdretval \\retval
\refitem cmdrtfonly \\rtfonly \refitem cmdrtfonly \\rtfonly
\refitem cmdsa \\sa \refitem cmdsa \\sa
\refitem cmdsecreflist \\secreflist
\refitem cmdsection \\section \refitem cmdsection \\section
\refitem cmdsee \\see \refitem cmdsee \\see
\refitem cmdshort \\short \refitem cmdshort \\short
...@@ -198,6 +204,7 @@ documentation: ...@@ -198,6 +204,7 @@ documentation:
\refitem cmdquot \\\" \refitem cmdquot \\\"
\refitem cmdchardot \\\. \refitem cmdchardot \\\.
\refitem cmddcolon \:: \refitem cmddcolon \::
\refitem cmdpipe \\|
\endsecreflist \endsecreflist
The following subsections provide a list of all commands that are recognized by The following subsections provide a list of all commands that are recognized by
...@@ -251,7 +258,7 @@ Structural indicators ...@@ -251,7 +258,7 @@ Structural indicators
\addindex \\callgraph \addindex \\callgraph
When this command is put in a comment block of a function or method When this command is put in a comment block of a function or method
and \ref cfg_have_dot "HAVE_DOT" is set to YES, then doxygen will and \ref cfg_have_dot "HAVE_DOT" is set to \c YES, then doxygen will
generate a call graph for that function (provided the implementation of the generate a call graph for that function (provided the implementation of the
function or method calls other documented functions). The call graph will be function or method calls other documented functions). The call graph will be
generated regardless of the value of \ref cfg_call_graph "CALL_GRAPH". generated regardless of the value of \ref cfg_call_graph "CALL_GRAPH".
...@@ -265,7 +272,7 @@ Structural indicators ...@@ -265,7 +272,7 @@ Structural indicators
\addindex \\callergraph \addindex \\callergraph
When this command is put in a comment block of a function or method When this command is put in a comment block of a function or method
and \ref cfg_have_dot "HAVE_DOT" is set to YES, then doxygen will and \ref cfg_have_dot "HAVE_DOT" is set to \c YES, then doxygen will
generate a caller graph for that function (provided the implementation of the generate a caller graph for that function (provided the implementation of the
function or method calls other documented functions). The caller graph will be function or method calls other documented functions). The caller graph will be
generated regardless of the value of \ref cfg_caller_graph "CALLER_GRAPH". generated regardless of the value of \ref cfg_caller_graph "CALLER_GRAPH".
...@@ -358,7 +365,7 @@ Structural indicators ...@@ -358,7 +365,7 @@ Structural indicators
the documentation block is located outside the class definition, the documentation block is located outside the class definition,
the scope of the class should be specified as well. the scope of the class should be specified as well.
If a comment block is located directly in front of an enum declaration, If a comment block is located directly in front of an enum declaration,
the \\enum comment may be omitted. the \c \\enum comment may be omitted.
\par Note: \par Note:
The type of an anonymous enum cannot be documented, but the values The type of an anonymous enum cannot be documented, but the values
...@@ -391,7 +398,7 @@ Structural indicators ...@@ -391,7 +398,7 @@ Structural indicators
to disambiguate it. to disambiguate it.
If more than one source file is needed for the example, If more than one source file is needed for the example,
the \\include command can be used. the \ref cmdinclude "\\include" command can be used.
\par Example: \par Example:
\verbinclude example.cpp \verbinclude example.cpp
...@@ -409,9 +416,9 @@ Structural indicators ...@@ -409,9 +416,9 @@ Structural indicators
\addindex \\endinternal \addindex \\endinternal
This command ends a documentation fragment that was started with a This command ends a documentation fragment that was started with a
\ref cmdinternal "\\internal" command. The text between \c \\internal and \ref cmdinternal "\\internal" command. The text between \ref cmdinternal "\\internal" and
\c \\endinternal will only be visible \c \\endinternal will only be visible
if \ref cfg_internal_docs "INTERNAL_DOCS" is set to YES. if \ref cfg_internal_docs "INTERNAL_DOCS" is set to \c YES.
<hr> <hr>
\section cmdextends \\extends <name> \section cmdextends \\extends <name>
...@@ -438,8 +445,8 @@ Structural indicators ...@@ -438,8 +445,8 @@ Structural indicators
Indicates that a comment block contains documentation for a source or Indicates that a comment block contains documentation for a source or
header file with name \<name\>. The file name may include (part of) the header file with name \<name\>. The file name may include (part of) the
path if the file-name alone is not unique. If the file name is omitted path if the file-name alone is not unique. If the file name is omitted
(i.e. the line after \\file is left blank) then the documentation block that (i.e. the line after \c \\file is left blank) then the documentation block that
contains the \\file command will belong to the file it is located in. contains the \c \\file command will belong to the file it is located in.
\par Important: \par Important:
The documentation of global functions, variables, typedefs, and enums will The documentation of global functions, variables, typedefs, and enums will
...@@ -453,7 +460,7 @@ Structural indicators ...@@ -453,7 +460,7 @@ Structural indicators
\endhtmlonly \endhtmlonly
\note In the above example \ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" \note In the above example \ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF"
has been set to YES in the configuration file. has been set to \c YES in the configuration file.
<hr> <hr>
\section cmdfn \\fn (function declaration) \section cmdfn \\fn (function declaration)
...@@ -469,10 +476,11 @@ Structural indicators ...@@ -469,10 +476,11 @@ Structural indicators
should) be omitted. should) be omitted.
A full function declaration including arguments should be specified after the A full function declaration including arguments should be specified after the
\\fn command on a \e single line, since the argument ends at the end \c \\fn command on a \e single line, since the argument ends at the end
of the line! of the line!
This command is equivalent to \\var, \\typedef, and \\property. This command is equivalent to \ref cmdvar "\\var", \ref cmdtypedef "\\typedef",
and \ref cmdproperty "\\property".
\warning Do not use this command \warning Do not use this command
if it is not absolutely needed, since it will lead to duplication of if it is not absolutely needed, since it will lead to duplication of
...@@ -511,8 +519,8 @@ Structural indicators ...@@ -511,8 +519,8 @@ Structural indicators
If a pair of double quotes is given for either the \<header-file\> or If a pair of double quotes is given for either the \<header-file\> or
\<header-name\> argument, the current file (in which the command was found) \<header-name\> argument, the current file (in which the command was found)
will be used but with quotes. So for a comment block with a \\headerfile will be used but with quotes. So for a comment block with a \c \\headerfile
command inside a file test.h, the following three commands are equivalent: command inside a file <code>test.h</code>, the following three commands are equivalent:
\verbatim \verbatim
\headerfile test.h "test.h" \headerfile test.h "test.h"
\headerfile test.h "" \headerfile test.h ""
...@@ -545,6 +553,13 @@ Structural indicators ...@@ -545,6 +553,13 @@ Structural indicators
\sa section \ref cmdshowinitializer "\\showinitializer". \sa section \ref cmdshowinitializer "\\showinitializer".
<hr>
\section cmdidlexcept \\idlexcept <name>
\addindex \\idlexcept
Indicates that a comment block contains documentation for a
IDL exception with name \<name\>.
<hr> <hr>
\section cmdimplements \\implements <name> \section cmdimplements \\implements <name>
...@@ -567,7 +582,7 @@ Structural indicators ...@@ -567,7 +582,7 @@ Structural indicators
\section cmdingroup \\ingroup (<groupname> [<groupname> <groupname>]) \section cmdingroup \\ingroup (<groupname> [<groupname> <groupname>])
\addindex \\ingroup \addindex \\ingroup
If the \\ingroup command is placed in a comment block of a If the \c \\ingroup command is placed in a comment block of a
class, file or namespace, then it will be added to the group or class, file or namespace, then it will be added to the group or
groups identified by \<groupname\>. groups identified by \<groupname\>.
...@@ -579,8 +594,8 @@ Structural indicators ...@@ -579,8 +594,8 @@ Structural indicators
\addindex \\interface \addindex \\interface
Indicates that a comment block contains documentation for an Indicates that a comment block contains documentation for an
interface with name \<name\>. The arguments are equal to the arguments of the \\class interface with name \<name\>. The arguments are equal to the arguments of the
command. \ref cmdclass "\\class" command.
\sa section \ref cmdclass "\\class". \sa section \ref cmdclass "\\class".
...@@ -593,7 +608,7 @@ Structural indicators ...@@ -593,7 +608,7 @@ Structural indicators
You can also force the internal section to end earlier by using the You can also force the internal section to end earlier by using the
\ref cmdendinternal "\\endinternal" command. \ref cmdendinternal "\\endinternal" command.
If the \\internal command is put inside a section If the \c \\internal command is put inside a section
(see for example \ref cmdsection "\\section") all subsections after the (see for example \ref cmdsection "\\section") all subsections after the
command are considered to be internal as well. Only a new section at the command are considered to be internal as well. Only a new section at the
same level will end the fragment that is considered internal. same level will end the fragment that is considered internal.
...@@ -609,13 +624,13 @@ Structural indicators ...@@ -609,13 +624,13 @@ Structural indicators
\addindex \\mainpage \addindex \\mainpage
If the \\mainpage command is placed in a comment block the If the \c \\mainpage command is placed in a comment block the
block is used to customize the index page (in HTML) or block is used to customize the index page (in HTML) or
the first chapter (in \f$\mbox{\LaTeX}\f$). the first chapter (in \f$\mbox{\LaTeX}\f$).
The title argument is optional and replaces the default title that The title argument is optional and replaces the default title that
doxygen normally generates. If you do not want any title you can doxygen normally generates. If you do not want any title you can
specify \c notitle as the argument of \\mainpage. specify \c notitle as the argument of \c \\mainpage.
Here is an example: Here is an example:
\verbatim \verbatim
...@@ -633,7 +648,7 @@ Structural indicators ...@@ -633,7 +648,7 @@ Structural indicators
*/ */
\endverbatim \endverbatim
You can refer to the main page using \\ref index. You can refer to the main page using: <code>\ref cmdref "\\ref" index</code>.
\sa section \ref cmdsection "\\section", \sa section \ref cmdsection "\\section",
section \ref cmdsubsection "\\subsection", and section \ref cmdsubsection "\\subsection", and
...@@ -696,6 +711,7 @@ Structural indicators ...@@ -696,6 +711,7 @@ Structural indicators
\sa sections \ref cmdpublicsection "\\publicsection", \sa sections \ref cmdpublicsection "\\publicsection",
\ref cmdprotectedsection "\\protectedsection" and \ref cmdprotectedsection "\\protectedsection" and
\ref cmdprivatesection "\\privatesection". \ref cmdprivatesection "\\privatesection".
<hr> <hr>
\section cmdoverload \\overload [(function declaration)] \section cmdoverload \\overload [(function declaration)]
...@@ -717,9 +733,9 @@ Structural indicators ...@@ -717,9 +733,9 @@ Structural indicators
You are responsible that there is indeed an You are responsible that there is indeed an
earlier documented member that is overloaded by this one. earlier documented member that is overloaded by this one.
To prevent that document reorders the documentation you should set To prevent that document reorders the documentation you should set
\ref cfg_sort_member_docs "SORT_MEMBER_DOCS" to NO in this case. \ref cfg_sort_member_docs "SORT_MEMBER_DOCS" to \c NO in this case.
\par Note 2: \par Note 2:
The \\overload command does not work inside a one-line comment. The \c \\overload command does not work inside a one-line comment.
\par Example: \par Example:
\verbinclude examples/overload.cpp \verbinclude examples/overload.cpp
\htmlonly \htmlonly
...@@ -755,7 +771,7 @@ Structural indicators ...@@ -755,7 +771,7 @@ Structural indicators
The \<name\> argument consists of a combination of letters and number The \<name\> argument consists of a combination of letters and number
digits. If you wish to use upper case letters (e.g. \c MYPAGE1), or digits. If you wish to use upper case letters (e.g. \c MYPAGE1), or
mixed case letters (e.g. \c MyPage1) in the \<name\> argument, you mixed case letters (e.g. \c MyPage1) in the \<name\> argument, you
should set \c CASE_SENSE_NAMES to \c YES. However, this is advisable should set \ref cfg_case_sense_names "CASE_SENSE_NAMES" to \c YES. However, this is advisable
only if your file system is case sensitive. Otherwise (and for better only if your file system is case sensitive. Otherwise (and for better
portability) you should use all lower case letters (e.g. \c mypage1) portability) you should use all lower case letters (e.g. \c mypage1)
for \<name\> in all references to the page. for \<name\> in all references to the page.
...@@ -768,7 +784,7 @@ Structural indicators ...@@ -768,7 +784,7 @@ Structural indicators
\section cmdprivate \\private \section cmdprivate \\private
\addindex \\private \addindex \\private
Indicates that the member documented in the comment block is private, Indicates that the member documented by the comment block is private,
i.e., should only be accessed by other members in the same class. i.e., should only be accessed by other members in the same class.
Note that Doxygen automatically detects the protection level of members Note that Doxygen automatically detects the protection level of members
...@@ -777,7 +793,7 @@ Structural indicators ...@@ -777,7 +793,7 @@ Structural indicators
(e.g. C, PHP 4). (e.g. C, PHP 4).
For starting a section of private members, in a way similar to the For starting a section of private members, in a way similar to the
"private:" class marker in C++, use \\privatesection. "private:" class marker in C++, use \ref cmdprivatesection "\\privatesection".
\sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public", \sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public",
\ref cmdprotected "\\protected" and \ref cmdprivatesection "\\privatesection". \ref cmdprotected "\\protected" and \ref cmdprivatesection "\\privatesection".
...@@ -788,7 +804,7 @@ Structural indicators ...@@ -788,7 +804,7 @@ Structural indicators
\addindex \\privatesection \addindex \\privatesection
Starting a section of private members, in a way similar to the Starting a section of private members, in a way similar to the
"private:" class marker in C++. "private:" class marker in C++.
Indicates that the member documented in the comment block is private, Indicates that the member documented by the comment block is private,
i.e., should only be accessed by other members in the same class. i.e., should only be accessed by other members in the same class.
\sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public", \sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public",
...@@ -800,7 +816,8 @@ Structural indicators ...@@ -800,7 +816,8 @@ Structural indicators
\addindex \\property \addindex \\property
Indicates that a comment block contains documentation for a Indicates that a comment block contains documentation for a
property (either global or as a member of a class). property (either global or as a member of a class).
This command is equivalent to \\var, \\typedef, and \\fn. This command is equivalent to \ref cmdfn "\\fn",
\ref cmdtypedef "\\typedef", and \ref cmdvar "\\var".
\sa sections \ref cmdfn "\\fn", \ref cmdtypedef "\\typedef", and \sa sections \ref cmdfn "\\fn", \ref cmdtypedef "\\typedef", and
\ref cmdvar "\\var". \ref cmdvar "\\var".
...@@ -809,7 +826,7 @@ Structural indicators ...@@ -809,7 +826,7 @@ Structural indicators
\section cmdprotected \\protected \section cmdprotected \\protected
\addindex \\protected \addindex \\protected
Indicates that the member documented in the comment block is protected, Indicates that the member documented by the comment block is protected,
i.e., should only be accessed by other members in the same or derived i.e., should only be accessed by other members in the same or derived
classes. classes.
...@@ -819,7 +836,7 @@ Structural indicators ...@@ -819,7 +836,7 @@ Structural indicators
(e.g. C, PHP 4). (e.g. C, PHP 4).
For starting a section of protected members, in a way similar to the For starting a section of protected members, in a way similar to the
"protected:" class marker in C++, use \\protectedsection. "protected:" class marker in C++, use \ref cmdprotectedsection "\\protectedsection".
\sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public", \sa sections \ref cmdmemberof "\\memberof", \ref cmdpublic "\\public",
\ref cmdprivate "\\private" and \ref cmdprotectedsection "\\protectedsection". \ref cmdprivate "\\private" and \ref cmdprotectedsection "\\protectedsection".
...@@ -830,7 +847,7 @@ Structural indicators ...@@ -830,7 +847,7 @@ Structural indicators
\addindex \\protectedsection \addindex \\protectedsection
Starting a section of protected members, in a way similar to the Starting a section of protected members, in a way similar to the
"protected:" class marker in C++. "protected:" class marker in C++.
Indicates that the member documented in the comment block is protected, Indicates that the member documented by the comment block is protected,
i.e., should only be accessed by other members in the same or derived i.e., should only be accessed by other members in the same or derived
classes. classes.
...@@ -843,7 +860,7 @@ Structural indicators ...@@ -843,7 +860,7 @@ Structural indicators
\addindex \\protocol \addindex \\protocol
Indicates that a comment block contains documentation for a Indicates that a comment block contains documentation for a
protocol in Objective-C with name \<name\>. The arguments are equal protocol in Objective-C with name \<name\>. The arguments are equal
to the \\class command. to the \ref cmdclass "\\class" command.
\sa section \ref cmdclass "\\class". \sa section \ref cmdclass "\\class".
...@@ -851,7 +868,7 @@ Structural indicators ...@@ -851,7 +868,7 @@ Structural indicators
\section cmdpublic \\public \section cmdpublic \\public
\addindex \\public \addindex \\public
Indicates that the member documented in the comment block is public, Indicates that the member documented by the comment block is public,
i.e., can be accessed by any other class or function. i.e., can be accessed by any other class or function.
Note that Doxygen automatically detects the protection level of members Note that Doxygen automatically detects the protection level of members
...@@ -860,7 +877,7 @@ Structural indicators ...@@ -860,7 +877,7 @@ Structural indicators
(e.g. C, PHP 4). (e.g. C, PHP 4).
For starting a section of public members, in a way similar to the For starting a section of public members, in a way similar to the
"public:" class marker in C++, use \\publicsection. "public:" class marker in C++, use \ref cmdpublicsection "\\publicsection".
\sa sections \ref cmdmemberof "\\memberof", \ref cmdprotected "\\protected", \sa sections \ref cmdmemberof "\\memberof", \ref cmdprotected "\\protected",
\ref cmdprivate "\\private" and \ref cmdpublicsection "\\publicsection". \ref cmdprivate "\\private" and \ref cmdpublicsection "\\publicsection".
...@@ -871,12 +888,23 @@ Structural indicators ...@@ -871,12 +888,23 @@ Structural indicators
\addindex \\publicsection \addindex \\publicsection
Starting a section of public members, in a way similar to the Starting a section of public members, in a way similar to the
"public:" class marker in C++. "public:" class marker in C++.
Indicates that the member documented in the comment block is public, Indicates that the member documented by the comment block is public,
i.e., can be accessed by any other class or function. i.e., can be accessed by any other class or function.
\sa sections \ref cmdmemberof "\\memberof", \ref cmdprotected "\\protected", \sa sections \ref cmdmemberof "\\memberof", \ref cmdprotected "\\protected",
\ref cmdprivate "\\private" and \ref cmdpublic "\\public". \ref cmdprivate "\\private" and \ref cmdpublic "\\public".
<hr>
\section cmdpure \\pure
\addindex \\pure
Indicates that the member documented by the comment block is pure virtual,
i.e., it is abstract and has no implementation associated with it.
This command is intended for use only when
the language does not support the concept of pure virtual methods natively
(e.g. C, PHP 4).
<hr> <hr>
\section cmdrelates \\relates <name> \section cmdrelates \\relates <name>
...@@ -933,13 +961,23 @@ Structural indicators ...@@ -933,13 +961,23 @@ Structural indicators
\sa section \ref cmdhideinitializer "\\hideinitializer". \sa section \ref cmdhideinitializer "\\hideinitializer".
<hr>
\section cmdstatic \\static
\addindex \\static
Indicates that the member documented by the comment block is static,
i.e., it works on a class, instead of on an instance of the class.
This command is intended for use only when
the language does not support the concept of static methods natively (e.g. C).
<hr> <hr>
\section cmdstruct \\struct <name> [<header-file>] [<header-name>] \section cmdstruct \\struct <name> [<header-file>] [<header-name>]
\addindex \\struct \addindex \\struct
Indicates that a comment block contains documentation for a Indicates that a comment block contains documentation for a
struct with name \<name\>. The arguments are equal to the arguments of the \\class struct with name \<name\>. The arguments are equal to the arguments of the
command. \ref cmdclass "\\class" command.
\sa section \ref cmdclass "\\class". \sa section \ref cmdclass "\\class".
...@@ -949,7 +987,8 @@ Structural indicators ...@@ -949,7 +987,8 @@ Structural indicators
\addindex \\typedef \addindex \\typedef
Indicates that a comment block contains documentation for a Indicates that a comment block contains documentation for a
typedef (either global or as a member of a class). typedef (either global or as a member of a class).
This command is equivalent to \\var, \\property, and \\fn. This command is equivalent to \ref cmdfn "\\fn",
\ref cmdproperty "\\property", and \ref cmdvar "\\var".
\sa section \ref cmdfn "\\fn", \ref cmdproperty "\\property", and \sa section \ref cmdfn "\\fn", \ref cmdproperty "\\property", and
\ref cmdvar "\\var". \ref cmdvar "\\var".
...@@ -959,8 +998,8 @@ Structural indicators ...@@ -959,8 +998,8 @@ Structural indicators
\addindex \\union \addindex \\union
Indicates that a comment block contains documentation for a Indicates that a comment block contains documentation for a
union with name \<name\>. The arguments are equal to the arguments of the \\class union with name \<name\>. The arguments are equal to the arguments of the
command. \ref cmdclass "\\class" command.
\sa section \ref cmdclass "\\class". \sa section \ref cmdclass "\\class".
...@@ -970,7 +1009,8 @@ Structural indicators ...@@ -970,7 +1009,8 @@ Structural indicators
\addindex \\var \addindex \\var
Indicates that a comment block contains documentation for a variable or Indicates that a comment block contains documentation for a variable or
enum value (either global or as a member of a class). enum value (either global or as a member of a class).
This command is equivalent to \\typedef, \\property, and \\fn. This command is equivalent to \ref cmdfn "\\fn",
\ref cmdproperty "\\property", and \ref cmdtypedef "\\typedef".
\sa section \ref cmdfn "\\fn", \ref cmdproperty "\\property", and \ref cmdtypedef "\\typedef". \sa section \ref cmdfn "\\fn", \ref cmdproperty "\\property", and \ref cmdtypedef "\\typedef".
...@@ -1010,8 +1050,8 @@ Section indicators ...@@ -1010,8 +1050,8 @@ Section indicators
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\attention commands will be joined into a single paragraph. Multiple adjacent \c \\attention commands will be joined into a single paragraph.
The \\attention command ends when a blank line or some other The \c \\attention command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1022,9 +1062,9 @@ Section indicators ...@@ -1022,9 +1062,9 @@ Section indicators
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\author commands will be joined into a single paragraph. Multiple adjacent \c \\author commands will be joined into a single paragraph.
Each author description will start a new line. Alternatively, one \\author command Each author description will start a new line. Alternatively, one \c \\author command
may mention several authors. The \\author command ends when a blank line or some other may mention several authors. The \c \\author command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
\par Example: \par Example:
...@@ -1051,10 +1091,10 @@ Section indicators ...@@ -1051,10 +1091,10 @@ Section indicators
detailed description. A brief description may span several lines (although detailed description. A brief description may span several lines (although
it is advised to keep it brief!). A brief description ends when a it is advised to keep it brief!). A brief description ends when a
blank line or another sectioning command is encountered. If multiple blank line or another sectioning command is encountered. If multiple
\\brief commands are present they will be joined. See section \c \\brief commands are present they will be joined. See section
\ref cmdauthor "\\author" for an example. \ref cmdauthor "\\author" for an example.
Synonymous to \\short. Synonymous to \ref cmdshort "\\short".
<hr> <hr>
\section cmdbug \\bug { bug description } \section cmdbug \\bug { bug description }
...@@ -1064,10 +1104,10 @@ Section indicators ...@@ -1064,10 +1104,10 @@ Section indicators
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\bug commands will be joined into a single paragraph. Multiple adjacent \c \\bug commands will be joined into a single paragraph.
Each bug description will start on a new line. Each bug description will start on a new line.
Alternatively, one \\bug command may mention Alternatively, one \c \\bug command may mention
several bugs. The \\bug command ends when a blank line or some other several bugs. The \c \\bug command ends when a blank line or some other
sectioning command is encountered. See section \ref cmdauthor "\\author" sectioning command is encountered. See section \ref cmdauthor "\\author"
for an example. for an example.
...@@ -1081,11 +1121,11 @@ Section indicators ...@@ -1081,11 +1121,11 @@ Section indicators
commands is to (conditionally) exclude part of a file from processing commands is to (conditionally) exclude part of a file from processing
(in older version of doxygen this could only be achieved using C preprocessor commands). (in older version of doxygen this could only be achieved using C preprocessor commands).
The section between \\cond and \\endcond commands can be included by The section between \c \\cond and \ref cmdendcond "\\endcond" can be included by
adding its section label to the \ref cfg_enabled_sections "ENABLED_SECTIONS" adding its section label to the \ref cfg_enabled_sections "ENABLED_SECTIONS"
configuration option. If the section label is omitted, the section will configuration option. If the section label is omitted, the section will
be excluded from processing unconditionally. The section label can be a be excluded from processing unconditionally. The section label can be a
logical expression build of section lavels, round brackets, && (AND), || (OR) and ! (NOT). logical expression build of section labels, round brackets, && (AND), || (OR) and ! (NOT).
If you use an expression you need to wrap it in round brackets, i.e If you use an expression you need to wrap it in round brackets, i.e
<tt>\\cond (!LABEL1 && LABEL2)</tt>. <tt>\\cond (!LABEL1 && LABEL2)</tt>.
...@@ -1137,10 +1177,10 @@ class Implementation : public Intf ...@@ -1137,10 +1177,10 @@ class Implementation : public Intf
/// @endcond /// @endcond
\endverbatim \endverbatim
The output will be different depending on whether or not \c ENABLED_SECTIONS The output will be different depending on whether or not \ref cfg_enabled_sections "ENABLED_SECTIONS"
contains \c TEST, or \c DEV contains \c TEST, or \c DEV
\sa section \ref cmdendcond "\\endcond". \sa sections \ref cmdendcond "\\endcond" and \ref cfg_enabled_sections "ENABLED_SECTIONS".
<hr> <hr>
\section cmdcopyright \\copyright { copyright description } \section cmdcopyright \\copyright { copyright description }
...@@ -1159,10 +1199,10 @@ contains \c TEST, or \c DEV ...@@ -1159,10 +1199,10 @@ contains \c TEST, or \c DEV
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\date commands will be joined into a single paragraph. Multiple adjacent \c \\date commands will be joined into a single paragraph.
Each date description will start on a new line. Each date description will start on a new line.
Alternatively, one \\date command may mention Alternatively, one \c \\date command may mention
several dates. The \\date command ends when a blank line or some other several dates. The \c \\date command ends when a blank line or some other
sectioning command is encountered. See section \ref cmdauthor "\\author" sectioning command is encountered. See section \ref cmdauthor "\\author"
for an example. for an example.
...@@ -1178,9 +1218,9 @@ contains \c TEST, or \c DEV ...@@ -1178,9 +1218,9 @@ contains \c TEST, or \c DEV
\section cmddetails \\details { detailed description } \section cmddetails \\details { detailed description }
\addindex \\details \addindex \\details
Just like \ref cmdbrief "\\brief" starts a brief description, \\details Just like \ref cmdbrief "\\brief" starts a brief description, \c \\details
starts the detailed description. You can also start a new paragraph (blank line) starts the detailed description. You can also start a new paragraph (blank line)
then the \\details command is not needed. then the \c \\details command is not needed.
<hr> <hr>
\section cmdelse \\else \section cmdelse \\else
...@@ -1188,7 +1228,8 @@ contains \c TEST, or \c DEV ...@@ -1188,7 +1228,8 @@ contains \c TEST, or \c DEV
\addindex \\else \addindex \\else
Starts a conditional section if the previous conditional section Starts a conditional section if the previous conditional section
was not enabled. The previous section should have been started with was not enabled. The previous section should have been started with
a \c \\if, \c \\ifnot, or \c \\elseif command. a \ref cmdif "\\if", \ref cmdifnot "\\ifnot", or \ref cmdelseif "\\elseif"
command.
\sa \ref cmdif "\\if", \ref cmdifnot "\\ifnot", \ref cmdelseif "\\elseif", \sa \ref cmdif "\\if", \ref cmdifnot "\\ifnot", \ref cmdelseif "\\elseif",
\ref cmdendif "\\endif." \ref cmdendif "\\endif."
...@@ -1221,8 +1262,9 @@ contains \c TEST, or \c DEV ...@@ -1221,8 +1262,9 @@ contains \c TEST, or \c DEV
\section cmdendif \\endif \section cmdendif \\endif
\addindex \\endif \addindex \\endif
Ends a conditional section that was started by \c \\if or \c \\ifnot Ends a conditional section that was started by \ref cmdif "\\if" or \ref cmdifnot "\\ifnot"
For each \c \\if or \c \\ifnot one and only one matching \c \\endif must follow. For each \ref cmdif "\\if" or \ref cmdifnot "\\ifnot" one and only one matching
\ref cmdendif "\\endif" must follow.
\sa sections \ref cmdif "\\if" and \ref cmdifnot "\\ifnot". \sa sections \ref cmdif "\\if" and \ref cmdifnot "\\ifnot".
...@@ -1235,9 +1277,9 @@ contains \c TEST, or \c DEV ...@@ -1235,9 +1277,9 @@ contains \c TEST, or \c DEV
The existence of the exception object is not checked. The existence of the exception object is not checked.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\exception commands will be joined into a single paragraph. Multiple adjacent \c \\exception commands will be joined into a single paragraph.
Each exception description will start on a new line. Each exception description will start on a new line.
The \\exception description ends when a blank line or some other The \c \\exception description ends when a blank line or some other
sectioning command is encountered. See section \ref cmdfn "\\fn" for an sectioning command is encountered. See section \ref cmdfn "\\fn" for an
example. example.
...@@ -1246,7 +1288,7 @@ contains \c TEST, or \c DEV ...@@ -1246,7 +1288,7 @@ contains \c TEST, or \c DEV
\addindex \\if \addindex \\if
Starts a conditional documentation section. The section ends Starts a conditional documentation section. The section ends
with a matching \c \\endif command. A conditional section is with a matching \ref cmdendif "\\endif" command. A conditional section is
disabled by default. To enable it you must put the disabled by default. To enable it you must put the
section-label after the \ref cfg_enabled_sections "ENABLED_SECTIONS" section-label after the \ref cfg_enabled_sections "ENABLED_SECTIONS"
tag in the configuration file. tag in the configuration file.
...@@ -1302,24 +1344,26 @@ ALIASES = "english=\if english" \ ...@@ -1302,24 +1344,26 @@ ALIASES = "english=\if english" \
"enddutch=\endif" "enddutch=\endif"
\endverbatim \endverbatim
and \c ENABLED_SECTIONS can be used to enable either \c english or \c dutch. and \ref cfg_enabled_sections "ENABLED_SECTIONS" can be used to enable either \c english or \c dutch.
\sa sections \ref cmdendif "\\endif", \ref cmdifnot "\\ifnot", \sa sections \ref cmdendif "\\endif", \ref cmdifnot "\\ifnot",
\ref cmdelse "\\else", and \ref cmdelseif "\\elseif". \ref cmdelse "\\else", \ref cmdelseif "\\elseif", and
\ref cfg_enabled_sections "ENABLED_SECTIONS".
<hr> <hr>
\section cmdifnot \\ifnot (section-label) \section cmdifnot \\ifnot (section-label)
\addindex \\ifnot \addindex \\ifnot
Starts a conditional documentation section. The section ends Starts a conditional documentation section. The section ends
with a matching \c \\endif command. This conditional section is with a matching \ref cmdendif "\\endif" command. This conditional section is
enabled by default. To disable it you must put the enabled by default. To disable it you must put the
section-label after the \ref cfg_enabled_sections "ENABLED_SECTIONS" section-label after the \ref cfg_enabled_sections "ENABLED_SECTIONS"
tag in the configuration file. The section label can be a logical expression tag in the configuration file. The section label can be a logical expression
build of section names, round brackets, && (AND), || (OR) and ! (NOT). build of section names, round brackets, && (AND), || (OR) and ! (NOT).
\sa sections \ref cmdendif "\\endif", \ref cmdif "\\if", \sa sections \ref cmdendif "\\endif", \ref cmdif "\\if",
\ref cmdelse "\\else", and \ref cmdelseif "\\elseif". \ref cmdelse "\\else", and \ref cmdelseif "\\elseif", and
\ref cfg_enabled_sections "ENABLED_SECTIONS".
<hr> <hr>
\section cmdinvariant \\invariant { description of invariant } \section cmdinvariant \\invariant { description of invariant }
...@@ -1329,10 +1373,10 @@ ALIASES = "english=\if english" \ ...@@ -1329,10 +1373,10 @@ ALIASES = "english=\if english" \
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\invariant commands will be joined into a single paragraph. Multiple adjacent \c \\invariant commands will be joined into a single paragraph.
Each invariant description will start on a new line. Each invariant description will start on a new line.
Alternatively, one \\invariant command may mention Alternatively, one \c \\invariant command may mention
several invariants. The \\invariant command ends when a blank line or some other several invariants. The \c \\invariant command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1342,10 +1386,10 @@ ALIASES = "english=\if english" \ ...@@ -1342,10 +1386,10 @@ ALIASES = "english=\if english" \
Starts a paragraph where a note can be entered. The paragraph will be Starts a paragraph where a note can be entered. The paragraph will be
indented. The text of the paragraph has no special internal structure. indented. The text of the paragraph has no special internal structure.
All visual enhancement commands may be used inside the paragraph. All visual enhancement commands may be used inside the paragraph.
Multiple adjacent \\note commands will be joined into a single paragraph. Multiple adjacent \c \\note commands will be joined into a single paragraph.
Each note description will start on a new line. Each note description will start on a new line.
Alternatively, one \\note command may mention Alternatively, one \c \\note command may mention
several notes. The \\note command ends when a blank line or some other several notes. The \c \\note command ends when a blank line or some other
sectioning command is encountered. See section \ref cmdpar "\\par" sectioning command is encountered. See section \ref cmdpar "\\par"
for an example. for an example.
...@@ -1359,11 +1403,11 @@ ALIASES = "english=\if english" \ ...@@ -1359,11 +1403,11 @@ ALIASES = "english=\if english" \
If no paragraph title is given this command will start a new paragraph. If no paragraph title is given this command will start a new paragraph.
This will also work inside other paragraph commands This will also work inside other paragraph commands
(like \\param or \\warning) without ending that command. (like \ref cmdparam "\\param" or \ref cmdwarning "\\warning") without ending that command.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
The \\par command ends when a blank line or some other The \c \\par command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
\par Example: \par Example:
...@@ -1383,11 +1427,11 @@ ALIASES = "english=\if english" \ ...@@ -1383,11 +1427,11 @@ ALIASES = "english=\if english" \
the documentation of this (or any other) parameter is missing or not the documentation of this (or any other) parameter is missing or not
present in the function declaration or definition. present in the function declaration or definition.
The \\param command has an optional attribute, (dir), specifying the direction The \c \\param command has an optional attribute, (dir), specifying the direction
of the parameter. Possible values are "[in]", "[in,out]", and "[out]", of the parameter. Possible values are "[in]", "[in,out]", and "[out]",
note the [square] brackets in this description. note the [square] brackets in this description.
When a parameter is both input and output, [in,out] is used as attribute. When a parameter is both input and output, [in,out] is used as attribute.
Here is an example for the function memcpy: Here is an example for the function \c memcpy:
\code \code
/*! /*!
* Copies bytes from a source memory area to a destination memory area, * Copies bytes from a source memory area to a destination memory area,
...@@ -1402,14 +1446,14 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1402,14 +1446,14 @@ void memcpy(void *dest, const void *src, size_t n);
The parameter description is a paragraph with no special internal structure. The parameter description is a paragraph with no special internal structure.
All visual enhancement commands may be used inside the paragraph. All visual enhancement commands may be used inside the paragraph.
Multiple adjacent \\param commands will be joined into a single paragraph. Multiple adjacent \c \\param commands will be joined into a single paragraph.
Each parameter description will start on a new line. Each parameter description will start on a new line.
The \\param description ends when a blank line or some other The \c \\param description ends when a blank line or some other
sectioning command is encountered. See section \ref cmdfn "\\fn" for an sectioning command is encountered. See section \ref cmdfn "\\fn" for an
example. example.
Note that you can also document multiple parameters with a single Note that you can also document multiple parameters with a single
\\param command using a comma separated list. Here is an example: \c \\param command using a comma separated list. Here is an example:
\code \code
/** Sets the position. /** Sets the position.
...@@ -1446,10 +1490,10 @@ void setPosition(double x,double y,double z,double t) ...@@ -1446,10 +1490,10 @@ void setPosition(double x,double y,double z,double t)
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\post commands will be joined into a single paragraph. Multiple adjacent \c \\post commands will be joined into a single paragraph.
Each postcondition will start on a new line. Each postcondition will start on a new line.
Alternatively, one \\post command may mention Alternatively, one \c \\post command may mention
several postconditions. The \\post command ends when a blank line or some other several postconditions. The \c \\post command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1460,10 +1504,10 @@ void setPosition(double x,double y,double z,double t) ...@@ -1460,10 +1504,10 @@ void setPosition(double x,double y,double z,double t)
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\pre commands will be joined into a single paragraph. Multiple adjacent \c \\pre commands will be joined into a single paragraph.
Each precondition will start on a new line. Each precondition will start on a new line.
Alternatively, one \\pre command may mention Alternatively, one \c \\pre command may mention
several preconditions. The \\pre command ends when a blank line or some other several preconditions. The \c \\pre command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1474,10 +1518,10 @@ void setPosition(double x,double y,double z,double t) ...@@ -1474,10 +1518,10 @@ void setPosition(double x,double y,double z,double t)
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\remark commands will be joined into a single paragraph. Multiple adjacent \c \\remark commands will be joined into a single paragraph.
Each remark will start on a new line. Each remark will start on a new line.
Alternatively, one \\remark command may mention Alternatively, one \c \\remark command may mention
several remarks. The \\remark command ends when a blank line or some other several remarks. The \c \\remark command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1499,8 +1543,8 @@ void setPosition(double x,double y,double z,double t) ...@@ -1499,8 +1543,8 @@ void setPosition(double x,double y,double z,double t)
Starts a return value description for a function. Starts a return value description for a function.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\return commands will be joined into a single paragraph. Multiple adjacent \c \\return commands will be joined into a single paragraph.
The \\return description ends when a blank line or some other The \c \\return description ends when a blank line or some other
sectioning command is encountered. See section \ref cmdfn "\\fn" for an sectioning command is encountered. See section \ref cmdfn "\\fn" for an
example. example.
...@@ -1519,9 +1563,9 @@ void setPosition(double x,double y,double z,double t) ...@@ -1519,9 +1563,9 @@ void setPosition(double x,double y,double z,double t)
The text of the paragraph that forms the description has no special The text of the paragraph that forms the description has no special
internal structure. All visual enhancement commands may be used inside the internal structure. All visual enhancement commands may be used inside the
paragraph. paragraph.
Multiple adjacent \\retval commands will be joined into a single paragraph. Multiple adjacent \c \\retval commands will be joined into a single paragraph.
Each return value description will start on a new line. Each return value description will start on a new line.
The \\retval description ends when a blank line or some other The \c \\retval description ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
...@@ -1558,9 +1602,9 @@ void setPosition(double x,double y,double z,double t) ...@@ -1558,9 +1602,9 @@ void setPosition(double x,double y,double z,double t)
\addindex \\since \addindex \\since
This tag can be used to specify since when (version or time) an This tag can be used to specify since when (version or time) an
entity is available. The paragraph that follows \\since does not have any entity is available. The paragraph that follows \c \\since does not have any
special internal structure. All visual enhancement commands may be special internal structure. All visual enhancement commands may be
used inside the paragraph. The \\since description ends when a blank used inside the paragraph. The \c \\since description ends when a blank
line or some other sectioning command is encountered. line or some other sectioning command is encountered.
<hr> <hr>
...@@ -1577,10 +1621,10 @@ void setPosition(double x,double y,double z,double t) ...@@ -1577,10 +1621,10 @@ void setPosition(double x,double y,double z,double t)
\section cmdthrow \\throw <exception-object> { exception description } \section cmdthrow \\throw <exception-object> { exception description }
\addindex \\throw \addindex \\throw
Synonymous to \\exception (see section \ref cmdexception "\\exception"). Synonymous \ref cmdexception "\\exception".
\par Note: \par Note:
the tag \\throws is a synonym for this tag. the tag \c \\throws is a synonym for this tag.
\sa section \ref cmdexception "\\exception" \sa section \ref cmdexception "\\exception"
...@@ -1608,9 +1652,9 @@ void setPosition(double x,double y,double z,double t) ...@@ -1608,9 +1652,9 @@ void setPosition(double x,double y,double z,double t)
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\version commands will be joined into a single paragraph. Multiple adjacent \c \\version commands will be joined into a single paragraph.
Each version description will start on a new line. Each version description will start on a new line.
Alternatively, one \\version command may mention Alternatively, one \c \\version command may mention
several version strings. several version strings.
The \\version command ends when a blank line or some other The \\version command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
...@@ -1624,10 +1668,10 @@ void setPosition(double x,double y,double z,double t) ...@@ -1624,10 +1668,10 @@ void setPosition(double x,double y,double z,double t)
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph. enhancement commands may be used inside the paragraph.
Multiple adjacent \\warning commands will be joined into a single paragraph. Multiple adjacent \c \\warning commands will be joined into a single paragraph.
Each warning description will start on a new line. Each warning description will start on a new line.
Alternatively, one \\warning command may mention Alternatively, one \c \\warning command may mention
several warnings. The \\warning command ends when a blank line or some other several warnings. The \c \\warning command ends when a blank line or some other
sectioning command is encountered. See section \ref cmdauthor "\\author" sectioning command is encountered. See section \ref cmdauthor "\\author"
for an example. for an example.
...@@ -1647,9 +1691,9 @@ void setPosition(double x,double y,double z,double t) ...@@ -1647,9 +1691,9 @@ void setPosition(double x,double y,double z,double t)
is a quoted string representing the heading of the section under which is a quoted string representing the heading of the section under which
text passed as the fourth argument is put. The third argument (list title) text passed as the fourth argument is put. The third argument (list title)
is used as the title for the related page containing all items with the is used as the title for the related page containing all items with the
same key. The keys "todo", "test", "bug" and "deprecated" are predefined. same key. The keys \c "todo", \c "test", \c "bug" and \c "deprecated" are predefined.
To get an idea on how to use the \\xrefitem command and what its effect To get an idea on how to use the \c \\xrefitem command and what its effect
is, consider the todo list, which (for English output) can be seen an is, consider the todo list, which (for English output) can be seen an
alias for the command alias for the command
\verbatim \xrefitem todo "Todo" "Todo List" \endverbatim \verbatim \xrefitem todo "Todo" "Todo List" \endverbatim
...@@ -1658,11 +1702,11 @@ void setPosition(double x,double y,double z,double t) ...@@ -1658,11 +1702,11 @@ void setPosition(double x,double y,double z,double t)
parameters of the command for each section, the command is meant to parameters of the command for each section, the command is meant to
be used in combination with the \ref cfg_aliases "ALIASES" option in the be used in combination with the \ref cfg_aliases "ALIASES" option in the
configuration file. configuration file.
To define a new command \\reminder, for instance, one should add the following To define a new command \c \\reminder, for instance, one should add the following
line to the configuration file: line to the configuration file:
\verbatim ALIASES += "reminder=\xrefitem reminders \"Reminder\" \"Reminders\"" \endverbatim \verbatim ALIASES += "reminder=\xrefitem reminders \"Reminder\" \"Reminders\"" \endverbatim
Note the use of escaped quotes for the second and third argument of the Note the use of escaped quotes for the second and third argument of the
\\xrefitem command. \c \\xrefitem command.
<hr> <hr>
...@@ -1685,7 +1729,7 @@ Commands to create links ...@@ -1685,7 +1729,7 @@ Commands to create links
\addindex \\anchor \addindex \\anchor
This command places an invisible, named anchor into the documentation This command places an invisible, named anchor into the documentation
to which you can refer with the \\ref command. to which you can refer with the \ref cmdref "\\ref" command.
\note Anchors can currently only be put into a comment block \note Anchors can currently only be put into a comment block
that is marked as a page (using \ref cmdpage "\\page") or mainpage that is marked as a page (using \ref cmdpage "\\page") or mainpage
...@@ -1709,7 +1753,7 @@ Commands to create links ...@@ -1709,7 +1753,7 @@ Commands to create links
\section cmdendlink \\endlink \section cmdendlink \\endlink
\addindex \\endlink \addindex \\endlink
This command ends a link that is started with the \\link command. This command ends a link that is started with the \ref cmdlink "\\link" command.
\sa section \ref cmdlink "\\link". \sa section \ref cmdlink "\\link".
...@@ -1720,13 +1764,13 @@ Commands to create links ...@@ -1720,13 +1764,13 @@ Commands to create links
The links that are automatically generated by doxygen always have the The links that are automatically generated by doxygen always have the
name of the object they point to as link-text. name of the object they point to as link-text.
The \\link command can be used to create a link to an object (a file, The \c \\link command can be used to create a link to an object (a file,
class, or member) with a user specified link-text. class, or member) with a user specified link-text.
The link command should end with an \\endlink command. All text between The link command should end with an \ref cmdendlink "\\endlink" command. All text between
the \\link and \\endlink commands serves as text for a link to the \c \\link and \ref cmdendlink "\\endlink" commands serves as text for a link to
the \<link-object\> specified as the first argument of \\link. the \<link-object\> specified as the first argument of \c \\link.
See section \ref autolink "autolink" for more information on automatically \sa Section \ref autolink "autolink" for more information on automatically
generated links and valid link-objects. generated links and valid link-objects.
<hr> <hr>
...@@ -1743,7 +1787,28 @@ Commands to create links ...@@ -1743,7 +1787,28 @@ Commands to create links
page number if \<name\> refers to an anchor. page number if \<name\> refers to an anchor.
\sa \sa
Section \ref cmdpage "\\page" for an example of the \\ref command. Section \ref cmdpage "\\page" for an example of the \c \\ref command.
<hr>
\section cmdrefitem \\refitem <name>
\addindex \\refitem
Just like the \ref cmdref "\\ref" command, this command creates a reference
to a named section, but this reference appears in a list that is started by
\ref cmdsecreflist "\\secreflist"
and ends with \ref cmdendsecreflist "\\endsecreflist".
An example of such a list can be seen
\ref showsecreflist "at the top of the page".
<hr>
\section cmdsecreflist \\secreflist
\addindex \\secreflist
Starts an index list of item, created with \ref cmdrefitem "\\refitem"
that each link to a named section.
<hr>
\section cmdendsecreflist \\endsecreflist
\addindex \\endsecreflist
End an index list started with \ref cmdsecreflist "\\secreflist".
<hr> <hr>
\section cmdsubpage \\subpage <name> ["(text)"] \section cmdsubpage \\subpage <name> ["(text)"]
...@@ -1751,7 +1816,7 @@ Commands to create links ...@@ -1751,7 +1816,7 @@ Commands to create links
\addindex \\subpage \addindex \\subpage
This command can be used to create a hierarchy of pages. The This command can be used to create a hierarchy of pages. The
same structure can be made using the \ref cmddefgroup "\\defgroup" and same structure can be made using the \ref cmddefgroup "\\defgroup" and
\ref cmdingroup "\\ingroup" commands, but for pages the \\subpage command \ref cmdingroup "\\ingroup" commands, but for pages the \c \\subpage command
is often more convenient. The main page (see \ref cmdmainpage "\\mainpage") is often more convenient. The main page (see \ref cmdmainpage "\\mainpage")
is typically the root of hierarchy. is typically the root of hierarchy.
...@@ -1759,7 +1824,7 @@ Commands to create links ...@@ -1759,7 +1824,7 @@ Commands to create links
it creates a reference to a page labeled \<name\> with the optional it creates a reference to a page labeled \<name\> with the optional
link text as specified in the second argument. link text as specified in the second argument.
It differs from the \\ref command in that it only works for pages, It differs from the \ref cmdref "\\ref" command in that it only works for pages,
and creates a parent-child relation between pages, where the and creates a parent-child relation between pages, where the
child page (or sub page) is identified by label \<name\>. child page (or sub page) is identified by label \<name\>.
...@@ -1813,7 +1878,7 @@ Make sure you have first read \ref intro "the introduction". ...@@ -1813,7 +1878,7 @@ Make sure you have first read \ref intro "the introduction".
\addindex \\section \addindex \\section
Creates a section with name \<section-name\>. The title of the Creates a section with name \<section-name\>. The title of the
section should be specified as the second argument of the \\section section should be specified as the second argument of the \c \\section
command. command.
\warning This command only works inside related page documentation and \warning This command only works inside related page documentation and
...@@ -1821,14 +1886,14 @@ Make sure you have first read \ref intro "the introduction". ...@@ -1821,14 +1886,14 @@ Make sure you have first read \ref intro "the introduction".
\sa \sa
Section \ref cmdpage "\\page" for an example of the Section \ref cmdpage "\\page" for an example of the
\ref cmdsection "\\section" command. \c \\section command.
<hr> <hr>
\section cmdsubsection \\subsection <subsection-name> (subsection title) \section cmdsubsection \\subsection <subsection-name> (subsection title)
\addindex \\subsection \addindex \\subsection
Creates a subsection with name \<subsection-name\>. The title of the Creates a subsection with name \<subsection-name\>. The title of the
subsection should be specified as the second argument of the \\subsection subsection should be specified as the second argument of the \c \\subsection
command. command.
\warning This command only works inside a section of a related page \warning This command only works inside a section of a related page
...@@ -1837,7 +1902,7 @@ Make sure you have first read \ref intro "the introduction". ...@@ -1837,7 +1902,7 @@ Make sure you have first read \ref intro "the introduction".
\sa \sa
Section \ref cmdpage "\\page" for an example of the Section \ref cmdpage "\\page" for an example of the
\ref cmdsubsection "\\subsection" command. \c \\subsection command.
<hr> <hr>
\section cmdsubsubsection \\subsubsection <subsubsection-name> (subsubsection title) \section cmdsubsubsection \\subsubsection <subsubsection-name> (subsubsection title)
...@@ -1845,7 +1910,7 @@ Make sure you have first read \ref intro "the introduction". ...@@ -1845,7 +1910,7 @@ Make sure you have first read \ref intro "the introduction".
\addindex \\subsubsection \addindex \\subsubsection
Creates a subsubsection with name \<subsubsection-name\>. The title of the Creates a subsubsection with name \<subsubsection-name\>. The title of the
subsubsection should be specified as the second argument of the subsubsection should be specified as the second argument of the
\\subsubsection command. \c \\subsubsection command.
\warning This command only works inside a subsection of a \warning This command only works inside a subsection of a
related page documentation block and related page documentation block and
...@@ -1862,7 +1927,7 @@ Make sure you have first read \ref intro "the introduction". ...@@ -1862,7 +1927,7 @@ Make sure you have first read \ref intro "the introduction".
\addindex \\paragraph \addindex \\paragraph
Creates a named paragraph with name \<paragraph-name\>. The title of the Creates a named paragraph with name \<paragraph-name\>. The title of the
paragraph should be specified as the second argument of the paragraph should be specified as the second argument of the
\\paragraph command. \c \\paragraph command.
\warning This command only works inside a subsubsection of a \warning This command only works inside a subsubsection of a
related page documentation block and related page documentation block and
...@@ -1883,7 +1948,7 @@ Commands for displaying examples ...@@ -1883,7 +1948,7 @@ Commands for displaying examples
\addindex \\dontinclude \addindex \\dontinclude
This command can be used to parse a source file without actually This command can be used to parse a source file without actually
verbatim including it in the documentation (as the \\include command does). verbatim including it in the documentation (as the \ref cmdinclude "\\include" command does).
This is useful if you want to divide the source file into smaller pieces and This is useful if you want to divide the source file into smaller pieces and
add documentation between the pieces. add documentation between the pieces.
Source files or directories can be specified using the Source files or directories can be specified using the
...@@ -1892,12 +1957,13 @@ Commands for displaying examples ...@@ -1892,12 +1957,13 @@ Commands for displaying examples
The class and member declarations and definitions inside the code fragment The class and member declarations and definitions inside the code fragment
are 'remembered' during the parsing of the comment block that contained are 'remembered' during the parsing of the comment block that contained
the \\dontinclude command. the \c \\dontinclude command.
For line by line descriptions of source files, one or more lines For line by line descriptions of source files, one or more lines
of the example can be displayed using the \\line, \\skip, \\skipline, and of the example can be displayed using the \ref cmdline "\\line",
\\until commands. An internal pointer is used for these commands. The \ref cmdskip "\\skip", \ref cmdskipline "\\skipline", and
\\dontinclude command sets the pointer to the first line of the example. \ref cmduntil "\\until" commands. An internal pointer is used for these commands. The
\c \\dontinclude command sets the pointer to the first line of the example.
\par Example: \par Example:
\verbinclude include.cpp \verbinclude include.cpp
...@@ -1930,11 +1996,11 @@ Commands for displaying examples ...@@ -1930,11 +1996,11 @@ Commands for displaying examples
by the \ref cfg_example_path "EXAMPLE_PATH" tag, you can include part by the \ref cfg_example_path "EXAMPLE_PATH" tag, you can include part
of the absolute path to disambiguate it. of the absolute path to disambiguate it.
Using the \\include command is equivalent to inserting the file into Using the \c \\include command is equivalent to inserting the file into
the documentation block and surrounding it the documentation block and surrounding it
with \ref cmdcode "\\code" and \ref cmdendcode "\\endcode" commands. with \ref cmdcode "\\code" and \ref cmdendcode "\\endcode" commands.
The main purpose of the \\include command is to avoid code The main purpose of the \c \\include command is to avoid code
duplication in case of example blocks that consist of multiple duplication in case of example blocks that consist of multiple
source and header files. source and header files.
...@@ -1958,7 +2024,7 @@ Commands for displaying examples ...@@ -1958,7 +2024,7 @@ Commands for displaying examples
\section cmdincludelineno \\includelineno <file-name> \section cmdincludelineno \\includelineno <file-name>
\addindex \\includelineno \addindex \\includelineno
This command works the same way as \\include, but will add line This command works the same way as \ref cmdinclude "\\include", but will add line
numbers to the included file. numbers to the included file.
\sa section \ref cmdinclude "\\include". \sa section \ref cmdinclude "\\include".
...@@ -1968,7 +2034,8 @@ Commands for displaying examples ...@@ -1968,7 +2034,8 @@ Commands for displaying examples
\addindex \\line \addindex \\line
This command searches line by line through the example that was last This command searches line by line through the example that was last
included using \\include or \\dontinclude until it finds a non-blank included using \ref cmdinclude "\\include" or
\ref cmddontinclude "\\dontinclude" until it finds a non-blank
line. If that line contains the specified pattern, it is written line. If that line contains the specified pattern, it is written
to the output. to the output.
...@@ -1984,7 +2051,8 @@ Commands for displaying examples ...@@ -1984,7 +2051,8 @@ Commands for displaying examples
\addindex \\skip \addindex \\skip
This command searches line by line through the example that was last This command searches line by line through the example that was last
included using \\include or \\dontinclude until it finds a line that contains included using \ref cmdinclude "\\include" or
\ref cmddontinclude "\\dontinclude" until it finds a line that contains
the specified pattern. the specified pattern.
The internal pointer that is used to keep track of the current line in The internal pointer that is used to keep track of the current line in
...@@ -1998,7 +2066,8 @@ Commands for displaying examples ...@@ -1998,7 +2066,8 @@ Commands for displaying examples
\addindex \\skipline \addindex \\skipline
This command searches line by line through the example that was last This command searches line by line through the example that was last
included using \\include or \\dontinclude until it finds a line that contains included using \ref cmdinclude "\\include" or
\ref cmddontinclude "\\dontinclude" until it finds a line that contains
the specified pattern. It then writes the line to the output. the specified pattern. It then writes the line to the output.
The internal pointer that is used to keep track of the current line in The internal pointer that is used to keep track of the current line in
...@@ -2033,7 +2102,7 @@ Commands for displaying examples ...@@ -2033,7 +2102,7 @@ Commands for displaying examples
The text following the file name is the unique identifier for the snippet. The text following the file name is the unique identifier for the snippet.
This is used to delimit the quoted code in the relevant snippet file as This is used to delimit the quoted code in the relevant snippet file as
shown in the following example that corresponds to the above \\snippet shown in the following example that corresponds to the above \c \\snippet
command: command:
\code \code
...@@ -2066,7 +2135,8 @@ Commands for displaying examples ...@@ -2066,7 +2135,8 @@ Commands for displaying examples
\addindex \\until \addindex \\until
This command writes all lines of the example that was last This command writes all lines of the example that was last
included using \\include or \\dontinclude to the output, until it finds included using \ref cmdinclude "\\include" or
\ref cmddontinclude "\\dontinclude" to the output, until it finds
a line containing the specified pattern. The line containing the pattern a line containing the specified pattern. The line containing the pattern
will be written as well. will be written as well.
...@@ -2082,7 +2152,8 @@ Commands for displaying examples ...@@ -2082,7 +2152,8 @@ Commands for displaying examples
\addindex \\verbinclude \addindex \\verbinclude
This command includes the file \<file-name\> verbatim in the documentation. This command includes the file \<file-name\> verbatim in the documentation.
The command is equivalent to pasting the file in the documentation and The command is equivalent to pasting the file in the documentation and
placing \\verbatim and \\endverbatim commands around it. placing \ref cmdverbatim "\\verbatim" and \ref cmdendverbatim "\\endverbatim"
commands around it.
Files or directories that doxygen should look for can be specified using the Files or directories that doxygen should look for can be specified using the
\ref cfg_example_path "EXAMPLE_PATH" tag of doxygen's configuration file. \ref cfg_example_path "EXAMPLE_PATH" tag of doxygen's configuration file.
...@@ -2093,7 +2164,8 @@ Commands for displaying examples ...@@ -2093,7 +2164,8 @@ Commands for displaying examples
\addindex \\htmlinclude \addindex \\htmlinclude
This command includes the file \<file-name\> as is in the HTML documentation. This command includes the file \<file-name\> as is in the HTML documentation.
The command is equivalent to pasting the file in the documentation and The command is equivalent to pasting the file in the documentation and
placing \\htmlonly and \\endhtmlonly commands around it. placing \ref cmdhtmlonly "\\htmlonly" and \ref cmdendhtmlonly "\\endhtmlonly"
commands around it.
Files or directories that doxygen should look for can be specified using the Files or directories that doxygen should look for can be specified using the
\ref cfg_example_path "EXAMPLE_PATH" tag of doxygen's configuration file. \ref cfg_example_path "EXAMPLE_PATH" tag of doxygen's configuration file.
...@@ -2122,7 +2194,7 @@ Commands for visual enhancements ...@@ -2122,7 +2194,7 @@ Commands for visual enhancements
This will result in the following text:<br><br> This will result in the following text:<br><br>
... the \a x and \a y coordinates are used to ... ... the \a x and \a y coordinates are used to ...
Equivalent to \ref cmda "\\e" and \ref cmdem "\\em". Equivalent to \ref cmde "\\e" and \ref cmdem "\\em".
To emphasize multiple words use \<em\>multiple words\</em\>. To emphasize multiple words use \<em\>multiple words\</em\>.
<hr> <hr>
...@@ -2130,10 +2202,10 @@ Commands for visual enhancements ...@@ -2130,10 +2202,10 @@ Commands for visual enhancements
\addindex \\arg \addindex \\arg
This command has one argument that continues until the first This command has one argument that continues until the first
blank line or until another \\arg is encountered. blank line or until another \c \\arg is encountered.
The command can be used to generate a simple, not nested list of The command can be used to generate a simple, not nested list of
arguments. arguments.
Each argument should start with a \\arg command. Each argument should start with a \c \\arg command.
\par Example: \par Example:
Typing: Typing:
...@@ -2195,12 +2267,12 @@ Commands for visual enhancements ...@@ -2195,12 +2267,12 @@ Commands for visual enhancements
replaced by links to the documentation. replaced by links to the documentation.
By default the language that is assumed for syntax highlighting is based By default the language that is assumed for syntax highlighting is based
on the location where the \\code block was found. If this part of on the location where the \c \\code block was found. If this part of
a Python file for instance, the syntax highlight will be done according a Python file for instance, the syntax highlight will be done according
to the Python syntax. to the Python syntax.
If it unclear from the context which language is meant (for instance the If it unclear from the context which language is meant (for instance the
comment is in a .txt or .markdown file) then you can also explicitly comment is in a <code>.txt</code> or <code>.markdown</code> file) then you can also explicitly
indicate the language, by putting the file extension typically indicate the language, by putting the file extension typically
that doxygen associated with the language in curly brackets after the that doxygen associated with the language in curly brackets after the
code block. Here is an example: code block. Here is an example:
...@@ -2253,7 +2325,7 @@ Commands for visual enhancements ...@@ -2253,7 +2325,7 @@ Commands for visual enhancements
Qualified names are only needed if the context in which the documentation Qualified names are only needed if the context in which the documentation
block is found requires them. block is found requires them.
The \\copydoc command can be used recursively, but cycles in the \\copydoc The \c \\copydoc command can be used recursively, but cycles in the \c \\copydoc
relation will be broken and flagged as an error. relation will be broken and flagged as an error.
Note that <code>\\copydoc foo()</code> is roughly equivalent to doing: Note that <code>\\copydoc foo()</code> is roughly equivalent to doing:
...@@ -2285,6 +2357,13 @@ only copy the detailed documentation, not the brief description. ...@@ -2285,6 +2357,13 @@ only copy the detailed documentation, not the brief description.
generated docbook documentation only. The block ends with a generated docbook documentation only. The block ends with a
\ref cmdenddocbookonly "\\enddocbookonly" command. \ref cmdenddocbookonly "\\enddocbookonly" command.
\sa section \ref cmdmanonly "\\manonly",
\ref cmdxmlonly "\\xmlonly",
\ref cmdlatexonly "\\latexonly",
\ref cmdrtfonly "\\rtfonly",
\ref cmdxmlonly "\\xmlonly", and
\ref cmdhtmlonly "\\htmlonly".
<hr> <hr>
\section cmddot \\dot \section cmddot \\dot
...@@ -2332,7 +2411,7 @@ class C {}; ...@@ -2332,7 +2411,7 @@ class C {};
\note You need to install the <code>mscgen</code> tool, if you want to use this \note You need to install the <code>mscgen</code> tool, if you want to use this
command. command.
Here is an example of the use of the \\msc command. Here is an example of the use of the \c \\msc command.
\code \code
/** Sender class. Can be used to send a command to the server. /** Sender class. Can be used to send a command to the server.
* The receiver will acknowledge the command by calling Ack(). * The receiver will acknowledge the command by calling Ack().
...@@ -2454,7 +2533,7 @@ class Receiver ...@@ -2454,7 +2533,7 @@ class Receiver
\section cmdenddocbookonly \\enddocbookonly \section cmdenddocbookonly \\enddocbookonly
\addindex \\enddocbookonly \addindex \\enddocbookonly
Ends a block of text that was started with a \\docbookonly command. Ends a block of text that was started with a \ref cmddocbookonly "\\docbookonly" command.
\sa section \ref cmddocbookonly "\\docbookonly". \sa section \ref cmddocbookonly "\\docbookonly".
...@@ -2462,19 +2541,19 @@ class Receiver ...@@ -2462,19 +2541,19 @@ class Receiver
\section cmdenddot \\enddot \section cmdenddot \\enddot
\addindex \\enddot \addindex \\enddot
Ends a blocks that was started with \ref cmddot "\\dot". Ends a block that was started with \ref cmddot "\\dot".
<hr> <hr>
\section cmdendmsc \\endmsc \section cmdendmsc \\endmsc
\addindex \\endmsc \addindex \\endmsc
Ends a blocks that was started with \ref cmdmsc "\\msc". Ends a block that was started with \ref cmdmsc "\\msc".
<hr> <hr>
\section cmdendhtmlonly \\endhtmlonly \section cmdendhtmlonly \\endhtmlonly
\addindex \\endhtmlonly \addindex \\endhtmlonly
Ends a block of text that was started with a \\htmlonly command. Ends a block of text that was started with a \ref cmdhtmlonly "\\htmlonly" command.
\sa section \ref cmdhtmlonly "\\htmlonly". \sa section \ref cmdhtmlonly "\\htmlonly".
...@@ -2482,7 +2561,7 @@ class Receiver ...@@ -2482,7 +2561,7 @@ class Receiver
\section cmdendlatexonly \\endlatexonly \section cmdendlatexonly \\endlatexonly
\addindex \\endlatexonly \addindex \\endlatexonly
Ends a block of text that was started with a \\latexonly command. Ends a block of text that was started with a \ref cmdlatexonly "\\latexonly" command.
\sa section \ref cmdlatexonly "\\latexonly". \sa section \ref cmdlatexonly "\\latexonly".
...@@ -2490,7 +2569,7 @@ class Receiver ...@@ -2490,7 +2569,7 @@ class Receiver
\section cmdendmanonly \\endmanonly \section cmdendmanonly \\endmanonly
\addindex \\endmanonly \addindex \\endmanonly
Ends a block of text that was started with a \\manonly command. Ends a block of text that was started with a \ref cmdmanonly "\\manonly" command.
\sa section \ref cmdmanonly "\\manonly". \sa section \ref cmdmanonly "\\manonly".
...@@ -2498,7 +2577,7 @@ class Receiver ...@@ -2498,7 +2577,7 @@ class Receiver
\section cmdendrtfonly \\endrtfonly \section cmdendrtfonly \\endrtfonly
\addindex \\endrtfonly \addindex \\endrtfonly
Ends a block of text that was started with a \\rtfonly command. Ends a block of text that was started with a \ref cmdrtfonly "\\rtfonly" command.
\sa section \ref cmdrtfonly "\\rtfonly". \sa section \ref cmdrtfonly "\\rtfonly".
...@@ -2507,7 +2586,7 @@ class Receiver ...@@ -2507,7 +2586,7 @@ class Receiver
\section cmdendverbatim \\endverbatim \section cmdendverbatim \\endverbatim
\addindex \\endverbatim \addindex \\endverbatim
Ends a block of text that was started with a \\verbatim command. Ends a block of text that was started with a \ref cmdverbatim "\\verbatim" command.
\sa section \ref cmdverbatim "\\verbatim". \sa section \ref cmdverbatim "\\verbatim".
...@@ -2515,7 +2594,7 @@ class Receiver ...@@ -2515,7 +2594,7 @@ class Receiver
\section cmdendxmlonly \\endxmlonly \section cmdendxmlonly \\endxmlonly
\addindex \\endxmlonly \addindex \\endxmlonly
Ends a block of text that was started with a \\xmlonly command. Ends a block of text that was started with a \ref cmdxmlonly "\\xmlonly" command.
\sa section \ref cmdxmlonly "\\xmlonly". \sa section \ref cmdxmlonly "\\xmlonly".
...@@ -2549,7 +2628,7 @@ class Receiver ...@@ -2549,7 +2628,7 @@ class Receiver
\section cmdfcurlyopen \\f{environment}{ \section cmdfcurlyopen \\f{environment}{
Marks the start of a formula that is in a specific environment. Marks the start of a formula that is in a specific environment.
\note The second { is optional and is only to help editors (such as Vim) to \note The second \c { is optional and is only to help editors (such as \c Vim) to
do proper syntax highlighting by making the number of opening and closing braces do proper syntax highlighting by making the number of opening and closing braces
the same. the same.
\sa section \ref cmdfcurlyclose "\\f}" and section \ref formulas "formulas". \sa section \ref cmdfcurlyclose "\\f}" and section \ref formulas "formulas".
...@@ -2566,19 +2645,21 @@ class Receiver ...@@ -2566,19 +2645,21 @@ class Receiver
\addindex \\htmlonly \addindex \\htmlonly
Starts a block of text that will be verbatim included in the Starts a block of text that will be verbatim included in the
generated HTML documentation only. The block ends with a generated HTML documentation only. The block ends with a
\ref cmdhtmlonly "\\endhtmlonly" command. \ref cmdendhtmlonly "\\endhtmlonly" command.
This command can be used to include HTML code that is too complex This command can be used to include HTML code that is too complex
for doxygen (i.e. applets, java-scripts, and HTML tags that for doxygen (i.e. applets, java-scripts, and HTML tags that
require attributes). You can use the \\latexonly and \\endlatexonly require attributes). You can use the \ref cmdlatexonly "\\latexonly" and
\ref cmdendlatexonly "\\endlatexonly"
pair to provide a proper \f$\mbox{\LaTeX}\f$ alternative. pair to provide a proper \f$\mbox{\LaTeX}\f$ alternative.
\note environment variables (like \$(HOME) ) are resolved inside a \note environment variables (like \$(HOME) ) are resolved inside a
HTML-only block. HTML-only block.
\sa section \ref cmdmanonly "\\manonly", section \sa section \ref cmdmanonly "\\manonly",
\ref cmdlatexonly "\\latexonly", section \ref cmdxmlonly "\\xmlonly",
\ref cmdrtfonly "\\rtfonly", section \ref cmdlatexonly "\\latexonly",
\ref cmdrtfonly "\\rtfonly",
\ref cmdxmlonly "\\xmlonly", and \ref cmdxmlonly "\\xmlonly", and
\ref cmddocbookonly "\\docbookonly". \ref cmddocbookonly "\\docbookonly".
...@@ -2647,17 +2728,18 @@ class Receiver ...@@ -2647,17 +2728,18 @@ class Receiver
This command can be used to include \f$\mbox{\LaTeX}\f$ code that is too This command can be used to include \f$\mbox{\LaTeX}\f$ code that is too
complex for doxygen (i.e. images, formulas, special characters). You can complex for doxygen (i.e. images, formulas, special characters). You can
use the \\htmlonly and \\endhtmlonly pair to provide a proper HTML use the \ref cmdhtmlonly "\\htmlonly" and \ref cmdendhtmlonly "\\endhtmlonly"
alternative. pair to provide a proper HTML alternative.
\b Note: \b Note:
environment variables (like \$(HOME) ) are resolved inside a environment variables (like \$(HOME) ) are resolved inside a
\f$\mbox{\LaTeX}\f$-only block. \f$\mbox{\LaTeX}\f$-only block.
\sa section \ref cmdrtfonly "\\rtfonly", \sa sections \ref cmdrtfonly "\\rtfonly",
section \ref cmdxmlonly "\\xmlonly", \ref cmdxmlonly "\\xmlonly",
section \ref cmdmanonly "\\manonly", and \ref cmdmanonly "\\manonly",
section \ref cmdhtmlonly "\\htmlonly". \ref cmdhtmlonly "\\htmlonly", and
\ref cmdhtmlonly "\\docbookonly".
<hr> <hr>
\section cmdmanonly \\manonly \section cmdmanonly \\manonly
...@@ -2668,24 +2750,27 @@ class Receiver ...@@ -2668,24 +2750,27 @@ class Receiver
\ref cmdendmanonly "\\endmanonly" command. \ref cmdendmanonly "\\endmanonly" command.
This command can be used to include groff code directly into This command can be used to include groff code directly into
MAN pages. You can use the \\htmlonly and \\latexonly and MAN pages. You can use the \ref cmdhtmlonly "\\htmlonly" and
\\endhtmlonly and \\endlatexonly pairs to provide proper \ref cmdendhtmlonly "\\endhtmlonly" and
\ref cmdlatexonly "\\latexonly" and
\ref cmdendlatexonly "\\endlatexonly" pairs to provide proper
HTML and \f$\mbox{\LaTeX}\f$ alternatives. HTML and \f$\mbox{\LaTeX}\f$ alternatives.
\sa section \ref cmdhtmlonly "\\htmlonly", \sa sections \ref cmdhtmlonly "\\htmlonly",
section \ref cmdxmlonly "\\xmlonly", \ref cmdxmlonly "\\xmlonly",
section \ref cmdrtfonly "\\rtfonly", and \ref cmdrtfonly "\\rtfonly",
section \ref cmdlatexonly "\\latexonly". \ref cmdlatexonly "\\latexonly", and
\ref cmddocbookonly "\\docbookonly".
<hr> <hr>
\section cmdli \\li { item-description } \section cmdli \\li { item-description }
\addindex \\li \addindex \\li
This command has one argument that continues until the first This command has one argument that continues until the first
blank line or until another \\li is encountered. blank line or until another \c \\li is encountered.
The command can be used to generate a simple, not nested list of The command can be used to generate a simple, not nested list of
arguments. arguments.
Each argument should start with a \\li command. Each argument should start with a \c \\li command.
\par Example: \par Example:
Typing: Typing:
...@@ -2714,7 +2799,7 @@ class Receiver ...@@ -2714,7 +2799,7 @@ class Receiver
\addindex \\n \addindex \\n
Forces a new line. Equivalent to \<br\> and inspired by Forces a new line. Equivalent to \<br\> and inspired by
the printf function. the \c printf function.
<hr> <hr>
\section cmdp \\p <word> \section cmdp \\p <word>
...@@ -2749,10 +2834,11 @@ class Receiver ...@@ -2749,10 +2834,11 @@ class Receiver
environment variables (like \$(HOME) ) are resolved inside a environment variables (like \$(HOME) ) are resolved inside a
RTF-only block. RTF-only block.
\sa section \ref cmdmanonly "\\manonly", section \sa sections \ref cmdmanonly "\\manonly",
\ref cmdxmlonly "\\xmlonly", section \ref cmdxmlonly "\\xmlonly",
\ref cmdlatexonly "\\latexonly", and section \ref cmdlatexonly "\\latexonly",
\ref cmdhtmlonly "\\htmlonly". \ref cmdhtmlonly "\\htmlonly", and
\ref cmddocbookonly "\\docbookonly".
<hr> <hr>
\section cmdverbatim \\verbatim \section cmdverbatim \\verbatim
...@@ -2760,14 +2846,15 @@ class Receiver ...@@ -2760,14 +2846,15 @@ class Receiver
\addindex \\verbatim \addindex \\verbatim
Starts a block of text that will be verbatim included in Starts a block of text that will be verbatim included in
the documentation. The block should end with a the documentation. The block should end with a
\ref cmdendverbatim "\\endverbatim" block. \ref cmdendverbatim "\\endverbatim" command.
All commands are disabled in a verbatim block. All commands are disabled in a verbatim block.
\warning Make sure you include a \\endverbatim command for each \warning Make sure you include a \ref cmdendverbatim "\\endverbatim" command for each
\\verbatim command or the parser will get confused! \c \\verbatim command or the parser will get confused!
\sa section \ref cmdcode "\\code", and \sa sections \ref cmdcode "\\code",
section \ref cmdverbinclude "\\verbinclude". \ref cmdendverbatim "\\endverbatim", and
\ref cmdverbinclude "\\verbinclude".
<hr> <hr>
\section cmdxmlonly \\xmlonly \section cmdxmlonly \\xmlonly
...@@ -2775,20 +2862,21 @@ class Receiver ...@@ -2775,20 +2862,21 @@ class Receiver
\addindex \\xmlonly \addindex \\xmlonly
Starts a block of text that will be verbatim included in the Starts a block of text that will be verbatim included in the
generated XML output only. The block ends with a generated XML output only. The block ends with a
endxmlonly command. \ref cmdendxmlonly "\\endxmlonly" command.
This command can be used to include custom XML tags. This command can be used to include custom XML tags.
\sa section \ref cmdmanonly "\\manonly", section \sa sections \ref cmdmanonly "\\manonly",
\ref cmdrtfonly "\\rtfonly", section \ref cmdrtfonly "\\rtfonly",
\ref cmdlatexonly "\\latexonly", and section \ref cmdlatexonly "\\latexonly",
\ref cmdhtmlonly "\\htmlonly". \ref cmdhtmlonly "\\htmlonly", and
\ref cmddocbookonly "\\docbookonly".
<hr> <hr>
\section cmdbackslash \\\\ \section cmdbackslash \\\\
\addindex \\\\ \addindex \\\\
This command writes a backslash character (\\) to the This command writes a backslash character (\c \\) to the
output. The backslash has to be escaped in some output. The backslash has to be escaped in some
cases because doxygen uses it to detect commands. cases because doxygen uses it to detect commands.
...@@ -2796,7 +2884,7 @@ class Receiver ...@@ -2796,7 +2884,7 @@ class Receiver
\section cmdat \\\@ \section cmdat \\\@
\addindex \\\@ \addindex \\\@
This command writes an at-sign (\@) to the output. This command writes an at-sign (\c \@) to the output.
The at-sign has to be escaped in some cases The at-sign has to be escaped in some cases
because doxygen uses it to detect JavaDoc commands. because doxygen uses it to detect JavaDoc commands.
...@@ -2805,14 +2893,14 @@ class Receiver ...@@ -2805,14 +2893,14 @@ class Receiver
\addindex \\~ \addindex \\~
This command enables/disables a language specific filter. This can be This command enables/disables a language specific filter. This can be
used to put documentation for different language into one comment block used to put documentation for different language into one comment block
and use the \c OUTPUT_LANGUAGE tag to filter out only a specific language. and use the \ref cfg_output_language "OUTPUT_LANGUAGE" tag to filter out only a specific language.
Use \\~language_id to enable output for a specific language only and Use \c \\~language_id to enable output for a specific language only and
\\~ to enable output for all languages (this is also the default mode). \c \\~ to enable output for all languages (this is also the default mode).
Example: Example:
\verbatim \verbatim
/*! \~english This is english \~dutch Dit is Nederlands \~german Dieses ist /*! \~english This is English \~dutch Dit is Nederlands \~german Dies ist
deutsch. \~ output for all languages. Deutsch. \~ output for all languages.
*/ */
\endverbatim \endverbatim
...@@ -2821,14 +2909,14 @@ class Receiver ...@@ -2821,14 +2909,14 @@ class Receiver
\section cmdamp \\\& \section cmdamp \\\&
\addindex \\\& \addindex \\\&
This command writes the \& character to output. This command writes the \c \& character to output.
This character has to be escaped because it has a special meaning in HTML. This character has to be escaped because it has a special meaning in HTML.
<hr> <hr>
\section cmddollar \\\$ \section cmddollar \\\$
\addindex \\\$ \addindex \\\$
This command writes the \$ character to the output. This command writes the \c \$ character to the output.
This character has to be escaped in some cases, because it is used to expand This character has to be escaped in some cases, because it is used to expand
environment variables. environment variables.
...@@ -2836,7 +2924,7 @@ class Receiver ...@@ -2836,7 +2924,7 @@ class Receiver
\section cmdhash \\\# \section cmdhash \\\#
\addindex \\\# \addindex \\\#
This command writes the \# character to the output. This This command writes the \c \# character to the output. This
character has to be escaped in some cases, because it is used to refer character has to be escaped in some cases, because it is used to refer
to documented entities. to documented entities.
...@@ -2844,21 +2932,21 @@ class Receiver ...@@ -2844,21 +2932,21 @@ class Receiver
\section cmdlt \\\< \section cmdlt \\\<
\addindex \\\< \addindex \\\<
This command writes the \< character to the output. This command writes the \c \< character to the output.
This character has to be escaped because it has a special meaning in HTML. This character has to be escaped because it has a special meaning in HTML.
<hr> <hr>
\section cmdgt \\\> \section cmdgt \\\>
\addindex \\\> \addindex \\\>
This command writes the \> character to the output. This This command writes the \c \> character to the output. This
character has to be escaped because it has a special meaning in HTML. character has to be escaped because it has a special meaning in HTML.
<hr> <hr>
\section cmdperc \\\% \section cmdperc \\\%
\addindex \\\% \addindex \\\%
This command writes the \% character to the output. This This command writes the \c \% character to the output. This
character has to be escaped in some cases, because it is used to character has to be escaped in some cases, because it is used to
prevent auto-linking to word that is also a documented class or struct. prevent auto-linking to word that is also a documented class or struct.
...@@ -2866,7 +2954,7 @@ class Receiver ...@@ -2866,7 +2954,7 @@ class Receiver
\section cmdquot \\" \section cmdquot \\"
\addindex \\\" \addindex \\\"
This command writes the \" character to the output. This This command writes the \c \" character to the output. This
character has to be escaped in some cases, because it is used in pairs character has to be escaped in some cases, because it is used in pairs
to indicate an unformatted text fragment. to indicate an unformatted text fragment.
...@@ -2874,7 +2962,7 @@ class Receiver ...@@ -2874,7 +2962,7 @@ class Receiver
\section cmdchardot \\. \section cmdchardot \\.
\addindex \\\. \addindex \\\.
This command writes a dot to the output. This can be useful to This command writes a dot (\c .) to the output. This can be useful to
prevent ending a brief description when JAVADOC_AUTOBRIEF is enabled prevent ending a brief description when JAVADOC_AUTOBRIEF is enabled
or to prevent starting a numbered list when the dot follows a number at or to prevent starting a numbered list when the dot follows a number at
the start of a line. the start of a line.
...@@ -2883,9 +2971,17 @@ class Receiver ...@@ -2883,9 +2971,17 @@ class Receiver
\section cmddcolon \\:: \section cmddcolon \\::
\addindex \\\:: \addindex \\\::
This command write a double colon (\::) to the output. This This command write a double colon (\c \::) to the output. This
character sequence has to be escaped in some cases, because it is used character sequence has to be escaped in some cases, because it is used
to ref to documented entities. to reference to documented entities.
<hr>
\section cmdpipe \\|
\addindex \\|
This command write a pip symbol (\|) to the output. This
character has to be escaped in some cases, because it is used
for Markdown tables.
<hr> <hr>
\htmlonly <center> \endhtmlonly \htmlonly <center> \endhtmlonly
......
...@@ -20,25 +20,25 @@ e****************************************************************************** ...@@ -20,25 +20,25 @@ e******************************************************************************
\section config_format Format \section config_format Format
A configuration file is a free-form ASCII text file with a structure A configuration file is a free-form ASCII text file with a structure
that is similar to that of a Makefile, with the default name \c Doxyfile. It is that is similar to that of a \c Makefile, with the default name \c Doxyfile. It is
parsed by \c doxygen. The file may contain tabs and newlines for parsed by \c doxygen. The file may contain tabs and newlines for
formatting purposes. The statements in the file are case-sensitive. formatting purposes. The statements in the file are case-sensitive.
Comments may be placed anywhere within the file (except within quotes). Comments may be placed anywhere within the file (except within quotes).
Comments beginning with two hash characters (\#\#) are kept when updating Comments beginning with two hash characters (\c \#\#) are kept when updating
the configuration file and are placed in front of the TAG are in front of. the configuration file and are placed in front of the TAG are in front of.
Comments beginning with two hash characters (\#\#) at the end of the Comments beginning with two hash characters (\c \#\#) at the end of the
configuration file are also kept and placed at the end of the file. configuration file are also kept and placed at the end of the file.
Comments begin with the \# character and end at the end of the line. Comments begin with the hash character (\c \#) and ends at the end of the line.
The file essentially consists of a list of assignment statements. The file essentially consists of a list of assignment statements.
Each statement consists of a \c TAG_NAME written in capitals, Each statement consists of a \c TAG_NAME written in capitals,
followed by the <code>=</code> character and one or more values. If the same tag followed by the equal sign (<code>=</code>) and one or more values. If the same tag
is assigned more than once, the last assignment overwrites any earlier is assigned more than once, the last assignment overwrites any earlier
assignment. For options that take a list as their argument, assignment. For tags that take a list as their argument,
the <code>+=</code> operator can be used instead of <code>=</code> to append the <code>+=</code> operator can be used instead of <code>=</code> to append
new values to the list. Values are sequences of non-blanks. If the value should new values to the list. Values are sequences of non-blanks. If the value should
contain one or more blanks it must be surrounded by quotes (&quot;...&quot;). contain one or more blanks it must be surrounded by quotes (<code>&quot;...&quot;</code>).
Multiple lines can be concatenated by inserting a backslash (\\) Multiple lines can be concatenated by inserting a backslash (\c \\)
as the last character of a line. Environment variables can be expanded as the last character of a line. Environment variables can be expanded
using the pattern <code>\$(ENV_VARIABLE_NAME)</code>. using the pattern <code>\$(ENV_VARIABLE_NAME)</code>.
...@@ -75,6 +75,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -75,6 +75,8 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_chm_file CHM_FILE \refitem cfg_chm_file CHM_FILE
\refitem cfg_chm_index_encoding CHM_INDEX_ENCODING \refitem cfg_chm_index_encoding CHM_INDEX_ENCODING
\refitem cfg_cite_bib_files CITE_BIB_FILES \refitem cfg_cite_bib_files CITE_BIB_FILES
\refitem cfg_clang_assisted_parsig CLANG_ASSISTED_PARSING
\refitem cfg_clang_options CLANG_OPTIONS
\refitem cfg_class_diagrams CLASS_DIAGRAMS \refitem cfg_class_diagrams CLASS_DIAGRAMS
\refitem cfg_class_graph CLASS_GRAPH \refitem cfg_class_graph CLASS_GRAPH
\refitem cfg_collaboration_graph COLLABORATION_GRAPH \refitem cfg_collaboration_graph COLLABORATION_GRAPH
...@@ -322,8 +324,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -322,8 +324,8 @@ followed by the descriptions of the tags grouped by category.
\addindex DOXYFILE_ENCODING \addindex DOXYFILE_ENCODING
This tag specifies the encoding used for all characters in the config file that This tag specifies the encoding used for all characters in the config file that
follow. The default is UTF-8 which is also the encoding used for all text before follow. The default is UTF-8 which is also the encoding used for all text before
the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into the first occurrence of this tag. Doxygen uses \c libiconv (or the iconv built into
libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of \c libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of
possible encodings. possible encodings.
\anchor cfg_project_name \anchor cfg_project_name
...@@ -389,7 +391,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -389,7 +391,7 @@ followed by the descriptions of the tags grouped by category.
\addindex BRIEF_MEMBER_DESC \addindex BRIEF_MEMBER_DESC
If the \c BRIEF_MEMBER_DESC tag is set to \c YES (the default) doxygen will If the \c BRIEF_MEMBER_DESC tag is set to \c YES (the default) doxygen will
include brief member descriptions after the members that are listed in include brief member descriptions after the members that are listed in
the file and class documentation (similar to JavaDoc). the file and class documentation (similar to \c Javadoc).
Set to \c NO to disable this. Set to \c NO to disable this.
\anchor cfg_repeat_brief \anchor cfg_repeat_brief
...@@ -400,7 +402,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -400,7 +402,8 @@ followed by the descriptions of the tags grouped by category.
description description
\par Note: \par Note:
If both \c HIDE_UNDOC_MEMBERS and \c BRIEF_MEMBER_DESC are set to \c NO, the If both \ref cfg_hide_undoc_members "HIDE_UNDOC_MEMBERS" and
\ref cfg_brief_member_desc "BRIEF_MEMBER_DESC" are set to \c NO, the
brief descriptions will be completely suppressed. brief descriptions will be completely suppressed.
\anchor cfg_abbreviate_brief \anchor cfg_abbreviate_brief
...@@ -409,9 +412,9 @@ followed by the descriptions of the tags grouped by category. ...@@ -409,9 +412,9 @@ followed by the descriptions of the tags grouped by category.
This tag implements a quasi-intelligent brief description abbreviator This tag implements a quasi-intelligent brief description abbreviator
that is used to form the text in various listings. Each string that is used to form the text in various listings. Each string
in this list, if found as the leading text of the brief description, will be in this list, if found as the leading text of the brief description, will be
stripped from the text and the result after processing the whole list, is used stripped from the text and the result, after processing the whole list, is used
as the annotated text. Otherwise, the brief description is used as-is. If left as the annotated text. Otherwise, the brief description is used as-is. If left
blank, the following values are used ("\$name" is automatically replaced with the blank, the following values are used ("$name" is automatically replaced with the
name of the entity): "The $name class" "The $name widget" "The $name file" name of the entity): "The $name class" "The $name widget" "The $name file"
"is" "provides" "specifies" "contains" "represents" "a" "an" "the". "is" "provides" "specifies" "contains" "represents" "a" "an" "the".
...@@ -441,7 +444,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -441,7 +444,7 @@ followed by the descriptions of the tags grouped by category.
\anchor cfg_strip_from_path \anchor cfg_strip_from_path
<dt>\c STRIP_FROM_PATH <dd> <dt>\c STRIP_FROM_PATH <dd>
\addindex STRIP_FROM_PATH \addindex STRIP_FROM_PATH
If the \c FULL_PATH_NAMES tag is set to \c YES then the \c STRIP_FROM_PATH tag If the \ref cfg_full_path_names "FULL_PATH_NAMES" tag is set to \c YES then the \c STRIP_FROM_PATH tag
can be used to strip a user-defined part of the path. Stripping is can be used to strip a user-defined part of the path. Stripping is
only done if one of the specified strings matches the left-hand part of the only done if one of the specified strings matches the left-hand part of the
path. The tag can be used to show relative paths in the file list. path. The tag can be used to show relative paths in the file list.
...@@ -469,7 +472,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -469,7 +472,7 @@ followed by the descriptions of the tags grouped by category.
<dt>\c JAVADOC_AUTOBRIEF <dd> <dt>\c JAVADOC_AUTOBRIEF <dd>
\addindex JAVADOC_AUTOBRIEF \addindex JAVADOC_AUTOBRIEF
If the \c JAVADOC_AUTOBRIEF is set to \c YES then doxygen If the \c JAVADOC_AUTOBRIEF is set to \c YES then doxygen
will interpret the first line (until the first dot) of a JavaDoc-style will interpret the first line (until the first dot) of a Javadoc-style
comment as the brief description. If set to \c NO (the default), the comment as the brief description. If set to \c NO (the default), the
Javadoc-style will behave just like regular Qt-style comments Javadoc-style will behave just like regular Qt-style comments
(thus requiring an explicit \ref cmdbrief "\@brief" command for a brief description.) (thus requiring an explicit \ref cmdbrief "\@brief" command for a brief description.)
...@@ -481,7 +484,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -481,7 +484,7 @@ followed by the descriptions of the tags grouped by category.
will interpret the first line (until the first dot) of a Qt-style will interpret the first line (until the first dot) of a Qt-style
comment as the brief description. If set to \c NO (the default), the comment as the brief description. If set to \c NO (the default), the
Qt-style will behave just like regular Qt-style comments (thus Qt-style will behave just like regular Qt-style comments (thus
requiring an explicit \\brief command for a brief description.) requiring an explicit \ref cmdbrief "\\brief" command for a brief description.)
\anchor cfg_markdown_support \anchor cfg_markdown_support
<dt>\c MARKDOWN_SUPPORT <dd> <dt>\c MARKDOWN_SUPPORT <dd>
...@@ -498,7 +501,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -498,7 +501,7 @@ followed by the descriptions of the tags grouped by category.
\addindex AUTOLINK_SUPPORT \addindex AUTOLINK_SUPPORT
When enabled doxygen tries to link words that correspond to documented classes, When enabled doxygen tries to link words that correspond to documented classes,
or namespaces to their corresponding documentation. Such a link can be or namespaces to their corresponding documentation. Such a link can be
prevented in individual cases by by putting a % sign in front of the word or prevented in individual cases by by putting a \c % sign in front of the word or
globally by setting \c AUTOLINK_SUPPORT to \c NO. globally by setting \c AUTOLINK_SUPPORT to \c NO.
\anchor cfg_builtin_stl_support \anchor cfg_builtin_stl_support
...@@ -528,7 +531,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -528,7 +531,7 @@ followed by the descriptions of the tags grouped by category.
\anchor cfg_idl_property_support \anchor cfg_idl_property_support
<dt>\c IDL_PROPERTY_SUPPORT <dd> <dt>\c IDL_PROPERTY_SUPPORT <dd>
\addindex IDL_PROPERTY_SUPPORT \addindex IDL_PROPERTY_SUPPORT
For Microsoft's IDL there are propget and propput attributes to indicate getter For Microsoft's IDL there are \c propget and \c propput attributes to indicate getter
and setter methods for a property. Setting this option to \c YES (the default) and setter methods for a property. Setting this option to \c YES (the default)
will make doxygen to replace the get and set methods by a property in the will make doxygen to replace the get and set methods by a property in the
documentation. This will only work if the methods are indeed getting or documentation. This will only work if the methods are indeed getting or
...@@ -546,8 +549,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -546,8 +549,8 @@ followed by the descriptions of the tags grouped by category.
\anchor cfg_multiline_cpp_is_brief \anchor cfg_multiline_cpp_is_brief
<dt>\c MULTILINE_CPP_IS_BRIEF <dd> <dt>\c MULTILINE_CPP_IS_BRIEF <dd>
\addindex MULTILINE_CPP_IS_BRIEF \addindex MULTILINE_CPP_IS_BRIEF
The \c MULTILINE_CPP_IS_BRIEF tag can be set to \c YES to make Doxygen The \c MULTILINE_CPP_IS_BRIEF tag can be set to \c YES to make doxygen
treat a multi-line C++ special comment block (i.e. a block of //! or /// treat a multi-line C++ special comment block (i.e. a block of \c //! or \c ///
comments) as a brief description. This used to be the default behavior. comments) as a brief description. This used to be the default behavior.
The new default is to treat a multi-line C++ comment block as a detailed The new default is to treat a multi-line C++ comment block as a detailed
description. Set this tag to \c YES if you prefer the old behavior instead. description. Set this tag to \c YES if you prefer the old behavior instead.
...@@ -558,8 +561,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -558,8 +561,8 @@ followed by the descriptions of the tags grouped by category.
\anchor cfg_details_at_top \anchor cfg_details_at_top
<dt>\c DETAILS_AT_TOP <dd> <dt>\c DETAILS_AT_TOP <dd>
\addindex DETAILS_AT_TOP \addindex DETAILS_AT_TOP
If the \c DETAILS_AT_TOP tag is set to \c YES then Doxygen If the \c DETAILS_AT_TOP tag is set to \c YES then doxygen
will output the detailed description near the top, like JavaDoc. will output the detailed description near the top, like \c Javadoc.
If set to \c NO, the detailed description appears after the member If set to \c NO, the detailed description appears after the member
documentation. documentation.
--> -->
...@@ -599,7 +602,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -599,7 +602,7 @@ followed by the descriptions of the tags grouped by category.
will allow you to will allow you to
put the command \\sideeffect (or \@sideeffect) in the documentation, which put the command \\sideeffect (or \@sideeffect) in the documentation, which
will result in a user-defined paragraph with heading "Side Effects:". will result in a user-defined paragraph with heading "Side Effects:".
You can put \\n's in the value part of an alias to insert newlines. You can put \ref cmdn "\\n"'s in the value part of an alias to insert newlines.
\anchor cfg_tcl_subst \anchor cfg_tcl_subst
<dt>\c TCL_SUBST <dd> <dt>\c TCL_SUBST <dd>
...@@ -667,8 +670,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -667,8 +670,8 @@ followed by the descriptions of the tags grouped by category.
\addindex INLINE_GROUPED_CLASSES \addindex INLINE_GROUPED_CLASSES
When the \c INLINE_GROUPED_CLASSES tag is set to \c YES, classes, structs and When the \c INLINE_GROUPED_CLASSES tag is set to \c YES, classes, structs and
unions are shown inside the group in which they are included unions are shown inside the group in which they are included
(e.g. using @@ingroup) instead of on a separate page (for HTML and Man pages) (e.g. using \ref cmdingroup "\\ingroup") instead of on a separate page (for HTML and Man pages)
or section (for LaTeX and RTF). Note that this feature does not work in or section (for \f$\mbox{\LaTeX}\f$ and RTF). Note that this feature does not work in
combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES". combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES".
\anchor cfg_inline_simple_structs \anchor cfg_inline_simple_structs
...@@ -679,7 +682,7 @@ unions with only public data fields or simple typedef fields will be shown ...@@ -679,7 +682,7 @@ unions with only public data fields or simple typedef fields will be shown
inline in the documentation of the scope in which they are defined (i.e. file, inline in the documentation of the scope in which they are defined (i.e. file,
namespace, or group documentation), provided this scope is documented. If set namespace, or group documentation), provided this scope is documented. If set
to \c NO (the default), structs, classes, and unions are shown on a separate to \c NO (the default), structs, classes, and unions are shown on a separate
page (for HTML and Man pages) or section (for LaTeX and RTF). page (for HTML and Man pages) or section (for \f$\mbox{\LaTeX}\f$ and RTF).
\anchor cfg_typedef_hides_struct \anchor cfg_typedef_hides_struct
<dt>\c TYPEDEF_HIDES_STRUCT <dd> <dt>\c TYPEDEF_HIDES_STRUCT <dd>
...@@ -717,11 +720,12 @@ page (for HTML and Man pages) or section (for LaTeX and RTF). ...@@ -717,11 +720,12 @@ page (for HTML and Man pages) or section (for LaTeX and RTF).
If the \c EXTRACT_ALL tag is set to \c YES doxygen will assume all If the \c EXTRACT_ALL tag is set to \c YES doxygen will assume all
entities in documentation are documented, even if no documentation was entities in documentation are documented, even if no documentation was
available. Private class members and static file members will be hidden available. Private class members and static file members will be hidden
unless the \c EXTRACT_PRIVATE and \c EXTRACT_STATIC tags are set to \c YES unless the \ref cfg_extract_private "EXTRACT_PRIVATE" respectively
\ref cfg_extract_static "EXTRACT_STATIC" tags are set to \c YES
\par Note: \note This will also disable the warnings about undocumented members
This will also disable the warnings about undocumented members that are normally produced when \ref cfg_warnings "WARNINGS" is
that are normally produced when \c WARNINGS is set to \c YES set to \c YES
\anchor cfg_extract_private \anchor cfg_extract_private
<dt>\c EXTRACT_PRIVATE <dd> <dt>\c EXTRACT_PRIVATE <dd>
...@@ -772,7 +776,7 @@ page (for HTML and Man pages) or section (for LaTeX and RTF). ...@@ -772,7 +776,7 @@ page (for HTML and Man pages) or section (for LaTeX and RTF).
undocumented members inside documented classes or files. undocumented members inside documented classes or files.
If set to \c NO (the default) these members will be included in the If set to \c NO (the default) these members will be included in the
various overviews, but no documentation section is generated. various overviews, but no documentation section is generated.
This option has no effect if \c EXTRACT_ALL is enabled. This option has no effect if \ref cfg_extract_all "EXTRACT_ALL" is enabled.
\anchor cfg_hide_undoc_classes \anchor cfg_hide_undoc_classes
<dt>\c HIDE_UNDOC_CLASSES <dd> <dt>\c HIDE_UNDOC_CLASSES <dd>
...@@ -781,12 +785,12 @@ page (for HTML and Man pages) or section (for LaTeX and RTF). ...@@ -781,12 +785,12 @@ page (for HTML and Man pages) or section (for LaTeX and RTF).
undocumented classes. undocumented classes.
If set to \c NO (the default) these classes will be included in the If set to \c NO (the default) these classes will be included in the
various overviews. various overviews.
This option has no effect if \c EXTRACT_ALL is enabled. This option has no effect if \ref cfg_extract_all "EXTRACT_ALL" is enabled.
\anchor cfg_hide_friend_compounds \anchor cfg_hide_friend_compounds
<dt>\c HIDE_FRIEND_COMPOUNDS <dd> <dt>\c HIDE_FRIEND_COMPOUNDS <dd>
\addindex HIDE_FRIEND_COMPOUNDS \addindex HIDE_FRIEND_COMPOUNDS
If the \c HIDE_FRIEND_COMPOUNDS tag is set to \c YES, Doxygen will hide all If the \c HIDE_FRIEND_COMPOUNDS tag is set to \c YES, doxygen will hide all
friend (class|struct|union) declarations. friend (class|struct|union) declarations.
If set to \c NO (the default) these declarations will be included in the If set to \c NO (the default) these declarations will be included in the
documentation. documentation.
...@@ -794,7 +798,7 @@ page (for HTML and Man pages) or section (for LaTeX and RTF). ...@@ -794,7 +798,7 @@ page (for HTML and Man pages) or section (for LaTeX and RTF).
\anchor cfg_hide_in_body_docs \anchor cfg_hide_in_body_docs
<dt>\c HIDE_IN_BODY_DOCS <dd> <dt>\c HIDE_IN_BODY_DOCS <dd>
\addindex HIDE_IN_BODY_DOCS \addindex HIDE_IN_BODY_DOCS
If the \c HIDE_IN_BODY_DOCS tag is set to \c YES, Doxygen will hide any If the \c HIDE_IN_BODY_DOCS tag is set to \c YES, doxygen will hide any
documentation blocks found inside the body of a function. documentation blocks found inside the body of a function.
If set to \c NO (the default) these blocks will be appended to the If set to \c NO (the default) these blocks will be appended to the
function's detailed documentation block. function's detailed documentation block.
...@@ -834,7 +838,7 @@ function's detailed documentation block. ...@@ -834,7 +838,7 @@ function's detailed documentation block.
\anchor cfg_force_local_includes \anchor cfg_force_local_includes
<dt>\c FORCE_LOCAL_INCLUDES <dd> <dt>\c FORCE_LOCAL_INCLUDES <dd>
\addindex FORCE_LOCAL_INCLUDES \addindex FORCE_LOCAL_INCLUDES
If the \c FORCE_LOCAL_INCLUDES tag is set to \c YES then Doxygen If the \c FORCE_LOCAL_INCLUDES tag is set to \c YES then doxygen
will list include files with double quotes in the documentation will list include files with double quotes in the documentation
rather than with sharp brackets. rather than with sharp brackets.
...@@ -873,22 +877,12 @@ function's detailed documentation block. ...@@ -873,22 +877,12 @@ function's detailed documentation block.
\addindex SORT_BY_SCOPE_NAME \addindex SORT_BY_SCOPE_NAME
If the \c SORT_BY_SCOPE_NAME tag is set to \c YES, the class list will be If the \c SORT_BY_SCOPE_NAME tag is set to \c YES, the class list will be
sorted by fully-qualified names, including namespaces. If set to sorted by fully-qualified names, including namespaces. If set to
NO (the default), the class list will be sorted only by class name, \c NO (the default), the class list will be sorted only by class name,
not including the namespace part. not including the namespace part.
@note This option is not very useful if \c HIDE_SCOPE_NAMES is set to \c YES. @note This option is not very useful if \ref cfg_hide_scope_names "HIDE_SCOPE_NAMES" is set to \c YES.
@note This option applies only to the class list, not to the @note This option applies only to the class list, not to the
alphabetical list. alphabetical list.
\anchor cfg_strict_proto_matching
<dt>\c STRICT_PROTO_MATCHING <dd>
\addindex STRICT_PROTO_MATCHING
If the \c STRICT_PROTO_MATCHING option is enabled and doxygen fails to
do proper type resolution of all parameters of a function it will reject a
match between the prototype and the implementation of a member function even
if there is only one candidate or it is obvious which candidate to choose
by doing a simple string match. By disabling \c STRICT_PROTO_MATCHING doxygen
will still accept a match between prototype and implementation in such cases.
\anchor cfg_sort_members_constructors_first \anchor cfg_sort_members_constructors_first
<dt>\c SORT_MEMBERS_CTORS_1ST <dd> <dt>\c SORT_MEMBERS_CTORS_1ST <dd>
\addindex SORT_MEMBERS_CTORS_1ST \addindex SORT_MEMBERS_CTORS_1ST
...@@ -897,16 +891,16 @@ function's detailed documentation block. ...@@ -897,16 +891,16 @@ function's detailed documentation block.
constructors and destructors are listed first. If set to \c NO (the default) constructors and destructors are listed first. If set to \c NO (the default)
the constructors will appear in the respective orders defined by the constructors will appear in the respective orders defined by
\c SORT_MEMBER_DOCS and \c SORT_BRIEF_DOCS. \c SORT_MEMBER_DOCS and \c SORT_BRIEF_DOCS.
@note If \c SORT_BRIEF_DOCS is set to \c NO this option is ignored for @note If \ref cfg_sort_brief_docs "SORT_BRIEF_DOCS" is set to \c NO this option is ignored for
sorting brief member documentation. sorting brief member documentation.
@note If \c SORT_MEMBER_DOCS is set to \c NO this option is ignored for @note If \ref cfg_sort_member_docs "SORT_MEMBER_DOCS" is set to \c NO this option is ignored for
sorting detailed member documentation. sorting detailed member documentation.
\anchor cfg_generate_deprecatedlist \anchor cfg_generate_deprecatedlist
<dt>\c GENERATE_DEPRECATEDLIST <dd> <dt>\c GENERATE_DEPRECATEDLIST <dd>
\addindex GENERATE_DEPRECATEDLIST \addindex GENERATE_DEPRECATEDLIST
The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or The GENERATE_DEPRECATEDLIST tag can be used to enable (\c YES) or
disable (NO) the deprecated list. This list is created by disable (\c NO) the deprecated list. This list is created by
putting \ref cmddeprecated "\\deprecated" putting \ref cmddeprecated "\\deprecated"
commands in the documentation. commands in the documentation.
...@@ -924,7 +918,7 @@ function's detailed documentation block. ...@@ -924,7 +918,7 @@ function's detailed documentation block.
<dt>\c GENERATE_TODOLIST <dd> <dt>\c GENERATE_TODOLIST <dd>
\addindex GENERATE_TODOLIST \addindex GENERATE_TODOLIST
The GENERATE_TODOLIST tag can be used to enable (YES) or The GENERATE_TODOLIST tag can be used to enable (YES) or
disable (NO) the todo list. This list is created by disable (\c NO) the todo list. This list is created by
putting \ref cmdtodo "\\todo" putting \ref cmdtodo "\\todo"
commands in the documentation. commands in the documentation.
...@@ -932,14 +926,14 @@ function's detailed documentation block. ...@@ -932,14 +926,14 @@ function's detailed documentation block.
<dt>\c GENERATE_TESTLIST <dd> <dt>\c GENERATE_TESTLIST <dd>
\addindex GENERATE_TESTLIST \addindex GENERATE_TESTLIST
The GENERATE_TESTLIST tag can be used to enable (YES) or The GENERATE_TESTLIST tag can be used to enable (YES) or
disable (NO) the test list. This list is created by disable (\c NO) the test list. This list is created by
putting \ref cmdtest "\\test" commands in the documentation. putting \ref cmdtest "\\test" commands in the documentation.
\anchor cfg_generate_buglist \anchor cfg_generate_buglist
<dt>\c GENERATE_BUGLIST <dd> <dt>\c GENERATE_BUGLIST <dd>
\addindex GENERATE_BUGLIST \addindex GENERATE_BUGLIST
The GENERATE_BUGLIST tag can be used to enable (YES) or The GENERATE_BUGLIST tag can be used to enable (YES) or
disable (NO) the bug list. This list is created by disable (\c NO) the bug list. This list is created by
putting \ref cmdbug "\\bug" commands in the documentation. putting \ref cmdbug "\\bug" commands in the documentation.
\anchor cfg_enabled_sections \anchor cfg_enabled_sections
...@@ -987,7 +981,7 @@ function's detailed documentation block. ...@@ -987,7 +981,7 @@ function's detailed documentation block.
The \c FILE_VERSION_FILTER tag can be used to specify a program or script that The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
doxygen should invoke to get the current version for each file (typically from the doxygen should invoke to get the current version for each file (typically from the
version control system). Doxygen will invoke the program by executing (via version control system). Doxygen will invoke the program by executing (via
popen()) the command <code>command input-file</code>, where \c command is <code>popen()</code>) the command <code>command input-file</code>, where \c command is
the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name
of an input file provided by doxygen. of an input file provided by doxygen.
Whatever the program writes to standard output is used as the file version. Whatever the program writes to standard output is used as the file version.
...@@ -1020,19 +1014,19 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1020,19 +1014,19 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
doxygen. The layout file controls the global structure of the generated output files doxygen. The layout file controls the global structure of the generated output files
in an output format independent way. To create the layout file that represents in an output format independent way. To create the layout file that represents
doxygen's defaults, run doxygen with the -l option. You can optionally specify a doxygen's defaults, run doxygen with the -l option. You can optionally specify a
file name after the option, if omitted DoxygenLayout.xml will be used as the name file name after the option, if omitted \c DoxygenLayout.xml will be used as the name
of the layout file. Note that if you run doxygen from a directory containing of the layout file. Note that if you run doxygen from a directory containing
a file called `DoxygenLayout.xml`, doxygen will parse it automatically even if a file called \c DoxygenLayout.xml, doxygen will parse it automatically even if
the \c LAYOUT_FILE tag is left empty. the \c LAYOUT_FILE tag is left empty.
\anchor cfg_cite_bib_files \anchor cfg_cite_bib_files
<dt>\c CITE_BIB_FILES <dd> <dt>\c CITE_BIB_FILES <dd>
\addindex CITE_BIB_FILES \addindex CITE_BIB_FILES
The \c CITE_BIB_FILES tag can be used to specify one or more bib files The \c CITE_BIB_FILES tag can be used to specify one or more bib files
containing the reference definitions. This must be a list of .bib files. The containing the reference definitions. This must be a list of <code>.bib</code> files. The
.bib extension is automatically appended if omitted. This requires the <code>.bib</code> extension is automatically appended if omitted. This requires the
bibtex tool to be installed. See also http://en.wikipedia.org/wiki/BibTeX \c bibtex tool to be installed. See also http://en.wikipedia.org/wiki/BibTeX
for more info. For LaTeX the style of the bibliography can be controlled for more info. For \f$\mbox{\LaTeX}\f$ the style of the bibliography can be controlled
using \ref cfg_latex_bib_style "LATEX_BIB_STYLE". See using \ref cfg_latex_bib_style "LATEX_BIB_STYLE". See
also \ref cmdcite "\\cite" for info how to create references. also \ref cmdcite "\\cite" for info how to create references.
...@@ -1062,7 +1056,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1062,7 +1056,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
<dt>\c WARN_IF_UNDOCUMENTED <dd> <dt>\c WARN_IF_UNDOCUMENTED <dd>
\addindex WARN_IF_UNDOCUMENTED \addindex WARN_IF_UNDOCUMENTED
If \c WARN_IF_UNDOCUMENTED is set to \c YES, then doxygen will generate warnings If \c WARN_IF_UNDOCUMENTED is set to \c YES, then doxygen will generate warnings
for undocumented members. If \c EXTRACT_ALL is set to \c YES then this flag will for undocumented members. If \ref cfg_extract_all "EXTRACT_ALL" is set to \c YES then this flag will
automatically be disabled. automatically be disabled.
\anchor cfg_warn_if_doc_error \anchor cfg_warn_if_doc_error
...@@ -1096,7 +1090,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1096,7 +1090,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\addindex WARN_LOGFILE \addindex WARN_LOGFILE
The \c WARN_LOGFILE tag can be used to specify a file to which warning The \c WARN_LOGFILE tag can be used to specify a file to which warning
and error messages should be written. If left blank the output is written and error messages should be written. If left blank the output is written
to stderr. to \c stderr.
</dl> </dl>
...@@ -1111,7 +1105,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1111,7 +1105,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\c myfile.cpp or directories like \c /usr/src/myproject. \c myfile.cpp or directories like \c /usr/src/myproject.
Separate the files or directories with spaces.<br> Separate the files or directories with spaces.<br>
\note Note If this tag is empty the current directory is searched. \note If this tag is empty the current directory is searched.
\anchor cfg_input_encoding \anchor cfg_input_encoding
<dt>\c INPUT_ENCODING <dd> <dt>\c INPUT_ENCODING <dd>
...@@ -1125,7 +1119,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1125,7 +1119,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\anchor cfg_file_patterns \anchor cfg_file_patterns
<dt>\c FILE_PATTERNS <dd> <dt>\c FILE_PATTERNS <dd>
\addindex FILE_PATTERNS \addindex FILE_PATTERNS
If the value of the \c INPUT tag contains directories, you can use the If the value of the \ref cfg_input "INPUT" tag contains directories, you can use the
\c FILE_PATTERNS tag to specify one or more wildcard patterns \c FILE_PATTERNS tag to specify one or more wildcard patterns
(like `*.cpp` and `*.h`) to filter out the source-files (like `*.cpp` and `*.h`) to filter out the source-files
in the directories. If left blank the following patterns are tested: in the directories. If left blank the following patterns are tested:
...@@ -1146,8 +1140,8 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1146,8 +1140,8 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
<dt>\c EXCLUDE <dd> <dt>\c EXCLUDE <dd>
\addindex EXCLUDE \addindex EXCLUDE
The \c EXCLUDE tag can be used to specify files and/or directories that should be The \c EXCLUDE tag can be used to specify files and/or directories that should be
excluded from the \c INPUT source files. This way you can easily exclude a excluded from the \ref cfg_input "INPUT" source files. This way you can easily exclude a
subdirectory from a directory tree whose root is specified with the \c INPUT tag. subdirectory from a directory tree whose root is specified with the \ref cfg_input "INPUT" tag.
Note that relative paths are relative to the directory from which doxygen is run. Note that relative paths are relative to the directory from which doxygen is run.
\anchor cfg_exclude_symlinks \anchor cfg_exclude_symlinks
...@@ -1159,7 +1153,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn" ...@@ -1159,7 +1153,7 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\anchor cfg_exclude_patterns \anchor cfg_exclude_patterns
<dt>\c EXCLUDE_PATTERNS <dd> <dt>\c EXCLUDE_PATTERNS <dd>
\addindex EXCLUDE_PATTERNS \addindex EXCLUDE_PATTERNS
If the value of the \c INPUT tag contains directories, you can use the If the value of the \ref cfg_input "INPUT" tag contains directories, you can use the
\c EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude \c EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
certain files from those directories. certain files from those directories.
...@@ -1186,7 +1180,8 @@ wildcard `*` is used, a substring. Examples: `ANamespace`, `AClass`, ...@@ -1186,7 +1180,8 @@ wildcard `*` is used, a substring. Examples: `ANamespace`, `AClass`,
<dt>\c EXAMPLE_RECURSIVE <dd> <dt>\c EXAMPLE_RECURSIVE <dd>
\addindex EXAMPLE_RECURSIVE \addindex EXAMPLE_RECURSIVE
If the \c EXAMPLE_RECURSIVE tag is set to \c YES then subdirectories will be If the \c EXAMPLE_RECURSIVE tag is set to \c YES then subdirectories will be
searched for input files to be used with the \\include or \\dontinclude searched for input files to be used with the \ref cmdinclude "\\include" or
\ref cmddontinclude "\\dontinclude"
commands irrespective of the value of the \ref cfg_recursive "RECURSIVE" tag. commands irrespective of the value of the \ref cfg_recursive "RECURSIVE" tag.
Possible values are \c YES and \c NO. If left blank \c NO is used. Possible values are \c YES and \c NO. If left blank \c NO is used.
...@@ -1211,12 +1206,12 @@ wildcard `*` is used, a substring. Examples: `ANamespace`, `AClass`, ...@@ -1211,12 +1206,12 @@ wildcard `*` is used, a substring. Examples: `ANamespace`, `AClass`,
\addindex INPUT_FILTER \addindex INPUT_FILTER
The \c INPUT_FILTER tag can be used to specify a program that doxygen should The \c INPUT_FILTER tag can be used to specify a program that doxygen should
invoke to filter for each input file. Doxygen will invoke the filter program invoke to filter for each input file. Doxygen will invoke the filter program
by executing (via popen()) the command: by executing (via <code>popen()</code>) the command:
\verbatim <filter> <input-file> \verbatim <filter> <input-file>
\endverbatim \endverbatim
where \<filter\> where <code>\<filter\></code>
is the value of the \c INPUT_FILTER tag, and \<input-file\> is the name of an is the value of the \c INPUT_FILTER tag, and <code>\<input-file\></code> is the name of an
input file. Doxygen will then use the output that the filter program writes input file. Doxygen will then use the output that the filter program writes
to standard output. to standard output.
...@@ -1301,8 +1296,9 @@ the introduction page also for the doxygen output. ...@@ -1301,8 +1296,9 @@ the introduction page also for the doxygen output.
<dt>\c REFERENCES_LINK_SOURCE <dd> <dt>\c REFERENCES_LINK_SOURCE <dd>
\addindex REFERENCES_LINK_SOURCE \addindex REFERENCES_LINK_SOURCE
If the \c REFERENCES_LINK_SOURCE tag is set to \c YES (the default) If the \c REFERENCES_LINK_SOURCE tag is set to \c YES (the default)
and SOURCE_BROWSER tag is set to \c YES, then the hyperlinks from and \ref cfg_source_browser "SOURCE_BROWSER" tag is set to \c YES, then the hyperlinks from
functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will functions in \ref cfg_references_relation "REFERENCES_RELATION" and
\ref cfg_referenced_by_relation "REFERENCED_BY_RELATION" lists will
link to the source code. Otherwise they will link to the documentation. link to the source code. Otherwise they will link to the documentation.
\anchor cfg_verbatim_headers \anchor cfg_verbatim_headers
...@@ -1313,25 +1309,45 @@ the introduction page also for the doxygen output. ...@@ -1313,25 +1309,45 @@ the introduction page also for the doxygen output.
which an include is specified. Set to \c NO to disable this. which an include is specified. Set to \c NO to disable this.
\sa Section \ref cmdclass "\\class". \sa Section \ref cmdclass "\\class".
\anchor cfg_clang_assisted_parsig
<dt>\c CLANG_ASSISTED_PARSING <dd>
\addindex CLANG_ASSISTED_PARSING
If \c CLANG_ASSISTED_PARSING is set to \c YES, then doxygen will use the
<a href="http://clang.llvm.org/">clang parser</a> for more acurate parsing
at the cost of reduced performance. This can be particularly helpful with
template rich C++ code for which doxygen's built-in parser lacks the
necessairy type information.
@note The availability of this option depends on whether or not doxygen
was compiled with the `--with-libclang` option.
\anchor cfg_clang_options
<dt>\c CLANG_OPTIONS <dd>
\addindex CLANG_OPTIONS
If clang assisted parsing is enabled you can provide the compiler with command
line options that you would normally use when invoking the compiler. Note that
the include paths will already be set by doxygen for the files and directories
specified at \c INPUT and \c INCLUDE_PATH.
\anchor cfg_use_htags \anchor cfg_use_htags
<dt>\c USE_HTAGS <dd> <dt>\c USE_HTAGS <dd>
\addindex USE_HTAGS \addindex USE_HTAGS
If the \c USE_HTAGS tag is set to \c YES then the references to source code If the \c USE_HTAGS tag is set to \c YES then the references to source code
will point to the HTML generated by the htags(1) tool instead of doxygen will point to the HTML generated by the \c htags(1) tool instead of doxygen
built-in source browser. The htags tool is part of GNU's global source built-in source browser. The \c htags tool is part of GNU's global source
tagging system (see http://www.gnu.org/software/global/global.html). tagging system (see http://www.gnu.org/software/global/global.html).
To use it do the following: To use it do the following:
-# Install the latest version of global (i.e. 4.8.6 or better) -# Install the latest version of global (i.e. 4.8.6 or better)
-# Enable SOURCE_BROWSER and USE_HTAGS in the config file -# Enable \ref cfg_source_browser "SOURCE_BROWSER" and \c USE_HTAGS in the config file
-# Make sure the INPUT points to the root of the source tree -# Make sure the \ref cfg_input "INPUT" points to the root of the source tree
-# Run doxygen as normal -# Run doxygen as normal
Doxygen will invoke htags (and that will in turn invoke gtags), so these tools Doxygen will invoke \c htags (and that will in turn invoke \c gtags), so these tools
must be available from the command line (i.e. in the search path). must be available from the command line (i.e. in the search path).
The result: instead of the source browser generated by doxygen, the links to The result: instead of the source browser generated by doxygen, the links to
source code will now point to the output of htags. source code will now point to the output of \c htags.
</dl> </dl>
...@@ -1349,7 +1365,7 @@ the introduction page also for the doxygen output. ...@@ -1349,7 +1365,7 @@ the introduction page also for the doxygen output.
\anchor cfg_cols_in_alpha_index \anchor cfg_cols_in_alpha_index
\addindex COLS_IN_ALPHA_INDEX \addindex COLS_IN_ALPHA_INDEX
If the alphabetical index is enabled If the alphabetical index is enabled
(see \c ALPHABETICAL_INDEX) then the \c COLS_IN_ALPHA_INDEX tag can be (see \ref cfg_alphabetical_index "ALPHABETICAL_INDEX") then the \c COLS_IN_ALPHA_INDEX tag can be
used to specify the number of columns in which this list will be split (can be a number in the range [1..20]) used to specify the number of columns in which this list will be split (can be a number in the range [1..20])
\anchor cfg_ignore_prefix \anchor cfg_ignore_prefix
...@@ -1375,15 +1391,15 @@ the introduction page also for the doxygen output. ...@@ -1375,15 +1391,15 @@ the introduction page also for the doxygen output.
<dt>\c HTML_OUTPUT <dd> <dt>\c HTML_OUTPUT <dd>
\addindex HTML_OUTPUT \addindex HTML_OUTPUT
The \c HTML_OUTPUT tag is used to specify where the HTML docs will be put. The \c HTML_OUTPUT tag is used to specify where the HTML docs will be put.
If a relative path is entered the value of \c OUTPUT_DIRECTORY will be If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
put in front of it. If left blank 'html' will be used as the default path. put in front of it. If left blank '<code>html</code>' will be used as the default path.
\anchor cfg_html_file_extension \anchor cfg_html_file_extension
<dt>\c HTML_FILE_EXTENSION <dd> <dt>\c HTML_FILE_EXTENSION <dd>
\addindex HTML_FILE_EXTENSION \addindex HTML_FILE_EXTENSION
The \c HTML_FILE_EXTENSION tag can be used to specify the file extension for The \c HTML_FILE_EXTENSION tag can be used to specify the file extension for
each generated HTML page (for example: .htm, .php, .asp). If it is left blank each generated HTML page (for example: <code>.htm, .php, .asp</code>). If it is left blank
doxygen will generate files with .html extension. doxygen will generate files with <code>.html</code> extension.
\anchor cfg_html_header \anchor cfg_html_header
<dt>\c HTML_HEADER <dd> <dt>\c HTML_HEADER <dd>
...@@ -1428,9 +1444,9 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil ...@@ -1428,9 +1444,9 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil
the javascript and style sheets needed for the MathJax feature the javascript and style sheets needed for the MathJax feature
(or an empty string when \ref cfg_use_mathjax "USE_MATHJAX" is disabled). (or an empty string when \ref cfg_use_mathjax "USE_MATHJAX" is disabled).
<dt><code>\$relpath^</code><dd> <dt><code>\$relpath^</code><dd>
If \c CREATE_SUBDIRS is enabled, the command <code>\$relpath^</code> can be If \ref cfg_create_subdirs "CREATE_SUBDIRS" is enabled, the command <code>\$relpath^</code> can be
used to produce a relative path to the root of the HTML output directory, used to produce a relative path to the root of the HTML output directory,
e.g. use \$relpath^doxygen.css, to refer to the standard style sheet. e.g. use <code>\$relpath^doxygen.css</code>, to refer to the standard style sheet.
</dl> </dl>
To cope with differences in the layout of the header and footer that depend on To cope with differences in the layout of the header and footer that depend on
...@@ -1503,7 +1519,8 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil ...@@ -1503,7 +1519,8 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil
the style sheet that doxygen normally uses. the style sheet that doxygen normally uses.
\note It is recommended to use \note It is recommended to use
\c HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and \ref cfg_html_extra_stylesheet "HTML_EXTRA_STYLESHEET" instead of this tag,
as it is more robust and
this tag will in the future become obsolete. this tag will in the future become obsolete.
\anchor cfg_html_extra_stylesheet \anchor cfg_html_extra_stylesheet
...@@ -1512,7 +1529,7 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil ...@@ -1512,7 +1529,7 @@ doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFil
The HTML_EXTRA_STYLESHEET tag can be used to specify an additional The HTML_EXTRA_STYLESHEET tag can be used to specify an additional
user-defined cascading style sheet that is included after the standard user-defined cascading style sheet that is included after the standard
style sheets created by doxygen. Using this option one can overrule style sheets created by doxygen. Using this option one can overrule
certain style aspects. This is preferred over using \c HTML_STYLESHEET certain style aspects. This is preferred over using \ref cfg_html_stylesheet "HTML_STYLESHEET"
since it does not replace the standard style sheet and is therefor more since it does not replace the standard style sheet and is therefor more
robust against future updates. Doxygen will copy the style sheet file to robust against future updates. Doxygen will copy the style sheet file to
the output directory. the output directory.
...@@ -1554,8 +1571,9 @@ hr.footer { ...@@ -1554,8 +1571,9 @@ hr.footer {
The \c HTML_EXTRA_FILES tag can be used to specify one or more extra images or The \c HTML_EXTRA_FILES tag can be used to specify one or more extra images or
other source files which should be copied to the HTML output directory. Note other source files which should be copied to the HTML output directory. Note
that these files will be copied to the base HTML output directory. Use the that these files will be copied to the base HTML output directory. Use the
$relpath^ marker in the \c HTML_HEADER and/or \c HTML_FOOTER files to load these <code>$relpath^</code> marker in the \ref cfg_html_header "HTML_HEADER" and/or
files. In the \c HTML_STYLESHEET file, use the file name only. Also note that \ref cfg_html_footer "HTML_FOOTER" files to load these
files. In the \ref cfg_html_stylesheet "HTML_STYLESHEET" file, use the file name only. Also note that
the files will be copied as-is; there are no commands or markers available. the files will be copied as-is; there are no commands or markers available.
\anchor cfg_html_colorstyle_hue \anchor cfg_html_colorstyle_hue
...@@ -1641,27 +1659,28 @@ hr.footer { ...@@ -1641,27 +1659,28 @@ hr.footer {
\anchor cfg_docset_feedname \anchor cfg_docset_feedname
<dt>\c DOCSET_FEEDNAME <dd> <dt>\c DOCSET_FEEDNAME <dd>
\addindex DOCSET_FEEDNAME \addindex DOCSET_FEEDNAME
When \c GENERATE_DOCSET tag is set to \c YES, this tag determines the name of the When \ref cfg_generate_docset "GENERATE_DOCSET" tag is set to \c YES, this tag determines the name of the
feed. A documentation feed provides an umbrella under which multiple feed. A documentation feed provides an umbrella under which multiple
documentation sets from a single provider (such as a company or product suite) documentation sets from a single provider (such as a company or product suite)
can be grouped. can be grouped.
\anchor cfg_docset_bundle_id \anchor cfg_docset_bundle_id
<dt>\c DOCSET_BUNDLE_ID <dd> <dt>\c DOCSET_BUNDLE_ID <dd>
When \c GENERATE_DOCSET tag is set to \c YES, this tag specifies a string that When \ref cfg_generate_docset "GENERATE_DOCSET" tag is set to \c YES, this tag specifies a string that
should uniquely identify the documentation set bundle. This should be a should uniquely identify the documentation set bundle. This should be a
reverse domain-name style string, e.g. <code>com.mycompany.MyDocSet</code>. reverse domain-name style string, e.g. <code>com.mycompany.MyDocSet</code>.
Doxygen will append <code>.docset</code> to the name. Doxygen will append <code>.docset</code> to the name.
\anchor cfg_docset_publisher_id \anchor cfg_docset_publisher_id
<dt>\c DOCSET_PUBLISHER_ID <dd> <dt>\c DOCSET_PUBLISHER_ID <dd>
When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify When \ref cfg_generate_docset "GENERATE_DOCSET" tag is set to \c YES \c DOCSET_PUBLISHER_ID
tag specifies a string that should uniquely identify
the documentation publisher. This should be a reverse domain-name style the documentation publisher. This should be a reverse domain-name style
string, e.g. com.mycompany.MyDocSet.documentation. string, e.g. com.mycompany.MyDocSet.documentation.
\anchor cfg_docset_publisher_name \anchor cfg_docset_publisher_name
<dt>\c DOCSET_PUBLISHER_NAME <dd> <dt>\c DOCSET_PUBLISHER_NAME <dd>
The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_generate_htmlhelp \anchor cfg_generate_htmlhelp
<dt>\c GENERATE_HTMLHELP <dd> <dt>\c GENERATE_HTMLHELP <dd>
...@@ -1670,14 +1689,14 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1670,14 +1689,14 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
doxygen generates three additional HTML index files: doxygen generates three additional HTML index files:
\c index.hhp, \c index.hhc, and \c index.hhk. The \c index.hhp is a \c index.hhp, \c index.hhc, and \c index.hhk. The \c index.hhp is a
project file that can be read by project file that can be read by
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/vsconHH1Start.asp"> <a href="http://www.microsoft.com/en-us/download/details.aspx?id=21138">
Microsoft's HTML Help Workshop</a> Microsoft's HTML Help Workshop</a>
on Windows. on Windows.
The HTML Help Workshop contains a compiler that can convert all HTML output The HTML Help Workshop contains a compiler that can convert all HTML output
generated by doxygen into a single compiled HTML file (.chm). Compiled generated by doxygen into a single compiled HTML file (`.chm`). Compiled
HTML files are now used as the Windows 98 help format, and will replace HTML files are now used as the Windows 98 help format, and will replace
the old Windows help format (.hlp) on all Windows platforms in the future. the old Windows help format (`.hlp`) on all Windows platforms in the future.
Compressed HTML files also contain an index, a table of contents, Compressed HTML files also contain an index, a table of contents,
and you can search for words in the documentation. and you can search for words in the documentation.
The HTML workshop also contains a viewer for compressed HTML files. The HTML workshop also contains a viewer for compressed HTML files.
...@@ -1685,39 +1704,39 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1685,39 +1704,39 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_chm_file \anchor cfg_chm_file
<dt>\c CHM_FILE <dd> <dt>\c CHM_FILE <dd>
\addindex CHM_FILE \addindex CHM_FILE
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c CHM_FILE tag can If the \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP" tag is set to \c YES, the \c CHM_FILE tag can
be used to specify the file name of the resulting .chm file. You be used to specify the file name of the resulting `.chm` file. You
can add a path in front of the file if the result should not be can add a path in front of the file if the result should not be
written to the html output directory. written to the html output directory.
\anchor cfg_hhc_location \anchor cfg_hhc_location
<dt>\c HHC_LOCATION <dd> <dt>\c HHC_LOCATION <dd>
\addindex HHC_LOCATION \addindex HHC_LOCATION
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c HHC_LOCATION tag can If the \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP" tag is set to \c YES, the \c HHC_LOCATION tag can
be used to specify the location (absolute path including file name) of be used to specify the location (absolute path including file name) of
the HTML help compiler (hhc.exe). If non-empty doxygen will try to run the HTML help compiler (\c hhc.exe). If non-empty doxygen will try to run
the HTML help compiler on the generated index.hhp. the HTML help compiler on the generated \c index.hhp.
\anchor cfg_generate_chi \anchor cfg_generate_chi
<dt>\c GENERATE_CHI <dd> <dt>\c GENERATE_CHI <dd>
\addindex GENERATE_CHI \addindex GENERATE_CHI
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c GENERATE_CHI flag If the \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP" tag is set to \c YES, the \c GENERATE_CHI flag
controls if a separate .chi index file is generated (<code>YES</code>) or that controls if a separate `.chi` index file is generated (\c YES) or that
it should be included in the master .chm file (<code>NO</code>). it should be included in the master `.chm` file (\c NO).
\anchor cfg_chm_index_encoding \anchor cfg_chm_index_encoding
<dt>\c CHM_INDEX_ENCODING <dd> <dt>\c CHM_INDEX_ENCODING <dd>
\addindex CHM_INDEX_ENCODING \addindex CHM_INDEX_ENCODING
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c CHM_INDEX_ENCODING If the \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP" tag is set to \c YES, the \c CHM_INDEX_ENCODING
is used to encode HtmlHelp index (hhk), content (hhc) and project file is used to encode HtmlHelp index (\c hhk), content (\c hhc) and project file
content. content.
\anchor cfg_binary_toc \anchor cfg_binary_toc
<dt>\c BINARY_TOC <dd> <dt>\c BINARY_TOC <dd>
\addindex BINARY_TOC \addindex BINARY_TOC
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c BINARY_TOC flag If the \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP" tag is set to \c YES, the \c BINARY_TOC flag
controls whether a binary table of contents is generated (<code>YES</code>) or a controls whether a binary table of contents is generated (\c YES) or a
normal table of contents (<code>NO</code>) in the .chm file. normal table of contents (\c NO) in the .chm file.
\anchor cfg_toc_expand \anchor cfg_toc_expand
<dt>\c TOC_EXPAND <dd> <dt>\c TOC_EXPAND <dd>
...@@ -1729,79 +1748,79 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1729,79 +1748,79 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_generate_qhp \anchor cfg_generate_qhp
<dt>\c GENERATE_QHP <dd> <dt>\c GENERATE_QHP <dd>
\addindex GENERATE_QHP \addindex GENERATE_QHP
If the GENERATE_QHP tag is set to \c YES and both \c QHP_NAMESPACE If the \c GENERATE_QHP tag is set to \c YES and both \ref cfg_qhp_namespace "QHP_NAMESPACE"
and QHP_VIRTUAL_FOLDER are set, an additional index file will and \ref cfg_qhp_virtual_folder "QHP_VIRTUAL_FOLDER" are set, an additional index file will
be generated that can be used as input for Qt's qhelpgenerator be generated that can be used as input for Qt's qhelpgenerator
to generate a Qt Compressed Help (.qch) of the generated HTML to generate a Qt Compressed Help (`.qch`) of the generated HTML
documentation. documentation.
\anchor cfg_qch_file \anchor cfg_qch_file
<dt>\c QCH_FILE <dd> <dt>\c QCH_FILE <dd>
\addindex QCH_FILE \addindex QCH_FILE
If the QHG_LOCATION tag is specified, the QCH_FILE tag can If the \ref cfg_qhg_location "QHG_LOCATION" tag is specified, the \c QCH_FILE tag can
be used to specify the file name of the resulting .qch file. be used to specify the file name of the resulting `.qch` file.
The path specified is relative to the HTML output folder. The path specified is relative to the HTML output folder.
\anchor cfg_qhp_namespace \anchor cfg_qhp_namespace
<dt>\c QHP_NAMESPACE <dd> <dt>\c QHP_NAMESPACE <dd>
\addindex QHP_NAMESPACE \addindex QHP_NAMESPACE
The QHP_NAMESPACE tag specifies the namespace to use when generating The \c QHP_NAMESPACE tag specifies the namespace to use when generating
Qt Help Project output. For more information please see Qt Help Project output. For more information please see
<a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace">Qt Help Project / Namespace</a>. <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace">Qt Help Project / Namespace</a>.
\anchor cfg_qhp_virtual_folder \anchor cfg_qhp_virtual_folder
<dt>\c QHP_VIRTUAL_FOLDER <dd> <dt>\c QHP_VIRTUAL_FOLDER <dd>
\addindex QHP_VIRTUAL_FOLDER \addindex QHP_VIRTUAL_FOLDER
The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when The \c QHP_VIRTUAL_FOLDER tag specifies the namespace to use when
generating Qt Help Project output. For more information please see generating Qt Help Project output. For more information please see
<a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-folders">Qt Help Project / Virtual Folders</a>. <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-folders">Qt Help Project / Virtual Folders</a>.
\anchor cfg_qhp_cust_filter_name \anchor cfg_qhp_cust_filter_name
<dt>\c QHP_CUST_FILTER_NAME <dd> <dt>\c QHP_CUST_FILTER_NAME <dd>
\addindex QHP_CUST_FILTER_NAME \addindex QHP_CUST_FILTER_NAME
If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. For more information please see If \c QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. For more information please see
<a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>. <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
\anchor cfg_qhp_cust_filter_attrs \anchor cfg_qhp_cust_filter_attrs
<dt>\c QHP_CUST_FILTER_ATTRS <dd> <dt>\c QHP_CUST_FILTER_ATTRS <dd>
\addindex QHP_CUST_FILTER_ATTRS \addindex QHP_CUST_FILTER_ATTRS
The QHP_CUST_FILTER_ATTRIBUTES tag specifies the list of the attributes of the custom filter to add. The \c QHP_CUST_FILTER_ATTRIBUTES tag specifies the list of the attributes of the custom filter to add.
For more information please see For more information please see
<a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>. <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
\anchor cfg_qhp_sect_filter_attrs \anchor cfg_qhp_sect_filter_attrs
<dt>\c QHP_SECT_FILTER_ATTRS <dd> <dt>\c QHP_SECT_FILTER_ATTRS <dd>
\addindex QHP_SECT_FILTER_ATTRS \addindex QHP_SECT_FILTER_ATTRS
The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's filter section matches. The \c QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's filter section matches.
<a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>. <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
\anchor cfg_qhg_location \anchor cfg_qhg_location
<dt>\c QHG_LOCATION <dd> <dt>\c QHG_LOCATION <dd>
\addindex QHG_LOCATION \addindex QHG_LOCATION
If the GENERATE_QHP tag is set to \c YES, the \c QHG_LOCATION tag can If the \ref cfg_generate_qhp "GENERATE_QHP" tag is set to \c YES, the \c QHG_LOCATION tag can
be used to specify the location of Qt's qhelpgenerator. be used to specify the location of Qt's qhelpgenerator.
If non-empty doxygen will try to run qhelpgenerator on the generated If non-empty doxygen will try to run qhelpgenerator on the generated
.qhp file. `.qhp` file.
\anchor cfg_generate_eclipsehelp \anchor cfg_generate_eclipsehelp
<dt>\c GENERATE_ECLIPSEHELP <dd> <dt>\c GENERATE_ECLIPSEHELP <dd>
\addindex GENERATE_ECLIPSEHELP \addindex GENERATE_ECLIPSEHELP
If the \c GENERATE_ECLIPSEHELP tag is set to \c YES, additional index files If the \c GENERATE_ECLIPSEHELP tag is set to \c YES, additional index files
will be generated, which together with the HTML files, form an Eclipse help will be generated, which together with the HTML files, form an `Eclipse` help
plugin. plugin.
To install this plugin and make it available under the help contents To install this plugin and make it available under the help contents
menu in Eclipse, the contents of the directory containing the HTML and XML menu in `Eclipse`, the contents of the directory containing the HTML and XML
files needs to be copied into the plugins directory of eclipse. The name of files needs to be copied into the plugins directory of eclipse. The name of
the directory within the plugins directory should be the same as the directory within the plugins directory should be the same as
the \ref cfg_eclipse_doc_id "ECLIPSE_DOC_ID" value. the \ref cfg_eclipse_doc_id "ECLIPSE_DOC_ID" value.
After copying Eclipse needs to be restarted before the help appears. After copying `Eclipse` needs to be restarted before the help appears.
\anchor cfg_eclipse_doc_id \anchor cfg_eclipse_doc_id
<dt>\c ECLIPSE_DOC_ID <dd> <dt>\c ECLIPSE_DOC_ID <dd>
\addindex ECLIPSE_DOC_ID \addindex ECLIPSE_DOC_ID
A unique identifier for the eclipse help plugin. When installing the plugin A unique identifier for the `Eclipse` help plugin. When installing the plugin
the directory name containing the HTML and XML files should also have the directory name containing the HTML and XML files should also have
this name. Each documentation set should have its own identifier. this name. Each documentation set should have its own identifier.
...@@ -1827,7 +1846,7 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1827,7 +1846,7 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_generate_treeview \anchor cfg_generate_treeview
<dt>\c GENERATE_TREEVIEW <dd> <dt>\c GENERATE_TREEVIEW <dd>
\addindex GENERATE_TREEVIEW \addindex GENERATE_TREEVIEW
The GENERATE_TREEVIEW tag is used to specify whether a tree-like index The \c GENERATE_TREEVIEW tag is used to specify whether a tree-like index
structure should be generated to display hierarchical information. structure should be generated to display hierarchical information.
If the tag value is set to \c YES, a side panel will be generated If the tag value is set to \c YES, a side panel will be generated
containing a tree-like index structure (just like the one that containing a tree-like index structure (just like the one that
...@@ -1835,16 +1854,16 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1835,16 +1854,16 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
Windows users are probably better off using the HTML help feature. Windows users are probably better off using the HTML help feature.
Via custom stylesheets (see \ref cfg_html_stylesheet "HTML_STYLESHEET") Via custom stylesheets (see \ref cfg_html_extra_stylesheet "HTML_EXTRA_STYLESHEET")
one can further \ref doxygen_finetune "fine-tune" the look of the index. one can further \ref doxygen_finetune "fine-tune" the look of the index.
As an example, the default style sheet generated by doxygen has an As an example, the default style sheet generated by doxygen has an
example that shows how to put an image at the root of the tree instead of example that shows how to put an image at the root of the tree instead of
the \ref cfg_project_name "project name". the \ref cfg_project_name "PROJECT_NAME".
\anchor cfg_treeview_width \anchor cfg_treeview_width
<dt>\c TREEVIEW_WIDTH <dd> <dt>\c TREEVIEW_WIDTH <dd>
\addindex TREEVIEW_WIDTH \addindex TREEVIEW_WIDTH
If the treeview is enabled (see \c GENERATE_TREEVIEW) then this tag can be If the treeview is enabled (see \ref cfg_generate_treeview "GENERATE_TREEVIEW") then this tag can be
used to set the initial width (in pixels) of the frame in which the tree used to set the initial width (in pixels) of the frame in which the tree
is shown. is shown.
...@@ -1857,7 +1876,7 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1857,7 +1876,7 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_formula_fontsize \anchor cfg_formula_fontsize
<dt>\c FORMULA_FONTSIZE <dd> <dt>\c FORMULA_FONTSIZE <dd>
\addindex FORMULA_FONTSIZE \addindex FORMULA_FONTSIZE
Use this tag to change the font size of Latex formulas included Use this tag to change the font size of \f$\mbox{\LaTeX}\f$ formulas included
as images in the HTML documentation. The default is 10. as images in the HTML documentation. The default is 10.
when you change the font size after a successful doxygen run you need when you change the font size after a successful doxygen run you need
to manually remove any `form_*.png` images from the HTML to manually remove any `form_*.png` images from the HTML
...@@ -1875,10 +1894,10 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1875,10 +1894,10 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
\anchor cfg_use_mathjax \anchor cfg_use_mathjax
<dt>\c USE_MATHJAX <dd> <dt>\c USE_MATHJAX <dd>
\addindex USE_MATHJAX \addindex USE_MATHJAX
Enable the \c USE_MATHJAX option to render LaTeX formulas using MathJax Enable the \c USE_MATHJAX option to render \f$\mbox{\LaTeX}\f$ formulas using MathJax
(see http://www.mathjax.org) which uses client side Javascript for the (see http://www.mathjax.org) which uses client side Javascript for the
rendering instead of using prerendered bitmaps. Use this if you do not rendering instead of using prerendered bitmaps. Use this if you do not
have LaTeX installed or if you want to formulas look prettier in the HTML have \f$\mbox{\LaTeX}\f$ installed or if you want to formulas look prettier in the HTML
output. When enabled you may also need to install MathJax separately and output. When enabled you may also need to install MathJax separately and
configure the path to it using the \ref cfg_mathjax_relpath "MATHJAX_RELPATH" configure the path to it using the \ref cfg_mathjax_relpath "MATHJAX_RELPATH"
option. option.
...@@ -1917,7 +1936,7 @@ MATHJAX_CODEFILE = disableRenderer ...@@ -1917,7 +1936,7 @@ MATHJAX_CODEFILE = disableRenderer
\addindex MATHJAX_RELPATH \addindex MATHJAX_RELPATH
When MathJax is enabled you need to specify the location relative to the When MathJax is enabled you need to specify the location relative to the
HTML output directory using the \c MATHJAX_RELPATH option. The destination HTML output directory using the \c MATHJAX_RELPATH option. The destination
directory should contain the MathJax.js script. For instance, if the mathjax directory should contain the `MathJax.js` script. For instance, if the \c mathjax
directory is located at the same level as the HTML output directory, then directory is located at the same level as the HTML output directory, then
\c MATHJAX_RELPATH should be <code>../mathjax</code>. The default value points to \c MATHJAX_RELPATH should be <code>../mathjax</code>. The default value points to
the MathJax Content Delivery Network so you can quickly see the result without the MathJax Content Delivery Network so you can quickly see the result without
...@@ -1927,7 +1946,7 @@ MATHJAX_CODEFILE = disableRenderer ...@@ -1927,7 +1946,7 @@ MATHJAX_CODEFILE = disableRenderer
\anchor cfg_mathjax_extensions \anchor cfg_mathjax_extensions
<dt>\c MATHJAX_EXTENSIONS <dd> <dt>\c MATHJAX_EXTENSIONS <dd>
\addindex MATHJAX_EXTENSIONS \addindex MATHJAX_EXTENSIONS
The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension The \c MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
names that should be enabled during MathJax rendering. For example names that should be enabled during MathJax rendering. For example
\verbatim \verbatim
MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
...@@ -1949,14 +1968,14 @@ MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols ...@@ -1949,14 +1968,14 @@ MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
better solution. better solution.
It is possible to search using the keyboard; It is possible to search using the keyboard;
to jump to the search box use access key + S (what the access key is to jump to the search box use `<access key> + S` (what the `<access key>` is
depends on the OS and browser, but it is typically CTRL, ALT/option, or both). depends on the OS and browser, but it is typically `<CTRL>`, `<ALT>`/`<option>`, or both).
Inside the search box use the cursor down key to jump into the search Inside the search box use the `<cursor down key>` to jump into the search
results window, the results can be navigated using the cursor keys. results window, the results can be navigated using the `<cursor keys>`.
Press Enter to select an item or escape to cancel the search. The Press `<Enter>` to select an item or `<escape>` to cancel the search. The
filter options can be selected when the cursor is inside the search box filter options can be selected when the cursor is inside the search box
by pressing Shift+cursor down. Also here use the cursor keys to by pressing `<Shift>+<cursor down>`. Also here use the `<cursor keys>` to
select a filter and enter or escape to activate or cancel the filter option. select a filter and `<Enter>` or `<escape>` to activate or cancel the filter option.
\anchor cfg_server_based_search \anchor cfg_server_based_search
<dt>\c SERVER_BASED_SEARCH <dd> <dt>\c SERVER_BASED_SEARCH <dd>
...@@ -1999,13 +2018,14 @@ When \ref cfg_server_based_search "SERVER_BASED_SEARCH" and ...@@ -1999,13 +2018,14 @@ When \ref cfg_server_based_search "SERVER_BASED_SEARCH" and
\ref cfg_external_search "EXTERNAL_SEARCH" are both enabled the unindexed \ref cfg_external_search "EXTERNAL_SEARCH" are both enabled the unindexed
search data is written to a file for indexing by an external tool. With the search data is written to a file for indexing by an external tool. With the
\c SEARCHDATA_FILE tag the name of this file can be specified. \c SEARCHDATA_FILE tag the name of this file can be specified.
The default is searchdata.xml. The default is `searchdata.xml`.
\anchor cfg_external_search_id \anchor cfg_external_search_id
<dt>\c EXTERNAL_SEARCH_ID <dd> <dt>\c EXTERNAL_SEARCH_ID <dd>
\addindex EXTERNAL_SEARCH_ID \addindex EXTERNAL_SEARCH_ID
When \c SERVER_BASED_SEARCH AND \c EXTERNAL_SEARCH are both enabled the When \ref cfg_server_based_search "SERVER_BASED_SEARCH" and
\ref cfg_external_search "EXTERNAL_SEARCH" are both enabled the
\c EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is \c EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
useful in combination with \ref cfg_extra_search_mappings "EXTRA_SEARCH_MAPPINGS" useful in combination with \ref cfg_extra_search_mappings "EXTRA_SEARCH_MAPPINGS"
to search through multiple projects and redirect the results back to the right project. to search through multiple projects and redirect the results back to the right project.
...@@ -2042,23 +2062,23 @@ EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ... ...@@ -2042,23 +2062,23 @@ EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
\addindex LATEX_OUTPUT \addindex LATEX_OUTPUT
The \c LATEX_OUTPUT tag is used to specify where the \f$\mbox{\LaTeX}\f$ The \c LATEX_OUTPUT tag is used to specify where the \f$\mbox{\LaTeX}\f$
docs will be put. docs will be put.
If a relative path is entered the value of \c OUTPUT_DIRECTORY will be If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
put in front of it. If left blank 'latex' will be used as the default path. put in front of it. If left blank '`latex`' will be used as the default path.
\anchor cfg_latex_cmd_name \anchor cfg_latex_cmd_name
<dt>\c LATEX_CMD_NAME <dd> <dt>\c LATEX_CMD_NAME <dd>
\addindex LATEX_CMD_NAME \addindex LATEX_CMD_NAME
The \c LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be invoked. The \c LATEX_CMD_NAME tag can be used to specify the \f$\mbox{\LaTeX}\f$ command name to be invoked.
If left blank 'latex' will be used as the default command name. If left blank 'latex' will be used as the default command name.
Note that when enabling USE_PDFLATEX this option is only used for Note that when enabling \ref cfg_use_pdflatex "USE_PDFLATEX" this option is only used for
generating bitmaps for formulas in the HTML output, but not in the generating bitmaps for formulas in the HTML output, but not in the
Makefile that is written to the output directory. \c Makefile that is written to the output directory.
\anchor cfg_makeindex_cmd_name \anchor cfg_makeindex_cmd_name
<dt>\c MAKEINDEX_CMD_NAME <dd> <dt>\c MAKEINDEX_CMD_NAME <dd>
\addindex MAKEINDEX_CMD_NAME \addindex MAKEINDEX_CMD_NAME
The MAKEINDEX_CMD_NAME tag can be used to specify the command name to The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
generate index for LaTeX. If left blank 'makeindex' will be used as the generate index for \f$\mbox{\LaTeX}\f$. If left blank '`makeindex`' will be used as the
default command name. default command name.
\anchor cfg_compact_latex \anchor cfg_compact_latex
...@@ -2079,7 +2099,7 @@ EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ... ...@@ -2079,7 +2099,7 @@ EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
<li><code>legal</code> (8.5 x 14 inches). <li><code>legal</code> (8.5 x 14 inches).
<li><code>executive</code> (7.25 x 10.5 inches) <li><code>executive</code> (7.25 x 10.5 inches)
</ul> </ul>
If left blank a4 will be used. If left blank \c a4 will be used.
\anchor cfg_extra_packages \anchor cfg_extra_packages
<dt>\c EXTRA_PACKAGES <dd> <dt>\c EXTRA_PACKAGES <dd>
...@@ -2112,22 +2132,25 @@ EXTRA_PACKAGES = times ...@@ -2112,22 +2132,25 @@ EXTRA_PACKAGES = times
<code>\$projectnumber</code>. <code>\$projectnumber</code>.
Doxygen will replace them by respectively Doxygen will replace them by respectively
the title of the page, the current date and time, only the current date, the title of the page, the current date and time, only the current date,
the version number of doxygen, the project name (see \c PROJECT_NAME), or the the version number of doxygen, the project name (see \ref cfg_project_name "PROJECT_NAME"), or the
project number (see \c PROJECT_NUMBER). project number (see \ref cfg_project_number "PROJECT_NUMBER").
\anchor cfg_latex_footer \anchor cfg_latex_footer
<dt>\c LATEX_FOOTER <dd> <dt>\c LATEX_FOOTER <dd>
\addindex LATEX_FOOTER \addindex LATEX_FOOTER
The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for The LATEX_FOOTER tag can be used to specify a personal \f$\mbox{\LaTeX}\f$ footer for
the generated latex document. The footer should contain everything after the generated \f$\mbox{\LaTeX}\f$ document. The footer should contain everything after
the last chapter. If it is left blank doxygen will generate a the last chapter. If it is left blank doxygen will generate a
standard footer. Notice: only use this tag if you know what you are doing! standard footer.
\par Note:
Only use a user-defined footer if you know what you are doing!
\anchor cfg_latex_extra_files \anchor cfg_latex_extra_files
<dt>\c LATEX_EXTRA_FILES <dd> <dt>\c LATEX_EXTRA_FILES <dd>
\addindex LATEX_EXTRA_FILES \addindex LATEX_EXTRA_FILES
The \c LATEX_EXTRA_FILES tag can be used to specify one or more extra images The \c LATEX_EXTRA_FILES tag can be used to specify one or more extra images
or other source files which should be copied to the LaTeX output directory. or other source files which should be copied to the \f$\mbox{\LaTeX}\f$ output directory.
Note that the files will be copied as-is; there are no commands or markers Note that the files will be copied as-is; there are no commands or markers
available. available.
...@@ -2136,7 +2159,7 @@ EXTRA_PACKAGES = times ...@@ -2136,7 +2159,7 @@ EXTRA_PACKAGES = times
\addindex PDF_HYPERLINKS \addindex PDF_HYPERLINKS
If the \c PDF_HYPERLINKS tag is set to \c YES, the \f$\mbox{\LaTeX}\f$ that If the \c PDF_HYPERLINKS tag is set to \c YES, the \f$\mbox{\LaTeX}\f$ that
is generated is prepared for conversion to PDF (using ps2pdf or pdflatex). is generated is prepared for conversion to PDF (using \c ps2pdf or \c pdflatex).
The PDF file will The PDF file will
contain links (just like the HTML output) instead of page references. contain links (just like the HTML output) instead of page references.
This makes the output suitable for online browsing using a PDF viewer. This makes the output suitable for online browsing using a PDF viewer.
...@@ -2146,14 +2169,14 @@ EXTRA_PACKAGES = times ...@@ -2146,14 +2169,14 @@ EXTRA_PACKAGES = times
\addindex LATEX_PDFLATEX \addindex LATEX_PDFLATEX
If the \c LATEX_PDFLATEX tag is set to \c YES, doxygen will use If the \c LATEX_PDFLATEX tag is set to \c YES, doxygen will use
pdflatex to generate the PDF file directly from the \f$\mbox{\LaTeX}\f$ \c pdflatex to generate the PDF file directly from the \f$\mbox{\LaTeX}\f$
files. files.
\anchor cfg_latex_batchmode \anchor cfg_latex_batchmode
<dt>\c LATEX_BATCHMODE <dd> <dt>\c LATEX_BATCHMODE <dd>
\addindex LATEX_BATCHMODE \addindex LATEX_BATCHMODE
If the \c LATEX_BATCHMODE tag is set to \c YES, doxygen will add the \\batchmode. If the \c LATEX_BATCHMODE tag is set to \c YES, doxygen will add the \c \\batchmode
command to the generated \f$\mbox{\LaTeX}\f$ files. This will command to the generated \f$\mbox{\LaTeX}\f$ files. This will
instruct \f$\mbox{\LaTeX}\f$ to keep running if errors occur, instead of instruct \f$\mbox{\LaTeX}\f$ to keep running if errors occur, instead of
asking the user for help. This option is also used when generating formulas asking the user for help. This option is also used when generating formulas
...@@ -2179,7 +2202,7 @@ EXTRA_PACKAGES = times ...@@ -2179,7 +2202,7 @@ EXTRA_PACKAGES = times
\anchor cfg_latex_source_code \anchor cfg_latex_source_code
<dt>\c LATEX_SOURCE_CODE <dd> <dt>\c LATEX_SOURCE_CODE <dd>
If \c LATEX_SOURCE_CODE is set to \c YES then doxygen will include If \c LATEX_SOURCE_CODE is set to \c YES then doxygen will include
source code with syntax highlighting in the LaTeX output. source code with syntax highlighting in the \f$\mbox{\LaTeX}\f$ output.
Note that which sources are shown also depends on other settings Note that which sources are shown also depends on other settings
such as \ref cfg_source_browser "SOURCE_BROWSER". such as \ref cfg_source_browser "SOURCE_BROWSER".
...@@ -2198,8 +2221,8 @@ EXTRA_PACKAGES = times ...@@ -2198,8 +2221,8 @@ EXTRA_PACKAGES = times
<dt>\c RTF_OUTPUT <dd> <dt>\c RTF_OUTPUT <dd>
\addindex RTF_OUTPUT \addindex RTF_OUTPUT
The \c RTF_OUTPUT tag is used to specify where the RTF docs will be put. The \c RTF_OUTPUT tag is used to specify where the RTF docs will be put.
If a relative path is entered the value of \c OUTPUT_DIRECTORY will be If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
put in front of it. If left blank \c rtf will be used as the default path. put in front of it. If left blank '`rtf`' will be used as the default path.
\anchor cfg_compact_rtf \anchor cfg_compact_rtf
<dt>\c COMPACT_RTF <dd> <dt>\c COMPACT_RTF <dd>
...@@ -2252,9 +2275,9 @@ EXTRA_PACKAGES = times ...@@ -2252,9 +2275,9 @@ EXTRA_PACKAGES = times
<dt>\c MAN_OUTPUT <dd> <dt>\c MAN_OUTPUT <dd>
\addindex MAN_OUTPUT \addindex MAN_OUTPUT
The \c MAN_OUTPUT tag is used to specify where the man pages will be put. The \c MAN_OUTPUT tag is used to specify where the man pages will be put.
If a relative path is entered the value of \c OUTPUT_DIRECTORY will be If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
put in front of it. If left blank 'man' will be used as the default path. put in front of it. If left blank '`man`' will be used as the default path.
A directory man3 will be created inside the directory specified by A directory \c man3 will be created inside the directory specified by
\c MAN_OUTPUT. \c MAN_OUTPUT.
\anchor cfg_man_extension \anchor cfg_man_extension
...@@ -2263,7 +2286,7 @@ EXTRA_PACKAGES = times ...@@ -2263,7 +2286,7 @@ EXTRA_PACKAGES = times
The \c MAN_EXTENSION tag determines the extension that is added to The \c MAN_EXTENSION tag determines the extension that is added to
the generated man pages (default is the subroutine's section .3). In case the generated man pages (default is the subroutine's section .3). In case
the manual section does not start with a number, the number 3 is prepended. the manual section does not start with a number, the number 3 is prepended.
The dot (.) at the beginning of the MAN_EXTENSION is optional. The dot (.) at the beginning of the \c MAN_EXTENSION is optional.
\anchor cfg_man_links \anchor cfg_man_links
<dt>\c MAN_LINKS <dd> <dt>\c MAN_LINKS <dd>
...@@ -2282,7 +2305,7 @@ EXTRA_PACKAGES = times ...@@ -2282,7 +2305,7 @@ EXTRA_PACKAGES = times
<dt>\c GENERATE_XML <dd> <dt>\c GENERATE_XML <dd>
\addindex GENERATE_XML \addindex GENERATE_XML
If the \c GENERATE_XML tag is set to \c YES Doxygen will If the \c GENERATE_XML tag is set to \c YES doxygen will
generate an XML file that captures the structure of generate an XML file that captures the structure of
the code including all documentation. the code including all documentation.
...@@ -2290,27 +2313,27 @@ EXTRA_PACKAGES = times ...@@ -2290,27 +2313,27 @@ EXTRA_PACKAGES = times
<dt>\c XML_OUTPUT <dd> <dt>\c XML_OUTPUT <dd>
\addindex XML_OUTPUT \addindex XML_OUTPUT
The \c XML_OUTPUT tag is used to specify where the XML pages will be put. The \c XML_OUTPUT tag is used to specify where the XML pages will be put.
If a relative path is entered the value of \c OUTPUT_DIRECTORY will be If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
put in front of it. If left blank \c xml will be used as the default path. put in front of it. If left blank '`xml`' will be used as the default path.
\anchor cfg_xml_schema \anchor cfg_xml_schema
<dt>\c XML_SCHEMA <dd> <dt>\c XML_SCHEMA <dd>
\addindex XML_SCHEMA \addindex XML_SCHEMA
The \c XML_SCHEMA tag can be used to specify an XML schema, The \c XML_SCHEMA tag can be used to specify a XML schema,
which can be used by a validating XML parser to check the which can be used by a validating XML parser to check the
syntax of the XML files. syntax of the XML files.
\anchor cfg_xml_dtd \anchor cfg_xml_dtd
<dt>\c XML_DTD <dd> <dt>\c XML_DTD <dd>
\addindex XML_DTD \addindex XML_DTD
The \c XML_DTD tag can be used to specify an XML DTD, The \c XML_DTD tag can be used to specify a XML DTD,
which can be used by a validating XML parser to check the which can be used by a validating XML parser to check the
syntax of the XML files. syntax of the XML files.
\anchor cfg_xml_programlisting \anchor cfg_xml_programlisting
<dt>\c XML_PROGRAMLISTING <dd> <dt>\c XML_PROGRAMLISTING <dd>
\addindex XML_PROGRAMLISTING \addindex XML_PROGRAMLISTING
If the \c XML_PROGRAMLISTING tag is set to \c YES Doxygen will If the \c XML_PROGRAMLISTING tag is set to \c YES doxygen will
dump the program listings (including syntax highlighting dump the program listings (including syntax highlighting
and cross-referencing information) to the XML output. Note that and cross-referencing information) to the XML output. Note that
enabling this will significantly increase the size of the XML output. enabling this will significantly increase the size of the XML output.
...@@ -2323,7 +2346,7 @@ EXTRA_PACKAGES = times ...@@ -2323,7 +2346,7 @@ EXTRA_PACKAGES = times
<dt>\c GENERATE_DOCBOOK <dd> <dt>\c GENERATE_DOCBOOK <dd>
\addindex GENERATE_DOCBOOK \addindex GENERATE_DOCBOOK
If the \c GENERATE_DOCBOOK tag is set to \c YES Doxygen will generate Docbook files If the \c GENERATE_DOCBOOK tag is set to \c YES doxygen will generate Docbook files
that can be used to generate PDF. that can be used to generate PDF.
\anchor cfg_docbook_output \anchor cfg_docbook_output
...@@ -2331,7 +2354,7 @@ that can be used to generate PDF. ...@@ -2331,7 +2354,7 @@ that can be used to generate PDF.
\addindex DOCBOOK_OUTPUT \addindex DOCBOOK_OUTPUT
The \c DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put. The \c DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be put in If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be put in
front of it. If left blank docbook will be used as the default path. front of it. If left blank '`docbook`' will be used as the default path.
</dl> </dl>
...@@ -2341,7 +2364,7 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2341,7 +2364,7 @@ front of it. If left blank docbook will be used as the default path.
<dt>\c GENERATE_AUTOGEN_DEF <dd> <dt>\c GENERATE_AUTOGEN_DEF <dd>
\addindex GENERATE_AUTOGEN_DEF \addindex GENERATE_AUTOGEN_DEF
If the \c GENERATE_AUTOGEN_DEF tag is set to \c YES Doxygen will If the \c GENERATE_AUTOGEN_DEF tag is set to \c YES doxygen will
generate an AutoGen Definitions (see http://autogen.sf.net) file generate an AutoGen Definitions (see http://autogen.sf.net) file
that captures the structure of the code including all that captures the structure of the code including all
documentation. Note that this feature is still experimental documentation. Note that this feature is still experimental
...@@ -2355,7 +2378,7 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2355,7 +2378,7 @@ front of it. If left blank docbook will be used as the default path.
<dt>\c GENERATE_PERLMOD <dd> <dt>\c GENERATE_PERLMOD <dd>
\addindex GENERATE_PERLMOD \addindex GENERATE_PERLMOD
If the \c GENERATE_PERLMOD tag is set to \c YES Doxygen will If the \c GENERATE_PERLMOD tag is set to \c YES doxygen will
generate a Perl module file that captures the structure of generate a Perl module file that captures the structure of
the code including all documentation. Note that this the code including all documentation. Note that this
feature is still experimental and incomplete at the feature is still experimental and incomplete at the
...@@ -2364,8 +2387,8 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2364,8 +2387,8 @@ front of it. If left blank docbook will be used as the default path.
\anchor cfg_perlmod_latex \anchor cfg_perlmod_latex
<dt>\c PERLMOD_LATEX <dd> <dt>\c PERLMOD_LATEX <dd>
\addindex PERLMOD_LATEX \addindex PERLMOD_LATEX
If the \c PERLMOD_LATEX tag is set to \c YES Doxygen will generate If the \c PERLMOD_LATEX tag is set to \c YES doxygen will generate
the necessary Makefile rules, Perl scripts and LaTeX code to be able the necessary Makefile rules, Perl scripts and \f$\mbox{\LaTeX}\f$ code to be able
to generate PDF and DVI output from the Perl module output. to generate PDF and DVI output from the Perl module output.
\anchor cfg_perlmod_pretty \anchor cfg_perlmod_pretty
...@@ -2380,10 +2403,10 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2380,10 +2403,10 @@ front of it. If left blank docbook will be used as the default path.
\anchor cfg_perlmod_makevar_prefix \anchor cfg_perlmod_makevar_prefix
<dt>\c PERLMOD_MAKEVAR_PREFIX <dd> <dt>\c PERLMOD_MAKEVAR_PREFIX <dd>
\addindex PERLMOD_MAKEVAR_PREFIX \addindex PERLMOD_MAKEVAR_PREFIX
The names of the make variables in the generated doxyrules.make file The names of the make variables in the generated `doxyrules.make` file
are prefixed with the string contained in \c PERLMOD_MAKEVAR_PREFIX. are prefixed with the string contained in \c PERLMOD_MAKEVAR_PREFIX.
This is useful so different doxyrules.make files included by the same This is useful so different `doxyrules.make` files included by the same
Makefile don't overwrite each other's variables. `Makefile` don't overwrite each other's variables.
</dl> </dl>
...@@ -2403,20 +2426,20 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2403,20 +2426,20 @@ front of it. If left blank docbook will be used as the default path.
If the \c MACRO_EXPANSION tag is set to \c YES doxygen will expand all macro If the \c MACRO_EXPANSION tag is set to \c YES doxygen will expand all macro
names in the source code. If set to \c NO (the default) only conditional names in the source code. If set to \c NO (the default) only conditional
compilation will be performed. Macro expansion can be done in a controlled compilation will be performed. Macro expansion can be done in a controlled
way by setting \c EXPAND_ONLY_PREDEF to \c YES. way by setting \ref cfg_expand_only_predef "EXPAND_ONLY_PREDEF" to \c YES.
\anchor cfg_expand_only_predef \anchor cfg_expand_only_predef
<dt>\c EXPAND_ONLY_PREDEF <dd> <dt>\c EXPAND_ONLY_PREDEF <dd>
\addindex EXPAND_ONLY_PREDEF \addindex EXPAND_ONLY_PREDEF
If the \c EXPAND_ONLY_PREDEF and \c MACRO_EXPANSION tags are both set to \c YES If the \c EXPAND_ONLY_PREDEF and \ref cfg_macro_expansion "MACRO_EXPANSION" tags are both set to \c YES
then the macro expansion is limited to the macros specified with the then the macro expansion is limited to the macros specified with the
\c PREDEFINED and \c EXPAND_AS_DEFINED tags. \ref cfg_predefined "PREDEFINED" and \ref cfg_expand_as_defined "EXPAND_AS_DEFINED" tags.
\anchor cfg_search_includes \anchor cfg_search_includes
<dt>\c SEARCH_INCLUDES <dd> <dt>\c SEARCH_INCLUDES <dd>
\addindex SEARCH_INCLUDES \addindex SEARCH_INCLUDES
If the \c SEARCH_INCLUDES tag is set to \c YES (the default) the includes files If the \c SEARCH_INCLUDES tag is set to \c YES (the default) the includes files
in the \c INCLUDE_PATH (see below) will be searched if a \#include is found. in the \ref cfg_include_path "INCLUDE_PATH" will be searched if a \c \#include is found.
\anchor cfg_include_path \anchor cfg_include_path
<dt>\c INCLUDE_PATH <dd> <dt>\c INCLUDE_PATH <dd>
...@@ -2430,27 +2453,28 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2430,27 +2453,28 @@ front of it. If left blank docbook will be used as the default path.
\addindex INCLUDE_FILE_PATTERNS \addindex INCLUDE_FILE_PATTERNS
You can use the \c INCLUDE_FILE_PATTERNS tag to specify one or more wildcard You can use the \c INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
patterns (like `*.h` and `*.hpp`) to filter out the header-files in the patterns (like `*.h` and `*.hpp`) to filter out the header-files in the
directories. If left blank, the patterns specified with \c FILE_PATTERNS will directories. If left blank, the patterns specified with \ref cfg_file_patterns "FILE_PATTERNS" will
be used. be used.
\anchor cfg_predefined \anchor cfg_predefined
<dt>\c PREDEFINED <dd> <dt>\c PREDEFINED <dd>
\addindex PREDEFINED \addindex PREDEFINED
The \c PREDEFINED tag can be used to specify one or more macro names that The \c PREDEFINED tag can be used to specify one or more macro names that
are defined before the preprocessor is started (similar to the -D option of are defined before the preprocessor is started (similar to the `-D` option of
gcc). The argument of the tag is a list of macros of the form: \c gcc). The argument of the tag is a list of macros of the form:
<code>name</code> or <code>name=definition</code> (no spaces). <code>name</code> or <code>name=definition</code> (no spaces).
If the definition and the "=" are omitted, "=1" is assumed. To prevent If the definition and the "=" are omitted, "=1" is assumed. To prevent
a macro definition from being undefined via \#undef or recursively expanded a macro definition from being undefined via \c \#undef or recursively expanded
use the := operator instead of the = operator. use the \c := operator instead of the \c = operator.
\anchor cfg_expand_as_defined \anchor cfg_expand_as_defined
<dt>\c EXPAND_AS_DEFINED <dd> <dt>\c EXPAND_AS_DEFINED <dd>
\addindex EXPAND_AS_DEFINED \addindex EXPAND_AS_DEFINED
If the \c MACRO_EXPANSION and \c EXPAND_ONLY_PREDEF tags are set to \c YES then If the \ref cfg_macro_expansion "MACRO_EXPANSION" and
\ref cfg_expand_only_predef "EXPAND_ONLY_PREDEF" tags are set to \c YES then
this tag can be used to specify a list of macro names that should be expanded. this tag can be used to specify a list of macro names that should be expanded.
The macro definition that is found in the sources will be used. The macro definition that is found in the sources will be used.
Use the \c PREDEFINED tag if you want to use a different macro definition. Use the \ref cfg_predefined "PREDEFINED" tag if you want to use a different macro definition.
\anchor cfg_skip_function_macros \anchor cfg_skip_function_macros
<dt>\c SKIP_FUNCTION_MACROS <dd> <dt>\c SKIP_FUNCTION_MACROS <dd>
...@@ -2473,7 +2497,7 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2473,7 +2497,7 @@ front of it. If left blank docbook will be used as the default path.
See \ref external for more information about the use of tag files. See \ref external for more information about the use of tag files.
\note \note
Each tag file must have a unique name Each tag file must have an unique name
(where the name does \e not include the path). (where the name does \e not include the path).
If a tag file is not located in the directory in which doxygen If a tag file is not located in the directory in which doxygen
is run, you must also specify the path to the tagfile here. is run, you must also specify the path to the tagfile here.
...@@ -2523,8 +2547,8 @@ front of it. If left blank docbook will be used as the default path. ...@@ -2523,8 +2547,8 @@ front of it. If left blank docbook will be used as the default path.
If the \c CLASS_DIAGRAMS tag is set to \c YES (the default) doxygen will If the \c CLASS_DIAGRAMS tag is set to \c YES (the default) doxygen will
generate a class diagram (in HTML and \f$\mbox{\LaTeX}\f$) for classes with base or generate a class diagram (in HTML and \f$\mbox{\LaTeX}\f$) for classes with base or
super classes. Setting the tag to \c NO turns the diagrams off. Note that super classes. Setting the tag to \c NO turns the diagrams off. Note that
this option also works with \c HAVE_DOT disabled, but it is recommended to this option also works with \ref cfg_have_dot "HAVE_DOT" disabled, but it is recommended to
install and use dot, since it yields more powerful graphs. install and use \c dot, since it yields more powerful graphs.
\anchor cfg_mscgen_path \anchor cfg_mscgen_path
<dt>\c MSCGEN_PATH <dd> <dt>\c MSCGEN_PATH <dd>
...@@ -2538,16 +2562,16 @@ install and use dot, since it yields more powerful graphs. ...@@ -2538,16 +2562,16 @@ install and use dot, since it yields more powerful graphs.
\anchor cfg_have_dot \anchor cfg_have_dot
<dt>\c HAVE_DOT <dd> <dt>\c HAVE_DOT <dd>
\addindex HAVE_DOT \addindex HAVE_DOT
If you set the \c HAVE_DOT tag to \c YES then doxygen will assume the dot tool is If you set the \c HAVE_DOT tag to \c YES then doxygen will assume the \c dot tool is
available from the path. This tool is part of available from the \c path. This tool is part of
<a href="http://www.research.att.com/sw/tools/graphviz/">Graphviz</a>, a graph <a href=" http://www.graphviz.org/">Graphviz</a>, a graph
visualization toolkit from AT\&T and Lucent Bell Labs. The other options in visualization toolkit from AT\&T and Lucent Bell Labs. The other options in
this section have no effect if this option is set to \c NO (the default) this section have no effect if this option is set to \c NO (the default)
\anchor cfg_dot_num_threads \anchor cfg_dot_num_threads
<dt>\c DOT_NUM_THREADS <dd> <dt>\c DOT_NUM_THREADS <dd>
\addindex DOT_NUM_THREADS \addindex DOT_NUM_THREADS
The \c DOT_NUM_THREADS specifies the number of dot invocations doxygen is The \c DOT_NUM_THREADS specifies the number of \c dot invocations doxygen is
allowed to run in parallel. When set to 0 (the default) doxygen will allowed to run in parallel. When set to 0 (the default) doxygen will
base this on the number of processors available in the system. You can set it base this on the number of processors available in the system. You can set it
explicitly to a value larger than 0 to get control over the balance explicitly to a value larger than 0 to get control over the balance
...@@ -2561,7 +2585,7 @@ install and use dot, since it yields more powerful graphs. ...@@ -2561,7 +2585,7 @@ install and use dot, since it yields more powerful graphs.
When you want a differently looking font you can specify the font name When you want a differently looking font you can specify the font name
using \c DOT_FONTNAME. You need to make sure dot is able to find the font, using \c DOT_FONTNAME. You need to make sure dot is able to find the font,
which can be done by putting it in a standard location or by setting the which can be done by putting it in a standard location or by setting the
\c DOTFONTPATH environment variable or by setting \c DOT_FONTPATH to the \c DOTFONTPATH environment variable or by setting \ref cfg_dot_fontpath "DOT_FONTPATH" to the
directory containing the font. directory containing the font.
\anchor cfg_dot_fontsize \anchor cfg_dot_fontsize
...@@ -2572,23 +2596,23 @@ The default size is 10pt. ...@@ -2572,23 +2596,23 @@ The default size is 10pt.
\anchor cfg_dot_fontpath \anchor cfg_dot_fontpath
<dt>\c DOT_FONTPATH <dd> <dt>\c DOT_FONTPATH <dd>
\addindex DOT_FONTPATH \addindex DOT_FONTPATH
By default doxygen will tell dot to use the output directory to look for the By default doxygen will tell \c dot to use the output directory to look for the
\c FreeSans.ttf font (which doxygen will put there itself). If you specify a \c FreeSans.ttf font (which doxygen will put there itself). If you specify a
different font using \c DOT_FONTNAME you can set the path where dot different font using \ref cfg_dot_fontname "DOT_FONTNAME" you can set the path where \c dot
can find it using this tag. can find it using this tag.
\anchor cfg_class_graph \anchor cfg_class_graph
<dt>\c CLASS_GRAPH <dd> <dt>\c CLASS_GRAPH <dd>
\addindex CLASS_GRAPH \addindex CLASS_GRAPH
If the \c CLASS_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen If the \c CLASS_GRAPH and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then doxygen
will generate a graph for each documented class showing the direct and will generate a graph for each documented class showing the direct and
indirect inheritance relations. Setting this tag to \c YES will force indirect inheritance relations. Setting this tag to \c YES will force
the \c CLASS_DIAGRAMS tag to \c NO. the \ref cfg_class_diagrams "CLASS_DIAGRAMS" tag to \c NO.
\anchor cfg_collaboration_graph \anchor cfg_collaboration_graph
<dt>\c COLLABORATION_GRAPH <dd> <dt>\c COLLABORATION_GRAPH <dd>
\addindex COLLABORATION_GRAPH \addindex COLLABORATION_GRAPH
If the \c COLLABORATION_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen If the \c COLLABORATION_GRAPH and \ref cfg_have_dot "HAVE_DOT" are set to \c YES then doxygen
will generate a graph for each documented class showing the direct and will generate a graph for each documented class showing the direct and
indirect implementation dependencies (inheritance, containment, and indirect implementation dependencies (inheritance, containment, and
class references variables) of the class with other documented classes. class references variables) of the class with other documented classes.
...@@ -2596,20 +2620,20 @@ The default size is 10pt. ...@@ -2596,20 +2620,20 @@ The default size is 10pt.
\anchor cfg_group_graphs \anchor cfg_group_graphs
<dt>\c GROUP_GRAPHS <dd> <dt>\c GROUP_GRAPHS <dd>
\addindex GROUP_GRAPHS \addindex GROUP_GRAPHS
If the GROUP_GRAPHS and HAVE_DOT tags are set to \c YES then doxygen If the \c GROUP_GRAPHS and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then doxygen
will generate a graph for groups, showing the direct groups dependencies. will generate a graph for groups, showing the direct groups dependencies.
\anchor cfg_uml_look \anchor cfg_uml_look
<dt>\c UML_LOOK <dd> <dt>\c UML_LOOK <dd>
\addindex UML_LOOK \addindex UML_LOOK
If the UML_LOOK tag is set to \c YES doxygen will generate inheritance and If the \c UML_LOOK tag is set to \c YES doxygen will generate inheritance and
collaboration diagrams in a style similar to the OMG's Unified Modeling collaboration diagrams in a style similar to the OMG's Unified Modeling
Language. Language.
\anchor cfg_uml_limit_num_fields \anchor cfg_uml_limit_num_fields
<dt>\c UML_LIMIT_NUM_FIELDS <dd> <dt>\c UML_LIMIT_NUM_FIELDS <dd>
\addindex UML_LIMIT_NUM_FIELDS \addindex UML_LIMIT_NUM_FIELDS
If the \c UML_LOOK tag is enabled, the fields and methods are shown inside If the \ref cfg_uml_look "UML_LOOK" tag is enabled, the fields and methods are shown inside
the class node. If there are many fields or methods and many nodes the the class node. If there are many fields or methods and many nodes the
graph may become too big to be useful. The \c UML_LIMIT_NUM_FIELDS graph may become too big to be useful. The \c UML_LIMIT_NUM_FIELDS
threshold limits the number of items for each type to make the size more threshold limits the number of items for each type to make the size more
...@@ -2621,7 +2645,7 @@ The default size is 10pt. ...@@ -2621,7 +2645,7 @@ The default size is 10pt.
\anchor cfg_template_relations \anchor cfg_template_relations
<dt>\c TEMPLATE_RELATIONS <dd> <dt>\c TEMPLATE_RELATIONS <dd>
\addindex TEMPLATE_RELATIONS \addindex TEMPLATE_RELATIONS
If the \c TEMPLATE_RELATIONS and \c HAVE_DOT tags are set to \c YES then If the \c TEMPLATE_RELATIONS and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then
doxygen will show the relations between templates and their instances. doxygen will show the relations between templates and their instances.
\anchor cfg_hide_undoc_relations \anchor cfg_hide_undoc_relations
...@@ -2634,7 +2658,9 @@ The default size is 10pt. ...@@ -2634,7 +2658,9 @@ The default size is 10pt.
\anchor cfg_include_graph \anchor cfg_include_graph
<dt>\c INCLUDE_GRAPH <dd> <dt>\c INCLUDE_GRAPH <dd>
\addindex INCLUDE_GRAPH \addindex INCLUDE_GRAPH
If the \c ENABLE_PREPROCESSING, \c SEARCH_INCLUDES, \c INCLUDE_GRAPH, and \c HAVE_DOT If the \ref cfg_enable_preprocessing "ENABLE_PREPROCESSING",
\ref cfg_search_includes "SEARCH_INCLUDES", \ref cfg_include_graph "INCLUDE_GRAPH",
and \ref cfg_have_dot "HAVE_DOT"
tags are set to \c YES then doxygen will generate a graph for each documented file tags are set to \c YES then doxygen will generate a graph for each documented file
showing the direct and indirect include dependencies of the file with other showing the direct and indirect include dependencies of the file with other
documented files. documented files.
...@@ -2642,41 +2668,42 @@ The default size is 10pt. ...@@ -2642,41 +2668,42 @@ The default size is 10pt.
\anchor cfg_included_by_graph \anchor cfg_included_by_graph
<dt>\c INCLUDED_BY_GRAPH <dd> <dt>\c INCLUDED_BY_GRAPH <dd>
\addindex INCLUDED_BY_GRAPH \addindex INCLUDED_BY_GRAPH
If the \c ENABLE_PREPROCESSING, \c SEARCH_INCLUDES, \c INCLUDED_BY_GRAPH, and If the \ref cfg_enable_preprocessing "ENABLE_PREPROCESSING",
\c HAVE_DOT tags are set to \c YES then doxygen will generate a graph for each \ref cfg_search_includes "SEARCH_INCLUDES", \ref cfg_include_graph "INCLUDED_BY_GRAPH", and
\ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then doxygen will generate a graph for each
documented header file showing the documented files that directly or indirectly documented header file showing the documented files that directly or indirectly
include this file. include this file.
\anchor cfg_call_graph \anchor cfg_call_graph
<dt>\c CALL_GRAPH <dd> <dt>\c CALL_GRAPH <dd>
\addindex CALL_GRAPH \addindex CALL_GRAPH
If the \c CALL_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen will If the \c CALL_GRAPH and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then doxygen will
generate a call dependency graph for every global function or class method. generate a call dependency graph for every global function or class method.
Note that enabling this option will significantly increase the time of a run. Note that enabling this option will significantly increase the time of a run.
So in most cases it will be better to enable call graphs for selected So in most cases it will be better to enable call graphs for selected
functions only using the \\callgraph command. functions only using the \ref cmdcallgraph "\\callgraph" command.
\anchor cfg_caller_graph \anchor cfg_caller_graph
<dt>\c CALLER_GRAPH <dd> <dt>\c CALLER_GRAPH <dd>
\addindex CALLER_GRAPH \addindex CALLER_GRAPH
If the \c CALLER_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen will If the \c CALLER_GRAPH and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then doxygen will
generate a caller dependency graph for every global function or class method. generate a caller dependency graph for every global function or class method.
Note that enabling this option will significantly increase the time of a run. Note that enabling this option will significantly increase the time of a run.
So in most cases it will be better to enable caller graphs for selected So in most cases it will be better to enable caller graphs for selected
functions only using the \\callergraph command. functions only using the \ref cmdcallergraph "\\callergraph" command.
\anchor cfg_graphical_hierarchy \anchor cfg_graphical_hierarchy
<dt>\c GRAPHICAL_HIERARCHY <dd> <dt>\c GRAPHICAL_HIERARCHY <dd>
\addindex GRAPHICAL_HIERARCHY \addindex GRAPHICAL_HIERARCHY
If the \c GRAPHICAL_HIERARCHY and \c HAVE_DOT tags are set to \c YES then If the \c GRAPHICAL_HIERARCHY and \ref cfg_have_dot "HAVE_DOT" tags are set to \c YES then
doxygen will graphical hierarchy of all classes instead of a textual one. doxygen will graphical hierarchy of all classes instead of a textual one.
\anchor cfg_directory_graph \anchor cfg_directory_graph
<dt>\c DIRECTORY_GRAPH <dd> <dt>\c DIRECTORY_GRAPH <dd>
\addindex DIRECTORY_GRAPH \addindex DIRECTORY_GRAPH
If the \c DIRECTORY_GRAPH, and \c HAVE_DOT options are set If the \c DIRECTORY_GRAPH, and \ref cfg_have_dot "HAVE_DOT" options are set
to \c YES then doxygen will show the dependencies a directory has on other directories to \c YES then doxygen will show the dependencies a directory has on other directories
in a graphical way. The dependency relations are determined by the \#include in a graphical way. The dependency relations are determined by the \c \#include
relations between the files in the directories. relations between the files in the directories.
\anchor cfg_dot_graph_max_nodes \anchor cfg_dot_graph_max_nodes
...@@ -2688,43 +2715,43 @@ The default size is 10pt. ...@@ -2688,43 +2715,43 @@ The default size is 10pt.
visualized by representing a node as a red box. Note that doxygen if the number visualized by representing a node as a red box. Note that doxygen if the number
of direct children of the root node in a graph is already larger than of direct children of the root node in a graph is already larger than
\c DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note \c DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
that the size of a graph can be further restricted by \c MAX_DOT_GRAPH_DEPTH. that the size of a graph can be further restricted by \ref cfg_max_dot_graph_depth "MAX_DOT_GRAPH_DEPTH".
\anchor cfg_max_dot_graph_depth \anchor cfg_max_dot_graph_depth
<dt>\c MAX_DOT_GRAPH_DEPTH <dd> <dt>\c MAX_DOT_GRAPH_DEPTH <dd>
\addindex MAX_DOT_GRAPH_DEPTH \addindex MAX_DOT_GRAPH_DEPTH
The \c MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the The \c MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
graphs generated by dot. A depth value of 3 means that only nodes reachable graphs generated by \c dot. A depth value of 3 means that only nodes reachable
from the root by following a path via at most 3 edges will be shown. Nodes from the root by following a path via at most 3 edges will be shown. Nodes
that lay further from the root node will be omitted. Note that setting this that lay further from the root node will be omitted. Note that setting this
option to 1 or 2 may greatly reduce the computation time needed for large option to 1 or 2 may greatly reduce the computation time needed for large
code bases. Also note that the size of a graph can be further restricted by code bases. Also note that the size of a graph can be further restricted by
\c DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction (the default). \ref cfg_dot_graph_max_nodes "DOT_GRAPH_MAX_NODES". Using a depth of 0 means no depth restriction (the default).
\anchor cfg_dot_image_format \anchor cfg_dot_image_format
<dt>\c DOT_IMAGE_FORMAT <dd> <dt>\c DOT_IMAGE_FORMAT <dd>
\addindex DOT_IMAGE_FORMAT \addindex DOT_IMAGE_FORMAT
The \c DOT_IMAGE_FORMAT tag can be used to set the image format of the images The \c DOT_IMAGE_FORMAT tag can be used to set the image format of the images
generated by dot. Possible values are svg, png, jpg, or gif. generated by \c dot. Possible values are \c svg, \c png, \c jpg, or \c gif.
If left blank png will be used. If left blank png will be used.
\note If you choose \c svg you need to set \note If you choose \c svg you need to set
HTML_FILE_EXTENSION to xhtml in order to make the SVG files \ref cfg_html_file_extension "HTML_FILE_EXTENSION" to \c xhtml in order to make the SVG files
visible in IE 9+ (other browsers do not have this requirement). visible in IE 9+ (other browsers do not have this requirement).
\anchor cfg_interactive_svg \anchor cfg_interactive_svg
<dt>\c INTERACTIVE_SVG <dd> <dt>\c INTERACTIVE_SVG <dd>
If DOT_IMAGE_FORMAT is set to svg, then this option can be set to \c YES to If \ref cfg_dot_image_format "DOT_IMAGE_FORMAT" is set to \c svg, then this option can be set to \c YES to
enable generation of interactive SVG images that allow zooming and panning. enable generation of interactive SVG images that allow zooming and panning.
Note that this requires a modern browser other than Internet Explorer. Note that this requires a modern browser other than Internet Explorer.
Tested and working are Firefox, Chrome, Safari, and Opera. Tested and working are Firefox, Chrome, Safari, and Opera.
\note For IE 9+ you need to set \c HTML_FILE_EXTENSION to xhtml in order \note For IE 9+ you need to set \ref cfg_html_file_extension "HTML_FILE_EXTENSION" to xhtml in order
to make the SVG files visible. Older versions of IE do not have SVG support. to make the SVG files visible. Older versions of IE do not have SVG support.
\anchor cfg_dot_path \anchor cfg_dot_path
<dt>\c DOT_PATH <dd> <dt>\c DOT_PATH <dd>
\addindex DOT_PATH \addindex DOT_PATH
This tag can be used to specify the path where the dot tool can be found. This tag can be used to specify the path where the \c dot tool can be found.
If left blank, it is assumed the dot tool can be found on the path. If left blank, it is assumed the \c dot tool can be found in the \c path.
\anchor cfg_dotfile_dirs \anchor cfg_dotfile_dirs
<dt>\c DOTFILE_DIRS <dd> <dt>\c DOTFILE_DIRS <dd>
...@@ -2754,7 +2781,7 @@ The default size is 10pt. ...@@ -2754,7 +2781,7 @@ The default size is 10pt.
\addindex DOT_MULTI_TARGET \addindex DOT_MULTI_TARGET
Set the \c DOT_MULTI_TARGETS tag to \c YES allow dot to generate multiple output Set the \c DOT_MULTI_TARGETS tag to \c YES allow dot to generate multiple output
files in one run (i.e. multiple -o and -T options on the command line). This files in one run (i.e. multiple -o and -T options on the command line). This
makes dot run faster, but since only newer versions of dot (>1.8.10) makes \c dot run faster, but since only newer versions of \c dot (>1.8.10)
support this, this feature is disabled by default. support this, this feature is disabled by default.
\anchor cfg_generate_legend \anchor cfg_generate_legend
...@@ -2781,7 +2808,7 @@ Then a minimal configuration file is as simple as: ...@@ -2781,7 +2808,7 @@ Then a minimal configuration file is as simple as:
INPUT = example.cc example.h INPUT = example.cc example.h
\endverbatim \endverbatim
Assuming the example makes use of Qt classes and perl is located Assuming the example makes use of Qt classes and \c perl is located
in <code>/usr/bin</code>, a more realistic configuration file would be: in <code>/usr/bin</code>, a more realistic configuration file would be:
\verbatim \verbatim
PROJECT_NAME = Example PROJECT_NAME = Example
......
...@@ -274,7 +274,7 @@ documentation -> docs -> dox ...@@ -274,7 +274,7 @@ documentation -> docs -> dox
generator -> gen generator -> gen
\endverbatim \endverbatim
At the time I was looking into lex and yacc, where a lot of things start with At the time I was looking into \c lex and \c yacc, where a lot of things start with
"yy", so the "y" slipped in and made things pronounceable "yy", so the "y" slipped in and made things pronounceable
(the proper pronouncement is Docs-ee-gen, so with a long "e"). (the proper pronouncement is Docs-ee-gen, so with a long "e").
......
...@@ -20,7 +20,7 @@ Here is a list of all HTML commands that may be used inside the ...@@ -20,7 +20,7 @@ Here is a list of all HTML commands that may be used inside the
documentation. Note that although these HTML tags are translated to the documentation. Note that although these HTML tags are translated to the
proper commands for output formats other than HTML, all attributes proper commands for output formats other than HTML, all attributes
of a HTML tag are passed on to the HTML output only of a HTML tag are passed on to the HTML output only
(the HREF and NAME attributes for the A tag are the only exception). (the \c HREF and \c NAME attributes for the \c A tag are the only exception).
<ul> <ul>
<li><tt>\<A HREF="..."\></tt> Starts a hyperlink <li><tt>\<A HREF="..."\></tt> Starts a hyperlink
...@@ -89,7 +89,7 @@ of a HTML tag are passed on to the HTML output only ...@@ -89,7 +89,7 @@ of a HTML tag are passed on to the HTML output only
<li><tt>\<SUB\></tt> Starts a piece of text displayed in subscript. <li><tt>\<SUB\></tt> Starts a piece of text displayed in subscript.
<li><tt>\</SUB\></tt> Ends a <tt>\<SUB\></tt> section. <li><tt>\</SUB\></tt> Ends a <tt>\<SUB\></tt> section.
<li><tt>\<SUP\></tt> Starts a piece of text displayed in superscript. <li><tt>\<SUP\></tt> Starts a piece of text displayed in superscript.
<li><tt>\</SUP\></tt> Ends a <tt>\</SUP\></tt> section. <li><tt>\</SUP\></tt> Ends a <tt>\<SUP\></tt> section.
<li><tt>\<TABLE\></tt> starts a table. <li><tt>\<TABLE\></tt> starts a table.
<li><tt>\</TABLE\></tt> ends a table. <li><tt>\</TABLE\></tt> ends a table.
<li><tt>\<TD\></tt> Starts a new table data element. <li><tt>\<TD\></tt> Starts a new table data element.
......
...@@ -29,16 +29,16 @@ If you downloaded the source distribution, you need at least the ...@@ -29,16 +29,16 @@ If you downloaded the source distribution, you need at least the
following to build the executable: following to build the executable:
<ul> <ul>
<li>The <a href="ftp://prep.ai.mit.edu/pub/gnu/">GNU</a> tools <li>The <a href="ftp://prep.ai.mit.edu/pub/gnu/">GNU</a> tools
flex, bison and GNU make, and strip \c flex, \c bison and <code>GNU make</code>, and \c strip
\addindex flex \addindex flex
\addindex bison \addindex bison
\addindex make \addindex make
\addindex strip \addindex strip
<li>In order to generate a Makefile for your platform, you need <li>In order to generate a \c Makefile for your platform, you need
<a href="http://www.perl.com/">perl</a> <a href="http://www.perl.com/">perl</a>
\addindex perl \addindex perl
<li>The configure script assume the availability of standard UNIX tools such <li>The configure script assume the availability of standard UNIX tools such
as sed, date, find, uname, mv, cp, cat, echo, tr, cd, and rm. as <code>sed, date, find, uname, mv, cp, cat, echo, tr, cd</code> and \c rm.
</ul> </ul>
To take full advantage of doxygen's features the following additional To take full advantage of doxygen's features the following additional
...@@ -168,9 +168,9 @@ standard installation procedure that is required for these packages. ...@@ -168,9 +168,9 @@ standard installation procedure that is required for these packages.
<b>Qt problems</b> <b>Qt problems</b>
The Qt include files and libraries are not a subdirectory of the The Qt include files and libraries are not a subdirectory of the
directory pointed to by QTDIR on some systems directory pointed to by <code>QTDIR</code> on some systems
(for instance on Red Hat 6.0 includes are in /usr/include/qt and (for instance on Red Hat 6.0 includes are in <code>/usr/include/qt</code> and
libs are in /usr/lib). libs are in <code>/usr/lib</code>).
The solution: go to the root of the doxygen distribution and do: The solution: go to the root of the doxygen distribution and do:
...@@ -181,96 +181,26 @@ The solution: go to the root of the doxygen distribution and do: ...@@ -181,96 +181,26 @@ The solution: go to the root of the doxygen distribution and do:
ln -s your-qt-bin-dir-here bin ln -s your-qt-bin-dir-here bin
export QTDIR=$PWD export QTDIR=$PWD
If you have a csh-like shell you should use <code>setenv QTDIR \$PWD</code> If you have a <code>csh</code>-like shell you should use <code>setenv QTDIR \$PWD</code>
instead of the <code>export</code> command above. instead of the <code>export</code> command above.
Now install doxygen as described above. Now install doxygen as described above.
<b>Bison problems</b> <b>Bison problems</b>
Versions 1.31 to 1.34 of bison contain a "bug" that results in a Versions 1.31 to 1.34 of \c bison contain a "bug" that results in a
compiler errors like this: compiler errors like this:
ce_parse.cpp:348: member `class CPPValue yyalloc::yyvs' with <code>ce_parse.cpp:348: member `class CPPValue yyalloc::yyvs' with </code>
constructor not allowed in union constructor not allowed in union
This problem has been solved in version 1.35 (versions before 1.31 This problem has been solved in version 1.35 (versions before 1.31
will also work). will also work).
<b>Latex problems</b>
The file <code>a4wide.sty</code> is not available for all distributions. If
your distribution does not have it please select another paper type
in the config file (see the \ref cfg_paper_type "PAPER_TYPE" tag in the
config file).
<b>HP-UX \& Digital UNIX problems</b>
If you are compiling for HP-UX with aCC and you get this error:
/opt/aCC/lbin/ld: Unsatisfied symbols:
alloca (code)
then you should (according to Anke Selig) edit <code>ce_parse.cpp</code>
and replace
extern "C" {
void *alloca (unsigned int);
};
with
#include <alloca.h>
If that does not help, try removing <code>ce_parse.cpp</code> and let
bison rebuild it (this worked for me).
If you are compiling for Digital UNIX, the same problem can be solved
(according to Barnard Schmallhof) by replacing the following in
ce_parse.cpp:
\verbatim
#else /* not GNU C. */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi)
#include <alloca.h>
\endverbatim
with
\verbatim
#else /* not GNU C. */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi) || defined (__osf__)
#include <alloca.h>
\endverbatim
Alternatively, one could fix the problem at the bison side.
Here is patch for bison.simple (provided by Andre Johansen):
\verbatim
--- bison.simple~ Tue Nov 18 11:45:53 1997
+++ bison.simple Mon Jan 26 15:10:26 1998
@@ -27,7 +27,7 @@
#ifdef __GNUC__
#define alloca __builtin_alloca
#else /* not GNU C. */
-#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi)
+#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi) || defined (__alpha)
#include <alloca.h>
#else /* not sparc */
#if defined (MSDOS) && !defined (__TURBOC__)
\endverbatim
The generated scanner.cpp that comes with doxygen is build with this
patch applied.
<b>Sun compiler problems</b> <b>Sun compiler problems</b>
It appears that doxygen doesn't work properly if it is compiled It appears that doxygen doesn't work properly if it is compiled
with Sun's C++ WorkShop 6 Compiler. I cannot verify this myself as I do with Sun's C++ WorkShop Compiler. I cannot verify this myself as I do
not have access to a Solaris machine with this compiler. With GNU compiler not have access to a Solaris machine with this compiler. With GNU compiler
it does work and installing Sun patch 111679-13 has also been reported it does work and installing Sun patch 111679-13 has also been reported
as a way to fix the problem. as a way to fix the problem.
...@@ -338,7 +268,7 @@ compile doxygen. Alternatively, you can compile doxygen ...@@ -338,7 +268,7 @@ compile doxygen. Alternatively, you can compile doxygen
<a href="http://en.wikipedia.org/wiki/Cygwin">Cygwin</a> <a href="http://en.wikipedia.org/wiki/Cygwin">Cygwin</a>
or <a href="http://www.mingw.org/">MinGW</a>. or <a href="http://www.mingw.org/">MinGW</a>.
The next step is to install bison, flex, and tar The next step is to install \c bison, \c flex, and \c tar
(see http://gnuwin32.sourceforge.net/packages.html). (see http://gnuwin32.sourceforge.net/packages.html).
This packages are needed during the This packages are needed during the
compilation process if you use a CVS snapshot of doxygen (the official source releases compilation process if you use a CVS snapshot of doxygen (the official source releases
...@@ -399,7 +329,7 @@ Here is what is required: ...@@ -399,7 +329,7 @@ Here is what is required:
The good, tested, and free alternative is the <code>tar</code> utility The good, tested, and free alternative is the <code>tar</code> utility
supplied with <a href="http://sourceware.cygnus.com/cygwin/">cygwin supplied with <a href="http://sourceware.cygnus.com/cygwin/">cygwin
tools</a>. Anyway, the cygwin's flex, bison, and sed are also tools</a>. Anyway, the Cygwin's \c flex, \c bison, and \c sed are also
recommended below. recommended below.
<li>Microsoft Visual C++ (I only tested with version 6.0). <li>Microsoft Visual C++ (I only tested with version 6.0).
...@@ -412,7 +342,7 @@ Here is what is required: ...@@ -412,7 +342,7 @@ Here is what is required:
<li>Perl 5.0 or higher for Windows. This can be downloaded from: <li>Perl 5.0 or higher for Windows. This can be downloaded from:
http://www.ActiveState.com/Products/ActivePerl/ http://www.ActiveState.com/Products/ActivePerl/
<li>The GNU tools flex, bison, and sed. <li>The GNU tools \c flex, \c bison, and \c sed.
To get these working on Windows you should install the To get these working on Windows you should install the
<a href="http://sources.redhat.com/cygwin/">cygwin tools</a> <a href="http://sources.redhat.com/cygwin/">cygwin tools</a>
......
...@@ -242,7 +242,7 @@ when the translator was updated. ...@@ -242,7 +242,7 @@ when the translator was updated.
<td>Romanian</td> <td>Romanian</td>
<td>Ionut Dumitrascu<br/>Alexandru Iosup</td> <td>Ionut Dumitrascu<br/>Alexandru Iosup</td>
<td>reddumy at yahoo dot com<br/>aiosup at yahoo dot com</td> <td>reddumy at yahoo dot com<br/>aiosup at yahoo dot com</td>
<td>1.6.0</td> <td>up-to-date</td>
</tr> </tr>
<tr bgcolor="#ffffff"> <tr bgcolor="#ffffff">
<td>Russian</td> <td>Russian</td>
...@@ -266,7 +266,7 @@ when the translator was updated. ...@@ -266,7 +266,7 @@ when the translator was updated.
<td>Slovak</td> <td>Slovak</td>
<td>Kali+Laco Švec<br/>Petr Přikryl</td> <td>Kali+Laco Švec<br/>Petr Přikryl</td>
<td><span style="color: brown">[the Slovak language advisors]</span><br/>prikryl at atlas dot cz</td> <td><span style="color: brown">[the Slovak language advisors]</span><br/>prikryl at atlas dot cz</td>
<td>1.8.04</td> <td>up-to-date</td>
</tr> </tr>
<tr bgcolor="#ffffff"> <tr bgcolor="#ffffff">
<td>Slovene</td> <td>Slovene</td>
...@@ -403,7 +403,7 @@ when the translator was updated. ...@@ -403,7 +403,7 @@ when the translator was updated.
Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.8.0 \\ Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.8.0 \\
~ & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino at uol dot com dot br} & ~ \\ ~ & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino at uol dot com dot br} & ~ \\
\hline \hline
Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & 1.6.0 \\ Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & up-to-date \\
~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\ ~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\
\hline \hline
Russian & Alexandr Chelpanov & {\tt\tiny cav at cryptopro dot ru} & 1.7.5 \\ Russian & Alexandr Chelpanov & {\tt\tiny cav at cryptopro dot ru} & 1.7.5 \\
...@@ -412,7 +412,7 @@ when the translator was updated. ...@@ -412,7 +412,7 @@ when the translator was updated.
\hline \hline
SerbianCyrilic & Nedeljko Stefanovic & {\tt\tiny stenedjo at yahoo dot com} & 1.6.0 \\ SerbianCyrilic & Nedeljko Stefanovic & {\tt\tiny stenedjo at yahoo dot com} & 1.6.0 \\
\hline \hline
Slovak & Kali+Laco Švec & {\tt\tiny [the Slovak language advisors]} & 1.8.04 \\ Slovak & Kali+Laco Švec & {\tt\tiny [the Slovak language advisors]} & up-to-date \\
~ & Petr Přikryl & {\tt\tiny prikryl at atlas dot cz} & ~ \\ ~ & Petr Přikryl & {\tt\tiny prikryl at atlas dot cz} & ~ \\
\hline \hline
Slovene & Matjaž Ostroveršnik & {\tt\tiny matjaz dot ostroversnik at ostri dot org} & 1.4.6 \\ Slovene & Matjaž Ostroveršnik & {\tt\tiny matjaz dot ostroversnik at ostri dot org} & 1.4.6 \\
......
...@@ -140,7 +140,7 @@ has its own advantages and disadvantages: ...@@ -140,7 +140,7 @@ has its own advantages and disadvantages:
If you develop for or want to install the Qt application framework, If you develop for or want to install the Qt application framework,
you will get an application you will get an application
called <a href="http://qt-project.org/doc/qt-4.8/assistant-manual.html">Qt assistant</a>. called <a href="http://qt-project.org/doc/qt-4.8/assistant-manual.html">Qt assistant</a>.
This is a help viewer for Qt Compressed Help files (.qch). This is a help viewer for Qt Compressed Help files (<code>.qch</code>).
To enable this feature set \ref cfg_generate_qhp "GENERATE_QHP" to \c YES. To enable this feature set \ref cfg_generate_qhp "GENERATE_QHP" to \c YES.
You also need to fill in the other Qt help related options, such as You also need to fill in the other Qt help related options, such as
......
...@@ -163,10 +163,10 @@ doxygen <config-file> ...@@ -163,10 +163,10 @@ doxygen <config-file>
\endverbatim \endverbatim
Depending on your settings doxygen will create \c html, \c rtf, Depending on your settings doxygen will create \c html, \c rtf,
\c latex, \c xml and/or \c man directories inside the output directory. \c latex, \c xml, \c man, and/or docbook directories inside the output directory.
As the names suggest these directories contain the As the names suggest these directories contain the
generated documentation in HTML, RTF, \f$\mbox{\LaTeX}\f$, XML and generated documentation in HTML, RTF, \f$\mbox{\LaTeX}\f$, XML,
Unix-Man page format. Unix-Man page, and DocBook format.
The default output directory is the directory in which \c doxygen The default output directory is the directory in which \c doxygen
is started. The root directory to which the output is written can be changed is started. The root directory to which the output is written can be changed
...@@ -174,7 +174,7 @@ using the \ref cfg_output_directory "OUTPUT_DIRECTORY". The format specific ...@@ -174,7 +174,7 @@ using the \ref cfg_output_directory "OUTPUT_DIRECTORY". The format specific
directory within the output directory can be selected using the directory within the output directory can be selected using the
\ref cfg_html_output "HTML_OUTPUT", \ref cfg_rtf_output "RTF_OUTPUT", \ref cfg_html_output "HTML_OUTPUT", \ref cfg_rtf_output "RTF_OUTPUT",
\ref cfg_latex_output "LATEX_OUTPUT", \ref cfg_xml_output "XML_OUTPUT", \ref cfg_latex_output "LATEX_OUTPUT", \ref cfg_xml_output "XML_OUTPUT",
and \ref cfg_man_output "MAN_OUTPUT" \ref cfg_man_output "MAN_OUTPUT", and \ref cfg_docbook_output "DOCBOOK_OUTPUT".
tags of the configuration file. If the output directory does not exist, tags of the configuration file. If the output directory does not exist,
\c doxygen will try to create it for you (but it will \e not try to create \c doxygen will try to create it for you (but it will \e not try to create
a whole path recursively, like <code>mkdir -p</code> does). a whole path recursively, like <code>mkdir -p</code> does).
...@@ -250,12 +250,19 @@ the XML output produced by doxygen in an incremental way ...@@ -250,12 +250,19 @@ the XML output produced by doxygen in an incremental way
(see `addon/doxmlparser/include/doxmlintf.h` for the interface of the library) (see `addon/doxmlparser/include/doxmlintf.h` for the interface of the library)
\subsection man_out Man page output \subsection man_out Man page output
\addindex man
The generated man pages can be viewed using the \c man program. You do need The generated man pages can be viewed using the \c man program. You do need
to make sure the man directory is in the man path (see the \c MANPATH to make sure the man directory is in the man path (see the \c MANPATH
environment variable). Note that there are some limitations to the environment variable). Note that there are some limitations to the
capabilities of the man page format, so some information capabilities of the man page format, so some information
(like class diagrams, cross references and formulas) will be lost. (like class diagrams, cross references and formulas) will be lost.
\subsection docbook_out DocBook output
\addindex docbook
Doxygen can also generate output in the
<a href="http://www.docbook.org/">DocBook</a> format. How to process the
DocBook output is beyond the scope of this manual.
\section step3 Step 3: Documenting the sources \section step3 Step 3: Documenting the sources
Although documenting the sources is presented as step 3, in a new project Although documenting the sources is presented as step 3, in a new project
......
...@@ -10,7 +10,7 @@ Macedonian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, ...@@ -10,7 +10,7 @@ Macedonian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian,
Serbian, SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Serbian, SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish,
Ukrainian, and Vietnamese. Ukrainian, and Vietnamese.
Of them, 3 translators are up-to-date, 37 translators are based on Of them, 5 translators are up-to-date, 35 translators are based on
some adapter class, and 2 are English based. some adapter class, and 2 are English based.
---------------------------------------------------------------------- ----------------------------------------------------------------------
...@@ -22,6 +22,8 @@ still may be some details listed even for them: ...@@ -22,6 +22,8 @@ still may be some details listed even for them:
TranslatorEnglish TranslatorEnglish
TranslatorKorean -- Change the base class to Translator. TranslatorKorean -- Change the base class to Translator.
TranslatorLatvian -- Reimplementation using UTF-8 suggested. TranslatorLatvian -- Reimplementation using UTF-8 suggested.
TranslatorRomanian -- Reimplementation using UTF-8 suggested.
TranslatorSlovak
---------------------------------------------------------------------- ----------------------------------------------------------------------
The following translator classes need some maintenance (the most The following translator classes need some maintenance (the most
...@@ -35,9 +37,6 @@ must be implemented to become up-to-date: ...@@ -35,9 +37,6 @@ must be implemented to become up-to-date:
TranslatorSpanish 1.8.04 8 methods to implement (3 %) TranslatorSpanish 1.8.04 8 methods to implement (3 %)
Note: Change the base class to TranslatorAdapter_1_8_4. Note: Change the base class to TranslatorAdapter_1_8_4.
TranslatorSlovak 1.8.04 8 methods to implement (3 %)
Note: Change the base class to TranslatorAdapter_1_8_4.
TranslatorGreek 1.8.04 8 methods to implement (3 %) TranslatorGreek 1.8.04 8 methods to implement (3 %)
Note: Change the base class to TranslatorAdapter_1_8_4. Note: Change the base class to TranslatorAdapter_1_8_4.
...@@ -86,9 +85,6 @@ must be implemented to become up-to-date: ...@@ -86,9 +85,6 @@ must be implemented to become up-to-date:
Note: Reimplementation using UTF-8 suggested. Note: Reimplementation using UTF-8 suggested.
TranslatorSerbianCyrilic 1.6.0 34 methods to implement (13 %) TranslatorSerbianCyrilic 1.6.0 34 methods to implement (13 %)
TranslatorRomanian 1.6.0 34 methods to implement (13 %)
Note: Reimplementation using UTF-8 suggested.
TranslatorMacedonian 1.6.0 34 methods to implement (13 %) TranslatorMacedonian 1.6.0 34 methods to implement (13 %)
TranslatorJapanese 1.6.0 33 methods to implement (13 %) TranslatorJapanese 1.6.0 33 methods to implement (13 %)
Note: Reimplementation using UTF-8 suggested. Note: Reimplementation using UTF-8 suggested.
...@@ -1134,47 +1130,10 @@ TranslatorPortuguese (TranslatorAdapter_1_8_0) 22 methods to implement (8 %) ...@@ -1134,47 +1130,10 @@ TranslatorPortuguese (TranslatorAdapter_1_8_0) 22 methods to implement (8 %)
virtual QCString trInstanceMethods() virtual QCString trInstanceMethods()
TranslatorRomanian (TranslatorAdapter_1_6_0) 34 methods to implement (13 %) TranslatorRomanian (Translator)
------------------ ------------------
Implements 216 of the required methods (86 %). Implements 250 of the required methods (100 %).
Missing methods (should be implemented):
virtual QCString trDetailLevel()
virtual QCString trSearching()
virtual QCString trTemplateParameters()
virtual QCString trNoMatches()
virtual QCString trLoading()
virtual QCString trDateTime(int year, int month, int day, int dayOfWeek, int hour, int minutes, int seconds, bool includeTime)
virtual QCString trServices()
virtual QCString trFileIn(const char * name)
virtual QCString trClassMethods()
virtual QCString trProvidedByCategory()
virtual QCString trSingletonGeneratedFromFiles(bool single)
virtual QCString trGlobalNamespace()
virtual QCString trServiceReference(const char * sName)
virtual QCString trDesignOverview()
virtual QCString trAndMore(const QCString & number)
virtual QCString trConstantGroups()
virtual QCString trDirDepGraph(const char * name)
virtual QCString trDirRelation(const char * name)
virtual QCString trMethodDocumentation()
virtual QCString trEnumReference(const char * name)
virtual QCString trInheritedFrom(const char * members, const char * what)
virtual QCString trCiteReferences()
virtual QCString trAdditionalInheritedMembers()
virtual QCString trDirDependency(const char * name)
virtual QCString trInterfaces()
virtual QCString trCopyright()
virtual QCString trIncludesFileIn(const char * name)
virtual QCString trServiceGeneratedFromFiles(bool single)
virtual QCString trEnumGeneratedFromFiles(bool single)
virtual QCString trConstantGroupReference(const char * namespaceName)
virtual QCString trPanelSynchronisationTooltip(bool enable)
virtual QCString trExtendsClass()
virtual QCString trSingletonReference(const char * sName)
virtual QCString trInstanceMethods()
TranslatorRussian (TranslatorAdapter_1_7_5) 25 methods to implement (10 %) TranslatorRussian (TranslatorAdapter_1_7_5) 25 methods to implement (10 %)
...@@ -1297,23 +1256,6 @@ TranslatorSerbianCyrilic (TranslatorAdapter_1_6_0) 34 methods to implement (1 ...@@ -1297,23 +1256,6 @@ TranslatorSerbianCyrilic (TranslatorAdapter_1_6_0) 34 methods to implement (1
virtual QCString trInstanceMethods() virtual QCString trInstanceMethods()
TranslatorSlovak (TranslatorAdapter_1_8_2) 8 methods to implement (3 %)
----------------
Implements 242 of the required methods (96 %).
Missing methods (should be implemented):
virtual QCString trServices()
virtual QCString trSingletonGeneratedFromFiles(bool single)
virtual QCString trServiceReference(const char * sName)
virtual QCString trConstantGroups()
virtual QCString trInterfaces()
virtual QCString trServiceGeneratedFromFiles(bool single)
virtual QCString trConstantGroupReference(const char * namespaceName)
virtual QCString trSingletonReference(const char * sName)
TranslatorSlovene (TranslatorAdapter_1_4_6) 58 methods to implement (23 %) TranslatorSlovene (TranslatorAdapter_1_4_6) 58 methods to implement (23 %)
----------------- -----------------
......
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
or unions with the same name in your code. It should not crash however, or unions with the same name in your code. It should not crash however,
rather it should ignore all of the classes with the same name except one. rather it should ignore all of the classes with the same name except one.
<li>Some commands do not work inside the arguments of other commands. <li>Some commands do not work inside the arguments of other commands.
Inside a HTML link (i.e. \<a href="..."\>...\<a\>) for instance Inside a HTML link (i.e. \<a&nbsp;href="..."\>...\<a\>) for instance
other commands (including other HTML commands) do not work! other commands (including other HTML commands) do not work!
The sectioning commands are an important exception. The sectioning commands are an important exception.
<li>Redundant braces can confuse doxygen in some cases. <li>Redundant braces can confuse doxygen in some cases.
......
...@@ -28,7 +28,7 @@ Here is the list of tags supported by doxygen: ...@@ -28,7 +28,7 @@ Here is the list of tags supported by doxygen:
<li><tt>\<c\></tt> Identifies inline text that should be rendered as a <li><tt>\<c\></tt> Identifies inline text that should be rendered as a
piece of code. Similar to using <tt>\<tt\></tt>text<tt>\</tt\></tt>. piece of code. Similar to using <tt>\<tt\></tt>text<tt>\</tt\></tt>.
<li><tt>\<code\></tt> Set one or more lines of source code or program output. <li><tt>\<code\></tt> Set one or more lines of source code or program output.
Note that this command behaves like <tt>\\code ... \\endcode</tt> Note that this command behaves like \ref cmdcode "\\code" ... \ref cmdendcode "\\endcode"
for C# code, but it behaves like the HTML equivalent for C# code, but it behaves like the HTML equivalent
<tt>\<code\>...\</code\></tt> for other languages. <tt>\<code\>...\</code\></tt> for other languages.
<li><tt>\<description\></tt> Part of a <tt>\<list\></tt> command, describes an item. <li><tt>\<description\></tt> Part of a <tt>\<list\></tt> command, describes an item.
......
...@@ -40,8 +40,10 @@ ClangParser *ClangParser::s_instance = 0; ...@@ -40,8 +40,10 @@ ClangParser *ClangParser::s_instance = 0;
class ClangParser::Private class ClangParser::Private
{ {
public: public:
enum DetectedLang { Detected_Cpp, Detected_ObjC, Detected_ObjCpp };
Private() : tu(0), tokens(0), numTokens(0), cursors(0), Private() : tu(0), tokens(0), numTokens(0), cursors(0),
ufs(0), sources(0), numFiles(0), fileMapping(257) ufs(0), sources(0), numFiles(0), fileMapping(257),
detectedLang(Detected_Cpp)
{ fileMapping.setAutoDelete(TRUE); } { fileMapping.setAutoDelete(TRUE); }
int getCurrentTokenLine(); int getCurrentTokenLine();
CXIndex index; CXIndex index;
...@@ -56,6 +58,7 @@ class ClangParser::Private ...@@ -56,6 +58,7 @@ class ClangParser::Private
QCString *sources; QCString *sources;
uint numFiles; uint numFiles;
QDict<uint> fileMapping; QDict<uint> fileMapping;
DetectedLang detectedLang;
}; };
static QCString detab(const QCString &s) static QCString detab(const QCString &s)
...@@ -112,28 +115,6 @@ static QCString detab(const QCString &s) ...@@ -112,28 +115,6 @@ static QCString detab(const QCString &s)
return out.get(); return out.get();
} }
static QStrList getClangOptions()
{
static QCString clangOptions = Config_getString("CLANG_OPTIONS");
int p=0,i;
QStrList options;
while ((i=clangOptions.find(' ',p))!=-1)
{
QCString opt = clangOptions.mid(p,i-p).stripWhiteSpace();
if (!opt.isEmpty())
{
options.append(opt);
}
p=i+1;
}
QCString opt = clangOptions.right(clangOptions.length()-p).stripWhiteSpace();
if (!opt.isEmpty())
{
options.append(opt);
}
return options;
}
/** Callback function called for each include in a translation unit */ /** Callback function called for each include in a translation unit */
static void inclusionVisitor(CXFile includedFile, static void inclusionVisitor(CXFile includedFile,
CXSourceLocation* /*inclusionStack*/, CXSourceLocation* /*inclusionStack*/,
...@@ -177,7 +158,7 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit) ...@@ -177,7 +158,7 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit)
{ {
static bool clangAssistedParsing = Config_getBool("CLANG_ASSISTED_PARSING"); static bool clangAssistedParsing = Config_getBool("CLANG_ASSISTED_PARSING");
static QStrList &includePath = Config_getList("INCLUDE_PATH"); static QStrList &includePath = Config_getList("INCLUDE_PATH");
static QStrList clangOptions = getClangOptions(); static QStrList clangOptions = Config_getList("CLANG_OPTIONS");
if (!clangAssistedParsing) return; if (!clangAssistedParsing) return;
//printf("ClangParser::start(%s)\n",fileName); //printf("ClangParser::start(%s)\n",fileName);
p->fileName = fileName; p->fileName = fileName;
...@@ -207,8 +188,43 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit) ...@@ -207,8 +188,43 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit)
} }
// extra options // extra options
argv[argc++]=strdup("-ferror-limit=0"); argv[argc++]=strdup("-ferror-limit=0");
argv[argc++]=strdup("-x"); // force C++ argv[argc++]=strdup("-x");
// Since we can be presented with a .h file that can contain C/C++ or
// Objective C code and we need to configure the parser before knowing this,
// we use the source file to detected the language. Detection will fail if you
// pass a bunch of .h files containing ObjC code, and no sources :-(
SrcLangExt lang = getLanguageFromFileName(fileName);
if (lang==SrcLangExt_ObjC || p->detectedLang!=ClangParser::Private::Detected_Cpp)
{
QCString fn = fileName;
if (p->detectedLang==ClangParser::Private::Detected_Cpp &&
(fn.right(4).lower()==".cpp" || fn.right(4).lower()==".cxx" ||
fn.right(3).lower()==".cc" || fn.right(2).lower()==".c"))
{ // fall back to C/C++ once we see an extension that indicates this
p->detectedLang = ClangParser::Private::Detected_Cpp;
}
else if (fn.right(3).lower()==".mm") // switch to Objective C++
{
p->detectedLang = ClangParser::Private::Detected_ObjCpp;
}
else if (fn.right(2).lower()==".m") // switch to Objective C
{
p->detectedLang = ClangParser::Private::Detected_ObjC;
}
}
switch(p->detectedLang)
{
case ClangParser::Private::Detected_Cpp:
argv[argc++]=strdup("c++"); argv[argc++]=strdup("c++");
break;
case ClangParser::Private::Detected_ObjC:
argv[argc++]=strdup("objective-c");
break;
case ClangParser::Private::Detected_ObjCpp:
argv[argc++]=strdup("objective-c++");
break;
}
// provide the input and and its dependencies as unsaved files so we can // provide the input and and its dependencies as unsaved files so we can
// pass the filtered versions // pass the filtered versions
......
...@@ -871,7 +871,7 @@ DOCNL "\n"|"\\_linebr" ...@@ -871,7 +871,7 @@ DOCNL "\n"|"\\_linebr"
LC "\\"{B}*"\n" LC "\\"{B}*"\n"
NW [^a-z_A-Z0-9] NW [^a-z_A-Z0-9]
FILESCHAR [a-z_A-Z0-9\x80-\xFF\\:\\\/\-\+@&#] FILESCHAR [a-z_A-Z0-9\x80-\xFF\\:\\\/\-\+@&#]
FILEECHAR [a-z_A-Z0-9\x80-\xFF\-\+] FILEECHAR [a-z_A-Z0-9\x80-\xFF\-\+@&#]
FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]*"\"") FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]*"\"")
ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]* ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]*
LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]* LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]*
...@@ -2528,6 +2528,11 @@ static bool handleEndIf(const QCString &) ...@@ -2528,6 +2528,11 @@ static bool handleEndIf(const QCString &)
delete guards.pop(); delete guards.pop();
} }
enabledSectionFound=FALSE; enabledSectionFound=FALSE;
if (g_spaceBeforeCmd)
{
addOutput(' ');
g_spaceBeforeCmd=FALSE;
}
BEGIN( GuardParamEnd ); BEGIN( GuardParamEnd );
return FALSE; return FALSE;
} }
......
...@@ -1113,7 +1113,7 @@ void Config::check() ...@@ -1113,7 +1113,7 @@ void Config::check()
if (paperType!="a4" && paperType!="a4wide" && paperType!="letter" && if (paperType!="a4" && paperType!="a4wide" && paperType!="letter" &&
paperType!="legal" && paperType!="executive") paperType!="legal" && paperType!="executive")
{ {
config_err("Error: Unknown page type specified"); config_err("Error: Unknown page type specified\n");
} }
QCString &outputLanguage=Config_getEnum("OUTPUT_LANGUAGE"); QCString &outputLanguage=Config_getEnum("OUTPUT_LANGUAGE");
...@@ -1261,7 +1261,8 @@ void Config::check() ...@@ -1261,7 +1261,8 @@ void Config::check()
if (dotFontName=="FreeSans" || dotFontName=="FreeSans.ttf") if (dotFontName=="FreeSans" || dotFontName=="FreeSans.ttf")
{ {
config_err("Warning: doxygen no longer ships with the FreeSans font.\n" config_err("Warning: doxygen no longer ships with the FreeSans font.\n"
"You may want to clear DOT_FONTPATH or risk wrong fonts being used for dot generated graphs.\n"); "You may want to clear or change DOT_FONTPATH.\n"
"Otherwise you run the risk that the wrong font is being used for dot generated graphs.\n");
} }
......
...@@ -344,7 +344,7 @@ symbols. ...@@ -344,7 +344,7 @@ symbols.
If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
documentation are documented, even if no documentation was available. documentation are documented, even if no documentation was available.
Private class members and static file members will be hidden unless Private class members and static file members will be hidden unless
the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES the EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES
' defval='0'/> ' defval='0'/>
<option type='bool' id='EXTRACT_PRIVATE' docs=' <option type='bool' id='EXTRACT_PRIVATE' docs='
If the EXTRACT_PRIVATE tag is set to YES all private members of a class If the EXTRACT_PRIVATE tag is set to YES all private members of a class
...@@ -800,14 +800,14 @@ which an include is specified. Set to NO to disable this. ...@@ -800,14 +800,14 @@ which an include is specified. Set to NO to disable this.
' defval='1'/> ' defval='1'/>
<option type='bool' id='CLANG_ASSISTED_PARSING' setting='USE_LIBCLANG' docs=' <option type='bool' id='CLANG_ASSISTED_PARSING' setting='USE_LIBCLANG' docs='
If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser
for better parsing at the cost of reduced performance. This can be particularly for more acurate parsing at the cost of reduced performance. This can be
helpful with template rich C++ code for which doxygen&apos;s built-in particularly helpful with template rich C++ code for which doxygen&apos;s built-in
parser lacks the necessairy type information. parser lacks the necessairy type information.
' defval='0'/> ' defval='0'/>
<option type='string' id='CLANG_OPTIONS' setting='USE_LIBCLANG' docs=' <option type='list' id='CLANG_OPTIONS' setting='USE_LIBCLANG' docs='
If clang assisted parsing is enabled you can provide the compiler with command If clang assisted parsing is enabled you can provide the compiler with command
line options that you would normally use when invoking the compiler. Note that line options that you would normally use when invoking the compiler. Note that
the include paths will be set by doxygen based on the files and directory the include paths will already be set by doxygen for the files and directories
specified at INPUT and INCLUDE_PATH. specified at INPUT and INCLUDE_PATH.
' defval='' depends='CLANG_ASSISTED_PARSING'/> ' defval='' depends='CLANG_ASSISTED_PARSING'/>
</group> </group>
...@@ -821,13 +821,13 @@ contains a lot of classes, structs, unions or interfaces. ...@@ -821,13 +821,13 @@ contains a lot of classes, structs, unions or interfaces.
If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
in which this list will be split (can be a number in the range [1..20]) in which this list will be split (can be a number in the range [1..20])
' minval='1' maxval='20' defval='5'/> ' minval='1' maxval='20' defval='5' depends='ALPHABETICAL_INDEX'/>
<option type='list' id='IGNORE_PREFIX' format='string' docs=' <option type='list' id='IGNORE_PREFIX' format='string' docs='
In case all classes in a project start with a common prefix, all In case all classes in a project start with a common prefix, all
classes will be put under the same header in the alphabetical index. classes will be put under the same header in the alphabetical index.
The IGNORE_PREFIX tag can be used to specify one or more prefixes that The IGNORE_PREFIX tag can be used to specify one or more prefixes that
should be ignored while generating the index headers. should be ignored while generating the index headers.
'> ' depends='ALPHABETICAL_INDEX'>
</option> </option>
</group> </group>
<group name='HTML' docs='configuration options related to the HTML output'> <group name='HTML' docs='configuration options related to the HTML output'>
...@@ -1112,13 +1112,13 @@ rendering instead of using prerendered bitmaps. Use this if you do not ...@@ -1112,13 +1112,13 @@ rendering instead of using prerendered bitmaps. Use this if you do not
have LaTeX installed or if you want to formulas look prettier in the HTML have LaTeX installed or if you want to formulas look prettier in the HTML
output. When enabled you may also need to install MathJax separately and output. When enabled you may also need to install MathJax separately and
configure the path to it using the MATHJAX_RELPATH option. configure the path to it using the MATHJAX_RELPATH option.
' defval='0'/> ' defval='0' depends='GENERATE_HTML'/>
<option type='enum' id='MATHJAX_FORMAT' defval='HTML-CSS' docs=' <option type='enum' id='MATHJAX_FORMAT' defval='HTML-CSS' docs='
When MathJax is enabled you can set the default output format to be used for When MathJax is enabled you can set the default output format to be used for
the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and
SVG. The default value is HTML-CSS, which is slower, but has the best SVG. The default value is HTML-CSS, which is slower, but has the best
compatibility. compatibility.
'> ' depends='USE_MATHJAX'>
<value name="HTML-CSS"/> <value name="HTML-CSS"/>
<value name="NativeMML"/> <value name="NativeMML"/>
<value name="SVG"/> <value name="SVG"/>
...@@ -1132,7 +1132,7 @@ MATHJAX_RELPATH should be ../mathjax. The default value points to ...@@ -1132,7 +1132,7 @@ MATHJAX_RELPATH should be ../mathjax. The default value points to
the MathJax Content Delivery Network so you can quickly see the result without the MathJax Content Delivery Network so you can quickly see the result without
installing MathJax. However, it is strongly recommended to install a local installing MathJax. However, it is strongly recommended to install a local
copy of MathJax from http://www.mathjax.org before deployment. copy of MathJax from http://www.mathjax.org before deployment.
' defval='http://cdn.mathjax.org/mathjax/latest'/> ' defval='http://cdn.mathjax.org/mathjax/latest' depends='USE_MATHJAX'/>
<option type='list' id='MATHJAX_EXTENSIONS' format='string' docs=' <option type='list' id='MATHJAX_EXTENSIONS' format='string' docs='
The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
names that should be enabled during MathJax rendering. names that should be enabled during MathJax rendering.
...@@ -1187,7 +1187,7 @@ When SERVER_BASED_SEARCH AND EXTERNAL_SEARCH are both enabled the ...@@ -1187,7 +1187,7 @@ When SERVER_BASED_SEARCH AND EXTERNAL_SEARCH are both enabled the
EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
projects and redirect the results back to the right project. projects and redirect the results back to the right project.
' defval='' dependes='SEARCHENGINE'/> ' defval='' depends='SEARCHENGINE'/>
<option type='list' id='EXTRA_SEARCH_MAPPINGS' docs=' <option type='list' id='EXTRA_SEARCH_MAPPINGS' docs='
The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
projects other than the one defined by this configuration file, but that are projects other than the one defined by this configuration file, but that are
...@@ -1227,10 +1227,9 @@ save some trees in general. ...@@ -1227,10 +1227,9 @@ save some trees in general.
<option type='enum' id='PAPER_TYPE' defval='a4' docs=' <option type='enum' id='PAPER_TYPE' defval='a4' docs='
The PAPER_TYPE tag can be used to set the paper type that is used The PAPER_TYPE tag can be used to set the paper type that is used
by the printer. Possible values are: a4, letter, legal and by the printer. Possible values are: a4, letter, legal and
executive. If left blank a4wide will be used. executive. If left blank a4 will be used.
' depends='GENERATE_LATEX'> ' depends='GENERATE_LATEX'>
<value name='a4'/> <value name='a4'/>
<value name='a4wide'/>
<value name='letter'/> <value name='letter'/>
<value name='legal'/> <value name='legal'/>
<value name='executive'/> <value name='executive'/>
...@@ -1460,7 +1459,7 @@ pointed to by INCLUDE_PATH will be searched when a #include is found. ...@@ -1460,7 +1459,7 @@ pointed to by INCLUDE_PATH will be searched when a #include is found.
The INCLUDE_PATH tag can be used to specify one or more directories that The INCLUDE_PATH tag can be used to specify one or more directories that
contain include files that are not input files but should be processed by contain include files that are not input files but should be processed by
the preprocessor. the preprocessor.
' depends='ENABLE_PREPROCESSING'> ' depends='SEARCH_INCLUDES'>
</option> </option>
<option type='list' id='INCLUDE_FILE_PATTERNS' format='string' docs=' <option type='list' id='INCLUDE_FILE_PATTERNS' format='string' docs='
You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
...@@ -1565,7 +1564,7 @@ allowed to run in parallel. When set to 0 (the default) doxygen will ...@@ -1565,7 +1564,7 @@ allowed to run in parallel. When set to 0 (the default) doxygen will
base this on the number of processors available in the system. You can set it base this on the number of processors available in the system. You can set it
explicitly to a value larger than 0 to get control over the balance explicitly to a value larger than 0 to get control over the balance
between CPU load and processing speed. between CPU load and processing speed.
' defval='0' minval='0' maxval='32' dependes='HAVE_DOT'/> ' defval='0' minval='0' maxval='32' depends='HAVE_DOT'/>
<option type='string' id='DOT_FONTNAME' format='string' docs=' <option type='string' id='DOT_FONTNAME' format='string' docs='
By default doxygen will use the Helvetica font for all dot files that By default doxygen will use the Helvetica font for all dot files that
doxygen generates. When you want a differently looking font you can specify doxygen generates. When you want a differently looking font you can specify
......
...@@ -484,7 +484,7 @@ void addConfigOptions(Config *cfg) ...@@ -484,7 +484,7 @@ void addConfigOptions(Config *cfg)
"If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in\n" "If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in\n"
"documentation are documented, even if no documentation was available.\n" "documentation are documented, even if no documentation was available.\n"
"Private class members and static file members will be hidden unless\n" "Private class members and static file members will be hidden unless\n"
"the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES", "the EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES",
FALSE FALSE
); );
//---- //----
...@@ -1138,8 +1138,8 @@ void addConfigOptions(Config *cfg) ...@@ -1138,8 +1138,8 @@ void addConfigOptions(Config *cfg)
cb = cfg->addBool( cb = cfg->addBool(
"CLANG_ASSISTED_PARSING", "CLANG_ASSISTED_PARSING",
"If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser\n" "If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser\n"
"for better parsing at the cost of reduced performance. This can be particularly\n" "for more acurate parsing at the cost of reduced performance. This can be\n"
"helpful with template rich C++ code for which doxygen's built-in\n" "particularly helpful with template rich C++ code for which doxygen's built-in\n"
"parser lacks the necessairy type information.", "parser lacks the necessairy type information.",
FALSE FALSE
); );
...@@ -1148,14 +1148,14 @@ void addConfigOptions(Config *cfg) ...@@ -1148,14 +1148,14 @@ void addConfigOptions(Config *cfg)
#endif #endif
#if USE_LIBCLANG #if USE_LIBCLANG
//---- //----
cs = cfg->addString( cl = cfg->addList(
"CLANG_OPTIONS", "CLANG_OPTIONS",
"If clang assisted parsing is enabled you can provide the compiler with command\n" "If clang assisted parsing is enabled you can provide the compiler with command\n"
"line options that you would normally use when invoking the compiler. Note that\n" "line options that you would normally use when invoking the compiler. Note that\n"
"the include paths will be set by doxygen based on the files and directory\n" "the include paths will already be set by doxygen for the files and directories\n"
"specified at INPUT and INCLUDE_PATH." "specified at INPUT and INCLUDE_PATH."
); );
cs->addDependency("CLANG_ASSISTED_PARSING"); cl->addDependency("CLANG_ASSISTED_PARSING");
#else #else
cfg->addDisabled("CLANG_OPTIONS"); cfg->addDisabled("CLANG_OPTIONS");
#endif #endif
...@@ -1179,6 +1179,7 @@ void addConfigOptions(Config *cfg) ...@@ -1179,6 +1179,7 @@ void addConfigOptions(Config *cfg)
"in which this list will be split (can be a number in the range [1..20])", "in which this list will be split (can be a number in the range [1..20])",
1,20,5 1,20,5
); );
ci->addDependency("ALPHABETICAL_INDEX");
//---- //----
cl = cfg->addList( cl = cfg->addList(
"IGNORE_PREFIX", "IGNORE_PREFIX",
...@@ -1187,6 +1188,7 @@ void addConfigOptions(Config *cfg) ...@@ -1187,6 +1188,7 @@ void addConfigOptions(Config *cfg)
"The IGNORE_PREFIX tag can be used to specify one or more prefixes that\n" "The IGNORE_PREFIX tag can be used to specify one or more prefixes that\n"
"should be ignored while generating the index headers." "should be ignored while generating the index headers."
); );
cl->addDependency("ALPHABETICAL_INDEX");
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
cfg->addInfo("HTML","configuration options related to the HTML output"); cfg->addInfo("HTML","configuration options related to the HTML output");
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
...@@ -1644,6 +1646,7 @@ void addConfigOptions(Config *cfg) ...@@ -1644,6 +1646,7 @@ void addConfigOptions(Config *cfg)
"configure the path to it using the MATHJAX_RELPATH option.", "configure the path to it using the MATHJAX_RELPATH option.",
FALSE FALSE
); );
cb->addDependency("GENERATE_HTML");
//---- //----
ce = cfg->addEnum( ce = cfg->addEnum(
"MATHJAX_FORMAT", "MATHJAX_FORMAT",
...@@ -1656,6 +1659,7 @@ void addConfigOptions(Config *cfg) ...@@ -1656,6 +1659,7 @@ void addConfigOptions(Config *cfg)
ce->addValue("HTML-CSS"); ce->addValue("HTML-CSS");
ce->addValue("NativeMML"); ce->addValue("NativeMML");
ce->addValue("SVG"); ce->addValue("SVG");
ce->addDependency("USE_MATHJAX");
//---- //----
cs = cfg->addString( cs = cfg->addString(
"MATHJAX_RELPATH", "MATHJAX_RELPATH",
...@@ -1670,6 +1674,7 @@ void addConfigOptions(Config *cfg) ...@@ -1670,6 +1674,7 @@ void addConfigOptions(Config *cfg)
"copy of MathJax from http://www.mathjax.org before deployment." "copy of MathJax from http://www.mathjax.org before deployment."
); );
cs->setDefaultValue("http://cdn.mathjax.org/mathjax/latest"); cs->setDefaultValue("http://cdn.mathjax.org/mathjax/latest");
cs->addDependency("USE_MATHJAX");
//---- //----
cl = cfg->addList( cl = cfg->addList(
"MATHJAX_EXTENSIONS", "MATHJAX_EXTENSIONS",
...@@ -1751,6 +1756,7 @@ void addConfigOptions(Config *cfg) ...@@ -1751,6 +1756,7 @@ void addConfigOptions(Config *cfg)
"useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple\n" "useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple\n"
"projects and redirect the results back to the right project." "projects and redirect the results back to the right project."
); );
cs->addDependency("SEARCHENGINE");
//---- //----
cl = cfg->addList( cl = cfg->addList(
"EXTRA_SEARCH_MAPPINGS", "EXTRA_SEARCH_MAPPINGS",
...@@ -1819,11 +1825,10 @@ void addConfigOptions(Config *cfg) ...@@ -1819,11 +1825,10 @@ void addConfigOptions(Config *cfg)
"PAPER_TYPE", "PAPER_TYPE",
"The PAPER_TYPE tag can be used to set the paper type that is used\n" "The PAPER_TYPE tag can be used to set the paper type that is used\n"
"by the printer. Possible values are: a4, letter, legal and\n" "by the printer. Possible values are: a4, letter, legal and\n"
"executive. If left blank a4wide will be used.", "executive. If left blank a4 will be used.",
"a4" "a4"
); );
ce->addValue("a4"); ce->addValue("a4");
ce->addValue("a4wide");
ce->addValue("letter"); ce->addValue("letter");
ce->addValue("legal"); ce->addValue("legal");
ce->addValue("executive"); ce->addValue("executive");
...@@ -2196,7 +2201,7 @@ void addConfigOptions(Config *cfg) ...@@ -2196,7 +2201,7 @@ void addConfigOptions(Config *cfg)
"contain include files that are not input files but should be processed by\n" "contain include files that are not input files but should be processed by\n"
"the preprocessor." "the preprocessor."
); );
cl->addDependency("ENABLE_PREPROCESSING"); cl->addDependency("SEARCH_INCLUDES");
cl->setWidgetType(ConfigList::Dir); cl->setWidgetType(ConfigList::Dir);
//---- //----
cl = cfg->addList( cl = cfg->addList(
...@@ -2350,6 +2355,7 @@ void addConfigOptions(Config *cfg) ...@@ -2350,6 +2355,7 @@ void addConfigOptions(Config *cfg)
"between CPU load and processing speed.", "between CPU load and processing speed.",
0,32,0 0,32,0
); );
ci->addDependency("HAVE_DOT");
//---- //----
cs = cfg->addString( cs = cfg->addString(
"DOT_FONTNAME", "DOT_FONTNAME",
......
...@@ -4403,10 +4403,6 @@ int DocAutoListItem::parse() ...@@ -4403,10 +4403,6 @@ int DocAutoListItem::parse()
int retval = RetVal_OK; int retval = RetVal_OK;
g_nodeStack.push(this); g_nodeStack.push(this);
//retval=m_paragraph->parse();
//m_paragraph->markFirst();
//m_paragraph->markLast();
// first parse any number of paragraphs // first parse any number of paragraphs
bool isFirst=TRUE; bool isFirst=TRUE;
DocPara *lastPar=0; DocPara *lastPar=0;
......
...@@ -338,7 +338,7 @@ ATTRIB {ATTRNAME}{WS}*("="{WS}*(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'">< ...@@ -338,7 +338,7 @@ ATTRIB {ATTRNAME}{WS}*("="{WS}*(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'"><
URLCHAR [a-z_A-Z0-9\!\~\,\:\;\'\$\?\@\&\%\#\.\-\+\/\=] URLCHAR [a-z_A-Z0-9\!\~\,\:\;\'\$\?\@\&\%\#\.\-\+\/\=]
URLMASK ({URLCHAR}+([({]{URLCHAR}*[)}])?)+ URLMASK ({URLCHAR}+([({]{URLCHAR}*[)}])?)+
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+@&#] FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+@&#]
FILEECHAR [a-z_A-Z0-9\-\+] FILEECHAR [a-z_A-Z0-9\-\+@&#]
HFILEMASK ("."{FILESCHAR}*{FILEECHAR}+)* HFILEMASK ("."{FILESCHAR}*{FILEECHAR}+)*
FILEMASK ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|{HFILEMASK} FILEMASK ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|{HFILEMASK}
LINKMASK [^ \t\n\r\\@<&${}]+("("[^\n)]*")")?({BLANK}*("const"|"volatile"){BLANK}+)? LINKMASK [^ \t\n\r\\@<&${}]+("("[^\n)]*")")?({BLANK}*("const"|"volatile"){BLANK}+)?
...@@ -690,21 +690,25 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3} ...@@ -690,21 +690,25 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}
g_token->name = yytext; g_token->name = yytext;
return TK_COMMAND; return TK_COMMAND;
} }
<St_Para>({BLANK}*\n)+{BLANK}*\n{BLANK}* { <St_Para>({BLANK}*\n)+{BLANK}*\n/{LISTITEM} { /* skip trailing paragraph followed by new list item */
// g_insidePre was always FALSE, so the next section if (g_insidePre)
// was never executed, now g_insidePre is set properly {
// again, so the section is commented out to keep the REJECT;
// old behavior. }
//if (g_insidePre) }
//{ <St_Para>({BLANK}*\n)+{BLANK}*\n/{MLISTITEM} { /* skip trailing paragraph followed by new list item */
// /* Inside a <pre>..</pre> blank lines are treated if (!Doxygen::markdownSupport || g_insidePre)
// * as whitespace. {
// */ REJECT;
// g_token->chars=yytext; }
// return TK_WHITESPACE; }
//} <St_Para>({BLANK}*\n)+{BLANK}*\n/{OLISTITEM} { /* skip trailing paragraph followed by new list item */
//else // found end of a paragraph if (!Doxygen::markdownSupport || g_insidePre)
{ {
REJECT;
}
}
<St_Para>({BLANK}*\n)+{BLANK}*\n{BLANK}* {
g_token->indent=computeIndent(yytext,(int)yyleng); g_token->indent=computeIndent(yytext,(int)yyleng);
int i; int i;
// put back the indentation (needed for list items) // put back the indentation (needed for list items)
...@@ -718,7 +722,6 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3} ...@@ -718,7 +722,6 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}
// start of a new paragraph // start of a new paragraph
return TK_NEWPARA; return TK_NEWPARA;
} }
}
<St_CodeOpt>{BLANK}*"{"(".")?{LABELID}"}" { <St_CodeOpt>{BLANK}*"{"(".")?{LABELID}"}" {
g_token->name = yytext; g_token->name = yytext;
int i=g_token->name.find('{'); int i=g_token->name.find('{');
......
...@@ -11249,8 +11249,9 @@ void generateOutput() ...@@ -11249,8 +11249,9 @@ void generateOutput()
if (Config_getBool("GENERATE_LEGEND")) if (Config_getBool("GENERATE_LEGEND"))
{ {
msg("Generating graph info page...\n"); g_s.begin("Generating graph info page...\n");
writeGraphInfo(*g_outputList); writeGraphInfo(*g_outputList);
g_s.end();
} }
g_s.begin("Generating directory documentation...\n"); g_s.begin("Generating directory documentation...\n");
......
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{doxygen}
% Packages used by this style file
\RequirePackage{alltt}
\RequirePackage{array}
\RequirePackage{calc}
\RequirePackage{float}
\RequirePackage{ifthen}
\RequirePackage{verbatim}
\RequirePackage[table]{xcolor}
\RequirePackage{xtab}
%---------- Internal commands used in this style file ----------------
\newcommand{\ensurespace}[1]{%
\begingroup%
\setlength{\dimen@}{#1}%
\vskip\z@\@plus\dimen@%
\penalty -100\vskip\z@\@plus -\dimen@%
\vskip\dimen@%
\penalty 9999%
\vskip -\dimen@%
\vskip\z@skip% hide the previous |\vskip| from |\addvspace|
\endgroup%
}
\newcommand{\DoxyLabelFont}{}
\newcommand{\entrylabel}[1]{%
{%
\parbox[b]{\labelwidth-4pt}{%
\makebox[0pt][l]{\DoxyLabelFont#1}%
\vspace{1.5\baselineskip}%
}%
}%
}
\newenvironment{DoxyDesc}[1]{%
\ensurespace{4\baselineskip}%
\begin{list}{}{%
\settowidth{\labelwidth}{20pt}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{0pt}%
\setlength{\leftmargin}{\labelwidth+\labelsep}%
\renewcommand{\makelabel}{\entrylabel}%
}%
\item[#1]%
}{%
\end{list}%
}
\newsavebox{\xrefbox}
\newlength{\xreflength}
\newcommand{\xreflabel}[1]{%
\sbox{\xrefbox}{#1}%
\setlength{\xreflength}{\wd\xrefbox}%
\ifthenelse{\xreflength>\labelwidth}{%
\begin{minipage}{\textwidth}%
\setlength{\parindent}{0pt}%
\hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
\end{minipage}%
}{%
\parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
}%
}
%---------- Commands used by doxygen LaTeX output generator ----------
% Used by <pre> ... </pre>
\newenvironment{DoxyPre}{%
\small%
\begin{alltt}%
}{%
\end{alltt}%
\normalsize%
}
% Used by @code ... @endcode
\newenvironment{DoxyCode}{%
\par%
\scriptsize%
\begin{alltt}%
}{%
\end{alltt}%
\normalsize%
}
% Used by @example, @include, @includelineno and @dontinclude
\newenvironment{DoxyCodeInclude}{%
\DoxyCode%
}{%
\endDoxyCode%
}
% Used by @verbatim ... @endverbatim
\newenvironment{DoxyVerb}{%
\footnotesize%
\verbatim%
}{%
\endverbatim%
\normalsize%
}
% Used by @verbinclude
\newenvironment{DoxyVerbInclude}{%
\DoxyVerb%
}{%
\endDoxyVerb%
}
% Used by numbered lists (using '-#' or <ol> ... </ol>)
\newenvironment{DoxyEnumerate}{%
\enumerate%
}{%
\endenumerate%
}
% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
\newenvironment{DoxyItemize}{%
\itemize%
}{%
\enditemize%
}
% Used by description lists (using <dl> ... </dl>)
\newenvironment{DoxyDescription}{%
\description%
}{%
\enddescription%
}
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
% (only if caption is specified)
\newenvironment{DoxyImage}{%
\begin{figure}[H]%
\begin{center}%
}{%
\end{center}%
\end{figure}%
}
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
% (only if no caption is specified)
\newenvironment{DoxyImageNoCaption}{%
}{%
}
% Used by @attention
\newenvironment{DoxyAttention}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @author and @authors
\newenvironment{DoxyAuthor}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @date
\newenvironment{DoxyDate}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @invariant
\newenvironment{DoxyInvariant}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @note
\newenvironment{DoxyNote}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @post
\newenvironment{DoxyPostcond}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @pre
\newenvironment{DoxyPrecond}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @copyright
\newenvironment{DoxyCopyright}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @remark
\newenvironment{DoxyRemark}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @return and @returns
\newenvironment{DoxyReturn}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @since
\newenvironment{DoxySince}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @see
\newenvironment{DoxySeeAlso}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @version
\newenvironment{DoxyVersion}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @warning
\newenvironment{DoxyWarning}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @internal
\newenvironment{DoxyInternal}[1]{%
\paragraph*{#1}%
}{%
}
% Used by @par and @paragraph
\newenvironment{DoxyParagraph}[1]{%
\begin{list}{}{%
\settowidth{\labelwidth}{40pt}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{-4pt}%
\renewcommand{\makelabel}{\entrylabel}%
}%
\item[#1]%
}{%
\end{list}%
}
% Used by parameter lists
\newenvironment{DoxyParams}[2][]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablefirsthead{}%
\tablehead{}%
\ifthenelse{\equal{#1}{}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.805\textwidth}|}}%
{\ifthenelse{\equal{#1}{1}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.678\textwidth}|}}%
{\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}%
\begin{xtabular}{|>{\centering}p{0.10\textwidth}|%
>{\centering\hspace{0pt}}p{0.15\textwidth}|%
>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.501\textwidth}|}}%
}\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for fields of simple structs
\newenvironment{DoxyFields}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|%
p{0.15\textwidth}|%
p{0.63\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for parameters within a detailed function description
\newenvironment{DoxyParamCaption}{%
\renewcommand{\item}[2][]{##1 {\em ##2}}%
}{%
}
% Used by return value lists
\newenvironment{DoxyRetVals}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used by exception lists
\newenvironment{DoxyExceptions}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used by template parameter lists
\newenvironment{DoxyTemplParams}[1]{%
\par%
\tabletail{\hline}%
\tablelasttail{\hline}%
\tablehead{}%
\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}%
\begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|%
p{0.705\textwidth}|}%
\hline%
}{%
\end{xtabular}%
\tablefirsthead{}%
\vspace{6pt}%
}
% Used for member lists
\newenvironment{DoxyCompactItemize}{%
\begin{itemize}%
\setlength{\itemsep}{-3pt}%
\setlength{\parsep}{0pt}%
\setlength{\topsep}{0pt}%
\setlength{\partopsep}{0pt}%
}{%
\end{itemize}%
}
% Used for member descriptions
\newenvironment{DoxyCompactList}{%
\begin{list}{}{%
\setlength{\leftmargin}{0.5cm}%
\setlength{\itemsep}{0pt}%
\setlength{\parsep}{0pt}%
\setlength{\topsep}{0pt}%
\renewcommand{\makelabel}{\hfill}%
}%
}{%
\end{list}%
}
% Used for reference lists (@bug, @deprecated, @todo, etc.)
\newenvironment{DoxyRefList}{%
\begin{list}{}{%
\setlength{\labelwidth}{10pt}%
\setlength{\leftmargin}{\labelwidth}%
\addtolength{\leftmargin}{\labelsep}%
\renewcommand{\makelabel}{\xreflabel}%
}%
}{%
\end{list}%
}
% Used by @bug, @deprecated, @todo, etc.
\newenvironment{DoxyRefDesc}[1]{%
\begin{list}{}{%
\renewcommand\makelabel[1]{\textbf{##1}}%
\settowidth\labelwidth{\makelabel{#1}}%
\setlength\leftmargin{\labelwidth+\labelsep}%
}%
}{%
\end{list}%
}
% Used by parameter lists and simple sections
\newenvironment{Desc}
{\begin{list}{}{%
\settowidth{\labelwidth}{40pt}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\parsep}{0pt}%
\setlength{\itemsep}{-4pt}%
\renewcommand{\makelabel}{\entrylabel}%
}
}{%
\end{list}%
}
% Used by tables
\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
\newlength{\tmplength}%
\newenvironment{TabularC}[1]%
{%
\setlength{\tmplength}%
{\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)}%
\par\begin{xtabular*}{\linewidth}%
{*{#1}{|>{\PBS\raggedright\hspace{0pt}}p{\the\tmplength}}|}%
}%
{\end{xtabular*}\par}%
% Used for member group headers
\newenvironment{Indent}{%
\begin{list}{}{%
\setlength{\leftmargin}{0.5cm}%
}%
\item[]\ignorespaces%
}{%
\unskip%
\end{list}%
}
% Used when hyperlinks are turned off
\newcommand{\doxyref}[3]{%
\textbf{#1} (\textnormal{#2}\,\pageref{#3})%
}
% Used for syntax highlighting
\definecolor{comment}{rgb}{0.5,0.0,0.0}
\definecolor{keyword}{rgb}{0.0,0.5,0.0}
\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
"\\NeedsTeXFormat{LaTeX2e}\n"
"\\ProvidesPackage{doxygen}\n"
"\n"
"% Packages used by this style file\n"
"\\RequirePackage{alltt}\n"
"\\RequirePackage{array}\n"
"\\RequirePackage{calc}\n"
"\\RequirePackage{float}\n"
"\\RequirePackage{ifthen}\n"
"\\RequirePackage{verbatim}\n"
"\\RequirePackage[table]{xcolor}\n"
"\\RequirePackage{xtab}\n"
"\n"
"%---------- Internal commands used in this style file ----------------\n"
"\n"
"\\newcommand{\\ensurespace}[1]{%\n"
" \\begingroup%\n"
" \\setlength{\\dimen@}{#1}%\n"
" \\vskip\\z@\\@plus\\dimen@%\n"
" \\penalty -100\\vskip\\z@\\@plus -\\dimen@%\n"
" \\vskip\\dimen@%\n"
" \\penalty 9999%\n"
" \\vskip -\\dimen@%\n"
" \\vskip\\z@skip% hide the previous |\\vskip| from |\\addvspace|\n"
" \\endgroup%\n"
"}\n"
"\n"
"\\newcommand{\\DoxyLabelFont}{}\n"
"\\newcommand{\\entrylabel}[1]{%\n"
" {%\n"
" \\parbox[b]{\\labelwidth-4pt}{%\n"
" \\makebox[0pt][l]{\\DoxyLabelFont#1}%\n"
" \\vspace{1.5\\baselineskip}%\n"
" }%\n"
" }%\n"
"}\n"
"\n"
"\\newenvironment{DoxyDesc}[1]{%\n"
" \\ensurespace{4\\baselineskip}%\n"
" \\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{20pt}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{0pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth+\\labelsep}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }%\n"
" \\item[#1]%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"\\newsavebox{\\xrefbox}\n"
"\\newlength{\\xreflength}\n"
"\\newcommand{\\xreflabel}[1]{%\n"
" \\sbox{\\xrefbox}{#1}%\n"
" \\setlength{\\xreflength}{\\wd\\xrefbox}%\n"
" \\ifthenelse{\\xreflength>\\labelwidth}{%\n"
" \\begin{minipage}{\\textwidth}%\n"
" \\setlength{\\parindent}{0pt}%\n"
" \\hangindent=15pt\\bfseries #1\\vspace{1.2\\itemsep}%\n"
" \\end{minipage}%\n"
" }{%\n"
" \\parbox[b]{\\labelwidth}{\\makebox[0pt][l]{\\textbf{#1}}}%\n"
" }%\n"
"}\n"
"\n"
"%---------- Commands used by doxygen LaTeX output generator ----------\n"
"\n"
"% Used by <pre> ... </pre>\n"
"\\newenvironment{DoxyPre}{%\n"
" \\small%\n"
" \\begin{alltt}%\n"
"}{%\n"
" \\end{alltt}%\n"
" \\normalsize%\n"
"}\n"
"\n"
"% Used by @code ... @endcode\n"
"\\newenvironment{DoxyCode}{%\n"
" \\par%\n"
" \\scriptsize%\n"
" \\begin{alltt}%\n"
"}{%\n"
" \\end{alltt}%\n"
" \\normalsize%\n"
"}\n"
"\n"
"% Used by @example, @include, @includelineno and @dontinclude\n"
"\\newenvironment{DoxyCodeInclude}{%\n"
" \\DoxyCode%\n"
"}{%\n"
" \\endDoxyCode%\n"
"}\n"
"\n"
"% Used by @verbatim ... @endverbatim\n"
"\\newenvironment{DoxyVerb}{%\n"
" \\footnotesize%\n"
" \\verbatim%\n"
"}{%\n"
" \\endverbatim%\n"
" \\normalsize%\n"
"}\n"
"\n"
"% Used by @verbinclude\n"
"\\newenvironment{DoxyVerbInclude}{%\n"
" \\DoxyVerb%\n"
"}{%\n"
" \\endDoxyVerb%\n"
"}\n"
"\n"
"% Used by numbered lists (using '-#' or <ol> ... </ol>)\n"
"\\newenvironment{DoxyEnumerate}{%\n"
" \\enumerate%\n"
"}{%\n"
" \\endenumerate%\n"
"}\n"
"\n"
"% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)\n"
"\\newenvironment{DoxyItemize}{%\n"
" \\itemize%\n"
"}{%\n"
" \\enditemize%\n"
"}\n"
"\n"
"% Used by description lists (using <dl> ... </dl>)\n"
"\\newenvironment{DoxyDescription}{%\n"
" \\description%\n"
"}{%\n"
" \\enddescription%\n"
"}\n"
"\n"
"% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n"
"% (only if caption is specified)\n"
"\\newenvironment{DoxyImage}{%\n"
" \\begin{figure}[H]%\n"
" \\begin{center}%\n"
"}{%\n"
" \\end{center}%\n"
" \\end{figure}%\n"
"}\n"
"\n"
"% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n"
"% (only if no caption is specified)\n"
"\\newenvironment{DoxyImageNoCaption}{%\n"
"}{%\n"
"}\n"
"\n"
"% Used by @attention\n"
"\\newenvironment{DoxyAttention}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @author and @authors\n"
"\\newenvironment{DoxyAuthor}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @date\n"
"\\newenvironment{DoxyDate}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @invariant\n"
"\\newenvironment{DoxyInvariant}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @note\n"
"\\newenvironment{DoxyNote}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @post\n"
"\\newenvironment{DoxyPostcond}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @pre\n"
"\\newenvironment{DoxyPrecond}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @copyright\n"
"\\newenvironment{DoxyCopyright}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @remark\n"
"\\newenvironment{DoxyRemark}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @return and @returns\n"
"\\newenvironment{DoxyReturn}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @since\n"
"\\newenvironment{DoxySince}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @see\n"
"\\newenvironment{DoxySeeAlso}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @version\n"
"\\newenvironment{DoxyVersion}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @warning\n"
"\\newenvironment{DoxyWarning}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n"
"% Used by @internal\n"
"\\newenvironment{DoxyInternal}[1]{%\n"
" \\paragraph*{#1}%\n"
"}{%\n"
"}\n"
"\n"
"% Used by @par and @paragraph\n"
"\\newenvironment{DoxyParagraph}[1]{%\n"
" \\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{-4pt}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }%\n"
" \\item[#1]%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used by parameter lists\n"
"\\newenvironment{DoxyParams}[2][]{%\n"
" \\par%\n"
" \\tabletail{\\hline}%\n"
" \\tablelasttail{\\hline}%\n"
" \\tablefirsthead{}%\n"
" \\tablehead{}%\n"
" \\ifthenelse{\\equal{#1}{}}%\n"
" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.805\\textwidth}|}}%\n"
" {\\ifthenelse{\\equal{#1}{1}}%\n"
" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\centering}p{0.10\\textwidth}|%\n"
" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.678\\textwidth}|}}%\n"
" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\centering}p{0.10\\textwidth}|%\n"
" >{\\centering\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.501\\textwidth}|}}%\n"
" }\\hline%\n"
"}{%\n"
" \\end{xtabular}%\n"
" \\tablefirsthead{}%\n"
" \\vspace{6pt}%\n"
"}\n"
"\n"
"% Used for fields of simple structs\n"
"\\newenvironment{DoxyFields}[1]{%\n"
" \\par%\n"
" \\tabletail{\\hline}%\n"
" \\tablelasttail{\\hline}%\n"
" \\tablehead{}%\n"
" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.15\\textwidth}|%\n"
" p{0.63\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{xtabular}%\n"
" \\tablefirsthead{}%\n"
" \\vspace{6pt}%\n"
"}\n"
"\n"
"% Used for parameters within a detailed function description\n"
"\\newenvironment{DoxyParamCaption}{%\n"
" \\renewcommand{\\item}[2][]{##1 {\\em ##2}}%\n"
"}{%\n"
"}\n"
"\n"
"% Used by return value lists\n"
"\\newenvironment{DoxyRetVals}[1]{%\n"
" \\par%\n"
" \\tabletail{\\hline}%\n"
" \\tablelasttail{\\hline}%\n"
" \\tablehead{}%\n"
" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{xtabular}%\n"
" \\tablefirsthead{}%\n"
" \\vspace{6pt}%\n"
"}\n"
"\n"
"% Used by exception lists\n"
"\\newenvironment{DoxyExceptions}[1]{%\n"
" \\par%\n"
" \\tabletail{\\hline}%\n"
" \\tablelasttail{\\hline}%\n"
" \\tablehead{}%\n"
" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{xtabular}%\n"
" \\tablefirsthead{}%\n"
" \\vspace{6pt}%\n"
"}\n"
"\n"
"% Used by template parameter lists\n"
"\\newenvironment{DoxyTemplParams}[1]{%\n"
" \\par%\n"
" \\tabletail{\\hline}%\n"
" \\tablelasttail{\\hline}%\n"
" \\tablehead{}%\n"
" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n"
" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{xtabular}%\n"
" \\tablefirsthead{}%\n"
" \\vspace{6pt}%\n"
"}\n"
"\n"
"% Used for member lists\n"
"\\newenvironment{DoxyCompactItemize}{%\n"
" \\begin{itemize}%\n"
" \\setlength{\\itemsep}{-3pt}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\topsep}{0pt}%\n"
" \\setlength{\\partopsep}{0pt}%\n"
"}{%\n"
" \\end{itemize}%\n"
"}\n"
"\n"
"% Used for member descriptions\n"
"\\newenvironment{DoxyCompactList}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\leftmargin}{0.5cm}%\n"
" \\setlength{\\itemsep}{0pt}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\topsep}{0pt}%\n"
" \\renewcommand{\\makelabel}{\\hfill}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used for reference lists (@bug, @deprecated, @todo, etc.)\n"
"\\newenvironment{DoxyRefList}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\labelwidth}{10pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\addtolength{\\leftmargin}{\\labelsep}%\n"
" \\renewcommand{\\makelabel}{\\xreflabel}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used by @bug, @deprecated, @todo, etc.\n"
"\\newenvironment{DoxyRefDesc}[1]{%\n"
" \\begin{list}{}{%\n"
" \\renewcommand\\makelabel[1]{\\textbf{##1}}%\n"
" \\settowidth\\labelwidth{\\makelabel{#1}}%\n"
" \\setlength\\leftmargin{\\labelwidth+\\labelsep}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used by parameter lists and simple sections\n"
"\\newenvironment{Desc}\n"
"{\\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{-4pt}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used by tables\n"
"\\newcommand{\\PBS}[1]{\\let\\temp=\\\\#1\\let\\\\=\\temp}%\n"
"\\newlength{\\tmplength}%\n"
"\\newenvironment{TabularC}[1]%\n"
"{%\n"
"\\setlength{\\tmplength}%\n"
" {\\linewidth/(#1)-\\tabcolsep*2-\\arrayrulewidth*(#1+1)/(#1)}%\n"
" \\par\\begin{xtabular*}{\\linewidth}%\n"
" {*{#1}{|>{\\PBS\\raggedright\\hspace{0pt}}p{\\the\\tmplength}}|}%\n"
"}%\n"
"{\\end{xtabular*}\\par}%\n"
"\n"
"% Used for member group headers\n"
"\\newenvironment{Indent}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\leftmargin}{0.5cm}%\n"
" }%\n"
" \\item[]\\ignorespaces%\n"
"}{%\n"
" \\unskip%\n"
" \\end{list}%\n"
"}\n"
"\n"
"% Used when hyperlinks are turned off\n"
"\\newcommand{\\doxyref}[3]{%\n"
" \\textbf{#1} (\\textnormal{#2}\\,\\pageref{#3})%\n"
"}\n"
"\n"
"% Used for syntax highlighting\n"
"\\definecolor{comment}{rgb}{0.5,0.0,0.0}\n"
"\\definecolor{keyword}{rgb}{0.0,0.5,0.0}\n"
"\\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}\n"
"\\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}\n"
"\\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}\n"
"\\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}\n"
"\\definecolor{charliteral}{rgb}{0.0,0.5,0.5}\n"
"\\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}\n"
"\\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}\n"
"\\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}\n"
"\\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}\n"
...@@ -37,6 +37,10 @@ ...@@ -37,6 +37,10 @@
#include "namespacedef.h" #include "namespacedef.h"
#include "filename.h" #include "filename.h"
static const char doxygenLatexStyle[] =
#include "doxygen_sty.h"
;
//static QCString filterTitle(const char *s) //static QCString filterTitle(const char *s)
//{ //{
// QCString tmp=s,result; // QCString tmp=s,result;
...@@ -505,470 +509,7 @@ static void writeDefaultHeaderPart3(FTextStream &t) ...@@ -505,470 +509,7 @@ static void writeDefaultHeaderPart3(FTextStream &t)
static void writeDefaultStyleSheet(FTextStream &t) static void writeDefaultStyleSheet(FTextStream &t)
{ {
// part 1 t << doxygenLatexStyle;
t << "\\NeedsTeXFormat{LaTeX2e}\n"
"\\ProvidesPackage{doxygen}\n"
"\n";
t << "% Packages used by this style file\n"
"\\RequirePackage{alltt}\n"
"\\RequirePackage{array}\n"
"\\RequirePackage{calc}\n"
"\\RequirePackage{float}\n"
"\\RequirePackage{ifthen}\n"
"\\RequirePackage{longtable}\n"
"\\RequirePackage{verbatim}\n"
"\\RequirePackage[table]{xcolor}\n"
"\\RequirePackage{xtab}\n"
"\n"
"\n";
t << "%---------- Internal commands used in this style file ----------------\n"
"\n";
t << "\\newcommand{\\ensurespace}[1]{%\n"
" \\begingroup%\n"
" \\setlength{\\dimen@}{#1}%\n"
" \\vskip\\z@\\@plus\\dimen@%\n"
" \\penalty -100\\vskip\\z@\\@plus -\\dimen@%\n"
" \\vskip\\dimen@%\n"
" \\penalty 9999%\n"
" \\vskip -\\dimen@%\n"
" \\vskip\\z@skip% hide the previous |\\vskip| from |\\addvspace|\n"
" \\endgroup%\n"
"}\n"
"\n";
t << "\\newcommand{\\DoxyLabelFont}{}\n"
"\\newcommand{\\entrylabel}[1]{%\n"
" {%\n"
" \\parbox[b]{\\labelwidth-4pt}{%\n"
" \\makebox[0pt][l]{\\DoxyLabelFont#1}%\n"
" \\vspace{1.5\\baselineskip}%\n"
" }%\n"
" }%\n"
"}\n"
"\n";
t << "\\newenvironment{DoxyDesc}[1]{%\n"
" \\ensurespace{4\\baselineskip}%\n"
" \\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{-4pt}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }%\n"
" \\item[#1]%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "\\newsavebox{\\xrefbox}\n"
"\\newlength{\\xreflength}\n"
"\\newcommand{\\xreflabel}[1]{%\n"
" \\sbox{\\xrefbox}{#1}%\n"
" \\setlength{\\xreflength}{\\wd\\xrefbox}%\n"
" \\ifthenelse{\\xreflength>\\labelwidth}{%\n"
" \\begin{minipage}{\\textwidth}%\n"
" \\setlength{\\parindent}{0pt}%\n"
" \\hangindent=15pt\\bfseries #1\\vspace{1.2\\itemsep}%\n"
" \\end{minipage}%\n"
" }{%\n"
" \\parbox[b]{\\labelwidth}{\\makebox[0pt][l]{\\textbf{#1}}}%\n"
" }%\n"
"}\n"
"\n"
"\n";
t << "%---------- Commands used by doxygen LaTeX output generator ----------\n"
"\n";
t << "% Used by <pre> ... </pre>\n"
"\\newenvironment{DoxyPre}{%\n"
" \\small%\n"
" \\begin{alltt}%\n"
"}{%\n"
" \\end{alltt}%\n"
" \\normalsize%\n"
"}\n"
"\n";
t << "% Used by @code ... @endcode\n"
"\\newenvironment{DoxyCode}{%\n"
" \\par%\n"
" \\scriptsize%\n"
" \\begin{alltt}%\n"
"}{%\n"
" \\end{alltt}%\n"
" \\normalsize%\n"
"}\n"
"\n";
t << "% Used by @example, @include, @includelineno and @dontinclude\n"
"\\newenvironment{DoxyCodeInclude}{%\n"
" \\DoxyCode%\n"
"}{%\n"
" \\endDoxyCode%\n"
"}\n"
"\n";
t << "% Used by @verbatim ... @endverbatim\n"
"\\newenvironment{DoxyVerb}{%\n"
" \\footnotesize%\n"
" \\verbatim%\n"
"}{%\n"
" \\endverbatim%\n"
" \\normalsize%\n"
"}\n"
"\n";
t << "% Used by @verbinclude\n"
"\\newenvironment{DoxyVerbInclude}{%\n"
" \\DoxyVerb%\n"
"}{%\n"
" \\endDoxyVerb%\n"
"}\n"
"\n";
t << "% Used by numbered lists (using '-#' or <ol> ... </ol>)\n"
"\\newenvironment{DoxyEnumerate}{%\n"
" \\enumerate%\n"
"}{%\n"
" \\endenumerate%\n"
"}\n"
"\n";
t << "% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)\n"
"\\newenvironment{DoxyItemize}{%\n"
" \\itemize%\n"
"}{%\n"
" \\enditemize%\n"
"}\n"
"\n";
t << "% Used by description lists (using <dl> ... </dl>)\n"
"\\newenvironment{DoxyDescription}{%\n"
" \\description%\n"
"}{%\n"
" \\enddescription%\n"
"}\n"
"\n";
t << "% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n"
"% (only if caption is specified)\n"
"\\newenvironment{DoxyImage}{%\n"
" \\begin{figure}[H]%\n"
" \\begin{center}%\n"
"}{%\n"
" \\end{center}%\n"
" \\end{figure}%\n"
"}\n"
"\n";
t << "% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n"
"% (only if no caption is specified)\n"
"\\newenvironment{DoxyImageNoCaption}{%\n"
"}{%\n"
"}\n"
"\n";
t << "% Used by @attention\n"
"\\newenvironment{DoxyAttention}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @author and @authors\n"
"\\newenvironment{DoxyAuthor}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @date\n"
"\\newenvironment{DoxyDate}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @invariant\n"
"\\newenvironment{DoxyInvariant}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @note\n"
"\\newenvironment{DoxyNote}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @post\n"
"\\newenvironment{DoxyPostcond}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @pre\n"
"\\newenvironment{DoxyPrecond}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @copyright\n"
"\\newenvironment{DoxyCopyright}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @remark\n"
"\\newenvironment{DoxyRemark}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @return and @returns\n"
"\\newenvironment{DoxyReturn}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @since\n"
"\\newenvironment{DoxySince}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @see\n"
"\\newenvironment{DoxySeeAlso}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @version\n"
"\\newenvironment{DoxyVersion}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @warning\n"
"\\newenvironment{DoxyWarning}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
"}{%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by @internal\n"
"\\newenvironment{DoxyInternal}[1]{%\n"
" \\paragraph*{#1}%\n"
"}{%\n"
"}\n"
"\n";
t << "% Used by @par and @paragraph\n"
"\\newenvironment{DoxyParagraph}[1]{%\n"
" \\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{-4pt}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }%\n"
" \\item[#1]%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used by parameter lists\n"
"\\newenvironment{DoxyParams}[2][]{%\n"
" \\begin{DoxyDesc}{#2}%\n"
" \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\LTleft}{0pt}%\n"
" \\setlength{\\tabcolsep}{0.01\\textwidth}%\n"
" \\ifthenelse{\\equal{#1}{}}%\n" // default: name, docs columns
" {\\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.815\\textwidth}|}}%\n"
" {\\ifthenelse{\\equal{#1}{1}}%\n" // inout, name, docs columns, or type, name, docs columns
" {\\begin{longtable}{|>{\\centering}p{0.10\\textwidth}|%\n"
" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.685\\textwidth}|}}%\n"
" {\\begin{longtable}{|>{\\centering}p{0.10\\textwidth}|%\n" // inout, type, name, docs columns
" >{\\centering\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.515\\textwidth}|}}%\n"
" }\\hline%\n"
"}{%\n"
" \\end{longtable}%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used for fields of simple structs\n"
"\\newenvironment{DoxyFields}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
" \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\LTleft}{0pt}%\n"
" \\setlength{\\tabcolsep}{0.01\\textwidth}%\n"
" \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n"
" p{0.15\\textwidth}|%\n"
" p{0.635\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{longtable}%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used for parameters within a detailed function description\n"
"\\newenvironment{DoxyParamCaption}{%\n"
" \\renewcommand{\\item}[2][]{##1 {\\em ##2}}%\n"
"}{%\n"
"}\n"
"\n";
t << "% Used by return value lists\n"
"\\newenvironment{DoxyRetVals}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
" \\begin{description}%\n"
" \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n"
" \\setlength{\\tabcolsep}{0.01\\textwidth}%\n"
" \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{longtable}%\n"
" \\end{description}%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by exception lists\n"
"\\newenvironment{DoxyExceptions}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
" \\begin{description}%\n"
" \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n"
" \\setlength{\\tabcolsep}{0.01\\textwidth}%\n"
" \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{longtable}%\n"
" \\end{description}%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used by template parameter lists\n"
"\\newenvironment{DoxyTemplParams}[1]{%\n"
" \\begin{DoxyDesc}{#1}%\n"
" \\begin{description}%\n"
" \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n"
" \\setlength{\\tabcolsep}{0.01\\textwidth}%\n"
" \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n"
" p{0.705\\textwidth}|}%\n"
" \\hline%\n"
"}{%\n"
" \\end{longtable}%\n"
" \\end{description}%\n"
" \\end{DoxyDesc}%\n"
"}\n"
"\n";
t << "% Used for member lists\n"
"\\newenvironment{DoxyCompactItemize}{%\n"
" \\begin{itemize}%\n"
" \\setlength{\\itemsep}{-3pt}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\topsep}{0pt}%\n"
" \\setlength{\\partopsep}{0pt}%\n"
"}{%\n"
" \\end{itemize}%\n"
"}\n"
"\n";
t << "% Used for member descriptions\n"
"\\newenvironment{DoxyCompactList}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\leftmargin}{0.5cm}%\n"
" \\setlength{\\itemsep}{0pt}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\topsep}{0pt}%\n"
" \\renewcommand{\\makelabel}{\\hfill}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used for reference lists (@bug, @deprecated, @todo, etc.)\n"
"\\newenvironment{DoxyRefList}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\labelwidth}{10pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\addtolength{\\leftmargin}{\\labelsep}%\n"
" \\renewcommand{\\makelabel}{\\xreflabel}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used by @bug, @deprecated, @todo, etc.\n"
"\\newenvironment{DoxyRefDesc}[1]{%\n"
" \\begin{list}{}{%\n"
" \\renewcommand\\makelabel[1]{\\textbf{##1}}%\n"
" \\settowidth\\labelwidth{\\makelabel{#1}}%\n"
" \\setlength\\leftmargin{\\labelwidth+\\labelsep}%\n"
" }%\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used by parameter lists and simple sections\n"
"\\newenvironment{Desc}\n"
"{\\begin{list}{}{%\n"
" \\settowidth{\\labelwidth}{40pt}%\n"
" \\setlength{\\leftmargin}{\\labelwidth}%\n"
" \\setlength{\\parsep}{0pt}%\n"
" \\setlength{\\itemsep}{-4pt}%\n"
" \\renewcommand{\\makelabel}{\\entrylabel}%\n"
" }\n"
"}{%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used by tables\n"
"\\newcommand{\\PBS}[1]{\\let\\temp=\\\\#1\\let\\\\=\\temp}\n"
"\\newlength{\\tmplength}\n"
"\\newenvironment{TabularC}[1]{%\n"
" \\setlength{\\tmplength}{%\n"
" \\linewidth/(#1)-\\tabcolsep*2-\\arrayrulewidth*(#1+1)/(#1)%\n"
" }%\n"
" \\par%\n"
" \\begin{xtabular*}{\\linewidth}{%\n"
" *{#1}{|>{\\PBS\\raggedright\\hspace{0pt}}p{\\the\\tmplength}}|%\n"
" }%\n"
"}{%\n"
" \\end{xtabular*}%\n"
" \\par%\n"
"}\n"
"\n";
t << "% Used for member group headers\n"
"\\newenvironment{Indent}{%\n"
" \\begin{list}{}{%\n"
" \\setlength{\\leftmargin}{0.5cm}%\n"
" }%\n"
" \\item[]\\ignorespaces%\n"
"}{%\n"
" \\unskip%\n"
" \\end{list}%\n"
"}\n"
"\n";
t << "% Used when hyperlinks are turned off\n"
"\\newcommand{\\doxyref}[3]{%\n"
" \\textbf{#1} (\\textnormal{#2}\\,\\pageref{#3})%\n"
"}\n"
"\n";
t << "% Used for syntax highlighting\n"
"\\definecolor{comment}{rgb}{0.5,0.0,0.0}\n"
"\\definecolor{keyword}{rgb}{0.0,0.5,0.0}\n"
"\\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}\n"
"\\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}\n"
"\\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}\n"
"\\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}\n"
"\\definecolor{charliteral}{rgb}{0.0,0.5,0.5}\n"
"\\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}\n"
"\\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}\n"
"\\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}\n"
"\\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}\n";
} }
static void writeDefaultFooter(FTextStream &t) static void writeDefaultFooter(FTextStream &t)
......
...@@ -47,6 +47,7 @@ HEADERS = arguments.h \ ...@@ -47,6 +47,7 @@ HEADERS = arguments.h \
doxygen.h \ doxygen.h \
doxygen_bst.h \ doxygen_bst.h \
doxygen_css.h \ doxygen_css.h \
doxygen_sty.h \
eclipsehelp.h \ eclipsehelp.h \
entry.h \ entry.h \
example.h \ example.h \
......
...@@ -144,6 +144,9 @@ extsearch_js.h: extsearch.js ...@@ -144,6 +144,9 @@ extsearch_js.h: extsearch.js
doxygen_css.h: doxygen.css doxygen_css.h: doxygen.css
cat doxygen.css | $(TO_C_CMD) >doxygen_css.h cat doxygen.css | $(TO_C_CMD) >doxygen_css.h
doxygen_sty.h: doxygen.sty
cat doxygen.sty | $(TO_C_CMD) >doxygen_sty.h
navtree_js.h: navtree.js navtree_js.h: navtree.js
cat navtree.js | $(TO_C_CMD) >navtree_js.h cat navtree.js | $(TO_C_CMD) >navtree_js.h
......
...@@ -1466,19 +1466,20 @@ int findTableColumns(const char *data,int size,int &start,int &end,int &columns) ...@@ -1466,19 +1466,20 @@ int findTableColumns(const char *data,int size,int &start,int &end,int &columns)
// count columns between start and end // count columns between start and end
columns=0; columns=0;
if (n==2) // table row has | ... |
{
columns++;
}
if (end>start) if (end>start)
{ {
i=start; i=start;
while (i<=end) // look for more column markers while (i<=end) // look for more column markers
{ {
if (data[i]=='|' && (i==0 || data[i-1]!='\\')) columns++; if (data[i]=='|' && (i==0 || data[i-1]!='\\')) columns++;
if (columns==1) columns++; // first | make a non-table into a two column table
i++; i++;
} }
} }
if (n==2 && columns==0) // table row has | ... |
{
columns++;
}
//printf("findTableColumns(start=%d,end=%d,columns=%d) eol=%d\n", //printf("findTableColumns(start=%d,end=%d,columns=%d) eol=%d\n",
// start,end,columns,eol); // start,end,columns,eol);
return eol; return eol;
......
...@@ -90,8 +90,9 @@ void PageDef::writeDocumentation(OutputList &ol) ...@@ -90,8 +90,9 @@ void PageDef::writeDocumentation(OutputList &ol)
static bool generateTreeView = Config_getBool("GENERATE_TREEVIEW"); static bool generateTreeView = Config_getBool("GENERATE_TREEVIEW");
//outputList->disable(OutputGenerator::Man); //outputList->disable(OutputGenerator::Man);
QCString pageName; QCString pageName,manPageName;
pageName=escapeCharsInString(name(),FALSE,TRUE); pageName = escapeCharsInString(name(),FALSE,TRUE);
manPageName = escapeCharsInString(name(),TRUE,TRUE);
//printf("PageDef::writeDocumentation: %s\n",getOutputFileBase().data()); //printf("PageDef::writeDocumentation: %s\n",getOutputFileBase().data());
...@@ -110,7 +111,15 @@ void PageDef::writeDocumentation(OutputList &ol) ...@@ -110,7 +111,15 @@ void PageDef::writeDocumentation(OutputList &ol)
ol.enable(OutputGenerator::Html); ol.enable(OutputGenerator::Html);
} }
ol.pushGeneratorState();
//2.{
ol.disableAllBut(OutputGenerator::Man);
startFile(ol,getOutputFileBase(),manPageName,title(),HLI_Pages,!generateTreeView);
ol.enableAll();
ol.disable(OutputGenerator::Man);
startFile(ol,getOutputFileBase(),pageName,title(),HLI_Pages,!generateTreeView); startFile(ol,getOutputFileBase(),pageName,title(),HLI_Pages,!generateTreeView);
ol.popGeneratorState();
//2.}
if (!generateTreeView) if (!generateTreeView)
{ {
...@@ -126,8 +135,8 @@ void PageDef::writeDocumentation(OutputList &ol) ...@@ -126,8 +135,8 @@ void PageDef::writeDocumentation(OutputList &ol)
ol.pushGeneratorState(); ol.pushGeneratorState();
//2.{ //2.{
ol.disableAllBut(OutputGenerator::Man); ol.disableAllBut(OutputGenerator::Man);
ol.startTitleHead(pageName); ol.startTitleHead(manPageName);
ol.endTitleHead(pageName, pageName); ol.endTitleHead(manPageName, manPageName);
if (si) if (si)
{ {
ol.generateDoc(docFile(),docLine(),this,0,si->title,TRUE,FALSE,0,TRUE,FALSE); ol.generateDoc(docFile(),docLine(),this,0,si->title,TRUE,FALSE,0,TRUE,FALSE);
......
...@@ -2522,6 +2522,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) ...@@ -2522,6 +2522,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
g_ccomment=FALSE; g_ccomment=FALSE;
} }
g_condCtx=YY_START; g_condCtx=YY_START;
startCondSection(" ");
BEGIN(SkipCond); BEGIN(SkipCond);
} }
<SkipCond>\n { g_yyLineNr++; outputChar('\n'); } <SkipCond>\n { g_yyLineNr++; outputChar('\n'); }
...@@ -2940,6 +2941,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output) ...@@ -2940,6 +2941,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output)
g_macroExpansion = Config_getBool("MACRO_EXPANSION"); g_macroExpansion = Config_getBool("MACRO_EXPANSION");
g_expandOnlyPredef = Config_getBool("EXPAND_ONLY_PREDEF"); g_expandOnlyPredef = Config_getBool("EXPAND_ONLY_PREDEF");
g_skip=FALSE;
g_curlyCount=0; g_curlyCount=0;
g_nospaces=FALSE; g_nospaces=FALSE;
g_inputBuf=&input; g_inputBuf=&input;
......
...@@ -1119,6 +1119,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\" ...@@ -1119,6 +1119,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
current->type = "id"; current->type = "id";
} }
current->name = yytext; current->name = yytext;
if (insideCpp || insideObjC)
{
current->id = ClangParser::instance()->lookup(yyLineNr,yytext);
}
} }
<ObjCMethod>":"{B}* { // start of parameter list <ObjCMethod>":"{B}* { // start of parameter list
current->name += ':'; current->name += ':';
...@@ -6074,6 +6078,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\" ...@@ -6074,6 +6078,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
docBlock.resize(docBlock.length() - 3); docBlock.resize(docBlock.length() - 3);
lineCount(); lineCount();
} }
<DocLine>{B}*"///"[/]+{B}*/"\n" { // ignore marker line (see bug700345)
handleCommentBlock(docBlock.data(),current->brief.isEmpty());
BEGIN( docBlockContext );
}
<DocLine>[^\n]*/"\n" { // whole line <DocLine>[^\n]*/"\n" { // whole line
docBlock+=yytext; docBlock+=yytext;
handleCommentBlock(docBlock.data(),current->brief.isEmpty()); handleCommentBlock(docBlock.data(),current->brief.isEmpty());
...@@ -6833,7 +6841,8 @@ void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf, ...@@ -6833,7 +6841,8 @@ void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
bool CLanguageScanner::needsPreprocessing(const QCString &extension) bool CLanguageScanner::needsPreprocessing(const QCString &extension)
{ {
QCString fe=extension.lower(); QCString fe=extension.lower();
return SrcLangExt lang = getLanguageFromFileName(extension);
return (SrcLangExt_Cpp == lang) ||
!( fe==".java" || fe==".as" || fe==".d" || fe==".php" || !( fe==".java" || fe==".as" || fe==".d" || fe==".php" ||
fe==".php4" || fe==".inc" || fe==".phtml" fe==".php4" || fe==".inc" || fe==".phtml"
); );
......
...@@ -71,7 +71,7 @@ class TranslatorArabic : public TranslatorAdapter_1_4_6 ...@@ -71,7 +71,7 @@ class TranslatorArabic : public TranslatorAdapter_1_4_6
/*! return the language charset. This will be used for the HTML output */ /*! return the language charset. This will be used for the HTML output */
virtual QCString idLanguageCharset() virtual QCString idLanguageCharset()
{ {
return "cp1256"; return "utf-8";
} }
// --- Language translation methods ------------------- // --- Language translation methods -------------------
......
...@@ -20,12 +20,13 @@ ...@@ -20,12 +20,13 @@
* *
* ------------------------------------------- * -------------------------------------------
* Project start : 20.09.2000 * Project start : 20.09.2000
* Last Doxygen version covered : 1.5.8 * Last Doxygen version covered : 1.8.4
* Last revision : 15.01.2009 * Last revision : 17.05.2013
* ------------------------------------------- * -------------------------------------------
* *
* Revision history * Revision history
* ---------------- * ----------------
* 17.05.2013 - Updated translation to cover Doxygen 1.8.4 (Ionuț Dumitrașcu)
* 15.01.2009 - Updated Romanian translation to Doxygen 1.5.8 and modified strings to UTF-8, as well as some other changes (Ionuţ Dumitraşcu) * 15.01.2009 - Updated Romanian translation to Doxygen 1.5.8 and modified strings to UTF-8, as well as some other changes (Ionuţ Dumitraşcu)
* 28.07.2008 - Updated version - covering Doxygen 1.5.6 - and some minor changes (Ionuţ Dumitraşcu) * 28.07.2008 - Updated version - covering Doxygen 1.5.6 - and some minor changes (Ionuţ Dumitraşcu)
* *
...@@ -41,7 +42,7 @@ ...@@ -41,7 +42,7 @@
#define TRANSLATOR_RO_H #define TRANSLATOR_RO_H
class TranslatorRomanian : public TranslatorAdapter_1_6_0 class TranslatorRomanian : public Translator
{ {
public: public:
...@@ -1786,7 +1787,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 ...@@ -1786,7 +1787,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0
{ {
QCString result((first_capital ? "Subprogram" : "subprogram")); QCString result((first_capital ? "Subprogram" : "subprogram"));
if (singular) result+="ul"; if (singular) result+="ul";
else result += "urile"; else result += "ele";
return result; return result;
} }
...@@ -1796,6 +1797,278 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 ...@@ -1796,6 +1797,278 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0
return "Constrângerile de Tip"; return "Constrângerile de Tip";
} }
//////////////////////////////////////////////////////////////////////////
// new since 1.6.0 (mainly for the new search engine)
//////////////////////////////////////////////////////////////////////////
/*! directory relation for \a name */
virtual QCString trDirRelation(const char *name)
{
return QCString(name)+" Relație";
}
/*! Loading message shown when loading search results */
virtual QCString trLoading()
{
return "Se încarcă...";
}
/*! Label used for search results in the global namespace */
virtual QCString trGlobalNamespace()
{
return "Namespace Global";
}
/*! Message shown while searching */
virtual QCString trSearching()
{
return "Căutare...";
}
/*! Text shown when no search results are found */
virtual QCString trNoMatches()
{
return "Niciun rezultat";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.6.3 (missing items for the directory pages)
//////////////////////////////////////////////////////////////////////////
/*! introduction text for the directory dependency graph */
virtual QCString trDirDependency(const char *name)
{
return (QCString)"Grafic de dependență a directoarelor pentru "+name;
}
/*! when clicking a directory dependency label, a page with a
* table is shown. The heading for the first column mentions the
* source file that has a relation to another file.
*/
virtual QCString trFileIn(const char *name)
{
return (QCString)"Fișierul din "+name;
}
/*! when clicking a directory dependency label, a page with a
* table is shown. The heading for the second column mentions the
* destination file that is included.
*/
virtual QCString trIncludesFileIn(const char *name)
{
return (QCString)"Include fișierul din "+name;
}
/** Compiles a date string.
* @param year Year in 4 digits
* @param month Month of the year: 1=January
* @param day Day of the Month: 1..31
* @param dayOfWeek Day of the week: 1=Monday..7=Sunday
* @param hour Hour of the day: 0..23
* @param minutes Minutes in the hour: 0..59
* @param seconds Seconds within the minute: 0..59
* @param includeTime Include time in the result string?
*/
virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
int hour,int minutes,int seconds,
bool includeTime)
{
static const char *days[] = { "Luni","Marți","Miercuri","Joi","Vineri","Sâmbătă","Duminică" };
static const char *months[] = { "Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Noi","Dec" };
QCString sdate;
sdate.sprintf("%s %s %d %d",days[dayOfWeek-1],months[month-1],day,year);
if (includeTime)
{
QCString stime;
stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
sdate+=stime;
}
return sdate;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.7.5
//////////////////////////////////////////////////////////////////////////
/*! Header for the page with bibliographic citations */
virtual QCString trCiteReferences()
{ return "Referințe Bibliografice"; }
/*! Text for copyright paragraph */
virtual QCString trCopyright()
{ return "Copyright"; }
/*! Header for the graph showing the directory dependencies */
virtual QCString trDirDepGraph(const char *name)
{ return QCString("Grafic de dependență a directoarelor pentru ")+name+":"; }
//////////////////////////////////////////////////////////////////////////
// new since 1.8.0
//////////////////////////////////////////////////////////////////////////
/*! Detail level selector shown for hierarchical indices */
virtual QCString trDetailLevel()
{ return "nivel de detaliu"; }
/*! Section header for list of template parameters */
virtual QCString trTemplateParameters()
{ return "Parametri Template"; }
/*! Used in dot graph when UML_LOOK is enabled and there are many fields */
virtual QCString trAndMore(const QCString &number)
{ return "și încă " + number; }
/*! Used file list for a Java enum */
virtual QCString trEnumGeneratedFromFiles(bool single)
{ QCString result = "Documentația pentru acest enum a fost generată din ";
if (single)
result += "următorul fișier:";
else
result += "următoarele fișiere:";
return result;
}
/*! Header of a Java enum page (Java enums are represented as classes). */
virtual QCString trEnumReference(const char *name)
{ return QCString(name)+" Referință Enum"; }
/*! Used for a section containing inherited members */
virtual QCString trInheritedFrom(const char *members,const char *what)
{ return QCString(members)+" moștenit(e) din "+what; }
/*! Header of the sections with inherited members specific for the
* base class(es)
*/
virtual QCString trAdditionalInheritedMembers()
{ return "Membri Moșteniți Adiționali"; }
//////////////////////////////////////////////////////////////////////////
// new since 1.8.2
//////////////////////////////////////////////////////////////////////////
/*! Used as a tooltip for the toggle button that appears in the
* navigation tree in the HTML output when GENERATE_TREEVIEW is
* enabled. This tooltip explains the meaning of the button.
*/
virtual QCString trPanelSynchronisationTooltip(bool enable)
{
QCString opt = enable ? "activa" : "dezactiva";
return "apasă 'click' pentru a "+opt+" sincronizarea panourilor";
}
/*! Used in a method of an Objective-C class that is declared in a
* a category. Note that the @1 marker is required and is replaced
* by a link.
*/
virtual QCString trProvidedByCategory()
{
return "Furnizat de categoria @1.";
}
/*! Used in a method of an Objective-C category that extends a class.
* Note that the @1 marker is required and is replaced by a link to
* the class method.
*/
virtual QCString trExtendsClass()
{
return "Extinde clasa @1.";
}
/*! Used as the header of a list of class methods in Objective-C.
* These are similar to static public member functions in C++.
*/
virtual QCString trClassMethods()
{
return "Metodele Clasei";
}
/*! Used as the header of a list of instance methods in Objective-C.
* These are similar to public member functions in C++.
*/
virtual QCString trInstanceMethods()
{
return "Metodele Instanței";
}
/*! Used as the header of the member functions of an Objective-C class.
*/
virtual QCString trMethodDocumentation()
{
return "Documentația Metodelor";
}
/*! Used as the title of the design overview picture created for the
* VHDL output.
*/
virtual QCString trDesignOverview()
{
return "Vedere de Ansamblu a Designului";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.8.4
//////////////////////////////////////////////////////////////////////////
/** old style UNO IDL services: implemented interfaces */
virtual QCString trInterfaces()
{ return "Interfețe exportate"; }
/** old style UNO IDL services: inherited services */
virtual QCString trServices()
{ return "Servicii Incluse"; }
/** UNO IDL constant groups */
virtual QCString trConstantGroups()
{ return "Grupuri Constante"; }
/** UNO IDL constant groups */
virtual QCString trConstantGroupReference(const char *namespaceName)
{
QCString result=namespaceName;
result+=" Referință Grup Constant";
return result;
}
/** UNO IDL service page title */
virtual QCString trServiceReference(const char *sName)
{
QCString result=(QCString)sName;
result+=" Referință Serviciu";
return result;
}
/** UNO IDL singleton page title */
virtual QCString trSingletonReference(const char *sName)
{
QCString result=(QCString)sName;
result+=" Referință Singleton";
return result;
}
/** UNO IDL service page */
virtual QCString trServiceGeneratedFromFiles(bool single)
{
// single is true implies a single file
QCString result=(QCString)"Documentația pentru acest serviciu "
"a fost generată din ";
if (single)
result += "următorul fișier:";
else
result += "următoarele fișiere:";
return result;
}
/** UNO IDL singleton page */
virtual QCString trSingletonGeneratedFromFiles(bool single)
{
// single is true implies a single file
QCString result=(QCString)"Documentația pentru acest singleton "
"a fost generată din ";
if (single)
result += "următorul fișier:";
else
result += "următoarele fișiere:";
return result;
}
//////////////////////////////////////////////////////////////////////////
}; };
#endif #endif
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
// Updates: // Updates:
// -------- // --------
// 2013/05/14 - Updates for "new since 1.8.4".
// 2012/08/02 - Updates for "new since 1.8.2". // 2012/08/02 - Updates for "new since 1.8.2".
// 2012/04/18 - Updates for "new since 1.8.0". // 2012/04/18 - Updates for "new since 1.8.0".
// 2011/07/28 - Updates for "new since 1.7.5". // 2011/07/28 - Updates for "new since 1.7.5".
...@@ -31,7 +32,7 @@ ...@@ -31,7 +32,7 @@
#ifndef TRANSLATOR_SK_H #ifndef TRANSLATOR_SK_H
#define TRANSLATOR_SK_H #define TRANSLATOR_SK_H
class TranslatorSlovak : public TranslatorAdapter_1_8_2 class TranslatorSlovak : public Translator
{ {
public: public:
// --- Language control methods ------------------- // --- Language control methods -------------------
...@@ -1962,6 +1963,62 @@ class TranslatorSlovak : public TranslatorAdapter_1_8_2 ...@@ -1962,6 +1963,62 @@ class TranslatorSlovak : public TranslatorAdapter_1_8_2
return "Návrhová schéma"; return "Návrhová schéma";
} }
//////////////////////////////////////////////////////////////////////////
// new since 1.8.4
//////////////////////////////////////////////////////////////////////////
/** old style UNO IDL services: implemented interfaces */
virtual QCString trInterfaces()
{ return "Exportované rozhrania"; }
/** old style UNO IDL services: inherited services */
virtual QCString trServices()
{ return "Začlenené služby"; }
/** UNO IDL constant groups */
virtual QCString trConstantGroups()
{ return "Konštantné skupiny"; }
/** UNO IDL constant groups */
virtual QCString trConstantGroupReference(const char *namespaceName)
{
QCString result="Konštantné skupiny z ";
result += namespaceName;
return result;
}
/** UNO IDL service page title */
virtual QCString trServiceReference(const char *sName)
{
QCString result="Popis služby ";
result += sName;
return result;
}
/** UNO IDL singleton page title */
virtual QCString trSingletonReference(const char *sName)
{
QCString result="Popis singletonu ";
result += sName;
return result;
}
/** UNO IDL service page */
virtual QCString trServiceGeneratedFromFiles(bool single)
{
// single is true implies a single file
QCString result="Dokumentácia k tejto službe bola vygenerovaná ";
if (single) result+="z nasledujúceho súboru:";
else result+="z nasledujúcich súborov:";
return result;
}
/** UNO IDL singleton page */
virtual QCString trSingletonGeneratedFromFiles(bool single)
{
// single is true implies a single file
QCString result="Dokumentácia k tomuto singletonu bola vygenerovaná ";
if (single) result+="z nasledujúceho súboru:";
else result+="z nasledujúcich súborov:";
return result;
}
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment