summaryrefslogtreecommitdiffstats
path: root/doc/faq.doc
blob: 0dae9e5dd1f30d90afef28d498f80f4e909a7938 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
/******************************************************************************
 *
 * 
 *
 * 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 
 * granted. No representations are made about the suitability of this software 
 * for any purpose. It is provided "as is" without express or implied warranty.
 * See the GNU General Public License for more details.
 *
 * All output generated with Doxygen is not covered by this license.
 *
 */
/*! \page faq Frequently Asked Questions

<ol>
<li><b>How do get information on the index page in HTML?</b>
<p>
You should use the \\mainpage command inside a comment block like this:
\verbatim
/*! \mainpage My Personal Index Page
 *
 * \section intro Introduction
 *
 * This is the introduction.
 *
 * \section install Installation
 *
 * \subsection step1 Step 1: Opening the box
 *  
 * etc...
 */
\endverbatim

<li><b>When I set EXTRACT_ALL to NO non of my function are shown in the documentation.</b></li>

In order for global functions, variables, enums, typedefs, and defines 
to be documented you should document the file in which these commands are
located using a (non-empty) comment block containing a \file (or @file) 
command. 

Alternatively, you can put all members in a group (or module)
using the \ingroup command and then document the group using a comment
block containing the \defgroup command.
 
<li><b>How can I avoid that some code fragment is parsed by Doxyen?</b>
<p>
You can use Doxygen's preprocessor for this: 
If you put
\verbatim
#ifndef DOXYGEN_SHOULD_SKIP_THIS

 /* code that must be skipped by Doxygen */

#endif /* DOXYGEN_SHOULD_SKIP_THIS */
\endverbatim
around the blocks that should be hidden and put:
\verbatim
  PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
\endverbatim
in the config file then all blocks should be skipped by Doxygen as long
as <code>PREPROCESSING = YES</code>.

<li><b>How can I make doxygen ignore nasty macro's? </b>

Look at section \ref preprocessing for the answer.

<li><b>How can I change what's after the <code>#include</code> in class documentation?</b>

You can document your class like

\verbatim
/*! \class MyClassName include.h path/include.h
 *
 *  Docs for MyClassName
 */
\endverbatim

To make doxygen put <br><br>
<code>
#include <path/include.h>
</code>

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 
\c a.chm to another compressed HTML file 
called \c b.chm, the
link in \c a.chm must have the following format:
\verbatim
<a href="b.chm::/file.html">
\endverbatim
Unfortunately this only works if both compressed HTML files are in the same 
directory.

As a result you must rename the generated \c index.chm files for all projects
into something unique and put all \c .chm files in one directory.

Suppose you have a project \e a referring to a project \e b using tag file
\c b.tag, then you could rename the \c index.chm for project \e a into
\c a.chm and the \c index.chm for project \e b into \c b.chm. In the 
configuration file for project \e a you write:
\verbatim
TAGFILES = b.tag=b.chm::
\endverbatim
or you can use \c installdox to set the links as follows:
\verbatim
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.

<li><b>Why does doxygen use Qt?</b>

The most important reason is too have a platform abstraction for most 
Unices and Windows by means of the QFile, QFileInfo, QDir, QDate, 
QTime and QIODevice classes. 
Another reason is for the nice and bug free utility classes, like QList, 
QDict, QString, QArray, QTextStream, QRegExp etc. 

</ol>

\htmlonly
Go to the <a href="trouble.html">next</a> section or return to the
 <a href="index.html">index</a>.
\endhtmlonly

*/