summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2000-02-15 20:03:34 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2000-02-15 20:03:34 (GMT)
commit082b421913688541087c4b810cd48a882c3d87c9 (patch)
tree50b1099761af52d0ca94caec83c8ff3a08efb753 /doc
parent6e9c313b87a0daa86ca108e93d67fc4c9e5bec68 (diff)
downloadDoxygen-082b421913688541087c4b810cd48a882c3d87c9.zip
Doxygen-082b421913688541087c4b810cd48a882c3d87c9.tar.gz
Doxygen-082b421913688541087c4b810cd48a882c3d87c9.tar.bz2
Upgrade to 1.1.0
Diffstat (limited to 'doc')
-rw-r--r--doc/Makefile.in2
-rw-r--r--doc/Makefile.latex2
-rw-r--r--doc/Makefile.win.in2
-rw-r--r--doc/autolink.doc8
-rw-r--r--doc/commands.doc92
-rw-r--r--doc/config.doc101
-rw-r--r--doc/doxygen.sty6
-rw-r--r--doc/doxygen_manual.tex6
-rw-r--r--doc/doxygen_usage.doc2
-rw-r--r--doc/doxysearch_usage.doc2
-rw-r--r--doc/doxytag_usage.doc2
-rw-r--r--doc/faq.doc33
-rw-r--r--doc/features.doc9
-rw-r--r--doc/history.doc2
-rw-r--r--doc/htmlcmds.doc2
-rw-r--r--doc/index.doc14
-rw-r--r--doc/install.doc21
-rw-r--r--doc/installdox_usage.doc2
-rw-r--r--doc/language.doc2
-rw-r--r--doc/output.doc6
-rw-r--r--doc/starting.doc197
-rw-r--r--doc/todo.doc2
-rw-r--r--doc/trouble.doc2
23 files changed, 453 insertions, 64 deletions
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 29a3151..c6308bf 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -1,7 +1,7 @@
#
# $Id$
#
-# Copyright (C) 1997-1999 by Dimitri van Heesch.
+# Copyright (C) 1997-2000 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/Makefile.latex b/doc/Makefile.latex
index bd902df..b4e4379 100644
--- a/doc/Makefile.latex
+++ b/doc/Makefile.latex
@@ -1,7 +1,7 @@
#
# $Id$
#
-# Copyright (C) 1997-1999 by Dimitri van Heesch.
+# Copyright (C) 1997-2000 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/Makefile.win.in b/doc/Makefile.win.in
index ed64837..e151ecc 100644
--- a/doc/Makefile.win.in
+++ b/doc/Makefile.win.in
@@ -1,7 +1,7 @@
#
# $Id$
#
-# Copyright (C) 1997-1999 by Dimitri van Heesch.
+# Copyright (C) 1997-2000 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/autolink.doc b/doc/autolink.doc
index 352e905..4cb892b 100644
--- a/doc/autolink.doc
+++ b/doc/autolink.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -29,6 +29,11 @@
The next sections show how to generate links to the various documented
entities in a source file.
+ \subsection linkurl Links to web pages and mail addresses
+
+ Doxygen will automatically replace any URLs and mail addresses found in the
+ documentation by links (in HTML).
+
\subsection linkclass Links to classes.
All words in the documentation that correspond to a documented class
@@ -108,5 +113,4 @@ typedef struct StructName TypeName
Click <a href="$(DOXYGEN_DOCDIR)/examples/restypedef/html/restypedef.cpp.html">here</a>
for the corresponding HTML documentation that is generated by Doxygen.
\endhtmlonly
-
*/
diff --git a/doc/commands.doc b/doc/commands.doc
index bbe5a9c..497e26d 100644
--- a/doc/commands.doc
+++ b/doc/commands.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -77,6 +77,7 @@ documentation:
<li> \refitem cmdinclude \include
<li> \refitem cmdingroup \ingroup
<li> \refitem cmdinternal \internal
+<li> \refitem cmdinvariant \invariant
<li> \refitem cmdlatexonly \latexonly
<li> \refitem cmdline \line
<li> \refitem cmdlink \link
@@ -86,6 +87,8 @@ documentation:
<li> \refitem cmdpage \page
<li> \refitem cmdpar \par
<li> \refitem cmdparam \param
+<li> \refitem cmdpost \post
+<li> \refitem cmdpre \pre
<li> \refitem cmdref \ref
<li> \refitem cmdrelates \relates
<li> \refitem cmdreturn \return
@@ -138,7 +141,10 @@ Doxygen. Unrecognized commands are treated as normal text.
The \<header-name\> argument can be used to overwrite the
name of the link that is used in the class documentation to something other
than \<header-file\>. This can be useful if the include name is not located
- on the default include path (like \<X11/X.h\>).
+ on the default include path (like \<X11/X.h\>). With the \<header-name\>
+ argument you can also specify how the include statement should look like,
+ by adding either quotes or sharp brackets around the name.
+ Sharp brackets are used if just the name is given.
\par Example:
\verbinclude class.h
@@ -547,6 +553,38 @@ Doxygen. Unrecognized commands are treated as normal text.
expected life span, etc.
<hr>
+\subsection cmdexception \exception <exception-object> { exception description }
+
+ \addindex \exception
+ Starts an exception description for an exception object with name
+ \<exception-object\>. Followed by a description of the exception.
+ The existence of the exception object is not checked.
+ The text of the paragraph has no special internal structure. All visual
+ enhancement commands may be used inside the paragraph.
+ Multiple adjacent \\exception commands will be joined into a single paragraph.
+ Each parameter description will start on a new line.
+ The \\exception description ends when a blank line or some other
+ sectioning command is encountered. See section \ref cmdfn "\\fn" for an
+ example.
+
+ \par Note:
+ the tag \\exceptions is a synonym for this tag.
+
+<hr>
+\subsection cmdinvariant \invariant { description of invariant }
+
+ \addindex \invariant
+ Starts a paragraph where the invariant of an entity can be described.
+ The paragraph will be indented.
+ The text of the paragraph has no special internal structure. All visual
+ enhancement commands may be used inside the paragraph.
+ Multiple adjacent \\invariant commands will be joined into a single paragraph.
+ Each warning description will start on a new line.
+ Alternatively, one \\invariant command may mention
+ several invariants. The \\invariant command ends when a blank line or some other
+ sectioning command is encountered.
+
+<hr>
\subsection cmdpar \par (paragraph title) { paragraph }
\addindex \par
@@ -581,32 +619,33 @@ Doxygen. Unrecognized commands are treated as normal text.
example.
<hr>
-\subsection cmdexception \exception <exception-object> { exception description }
+\subsection cmdpost \post { description of the postcondition }
- \addindex \exception
- Starts an exception description for an exception object with name
- \<exception-object\>. Followed by a description of the exception.
- The existence of the exception object is not checked.
+ \addindex \post
+ Starts a paragraph where the postcondition of an entity can be described.
+ The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
- Multiple adjacent \\exception commands will be joined into a single paragraph.
- Each parameter description will start on a new line.
- The \\exception description ends when a blank line or some other
- sectioning command is encountered. See section \ref cmdfn "\\fn" for an
- example.
-
- \par Note:
- the tag \\exceptions is a synonym for this tag.
+ Multiple adjacent \\post commands will be joined into a single paragraph.
+ Each warning description will start on a new line.
+ Alternatively, one \\post command may mention
+ several postconditions. The \\post command ends when a blank line or some other
+ sectioning command is encountered.
<hr>
-\subsection cmdthrow \throw <exception-object> { exception description }
-
- \addindex \throw
- Synonymous to \\exception (see section \ref cmdexception "\\exception").
-
- \par Note:
- the tag \\throws is a synonym for this tag.
+\subsection cmdpre \pre { description of the precondition }
+ \addindex \pre
+ Starts a paragraph where the precondition of an entity can be described.
+ The paragraph will be indented.
+ The text of the paragraph has no special internal structure. All visual
+ enhancement commands may be used inside the paragraph.
+ Multiple adjacent \\pre commands will be joined into a single paragraph.
+ Each warning description will start on a new line.
+ Alternatively, one \\pre command may mention
+ several preconditions. The \\pre command ends when a blank line or some other
+ sectioning command is encountered.
+
<hr>
\subsection cmdreturn \return { description of the return value }
@@ -650,6 +689,15 @@ Doxygen. Unrecognized commands are treated as normal text.
to objects.
<hr>
+\subsection cmdthrow \throw <exception-object> { exception description }
+
+ \addindex \throw
+ Synonymous to \\exception (see section \ref cmdexception "\\exception").
+
+ \par Note:
+ the tag \\throws is a synonym for this tag.
+
+<hr>
\subsection cmdversion \version { version number }
\addindex \version
diff --git a/doc/config.doc b/doc/config.doc
index eaa37e6..6e30f89 100644
--- a/doc/config.doc
+++ b/doc/config.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -58,8 +58,10 @@ followed by the descriptions of the tags grouped by category.
<li> \refitem cfg_cgi_name CGI_NAME
<li> \refitem cfg_cgi_url CGI_URL
<li> \refitem cfg_class_diagrams CLASS_DIAGRAMS
+<li> \refitem cfg_collaboration_graph COLLABORATION_GRAPH
<li> \refitem cfg_cols_in_alpha_index COLS_IN_ALPHA_INDEX
<li> \refitem cfg_compact_latex COMPACT_LATEX
+<li> \refitem cfg_compact_rtf COMPACT_RTF
<li> \refitem cfg_disable_index DISABLE_INDEX
<li> \refitem cfg_doc_abspath DOC_ABSPATH
<li> \refitem cfg_doc_url DOC_URL
@@ -79,7 +81,10 @@ followed by the descriptions of the tags grouped by category.
<li> \refitem cfg_generate_htmlhelp GENERATE_HTMLHELP
<li> \refitem cfg_generate_latex GENERATE_LATEX
<li> \refitem cfg_generate_man GENERATE_MAN
+<li> \refitem cfg_generate_rtf GENERATE_RTF
<li> \refitem cfg_generate_tagfile GENERATE_TAGFILE
+<li> \refitem cfg_graphical_hierarchy GRAPHICAL_HIERARCHY
+<li> \refitem cfg_have_dot HAVE_DOT
<li> \refitem cfg_hide_undoc_classes HIDE_UNDOC_CLASSES
<li> \refitem cfg_hide_undoc_members HIDE_UNDOC_MEMBERS
<li> \refitem cfg_html_align_members HTML_ALIGN_MEMBERS
@@ -87,7 +92,9 @@ followed by the descriptions of the tags grouped by category.
<li> \refitem cfg_html_header HTML_HEADER
<li> \refitem cfg_html_output HTML_OUTPUT
<li> \refitem cfg_html_stylesheet HTML_STYLESHEET
+<li> \refitem cfg_ignore_prefix IGNORE_PREFIX
<li> \refitem cfg_image_path IMAGE_PATH
+<li> \refitem cfg_include_graph INCLUDE_GRAPH
<li> \refitem cfg_include_path INCLUDE_PATH
<li> \refitem cfg_inherit_docs INHERIT_DOCS
<li> \refitem cfg_inline_info INLINE_INFO
@@ -115,6 +122,8 @@ followed by the descriptions of the tags grouped by category.
<li> \refitem cfg_searchengine SEARCHENGINE
<li> \refitem cfg_source_browser SOURCE_BROWSER
<li> \refitem cfg_strip_from_path STRIP_FROM_PATH
+<li> \refitem cfg_rtf_hyperlinks RTF_HYPERLINKS
+<li> \refitem cfg_rtf_output RTF_OUTPUT
<li> \refitem cfg_tab_size TAB_SIZE
<li> \refitem cfg_tagfiles TAGFILES
<li> \refitem cfg_verbatim_headers VERBATIM_HEADERS
@@ -502,7 +511,6 @@ TD.md { background-color: #f2f2ff }
\anchor cfg_html_align_members
<dt>\c HTML_ALIGN_MEMBERS <dd>
-
If the \c HTML_ALIGN_MEMBERS tag is set to \c YES, the members of classes,
files or namespaces will be aligned in HTML using tables. If set to
NO a bullet list will be used.
@@ -513,7 +521,6 @@ intent to support and test the aligned representation.
\anchor cfg_generate_htmlhelp
<dt>\c GENERATE_HTMLHELP <dd>
-
If the \c GENERATE_HTMLHELP tag is set to \c YES then
doxygen generates three additional HTML index files:
\c index.hhp, \c index.hhc, and \c index.hhk. The \c index.hhp is a
@@ -534,20 +541,29 @@ and you can search for words in the documentation
(which basically renders \c doxysearch obsolete on Windows).
The HTML workshop also contains a viewer for compressed HTML files.
+</dl>
+\subsection alphabetical_index Alphabetical index options
+<dl>
+
\anchor cfg_alphabetical_index
<dt>\c ALPHABETICAL_INDEX <dd>
-
If the \c ALPHABETICAL_INDEX tag is set to \c YES, an alphabetical index
of all compounds will be generated. Enable this if the project contains
a lot of classes, structs, unions or interfaces.
\anchor cfg_cols_in_alpha_index
<dt>\c COLS_IN_ALPHA_INDEX <dd>
-
If the alphabetical index is enabled
(see \c 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])
+\anchor cfg_ignore_prefix
+<dt>\c IGNORE_PREFIX <dd>
+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.
+The \c IGNORE_PREFIX tag can be use to specify a prefix that should be ignored
+while generating the index headers.
+
</dl>
\subsection latex_output LaTeX related options
@@ -645,6 +661,44 @@ EXTRA_PACKAGES = times
</dl>
+\subsection rtf_output RTF related options
+<dl>
+\anchor cfg_generate_rtf
+<dt>\c GENERATE_RTF <dd>
+ \addindex GENERATE_RTF
+ If the \c GENERATE_RTF tag is set to \c YES Doxygen will generate RTF output.
+ For now this is experimental and is disabled by default. The RTF
+ output is optimised for Word 97 and may not look too pretty with
+ other readers/editors.
+
+\anchor cfg_rtf_output
+<dt>\c RTF_OUTPUT <dd>
+ \addindex RTF_OUTPUT
+ 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 OUTPUT_DIRECTORY will be
+ put in front of it. If left blank \c rtf will be used as the default path.
+
+\anchor cfg_compact_rtf
+<dt>\c COMPACT_RTF <dd>
+ \addindex COMPACT_RTF
+ If the \c COMPACT_RTF tag is set to \c YES Doxygen generates more compact
+ RTF documents. This may be useful for small projects and may help to
+ save some trees in general.
+
+\anchor cfg_rtf_hyperlinks
+<dt>\c RTF_HYPERLINKS <dd>
+ \addindex RTF_HYPERLINKS
+ If the \c RTF_HYPERLINKS tag is set to \c YES, the RTF that is generated
+ will contain hyperlink fields. The RTF file will
+ contain links (just like the HTML output) instead of page references.
+ This makes the output suitable for online browsing using Word or some other
+ Word compatible reader that support those fields.
+
+ \par note:
+ wordpad (write) and others do not support links.
+
+</dl>
+
\subsection man_output Man page related options
<dl>
@@ -758,7 +812,7 @@ TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
\anchor cfg_allexternals
<dt>\c ALLEXTERNALS <dd>
\addindex ALLEXTERNALS
- if the \c ALLEXTERNALS tag is set to \c YES all external class will be listed
+ If the \c ALLEXTERNALS tag is set to \c YES all external class will be listed
in the class index. If set to \c NO only the inherited external classes
will be listed.
@@ -769,6 +823,41 @@ TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
interpreter (i.e. the result of `<tt>which perl</tt>').
</dl>
+\subsection config_dot Dot options
+<dl>
+
+\anchor cfg_have_dot
+<dt>\c HAVE_DOT <dd>
+ \addindex HAVE_DOT
+ If you set the \c HAVE_DOT tag to \c YES then doxygen will assume the dot tool is
+ available from the path. This tool is part of
+ <a href="http://www.research.att.com/sw/tools/graphviz/">Graphviz</a>, a graph
+ 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)
+
+\anchor cfg_collaboration_graph
+<dt>\c COLLABORATION_GRAPH <dd>
+ \addindex COLLABORATION_GRAPH
+ If the \c COLLABORATION_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen
+ will generate a graph for each documented class showing the direct and
+ indirect implementation dependencies (inheritance, containment, and
+ class references variables) of the class with other documented classes.
+
+\anchor cfg_include_graph
+<dt>\c INCLUDE_GRAPH <dd>
+ \addindex INCLUDE_GRAPH
+ If the \c ENABLE_PREPROCESSING, \c INCLUDE_GRAPH, and \c HAVE_DOT 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
+ documented files.
+
+\anchor cfg_graphical_hierarchy
+<dt>\c GRAPHICAL_HIERARCHY <dd>
+ \addindex GRAPHICAL_HIERATCHY
+ If the \c GRAPHICAL_HIERARCHY and \c HAVE_DOT tags are set to \c YES then
+ doxygen will graphical hierarchy of all classes instead of a textual one.
+
+</dl>
\subsection config_search Search engine options
<dl>
diff --git a/doc/doxygen.sty b/doc/doxygen.sty
index 5e53104..e38ddc8 100644
--- a/doc/doxygen.sty
+++ b/doc/doxygen.sty
@@ -1,7 +1,7 @@
%
% $Id$
%
-% Copyright (C) 1997-1999 by Dimitri van Heesch.
+% Copyright (C) 1997-2000 by Dimitri van Heesch.
%
% Permission to use, copy, modify, and distribute this software and its
% documentation under the terms of the GNU General Public License is hereby
@@ -23,8 +23,8 @@
{\fancyplain{}{\bfseries\rightmark}}
\rhead[\fancyplain{}{\bfseries\leftmark}]
{\fancyplain{}{\bfseries\thepage}}
-\rfoot[\fancyplain{}{\bfseries\scriptsize User Manual for Doxygen $VERSION, written by Dimitri van Heesch \copyright 1997-1998}]{}
-\lfoot[]{\fancyplain{}{\bfseries\scriptsize User Manual for Doxygen $VERSION, written by Dimitri van Heesch \copyright 1997-1998}}
+\rfoot[\fancyplain{}{\bfseries\scriptsize User Manual for Doxygen $VERSION, written by Dimitri van Heesch \copyright 1997-2000}]{}
+\lfoot[]{\fancyplain{}{\bfseries\scriptsize User Manual for Doxygen $VERSION, written by Dimitri van Heesch \copyright 1997-2000}}
\cfoot{}
\newenvironment{CompactList}
{\begin{list}{}{
diff --git a/doc/doxygen_manual.tex b/doc/doxygen_manual.tex
index 01223c4..927eb1a 100644
--- a/doc/doxygen_manual.tex
+++ b/doc/doxygen_manual.tex
@@ -1,7 +1,7 @@
%
% $Id$
%
-% Copyright (C) 1997-1999 by Dimitri van Heesch.
+% Copyright (C) 1997-2000 by Dimitri van Heesch.
%
% Permission to use, copy, modify, and distribute this software and its
% documentation under the terms of the GNU General Public License is hereby
@@ -45,6 +45,10 @@ Written by Dimitri van Heesch\\[2ex]
\part{User Manual}
\input{install}
\input{starting}
+\input{docblocks}
+\input{formulas}
+\input{diagrams}
+\input{preprocessing}
\input{faq}
\input{trouble}
\part{Reference Manual}
diff --git a/doc/doxygen_usage.doc b/doc/doxygen_usage.doc
index ff6f117..47e7431 100644
--- a/doc/doxygen_usage.doc
+++ b/doc/doxygen_usage.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/doxysearch_usage.doc b/doc/doxysearch_usage.doc
index 6024d2a..79a418e 100644
--- a/doc/doxysearch_usage.doc
+++ b/doc/doxysearch_usage.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/doxytag_usage.doc b/doc/doxytag_usage.doc
index ce3eae3..0a4de9c 100644
--- a/doc/doxytag_usage.doc
+++ b/doc/doxytag_usage.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/faq.doc b/doc/faq.doc
index be47ce5..ffcb51a 100644
--- a/doc/faq.doc
+++ b/doc/faq.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -75,6 +75,15 @@ To make doxygen put <br><br>
in the documentation of the class MyClassName regardless of the name of the actual
header file in which the definition of MyClassName is contained.
+If you want doxygen to show that the include file should be included using
+brackets you should type:
+\verbatim
+/*! \class MyClassName include.h "path/include.h"
+ *
+ * Docs for MyClassName
+ */
+\endverbatim
+
<li><b>How can I use tag files in combination with compressed HTML</b>
If you want to refer from one compressed HTML file
@@ -102,6 +111,28 @@ or you can use \c installdox to set the links as follows:
installdox -lb.tag@b.chm::
\endverbatim
+<li><b>I don't like the quick index that is put above each HTML page, what do I do?</b>
+
+You can disable the index by setting DISABLE_INDEX to YES. Then you can
+put in your own header file by writing your own header and feed that to
+HTML_HEADER.
+
+<li><b>The overall HTML output looks different, while I only wanted to
+ use my own html header file</b>
+
+You probably forgot to include the stylesheet <code>doxygen.css</code> that
+doxygen generates. You can include this by putting
+\verbatim
+<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
+\endverbatim
+In the HEAD section of the HTML page.
+
</ol>
+
+\htmlonly
+Go to the <a href="trouble.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
*/
diff --git a/doc/features.doc b/doc/features.doc
index 4381bc7..1984e68 100644
--- a/doc/features.doc
+++ b/doc/features.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -22,17 +22,20 @@
<li>Requires very little overhead from the writer of the documentation.
Plain text will do, but for more fancy or structured output HTML tags
and/or some of doxygen's special commands can be used.
-<li>Supports C++, (Corba or Microsoft) IDL and C sources.
+<li>Supports C++, (Corba and Microsoft) IDL and C sources.
<li>Supports documentation of files, namespaces, classes, structs, unions,
templates, variables, functions, typedefs, enums and defines.
<li>JavaDoc (1.1), Qt-Doc, and KDOC compatible.
<li>Automatically generates class diagrams in HTML (as clickable
image maps) and \f$\mbox{\LaTeX}\f$ (as encapsulated postscript images).
+<li>Using the dot tool of the Graphviz tool kit doxygen can generate
+ include dependency graphs, collaboration diagrams, and
+ graphical class hierarchy graphs.
<li>Allows you to put documentation in the header file (before the
declaration of an entity), source file (before the definition of an entity)
or in a separate file.
<li>Outputs documentation in on-line format (HTML and UNIX man page) and
- off-line format (\f$\mbox{\LaTeX}\f$) simultaniously
+ off-line format (\f$\mbox{\LaTeX}\f$) and RTF simultaniously
(any one can be disabled if desired). Both formats are optimized for
ease of reading. <br>
Furthermore, compressed HTML can be generated from HTML output using
diff --git a/doc/history.doc b/doc/history.doc
index d724966..c0b2305 100644
--- a/doc/history.doc
+++ b/doc/history.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/htmlcmds.doc b/doc/htmlcmds.doc
index 38b1459..e539d7e 100644
--- a/doc/htmlcmds.doc
+++ b/doc/htmlcmds.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/index.doc b/doc/index.doc
index ae16306..9d2053d 100644
--- a/doc/index.doc
+++ b/doc/index.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -26,7 +26,7 @@ Version: $(VERSION)
\addindex license
\addindex GPL
-Copyright &copy; 1997-1999 by
+Copyright &copy; 1997-2000 by
<a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>.<p>
Permission to use, copy, modify, and distribute this software and its
@@ -38,6 +38,10 @@ See the
GNU General Public License</a>
for more details.
<p>
+It is hereby explicitly allowed that this program may be linked against
+<a href="http://www.troll.no/qt">Troll Tech's Qt library</a>,
+and distributed, without the GPL applying to Qt.
+<p>
All output generated by Doxygen is not covered by this license.
<h2>Introduction</h2>
@@ -69,6 +73,11 @@ The first part forms a user manual:
doxygen for your platform.
<li>Section \ref starting tells you how to generate your first piece of
documentation quickly.
+<li>Section \ref docblocks demonstrates the various ways that code can
+ be documented.
+<li>Section \ref formulas shows how to insert formulas in the documentation.
+<li>Section \ref diagrams describes the diagrams and graphs that doxygen can generate.
+<li>Section \ref preprocessing explains how doxygen deals with macro definitions.
<li>Section \ref faq gives answers to frequently asked questions.
<li>Section \ref trouble tells you what to do when you have problems.
</ul>
@@ -136,6 +145,7 @@ Thanks go to:
<li>My brother <a href="http://www.stack.nl/~fidget/index.html">Frank</a>
for rendering the logos.
<li>Harm van der Heijden for adding HTML help support.
+<li>Parker Waerchter for adding the RTF output generator.
<li>Jens Breitenstein, Christophe Bordeaux, Samuel Hägglund, Xet Erixon,
Vlastimil Havran, Ahmed Also Faisal, Alessandro Falappa, Kenji Nagamatsu,
Francisco Oltra Thennet, Olli Korhonen for providing translations into
diff --git a/doc/install.doc b/doc/install.doc
index 78ae4f8..9ee3665 100644
--- a/doc/install.doc
+++ b/doc/install.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -91,6 +91,25 @@ The following binaries should now be available:
generated by doxygen.
</UL>
+To take full advantage of doxygen's features the following additional
+tools should be installed.
+
+<ul>
+<li>\f$\mbox{\LaTeX}\f$:
+ <a href="http://www.tug.org">teTeX 1.0</a> (for Unix) or
+ <a href="ftp://ctan.tug.org/tex-archive/systems/win32/web2c/fptex-0.3/">fpTeX 0.3</a> (for Windows)<br>
+ Needed for LaTeX and PDF output.
+<li><a href="http://www.research.att.com/sw/tools/graphviz/">
+ the Graph visualization toolkit version 1.5</a><br>
+ Needed for the include dependency graphs, the graphical inheritance graphs,
+ and the collaboration graphs.<br>
+ <b>Note:</b> For windows you will have to set the <code>DOTFONTPATH</code> environment
+ variable to include the current directory (e.g. <code>DOTFONTPATH=.</code>)
+<li><a href="http://msdn.microsoft.com/workshop/author/htmlhelp">
+ the HTML help workshop</a> (for Windows only)<br>
+ Needed for compiling compressed HTML output (a.k.a. the new Windows help format).
+</ul>
+
Doxygen was developed and tested under Linux using the following tools:
<ul>
<li>EGCS version 2.91.66
diff --git a/doc/installdox_usage.doc b/doc/installdox_usage.doc
index 11f8710..1689602 100644
--- a/doc/installdox_usage.doc
+++ b/doc/installdox_usage.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/language.doc b/doc/language.doc
index 2eeabf9..bde06ac 100644
--- a/doc/language.doc
+++ b/doc/language.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/output.doc b/doc/output.doc
index 7ddaf8d..2a8f890 100644
--- a/doc/output.doc
+++ b/doc/output.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -27,6 +27,10 @@ The following output formats are \e directly supported by doxygen:
<dd>Generated if \c GENERATE_LATEX is set to \c YES in the configuration file.
<dt><b>Man pages</b>
<dd>Generated if \c GENERATE_MAN is set to \c YES in the configuration file.
+<dt><b>RTF</b>
+<dd>Generated if \c GENERATE_RTF is set to \c YES in the configuration file.<p>
+ Note that the RTF output probably only looks nice with Microsoft's
+ Word 97. If you have success with other programs, please let me know.
</dl>
The following output formats are \e indirectly supported by doxygen:
diff --git a/doc/starting.doc b/doc/starting.doc
index a1fe89b..1b0f0a8 100644
--- a/doc/starting.doc
+++ b/doc/starting.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
@@ -184,6 +184,51 @@ During parsing the following steps take place:
See section \ref htmlcmds for an overview of all supported HTML tags.
</ul>
+Using a number of column aligned minus signs at the start of a
+ line in a comment block will generate a bullet list.
+ Nested lists are also possible.
+ Here is an example:
+\verbatim
+ /*!
+ * A list of events:
+ * - mouse events
+ * - mouse move event
+ * - mouse click event
+ * - mouse double click event\n
+ * More info about the click event.
+ * - keyboard events
+ * - key down event
+ * - key up event
+ *
+ * More text here.
+ */
+\endverbatim
+ The result will be:
+
+ A list of events:
+ - mouse events
+ - mouse move event
+ - mouse click event\n
+ More info about the click event.
+ - mouse double click event
+ - keyboard events
+ - key down event
+ - key up event
+
+ More text here.
+
+If you use tabs within lists, please make sure that \c TAB_SIZE in the
+configuration file is set to the correct tab size.
+
+\htmlonly
+Go to the <a href="docblocks.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
+*/
+
+/*! \page docblocks Documenting the code
+
\subsection specialblock Special documentation blocks
The following types of special documentation blocks are supported by doxygen:
@@ -357,7 +402,13 @@ Here is an example of a the use of these comment blocks:
enums. Furthermore, the structural commands mentioned in the
previous section are ignored inside these comment blocks.
-\subsection formulas Including formulas in the documentation
+\htmlonly
+Go to the <a href="formulas.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
+*/
+/*! \page formulas Including formulas
Doxygen allows you to put \f$\mbox{\LaTeX}\f$ formulas in the
output (this works only for the HTML and \f$\mbox{\LaTeX}\f$ formats,
@@ -420,7 +471,128 @@ from typos in formulas. It may have to be necessary to remove the
file <code>formula.repository</code> that is written in the html directory to
a rid of an incorrect formula
-\subsection preprocessing Preprocessing
+\htmlonly
+Go to the <a href="diagrams.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
+*/
+
+/*! \page diagrams Graphs and diagrams
+
+ Doxygen has build-in support to generate inheritance diagrams for C++
+ classes.
+
+ Doxygen can use the "dot" tool from graphviz 1.5 to generate
+ more advanced diagrams & graphs. Graphviz is an open-sourced,
+ cross-platform graph drawing toolkit from AT&T and Lucent Bell Labs and
+ can be found at http://www.research.att.com/sw/tools/graphviz/
+
+ If you have the "dot" tool available in the path, you can set
+ \ref cfg_have_dot "HAVE_DOT" to \c YES in the configuration file to
+ let doxygen use it.
+
+ Doxygen uses the "dot" tool to generate the following graphs:
+ <ul>
+ <li>if \ref cfg_graphical_hierarchy "GRAPHICAL_HIERARCHY" is set to \c YES,
+ a graphical representation of the class diagram will be drawn, along
+ with the textual one. Currently this feature is supported for HTML only.\n
+ <b>Warning:</b> When you have a very large class hierarchy where many
+ classes derive from a common
+ base class, the resulting image may become too big to handle for some
+ browsers.
+ <li>if \ref cfg_include_graph "INCLUDE_GRAPH" is set to \c YES, an include
+ dependency graph is generated for each documented file that includes at
+ least one other file. This feature is currently supported for HTML and RTF
+ only.
+ <li>if \ref cfg_collaboration_graph "COLLABORATION_GRAPH" is set to YES, a
+ graph is drawn for each documented class and struct that shows:
+ <ul>
+ <li> the inheritance relations with base classes.
+ <li> the usage relations with other structs & classes (e.g.
+ class \c A has a member variable \c m_a of type class \c B, then
+ \c A has an arrow to \c B with \c m_a as label).
+ </ul>
+ </ul>
+
+ The elements in the class diagrams in HTML and RTF
+ have the following meaning:
+ <ul>
+ <li> A yellow box indicates a class. A box can have a
+ little marker in the lower right corner to indicate that the class
+ contains base classes that are hidden. If the box is filled with a
+ dashed pattern the inheritance relation is virtual.
+ <li> A white box indicates that the documentation of the class
+ is currently shown.
+ <li> A grey box indicates an undocumented class.
+ <li> A solid dark blue arrows indicates public inheritance.
+ <li> A dashed dark green arrows indicates protected inheritance.
+ <li> A dotted dark green arrows indicates private inheritance.
+ </ul>
+
+ The elements in the class diagram in \f$\mbox{\LaTeX}\f$ have the
+ following meaning:
+ <ul>
+ <li> A white box indicates a class.
+ A marker in the lower right corner of the box indicates that the
+ class has base classes that are hidden.
+ If the box has a dashed border this indicates virtual inheritance.
+ <li> A solid arrow indicates public inheritance.
+ <li> A dashed arrow indicates protected inheritance.
+ <li> A dotted arrow indicated private inheritance.
+ </ul>
+
+ The elements in the graphs generated by the dot tool have the following
+ meaning:
+ <ul>
+ <li> A white box indicates a class or struct. If the box has a
+ red border this indicates that the class contains related classes
+ that are hidden.
+ <li> A black box indicates that the class' documentation is currently shown.
+ <li> A dark blue arrow indicates an include relation (for the
+ include dependency graph) or public inheritance (for the other graphs).
+ <li> A dark green arrow indicates protected inheritance.
+ <li> A dark red arrow indicates private inheritance.
+ <li> A purple dashed arrow indicated a "usage" relation, the
+ edge of the arrow is labled with the variable(s) responsible for the
+ relation.
+ Class \c A uses class \c B, if class \c A has a member variable \c m
+ of type C, where B is a subtype of C (e.g. C could be \c B, \c B*, \c T<B>* ).
+ </ul>
+
+The reason why classes or structs are sometimes hidden is too prevent images
+to become too large. For the class diagrams the maximum tree width
+is currently 8 elements. For the graphs generated with dot doxygen tries
+to limit the width of the resulting image to 1024 pixels.
+
+Here are a couple of header files that together show the various diagrams
+that doxygen can generate:
+
+<code>diagrams_a.h</code>
+\verbinclude diagrams_a.h
+<code>diagrams_b.h</code>
+\verbinclude diagrams_b.h
+<code>diagrams_c.h</code>
+\verbinclude diagrams_c.h
+<code>diagrams_d.h</code>
+\verbinclude diagrams_d.h
+<code>diagrams_e.h</code>
+\verbinclude diagrams_e.h
+
+ \htmlonly
+ Click <a href="$(DOXYGEN_DOCDIR)/examples/diagrams/html/index.html">here</a>
+ for the corresponding HTML documentation that is generated by doxygen<br>
+ (<code>EXTRACT_ALL</code> = <code>YES</code> is used here).
+ \endhtmlonly
+
+\htmlonly
+Go to the <a href="preprocessing.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
+*/
+
+/*! \page preprocessing Preprocessing
Source files that are used as input to doxygen can be parsed by doxygen's
build-in C-preprocessor.
@@ -482,6 +654,7 @@ of an abstract base class called \c IUnknown:
#define REFIID const IID *
#endif
+
/*! The IUnknown interface */
DECLARE_INTERFACE(IUnknown)
{
@@ -555,15 +728,19 @@ As you can see doxygen's preprocessor is quite powerful, but if you want
even more flexibility you can always write an input filter and specify it
after the \c INPUT_FILTER tag.
-\subsection moreinfo More information
+If you are unsure what the effect of doxygen's preprocessing will be
+you can run doxygen as follows:
+\verbatim
+ doxygen -d Preprocessor
+\endverbatim
+This will instruct doxygen to dump the input sources to standard output after
+preprocessing has been done (Hint: set <code>QUIET = YES</code> and
+<code>WARNINGS = NO</code> in the configuration file to disable any other
+output).
-\addindex QdbtTabular
-For a more elaborate example see <a href="http://www.stack.nl/~dimitri/qdbttabular/doc/html/index.html">
-the documentation of QdbtTabular</a> \latexonly
-({\tt http://www.stack.nl/$\sim$dimitri/qdbttabular/doc/html})\endlatexonly.
\htmlonly
-I hope that was clear. If not, please let me know, so I can improve this document. If you have problems
-take a look at the <a href="faq.html">faq</a> and the <a href="trouble.html">troubleshooting</a> sections.
+Go to the <a href="faq.html">next</a> section or return to the
+ <a href="index.html">index</a>.
\endhtmlonly
*/
diff --git a/doc/todo.doc b/doc/todo.doc
index 1498ef1..faca7cd 100644
--- a/doc/todo.doc
+++ b/doc/todo.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
diff --git a/doc/trouble.doc b/doc/trouble.doc
index a9aaf99..b8f742b 100644
--- a/doc/trouble.doc
+++ b/doc/trouble.doc
@@ -2,7 +2,7 @@
*
* $Id$
*
- * Copyright (C) 1997-1999 by Dimitri van Heesch.
+ * Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby