Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
doxverilog
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
doxverilog
Commits
df80e278
Commit
df80e278
authored
Jun 10, 2001
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.8.1
parent
fcea664f
Changes
44
Show whitespace changes
Inline
Side-by-side
Showing
44 changed files
with
866 additions
and
417 deletions
+866
-417
INSTALL
INSTALL
+2
-2
Makefile.in
Makefile.in
+3
-1
README
README
+13
-3
VERSION
VERSION
+1
-1
doxywizard.cpp
addon/doxywizard/doxywizard.cpp
+4
-4
configure
configure
+1
-1
Makefile.in
doc/Makefile.in
+2
-2
commands.doc
doc/commands.doc
+2
-2
config.doc
doc/config.doc
+0
-2
diagrams.doc
doc/diagrams.doc
+2
-2
docblocks.doc
doc/docblocks.doc
+7
-4
doxysearch_usage.doc
doc/doxysearch_usage.doc
+2
-2
features.doc
doc/features.doc
+0
-2
index.doc
doc/index.doc
+1
-1
install.doc
doc/install.doc
+4
-4
language.doc
doc/language.doc
+169
-173
translator.pl
doc/translator.pl
+109
-23
autolink.cpp
examples/autolink.cpp
+1
-1
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
config.l
src/config.l
+12
-8
defargs.l
src/defargs.l
+0
-1
diagram.cpp
src/diagram.cpp
+1
-1
doc.l
src/doc.l
+25
-41
dot.cpp
src/dot.cpp
+4
-4
doxygen.cpp
src/doxygen.cpp
+45
-3
formula.cpp
src/formula.cpp
+1
-1
index.cpp
src/index.cpp
+3
-23
mangen.cpp
src/mangen.cpp
+27
-34
memberdef.cpp
src/memberdef.cpp
+29
-10
memberdef.h
src/memberdef.h
+2
-1
memberlist.cpp
src/memberlist.cpp
+10
-2
rtfgen.cpp
src/rtfgen.cpp
+1
-1
scanner.l
src/scanner.l
+5
-1
translator.h
src/translator.h
+1
-1
translator_adapter.h
src/translator_adapter.h
+15
-2
translator_br.h
src/translator_br.h
+156
-3
translator_cz.h
src/translator_cz.h
+4
-4
translator_de.h
src/translator_de.h
+4
-4
translator_dk.h
src/translator_dk.h
+1
-1
translator_es.h
src/translator_es.h
+5
-8
translator_it.h
src/translator_it.h
+1
-1
translator_nl.h
src/translator_nl.h
+175
-13
translator_sk.h
src/translator_sk.h
+5
-8
util.cpp
src/util.cpp
+10
-10
No files found.
INSTALL
View file @
df80e278
DOXYGEN Version 1.2.8
DOXYGEN Version 1.2.8
.1
Please read the installation section of the manual for instructions.
Please read the installation section of the manual for instructions.
--------
--------
Dimitri van Heesch (
04
June 2001)
Dimitri van Heesch (
10
June 2001)
Makefile.in
View file @
df80e278
...
@@ -47,10 +47,12 @@ distclean: clean
...
@@ -47,10 +47,12 @@ distclean: clean
install
:
doxywizard_install
install
:
doxywizard_install
$(INSTTOOL)
-d
$(INSTALL)
/bin
$(INSTTOOL)
-d
$(INSTALL)
/bin
$(INSTTOOL)
-d
$(DOCDIR)
$(INSTTOOL)
-m
755 bin/doxygen
$(INSTALL)
/bin
$(INSTTOOL)
-m
755 bin/doxygen
$(INSTALL)
/bin
$(INSTTOOL)
-m
755 bin/doxytag
$(INSTALL)
/bin
$(INSTTOOL)
-m
755 bin/doxytag
$(INSTALL)
/bin
$(INSTTOOL)
-m
755 bin/doxysearch
$(INSTALL)
/bin
$(INSTTOOL)
-m
755 bin/doxysearch
$(INSTALL)
/bin
install_docs
:
$(INSTTOOL)
-d
$(DOCDIR)
cp
-r
doc
$(DOCDIR)
cp
-r
doc
$(DOCDIR)
cp
-r
examples
$(DOCDIR)
cp
-r
examples
$(DOCDIR)
echo
"DOXYGEN =
$(INSTALL)
"
>
$(DOCDIR)
/doc/Makefile
echo
"DOXYGEN =
$(INSTALL)
"
>
$(DOCDIR)
/doc/Makefile
...
...
README
View file @
df80e278
DOXYGEN Version 1.2.8
DOXYGEN Version 1.2.8
.1
Please read INSTALL for compilation instructions.
Please read INSTALL for compilation instructions.
The latest version of doxygen can be obtained at
The latest version of doxygen can be obtained at
http://www.stack.nl/~dimitri/doxygen
http://www.doxygen.org/
There are two mailing lists
doxygen-users@lists.sourceforge.net
doxygen-develop@lists.sourceforge.net
please follow the link in
http://sourceforge.net/projects/doxygen
to subscribe to the lists or to visit the archives.
Enjoy,
Enjoy,
Dimitri van Heesch (
04
June 2001)
Dimitri van Heesch (
dimitri@stack.nl) (10
June 2001)
VERSION
View file @
df80e278
1.2.8
1.2.8
.1
addon/doxywizard/doxywizard.cpp
View file @
df80e278
/******************************************************************************
/******************************************************************************
*
*
*
$Id$
*
*
*
* Copyright (C) 1997-2001 by Dimitri van Heesch.
* Copyright (C) 1997-2001 by Dimitri van Heesch.
*
*
...
@@ -98,7 +98,7 @@ static bool saveConfig( QString saveFile )
...
@@ -98,7 +98,7 @@ static bool saveConfig( QString saveFile )
return
FALSE
;
// failure
return
FALSE
;
// failure
}
}
Config
::
instance
()
->
writeTemplate
(
&
f
,
TRUE
);
// write brief config file
Config
::
instance
()
->
writeTemplate
(
&
f
,
TRUE
,
TRUE
);
// write brief config file
return
TRUE
;
// success
return
TRUE
;
// success
}
}
...
@@ -358,7 +358,7 @@ ConfigFile::ConfigFile( QWidget *parent ) : QWidget( parent )
...
@@ -358,7 +358,7 @@ ConfigFile::ConfigFile( QWidget *parent ) : QWidget( parent )
case
ConfigOption
:
:
O_String
:
case
ConfigOption
:
:
O_String
:
{
{
ASSERT
(
page
!=
0
);
ASSERT
(
page
!=
0
);
InputString
::
StringMode
sm
;
InputString
::
StringMode
sm
=
InputString
::
StringFree
;
switch
(((
ConfigString
*
)
option
)
->
widgetType
())
switch
(((
ConfigString
*
)
option
)
->
widgetType
())
{
{
case
ConfigString
:
:
String
:
sm
=
InputString
::
StringFree
;
break
;
case
ConfigString
:
:
String
:
sm
=
InputString
::
StringFree
;
break
;
...
@@ -400,7 +400,7 @@ ConfigFile::ConfigFile( QWidget *parent ) : QWidget( parent )
...
@@ -400,7 +400,7 @@ ConfigFile::ConfigFile( QWidget *parent ) : QWidget( parent )
case
ConfigOption
:
:
O_List
:
case
ConfigOption
:
:
O_List
:
{
{
ASSERT
(
page
!=
0
);
ASSERT
(
page
!=
0
);
InputStrList
::
ListMode
lm
;
InputStrList
::
ListMode
lm
=
InputStrList
::
ListString
;
switch
(((
ConfigList
*
)
option
)
->
widgetType
())
switch
(((
ConfigList
*
)
option
)
->
widgetType
())
{
{
case
ConfigList
:
:
String
:
lm
=
InputStrList
::
ListString
;
break
;
case
ConfigList
:
:
String
:
lm
=
InputStrList
::
ListString
;
break
;
...
...
configure
View file @
df80e278
...
@@ -24,7 +24,7 @@ f_dot=NO
...
@@ -24,7 +24,7 @@ f_dot=NO
f_perl
=
NO
f_perl
=
NO
f_plf_auto
=
NO
f_plf_auto
=
NO
f_prefix
=
/usr
f_prefix
=
/usr
f_insttool
=
install
f_insttool
=
g
install
f_english
=
NO
f_english
=
NO
f_wizard
=
NO
f_wizard
=
NO
f_xmlgen
=
NO
f_xmlgen
=
NO
...
...
doc/Makefile.in
View file @
df80e278
#
#
#
$Id$
#
#
#
# Copyright (C) 1997-2001 by Dimitri van Heesch.
# Copyright (C) 1997-2001 by Dimitri van Heesch.
#
#
...
@@ -30,7 +30,7 @@ clean:
...
@@ -30,7 +30,7 @@ clean:
language
:
language.doc
language
:
language.doc
language.doc
:
maintainers.txt language.tpl translator.pl
language.doc
:
$(wildcard ../src/translator*.h)
maintainers.txt language.tpl translator.pl
$(PERL)
translator.pl
$(PERL)
translator.pl
FORCE
:
FORCE
:
doc/commands.doc
View file @
df80e278
...
@@ -1439,9 +1439,9 @@ Public/Protected/Private/... section.
...
@@ -1439,9 +1439,9 @@ Public/Protected/Private/... section.
\warning The image format for HTML is limited to what your
\warning The image format for HTML is limited to what your
browser supports. For \f$\mbox{\LaTeX}\f$ the image format
browser supports. For \f$\mbox{\LaTeX}\f$ the image format
must be Encapsulated PostScipt (eps).
must be Encapsulated PostSc
r
ipt (eps).
<br><br>
<br><br>
d
oxygen does not check if the image is in the correct format.
D
oxygen does not check if the image is in the correct format.
So \e you have to make sure this is the case!
So \e you have to make sure this is the case!
<hr>
<hr>
...
...
doc/config.doc
View file @
df80e278
...
@@ -16,8 +16,6 @@
...
@@ -16,8 +16,6 @@
*/
*/
/*
! \page config Configuration
/*
! \page config Configuration
\
section
config
Configuration
\
subsection
config_format
Format
\
subsection
config_format
Format
A
configuration
file
is
a
free
-
form
ASCII
text
file
with
a
structure
that
A
configuration
file
is
a
free
-
form
ASCII
text
file
with
a
structure
that
...
...
doc/diagrams.doc
View file @
df80e278
...
@@ -90,8 +90,8 @@
...
@@ -90,8 +90,8 @@
<li> A \b white box indicates a class or struct or file.
<li> A \b white box indicates a class or struct or file.
<li> A box with a \b red border indicates a node that has
<li> A box with a \b red border indicates a node that has
\e more arrows than are shown!
\e more arrows than are shown!
In o
rd
er words: the graph is \e truncated with respect to this node.
In o
th
er words: the graph is \e truncated with respect to this node.
The reason a graph is sometimes truncated is to prevent images
The reason
why
a graph is sometimes truncated is to prevent images
from becoming too large.
from becoming too large.
For the graphs generated with dot doxygen tries
For the graphs generated with dot doxygen tries
to limit the width of the resulting image to 1024 pixels.
to limit the width of the resulting image to 1024 pixels.
...
...
doc/docblocks.doc
View file @
df80e278
...
@@ -180,16 +180,19 @@ additional comment blocks:
...
@@ -180,16 +180,19 @@ additional comment blocks:
\verbatim
\verbatim
/*!< ... */
/*!< ... */
\endverbatim
\endverbatim
This block can be used to put a Qt style documentation blocks after a member.
This block can be used to put a Qt style detailed
The one line version look as follows:
documentation block after a member.
The one line brief description looks as follows:
\verbatim
\verbatim
//!< ...
//!< ...
\endverbatim
\endverbatim
There are also JavaDoc versions:
There are also JavaDoc versions
for detailed documentation
:
\verbatim
\verbatim
/**< ... */
/**< ... */
\endverbatim
\endverbatim
and
(where the first sentence is the brief description
if \c JAVADOC_AUTOBRIEF is set to \c YES)
and there is a separate brief description as well:
\verbatim
\verbatim
///< ...
///< ...
\endverbatim
\endverbatim
...
...
doc/doxysearch_usage.doc
View file @
df80e278
...
@@ -98,7 +98,7 @@ follow these steps:
...
@@ -98,7 +98,7 @@ follow these steps:
Consult the manual of your HTTP daemon or your system administrator to
Consult the manual of your HTTP daemon or your system administrator to
find out where this directory resides on your system.
find out where this directory resides on your system.
<li>Goto the directory where the generated HTML files are located and run
<li>Go
to the directory where the generated HTML files are located and run
doxytag as follows:
doxytag as follows:
<pre>doxytag -s search.idx</pre>
<pre>doxytag -s search.idx</pre>
This will create a search index with the name <code>search.idx</code>.
This will create a search index with the name <code>search.idx</code>.
...
@@ -120,7 +120,7 @@ Using <code>doxytag</code> and <code>doxysearch</code> it is possible to create
...
@@ -120,7 +120,7 @@ Using <code>doxytag</code> and <code>doxysearch</code> it is possible to create
the Qt documentation, without needing the sources!
the Qt documentation, without needing the sources!
This can be done by carefully following these steps:
This can be done by carefully following these steps:
<ol>
<ol>
<li>Goto the html directory of the Qt-distribution:
<li>Go
to the html directory of the Qt-distribution:
<pre>cd $QTDIR/html</pre>
<pre>cd $QTDIR/html</pre>
<li>Generate the search index by typing:
<li>Generate the search index by typing:
<pre>doxytag -s search.idx</pre>
<pre>doxytag -s search.idx</pre>
...
...
doc/features.doc
View file @
df80e278
...
@@ -16,8 +16,6 @@
...
@@ -16,8 +16,6 @@
*/
*/
/*! \page features Features
/*! \page features Features
\section features Features
\addindex features
\addindex features
<UL>
<UL>
<li>Requires very little overhead from the writer of the documentation.
<li>Requires very little overhead from the writer of the documentation.
...
...
doc/index.doc
View file @
df80e278
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
* input used in their production; they are not affected by this license.
* input used in their production; they are not affected by this license.
*
*
*/
*/
/*! \page index
Index
/*! \page index
\if logo_on
\if logo_on
<center>
<center>
\htmlonly
\htmlonly
...
...
doc/install.doc
View file @
df80e278
...
@@ -164,7 +164,7 @@ Compilation is now done by performing the following steps:
...
@@ -164,7 +164,7 @@ Compilation is now done by performing the following steps:
Binaries are installed in the directory <code>\<prefix\>/bin</code>,
Binaries are installed in the directory <code>\<prefix\>/bin</code>,
documentation and examples in the directory
documentation and examples in the directory
<code>\<prefix\>/share/doc/packages/doxygen</code> (use
<code>\<prefix\>/share/doc/packages/doxygen</code> (use
<code>
DOCDIR\\<path\></code> after <code>make
</code> to change this).
<code>
make install DOCDIR=\<path\>
</code> to change this).
<code>\<prefix\></code> defaults to /usr but can be changed with
<code>\<prefix\></code> defaults to /usr but can be changed with
the <code>--prefix</code> option of the configure script.
the <code>--prefix</code> option of the configure script.
...
@@ -274,7 +274,7 @@ ce_parse.cpp:
...
@@ -274,7 +274,7 @@ ce_parse.cpp:
I tried compiling doxygen only with Sun's C++ WorkShop Compiler
I tried compiling doxygen only with Sun's C++ WorkShop Compiler
version 5.0 (I used <code>./configure --platform solaris-cc</code>)
version 5.0 (I used <code>./configure --platform solaris-cc</code>)
Qt-2.x.
x
is required for this compiler (Qt-1.44 has problems with the bool
Qt-2.x.
y
is required for this compiler (Qt-1.44 has problems with the bool
type).
type).
Compiling the \c doxygen binary went ok, but while linking <code>doxytag</code> I got a
Compiling the \c doxygen binary went ok, but while linking <code>doxytag</code> I got a
...
@@ -386,7 +386,7 @@ Here is what is required:
...
@@ -386,7 +386,7 @@ Here is what is required:
steps.
steps.
<li>From Doxygen-1.2.2-20001015 onwards, the distribution includes the part
<li>From Doxygen-1.2.2-20001015 onwards, the distribution includes the part
of Qt-2.x.
x
that is needed for to compile doxygen, doxytag,
of Qt-2.x.
y
that is needed for to compile doxygen, doxytag,
and doxysearch. The Windows specific part were also created.
and doxysearch. The Windows specific part were also created.
As a result doxygen can be compiled on systems without X11 or the
As a result doxygen can be compiled on systems without X11 or the
commerical version of Qt.
commerical version of Qt.
...
@@ -497,7 +497,7 @@ Compilation is now done by performing the following steps:
...
@@ -497,7 +497,7 @@ Compilation is now done by performing the following steps:
\subsection install_bin_windows Installating the binaries on Windows
\subsection install_bin_windows Installating the binaries on Windows
There is no fancy installation procedure at the moment (
I
f anyone wants
There is no fancy installation procedure at the moment (
i
f anyone wants
to add it please let me know).
to add it please let me know).
To install doxygen, just copy the binaries from the <code>bin</code> directory
To install doxygen, just copy the binaries from the <code>bin</code> directory
...
...
doc/language.doc
View file @
df80e278
/******************************************************************************
/******************************************************************************
* Warning: this file was generated from the language.tpl template
* and the maintainers.txt files by the translator.pl script.
*
*
* Do not edit this file. Edit the above mentioned files!
*
*
*
*
* Copyright (C) 1997-2001 by Dimitri van Heesch.
* Copyright (C) 1997-2001 by Dimitri van Heesch.
...
@@ -22,9 +25,18 @@ Doxygen has support for multiple languages. This means
...
@@ -22,9 +25,18 @@ Doxygen has support for multiple languages. This means
that the text fragments that doxygen generates can changed into languages
that the text fragments that doxygen generates can changed into languages
other than English (the default) at configuration time.
other than English (the default) at configuration time.
<p>
<p>
Currently, supported for over 20 languages is available.
Currently (version unknown), 23 languages
are supported (sorted alphabetically):
Brazilian Portuguese, Chinese, Croatian, Czech, Danish,
Dutch, English, Finnish, French, German,
Hungarian, Italian, Japanese, Korean, Norwegian,
Polish, Portuguese, Romanian, Russian, Slovak,
Slovene, Spanish, and Swedish.
Here is a list of the languages and their current maintainers:
The table of information related to the supported languages follows.
It is sorted by language alphabetically. The <B>Status</B> column
was generated from sources and shows approximately the last version
when the translator was updated.
<p>
<p>
\htmlonly
\htmlonly
...
@@ -37,184 +49,145 @@ Here is a list of the languages and their current maintainers:
...
@@ -37,184 +49,145 @@ Here is a list of the languages and their current maintainers:
<TD ><b><font size=+1 color="#ffffff"> Maintainer </font></b></TD>
<TD ><b><font size=+1 color="#ffffff"> Maintainer </font></b></TD>
<TD ><b><font size=+1 color="#ffffff"> Contact address </font>
<TD ><b><font size=+1 color="#ffffff"> Contact address </font>
<font size=-2 color="#ffffff">(remove the NOSPAM.)</font></b></TD>
<font size=-2 color="#ffffff">(remove the NOSPAM.)</font></b></TD>
<TD ><b><font size=+1 color="#ffffff"> Status </font></b></TD>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Brazilian</TD>
German
<TD>Fabio "FJTC" Jun Takada Chino</TD>
</TD>
<TD>chino@NOSPAM.grad.icmc.sc.usp.br</TD>
<TD>
<TD>up-to-date</TD>
Jens Breitenstein
</TD>
<TD>
<a href="mailto:Jens.Breitenstein@NOSPAM.tlc.de">
Jens.Breitenstein@NOSPAM.tlc.de</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Chinese</TD>
French
<TD>Wang Weihan</TD>
</TD>
<TD>wangweihan@NOSPAM.capinfo.com.cn</TD>
<TD>
<TD>1.2.1</TD>
Christophe Bordeux
</TD>
<TD>
<a href="mailto:bordeux@NOSPAM.lig.di.epfl.ch">
bordeux@NOSPAM.lig.di.epfl.ch</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Croatian</TD>
Swedish
<TD>Boris Bralo</TD>
</TD>
<TD>boris.bralo@NOSPAM.zg.tel.hr</TD>
<TD>
<TD>up-to-date</TD>
Samuel Hgglund<BR>
XeT Erixon
</TD>
<TD>
<a href="mailto:sahag96@NOSPAM.nts.mh.se">
sahag96@NOSPAM.nts.mh.se</a><br>
<a href="mailto:xet@NOSPAM.hem.passagen.se">
xet@NOSPAM.hem.passagen.se</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Czech</TD>
Czech
<TD>Petr Přikryl<br>Vlastimil Havran</TD>
</TD>
<TD>prikrylp@NOSPAM.skil.cz<br>havran@NOSPAM.fel.cvut.cz</TD>
<TD>
<TD>up-to-date</TD>
Petr Prikryl<BR>
Vlastimil Havran
</TD>
<TD>
<a href="mailto:prikrylp@NOSPAM.skil.cz">
prikrylp@NOSPAM.skil.cz</a>
<a href="mailto:havran@NOSPAM.fel.cvut.cz">
havran@NOSPAM.fel.cvut.cz</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Danish</TD>
Italian
<TD>Erik Søe Sørensen</TD>
</TD>
<TD>erik@NOSPAM.mail.nu</TD>
<TD>
<TD>1.2.7</TD>
Ahmed Aldo Faisal<br>
Alessandro Falappa
</TD>
<TD>
<a href="mailto:aaf23@NOSPAM.cam.ac.uk">
aaf23@NOSPAM.cam.ac.uk</a><br>
<a href="mailto:a.falappa@NOSPAM.flashnet.it">
a.falappa@NOSPAM.flashnet.it</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Dutch</TD>
Japanese
<TD>Dimitri van Heesch</TD>
</TD>
<TD>dimitri@NOSPAM.stack.nl</TD>
<TD>
<TD>up-to-date</TD>
Kenji Nagamatsu
</TD>
<TD>
<a href="mailto:naga@NOSPAM.joyful.club.ne.jp">
naga@NOSPAM.joyful.club.ne.jp</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>English</TD>
Spanish
<TD>Dimitri van Heesch</TD>
</TD>
<TD>dimitri@NOSPAM.stack.nl</TD>
<TD>
<TD>up-to-date</TD>
Francisco Oltra Thennet
</TD>
<TD>
<a href="mailto:foltra@NOSPAM.puc.cl">
foltra@NOSPAM.puc.cl</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Finnish</TD>
Finnish
<TD>Olli Korhonen</TD>
</TD>
<TD>Olli.Korhonen@NOSPAM.ccc.fi</TD>
<TD>
<TD>1.0.0</TD>
Olli Korhonen
</TD>
<TD>
<a href="mailto:Olli.Korhonen@NOSPAM.ccc.fi">
Olli.Korhonen@NOSPAM.ccc.fi</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>French</TD>
Russian
<TD>Christophe Bordeux</TD>
</TD>
<TD>bordeux@NOSPAM.lig.di.epfl.ch</TD>
<TD>
<TD>1.2.0</TD>
Alexandr Chelpanov
</TD>
<TD>
<a href="mailto:cav@NOSPAM.cryptopro.ru">
cav@NOSPAM.cryptopro.ru</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>German</TD>
Korean
<TD>Jens Seidel<br>Jens Breitenstein</TD>
</TD>
<TD>jensseidel@NOSPAM.users.sourceforge.net<br>Jens.Breitenstein@NOSPAM.tlc.de</TD>
<TD>
<TD>up-to-date</TD>
Richard Kim
</TD>
<TD>
<a href="mailto:ryk@NOSPAM.dspwiz.com">
ryk@NOSPAM.dspwiz.com</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Hungarian</TD>
Hungarian
<TD>Földvári György</TD>
</TD>
<TD>foldvari@NOSPAM.diatronltd.com</TD>
<TD>
<TD>1.2.1</TD>
Fldvri Gyrgy
</TD>
<TD>
<a href="mailto:foldvari@NOSPAM.diatronltd.com">
foldvari@NOSPAM.diatronltd.com</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Italian</TD>
Croatian
<TD>Ahmed Aldo Faisal<br>Alessandro Falappa</TD>
</TD>
<TD>aaf23@NOSPAM.cam.ac.uk<br>a.falappa@NOSPAM.flashnet.it</TD>
<TD>
<TD>1.2.7</TD>
Boris Bralo
</TD>
<TD>
<a href="mailto:boris.bralo@NOSPAM.zg.tel.hr">
boris.bralo@NOSPAM.zg.tel.hr</a>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Japanese</TD>
Polish
<TD>Kenji Nagamatsu</TD>
</TD>
<TD>naga@NOSPAM.joyful.club.ne.jp</TD>
<TD>
<TD>1.2.5</TD>
Grzegorz Kowal
</TR>
</TD>
<TR BGCOLOR="#ffffff">
<TD>
<TD>Korean</TD>
<a href="mailto:g_kowal@NOSPAM.poczta.onet.pl">
<TD>Richard Kim</TD>
g_kowal@NOSPAM.poczta.onet.pl</a>
<TD>ryk@NOSPAM.dspwiz.com</TD>
</TD>
<TD>1.1.0</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Norwegian</TD>
<TD>Lars Erik Jordet</TD>
<TD>larsej@NOSPAM.stud.ifd.hibu.no</TD>
<TD>1.2.2</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Polish</TD>
<TD>Grzegorz Kowal</TD>
<TD>g_kowal@NOSPAM.poczta.onet.pl</TD>
<TD>1.2.1</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Portuguese</TD>
<TD>Rui Godinho Lopes</TD>
<TD>ruiglopes@NOSPAM.yahoo.com</TD>
<TD>1.1.5</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Romanian</TD>
<TD>Alexandru Iosup</TD>
<TD>aiosup@NOSPAM.yahoo.com</TD>
<TD>1.2.1</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Russian</TD>
<TD>Alexandr Chelpanov</TD>
<TD>cav@NOSPAM.cryptopro.ru</TD>
<TD>up-to-date</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Slovak</TD>
<TD>Stanislav Kudlac</TD>
<TD>qwerty1@NOSPAM.pobox.sk</TD>
<TD>1.2.7</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Slovene</TD>
<TD>Matjaz Ostroversnik</TD>
<TD>matjaz.ostroversnik@NOSPAM.zrs-tk.si</TD>
<TD>1.1.5</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Spanish</TD>
<TD>Francisco Oltra Thennet</TD>
<TD>foltra@NOSPAM.puc.cl</TD>
<TD>1.2.7</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>Swedish</TD>
Dutch
<TD>Samuel Häagglund<br>XeT Erixon</TD>
</TD>
<TD>sahag96@NOSPAM.nts.mh.se<br>xet@NOSPAM.hem.passagen.se</TD>
<TD>
<TD>1.0.0</TD>
Dimitri van Heesch
</TD>
<TD>
<a href="mailto:dimitri@NOSPAM.stack.nl">
dimitri@NOSPAM.stack.nl</a>
</TD>
</TR>
</TR>
</TABLE>
</TABLE>
</TD>
</TD>
...
@@ -222,43 +195,66 @@ Here is a list of the languages and their current maintainers:
...
@@ -222,43 +195,66 @@ Here is a list of the languages and their current maintainers:
</TABLE>
</TABLE>
\endhtmlonly
\endhtmlonly
\latexonly
\latexonly
\begin{tabular}{|l|l|l|}
\begin{tabular}{|l|l|l|l|}
\hline
{\bf Language} & {\bf Maintainer} & {\bf Contact address} & {\bf Status} \\
\hline
\hline
Brazilian & Fabio "FJTC" Jun Takada Chino & {\tt chino@grad.icmc.sc.usp.br} & up-to-date \\
\hline
\hline
{\bf Language} & {\bf Maintainer} & {Contact address}
\\
Chinese & Wang Weihan & {\tt wangweihan@capinfo.com.cn} & 1.2.1
\\
\hline
\hline
German & Jens Breitenstein & {\tt Jens.Breitenstein@tlc.de}
\\
Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr} & up-to-date
\\
\hline
\hline
French & Christophe Bordeux & {\tt bordeux@lig.di.epfl.ch} \\
Czech & Petr P\v{r}ikryl & {\tt prikrylp@skil.cz} & up-to-date \\
& Vlastimil Havran & {\tt havran@fel.cvut.cz} & \\
\hline
\hline
Swedish & Samuel H\"agglund & {\tt sahag96@nts.mh.se} \\
Danish & Erik S\o{}e S\o{}rensen & {\tt erik@mail.nu} & 1.2.7 \\
& XeT Erixon & {\tt xet@hem.passagen.se} \\
\hline
\hline
Czech & Petr Prikryl & {\tt prikrylp@skil.cz} \\
Dutch & Dimitri van Heesch & {\tt dimitri@stack.nl} & up-to-date \\
& Vlastimil Havran & {\tt havran@fel.cvut.cz} \\
\hline
\hline
Italian & Ahmed Aldo Faisal & {\tt aaf23@cam.ac.uk} \\
English & Dimitri van Heesch & {\tt dimitri@stack.nl} & up-to-date \\
& Alessandro Falappa & {\tt a.falappa@flashnet.it} \\
\hline
\hline
Japanese & Kenji Nagamatsu & {\tt naga@joyful.club.ne.jp}
\\
Finnish & Olli Korhonen & {\tt Olli.Korhonen@ccc.fi} & 1.0.0
\\
\hline
\hline
Spanish & Francisco Oltra Thennet & {\tt foltra@puc.cl}
\\
French & Christophe Bordeux & {\tt bordeux@lig.di.epfl.ch} & 1.2.0
\\
\hline
\hline
Finnish & Olli Korhonen & {\tt Olli.Korhonen@ccc.fi} \\
German & Jens Seidel & {\tt jensseidel@users.sourceforge.net} & up-to-date \\
& Jens Breitenstein & {\tt Jens.Breitenstein@tlc.de} & \\
\hline
\hline
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru}
\\
Hungarian & F\"{o}ldv\'{a}ri Gy\"{o}rgy & {\tt foldvari@diatronltd.com} & 1.2.1
\\
\hline
\hline
Korean & Richard Kim & {\tt ryk@dspwiz.com} \\
Italian & Ahmed Aldo Faisal & {\tt aaf23@cam.ac.uk} & 1.2.7 \\
& Alessandro Falappa & {\tt a.falappa@flashnet.it} & \\
\hline
\hline
Hungarian & Fldvri Gyrgy & {\tt foldvari@diatronltd.com}
\\
Japanese & Kenji Nagamatsu & {\tt naga@joyful.club.ne.jp} & 1.2.5
\\
\hline
\hline
Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr}
\\
Korean & Richard Kim & {\tt ryk@dspwiz.com} & 1.1.0
\\
\hline
\hline
Polish & Grzegorz Kowal & {\tt g\_kowal@poczta.onet.pl}
\\
Norwegian & Lars Erik Jordet & {\tt larsej@stud.ifd.hibu.no} & 1.2.2
\\
\hline
\hline
Dutch & Dimitri van Heesch & {\tt dimitri@stack.nl} \\
Polish & Grzegorz Kowal & {\tt g\_kowal@poczta.onet.pl} & 1.2.1 \\
\hline
Portuguese & Rui Godinho Lopes & {\tt ruiglopes@yahoo.com} & 1.1.5 \\
\hline
Romanian & Alexandru Iosup & {\tt aiosup@yahoo.com} & 1.2.1 \\
\hline
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & up-to-date \\
\hline
Slovak & Stanislav Kudlac & {\tt qwerty1@pobox.sk} & 1.2.7 \\
\hline
Slovene & Matjaz Ostroversnik & {\tt matjaz.ostroversnik@zrs-tk.si} & 1.1.5 \\
\hline
Spanish & Francisco Oltra Thennet & {\tt foltra@puc.cl} & 1.2.7 \\
\hline
Swedish & Samuel H\"{a}agglund & {\tt sahag96@nts.mh.se} & 1.0.0 \\
& XeT Erixon & {\tt xet@hem.passagen.se} & \\
\hline
\hline
\end{tabular}
\end{tabular}
\endlatexonly
\endlatexonly
Have a look at <a href="../doc/translator_report.txt"
><code>doxygen/doc/translator_report.txt</code></a> for more details.
<p>
<p>
Most people on the list have indicated that they were also busy
Most people on the list have indicated that they were also busy
...
@@ -348,7 +344,7 @@ maintenance is needed. By looking at the adapter class itself (and its base
...
@@ -348,7 +344,7 @@ maintenance is needed. By looking at the adapter class itself (and its base
classes) you can easily see which methods need to be updated.
classes) you can easily see which methods need to be updated.
To update a language simply make your translator class derive from
To update a language simply make your translator class derive from
TranslatorAdapterBase
and provide translations for the methods that
the abstract class Translator
and provide translations for the methods that
were previously provided by the adapter class (and its base classes).
were previously provided by the adapter class (and its base classes).
*/
*/
...
...
doc/translator.pl
View file @
df80e278
...
@@ -33,6 +33,11 @@
...
@@ -33,6 +33,11 @@
# 2001/05/18
# 2001/05/18
# - Character entity ø recognized in maintainers.txt.
# - Character entity ø recognized in maintainers.txt.
#
#
# 2001/06/06
# - Implementation of the methods recognized even when the
# argument list does not contain argument identifiers
# (i.e., when it contains type information only).
#
################################################################
################################################################
require
5.005
;
require
5.005
;
...
@@ -59,9 +64,9 @@ my $fmaintainers = "maintainers.txt"; # database of local lang. maintainers
...
@@ -59,9 +64,9 @@ my $fmaintainers = "maintainers.txt"; # database of local lang. maintainers
################################################################
################################################################
# GetPureVirtual returns
a hash
of pure virtual method prototypes
# GetPureVirtual returns
the list
of pure virtual method prototypes
#
in a hash where the key is the method prototype, and the value
#
as separate strings (one prototype, one line, one list item).
#
is 1.
The input argument is the full name of the source file.
# The input argument is the full name of the source file.
#
#
sub
GetPureVirtualFrom
##{{{
sub
GetPureVirtualFrom
##{{{
{
{
...
@@ -120,15 +125,59 @@ sub GetPureVirtualFrom ##{{{
...
@@ -120,15 +125,59 @@ sub GetPureVirtualFrom ##{{{
#
#
$cont
=~
s{^virtual\s+}{}mg
;
$cont
=~
s{^virtual\s+}{}mg
;
# Split the string into array of lines and fill the output hash.
# Split the string into array of lines and return it as
# the output list.
#
return
split
(
/\n/
,
$cont
);
}
##}}}
################################################################
# StripArgIdentifiers takes a method prototype (one line string),
# removes the argument identifiers, and returns only the necessary
# form of the prototype.
#
sub
StripArgIdentifiers
##{{{
{
my
$prototype
=
shift
;
# Get the prototype string.
# Extract the list of arguments from the prototype.
#
#
my
%
result
=
();
$prototype
=~
s{^(.+\()(.*)(\).*)$}{$1#ARGS#$3}
;
my
$a
=
(
defined
$2
)
?
$2
:
''
;
foreach
(
split
(
/\n/
,
$cont
))
{
# Split the list of arguments.
$result
{
$_
}
=
1
;
#
my
@a
=
split
(
/,/
,
$a
);
# Strip each of the arguments.
#
my
@stripped
=
();
foreach
my
$arg
(
@a
)
{
$arg
=~
s{^(\s* # there can be spaces behind comma,
(const\s+)? # possibly const at the beginning
[A-Za-z0-9_:]+ # type identifier can be qualified
(\s*[*&])? # could be reference or pointer
) # ... the above is important,
.*$ # the rest contains the identifier
}
}
{$1}x
;
# remember only the important things
return
%
result
;
push
(
@stripped
,
$arg
);
}
# Join the stripped arguments into one line again, and
# insert it back.
#
$a
=
join
(
','
,
@stripped
);
$prototype
=~
s{#ARGS#}{$a}
;
# Finally, return the stripped prototype.
#
return
$prototype
;
}
}
##}}}
##}}}
...
@@ -599,9 +648,22 @@ xxxTABLE_FOOTxxx
...
@@ -599,9 +648,22 @@ xxxTABLE_FOOTxxx
# Get only the pure virtual methods from the Translator class
# Get only the pure virtual methods from the Translator class
# into a hash structure for later testing present/not present.
# into a hash structure for later testing present/not present.
#
#
my
%
requir
ed
=
GetPureVirtualFrom
(
"$srcdir/translator.h"
);
my
@expect
ed
=
GetPureVirtualFrom
(
"$srcdir/translator.h"
);
# Collect base classes of translators the hash.
# Remove the argument identifiers from the method prototypes
# to get only the required form of the prototype. Fill the
# hash with them. #{{{
#
my
%
required
=
();
foreach
(
@expected
)
{
my
$prototype
=
StripArgIdentifiers
(
$_
);
$required
{
$prototype
}
=
1
;
}
##}}}
# Collect base classes of translators in the hash. CB stands
# for Class and Base.
#
#
my
%
cb
=
();
my
%
cb
=
();
...
@@ -638,21 +700,46 @@ xxxTABLE_FOOTxxx
...
@@ -638,21 +700,46 @@ xxxTABLE_FOOTxxx
#
#
my
@old_methods
=
();
my
@old_methods
=
();
foreach
my
$method
(
@info
)
{
foreach
my
$implemented
(
@info
)
{
if
(
defined
$required
{
$method
})
{
$required
{
$method
}
=
0
;
}
else
{
push
(
@old_methods
,
$method
);
}
# Get only the necessary form of the prototype.
#
my
$prototype
=
StripArgIdentifiers
(
$implemented
);
# Mark as recognized when the prototype is required.
# Otherwise, remember it as old method which is
# implemented, but not required.
#
if
(
defined
$required
{
$prototype
})
{
$required
{
$prototype
}
=
0
;
}
else
{
push
(
@old_methods
,
$implemented
);
}
}
}
##}}}
##}}}
# Loop through the required hash and collect the missing
# Loop through the list of expected methods and collect
# (new) methods. Do this only when it derives from
# the missing (new) methods. Do this only when it derives
# Translator or TranslatorAdapter classes. #{{{
# from Translator or TranslatorAdapter classes (i.e. ignore
# any unusual kind of TranslatorXxxx implementation). #{{{
#
#
my
@missing_methods
=
();
my
@missing_methods
=
();
if
(
$base
=~
m/^Translator(Adapter.*)?$/
)
{
if
(
$base
=~
m/^Translator(Adapter.*)?$/
)
{
foreach
(
keys
%
required
)
{
foreach
my
$method
(
@expected
)
{
if
(
$required
{
$_
})
{
push
(
@missing_methods
,
$_
);
}
# Get the stripped version of the prototype.
#
my
$prototype
=
StripArgIdentifiers
(
$method
);
# If the prototype is stored in the %required
# table, and if it was not marked as implemented,
# then it should be. It is a missing method.
#
if
(
defined
$required
{
$prototype
}
&&
$required
{
$prototype
})
{
push
(
@missing_methods
,
$method
);
}
}
}
}
}
##}}}
##}}}
...
@@ -775,12 +862,13 @@ xxxTABLE_FOOTxxx
...
@@ -775,12 +862,13 @@ xxxTABLE_FOOTxxx
##}}}
##}}}
# List the methods that are expected to be implemented. #{{{
# List the methods that are expected to be implemented. #{{{
#
print
FOUT
"\n\n"
.
'-'
x
70
.
"\n"
;
print
FOUT
"\n\n"
.
'-'
x
70
.
"\n"
;
print
FOUT
"Localized translators are expected to implement "
print
FOUT
"Localized translators are expected to implement "
.
"the following methods\n"
.
"the following methods\n"
.
"(prototypes sorted aplhabetically):\n\n"
;
.
"(prototypes sorted aplhabetically):\n\n"
;
foreach
(
sort
keys
(
%
required
)
)
{
foreach
(
sort
@expected
)
{
print
FOUT
"$_\n"
;
print
FOUT
"$_\n"
;
}
}
##}}}
##}}}
...
@@ -788,10 +876,8 @@ xxxTABLE_FOOTxxx
...
@@ -788,10 +876,8 @@ xxxTABLE_FOOTxxx
# If there are some details for the translators, show them. #{{{
# If there are some details for the translators, show them. #{{{
#
#
if
(
$output
!~
m/^\s*$/
)
{
if
(
$output
!~
m/^\s*$/
)
{
print
FOUT
"\n\n"
.
'-'
x
70
.
"\n"
;
print
FOUT
"\n\n"
.
'='
x
70
.
"\n"
;
print
FOUT
"Details related to specific translator classes follows.\n"
print
FOUT
"Details related to specific translator classes follow.\n"
;
.
"Notice that the prototypes are recognized only when they\n"
.
"are the same as in the Translator class."
;
print
FOUT
$output
.
"\n"
;
print
FOUT
$output
.
"\n"
;
}
}
...
...
examples/autolink.cpp
View file @
df80e278
...
@@ -46,7 +46,7 @@
...
@@ -46,7 +46,7 @@
A link to the enumeration type #EType.
A link to the enumeration type #EType.
A link to some enumeration values:
::Val1
and ::GVal1.
A link to some enumeration values:
\link Test::Val1 Val1 \endlink
and ::GVal1.
And last but not least a link to a file: autolink.cpp.
And last but not least a link to a file: autolink.cpp.
...
...
packages/rpm/doxygen.spec
View file @
df80e278
Name: doxygen
Name: doxygen
Version: 1.2.8
Version: 1.2.8
.1
Summary: documentation system for C, C++ and IDL
Summary: documentation system for C, C++ and IDL
Release: 3
Release: 3
Source: doxygen-%{version}.src.tar.gz
Source: doxygen-%{version}.src.tar.gz
...
...
src/config.l
View file @
df80e278
...
@@ -453,6 +453,7 @@ static void readIncludeFile(const char *incName)
...
@@ -453,6 +453,7 @@ static void readIncludeFile(const char *incName)
break;
break;
case ConfigOption::O_Bool:
case ConfigOption::O_Bool:
s = ((ConfigBool *)option)->valueStringRef();
s = ((ConfigBool *)option)->valueStringRef();
s->resize(0);
BEGIN(GetString);
BEGIN(GetString);
break;
break;
}
}
...
@@ -1212,28 +1213,31 @@ void Config::create()
...
@@ -1212,28 +1213,31 @@ void Config::create()
"documentation generated by doxygen is written. Doxygen will use this \n"
"documentation generated by doxygen is written. Doxygen will use this \n"
"information to generate all constant output in the proper language. \n"
"information to generate all constant output in the proper language. \n"
"The default language is English, other supported languages are: \n"
"The default language is English, other supported languages are: \n"
"Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese
, \n"
"Brazilian, Chinese, Croatian, Czech, Danish, Dutch, Finnish, French
, \n"
"Korean, Hungarian, Norwegian, Spanish, Romanian, Russian, Croatian
, \n"
"German, Hungarian, Italian, Japanese, Korean, Norwegian, Polish
, \n"
"Polish, Portuguese, Brazilian and Slovene
.\n",
"Portuguese, Romanian, Russian, Slovak, Slovene, Spanish and Swedish
.\n",
"English"
"English"
);
);
ce->addValue("Brazilian");
ce->addValue("Brazilian");
ce->addValue("Chinese");
ce->addValue("Croatian");
ce->addValue("Croatian");
ce->addValue("Czech");
ce->addValue("Czech");
ce->addValue("Danish");
ce->addValue("Dutch");
ce->addValue("Dutch");
ce->addValue("English");
ce->addValue("English");
ce->addValue("French");
ce->addValue("Finnish");
ce->addValue("Finnish");
ce->addValue("French");
ce->addValue("German");
ce->addValue("German");
ce->addValue("Hungarian");
ce->addValue("Hungarian");
ce->addValue("Italian");
ce->addValue("Italian");
ce->addValue("Japanese");
ce->addValue("Japanese");
ce->addValue("Korean");
ce->addValue("Korean");
ce->addValue("Norwegian");
ce->addValue("Norwegian");
ce->addValue("Romanian");
ce->addValue("Russian");
ce->addValue("Polish");
ce->addValue("Polish");
ce->addValue("Portuguese");
ce->addValue("Portuguese");
ce->addValue("Romanian");
ce->addValue("Russian");
ce->addValue("Slovak");
ce->addValue("Slovene");
ce->addValue("Slovene");
ce->addValue("Spanish");
ce->addValue("Spanish");
ce->addValue("Swedish");
ce->addValue("Swedish");
...
@@ -1857,7 +1861,7 @@ void Config::create()
...
@@ -1857,7 +1861,7 @@ void Config::create()
"If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated \n"
"If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated \n"
"will contain hyperlink fields. The RTF file will \n"
"will contain hyperlink fields. The RTF file will \n"
"contain links (just like the HTML output) instead of page references. \n"
"contain links (just like the HTML output) instead of page references. \n"
"This makes the output suitable for online browsing using WORD or other
.
\n"
"This makes the output suitable for online browsing using WORD or other \n"
"programs which support those fields. \n"
"programs which support those fields. \n"
"Note: wordpad (write) and others do not support links. \n",
"Note: wordpad (write) and others do not support links. \n",
FALSE
FALSE
...
...
src/defargs.l
View file @
df80e278
...
@@ -272,7 +272,6 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
...
@@ -272,7 +272,6 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
a->array = removeRedundantWhiteSpace(g_curArgArray);
a->array = removeRedundantWhiteSpace(g_curArgArray);
a->defval = g_curArgDefValue.copy();
a->defval = g_curArgDefValue.copy();
a->docs = g_curArgDocs.stripWhiteSpace();
a->docs = g_curArgDocs.stripWhiteSpace();
a->docs += "\n"; // for commands that need termination in doc.l (like \verbatim)
//printf("Argument `%s' `%s' adding docs=`%s'\n",a->type.data(),a->name.data(),a->docs.data());
//printf("Argument `%s' `%s' adding docs=`%s'\n",a->type.data(),a->name.data(),a->docs.data());
g_argList->append(a);
g_argList->append(a);
}
}
...
...
src/diagram.cpp
View file @
df80e278
...
@@ -1008,7 +1008,7 @@ void ClassDiagram::writeFigure(QTextStream &output,const char *path,
...
@@ -1008,7 +1008,7 @@ void ClassDiagram::writeFigure(QTextStream &output,const char *path,
//printf("writeEPS() rows=%d cols=%d\n",rows,cols);
//printf("writeEPS() rows=%d cols=%d\n",rows,cols);
// generate EPS header and postscipt variables and procedures
// generate EPS header and postsc
r
ipt variables and procedures
t
<<
"%!PS-Adobe-2.0 EPSF-2.0
\n
"
;
t
<<
"%!PS-Adobe-2.0 EPSF-2.0
\n
"
;
t
<<
"%%Title: ClassName
\n
"
;
t
<<
"%%Title: ClassName
\n
"
;
...
...
src/doc.l
View file @
df80e278
...
@@ -817,6 +817,7 @@ static int yyread(char *buf,int max_size)
...
@@ -817,6 +817,7 @@ static int yyread(char *buf,int max_size)
CMD ("\\"|"@")
CMD ("\\"|"@")
BN [ \t\n\r]
BN [ \t\n\r]
BL [ \t\r]*"\n"
BL [ \t\r]*"\n"
BSEP [ \t\r]*([ \t\r]|"\n")({BL}{0,100})
B [ \t]
B [ \t]
BS ^(({B}*"//")?)(({B}*"*"+)?){B}*
BS ^(({B}*"//")?)(({B}*"*"+)?){B}*
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
...
@@ -946,7 +947,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -946,7 +947,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
addListItemMarker(yytext+1,dashPos,isEnumerated);
addListItemMarker(yytext+1,dashPos,isEnumerated);
}
}
<DocScan,Text>"©" { outDoc->writeCopyright(); }
<DocScan,Text>"©" { outDoc->writeCopyright(); }
<DocScan,Text>""" { outDoc->writeQuote(); }
<DocScan,Text>"<" { outDoc->docify("<"); }
<DocScan,Text>">" { outDoc->docify(">"); }
<DocScan,Text>"&" { outDoc->docify("&"); }
<DocScan,Text>"'" { outDoc->docify("'"); }
<DocScan,Text>""" { outDoc->docify("\""); }
<DocScan,Text>"&"[AEIOUYaeiouy]"uml;" { outDoc->writeUmlaut(yytext[1]); }
<DocScan,Text>"&"[AEIOUYaeiouy]"uml;" { outDoc->writeUmlaut(yytext[1]); }
<DocScan,Text>"&"[AEIOUYaeiouy]"acute;" { outDoc->writeAcute(yytext[1]); }
<DocScan,Text>"&"[AEIOUYaeiouy]"acute;" { outDoc->writeAcute(yytext[1]); }
<DocScan,Text>"&"[AEIOUaeiou]"grave;" { outDoc->writeGrave(yytext[1]); }
<DocScan,Text>"&"[AEIOUaeiou]"grave;" { outDoc->writeGrave(yytext[1]); }
...
@@ -1115,7 +1120,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1115,7 +1120,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
}
}
BEGIN(DocPar);
BEGIN(DocPar);
}
}
<DocPar>[^\n]*{B
N}+
{
<DocPar>[^\n]*{B
SEP}
{
QCString title=QCString(yytext).stripWhiteSpace();
QCString title=QCString(yytext).stripWhiteSpace();
bool b = inBlock();
bool b = inBlock();
if (!title.isEmpty())
if (!title.isEmpty())
...
@@ -1137,7 +1142,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1137,7 +1142,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
}
}
BEGIN(DocScan);
BEGIN(DocScan);
}
}
<DocScan>{CMD}"warning"{B
N}+
{
<DocScan>{CMD}"warning"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inWarningBlock)
if (!inWarningBlock)
{
{
...
@@ -1156,7 +1161,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1156,7 +1161,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"remark"[s]?{B
N}+
{
<DocScan>{CMD}"remark"[s]?{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inRemarkBlock)
if (!inRemarkBlock)
{
{
...
@@ -1175,7 +1180,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1175,7 +1180,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"attention"{B
N}+
{
<DocScan>{CMD}"attention"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inAttentionBlock)
if (!inAttentionBlock)
{
{
...
@@ -1194,28 +1199,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1194,28 +1199,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
/*
<DocScan>{CMD}"note"[s]?{BSEP} {
<DocScan>{CMD}"bug"[s]?{BN}+ {
endArgumentList();
if (!inBugBlock)
{
if (inBlock()) endBlock();
inBugBlock=TRUE;
currentListIndent.push("D");
outDoc->startDescList();
outDoc->startBold();
scanString(theTranslator->trBugsAndLimitations()+": ");
outDoc->endBold();
outDoc->endDescTitle();
outDoc->writeDescItem();
}
else
{
outDoc->writeDescItem();
}
}
*/
<DocScan>{CMD}"note"[s]?{BN}+ {
endArgumentList();
endArgumentList();
if (!inNoteBlock)
if (!inNoteBlock)
{
{
...
@@ -1234,7 +1218,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1234,7 +1218,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"pre"{B
N}+
{
<DocScan>{CMD}"pre"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inPreBlock)
if (!inPreBlock)
{
{
...
@@ -1253,7 +1237,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1253,7 +1237,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"post"{B
N}+
{
<DocScan>{CMD}"post"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inPostBlock)
if (!inPostBlock)
{
{
...
@@ -1272,7 +1256,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1272,7 +1256,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"invariant"{B
N}+
{
<DocScan>{CMD}"invariant"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inInvarBlock)
if (!inInvarBlock)
{
{
...
@@ -1291,7 +1275,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1291,7 +1275,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"version"{B
N}+
{
<DocScan>{CMD}"version"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inVersionBlock)
if (!inVersionBlock)
{
{
...
@@ -1310,7 +1294,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1310,7 +1294,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"since"{B
N}+
{
<DocScan>{CMD}"since"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inSinceBlock)
if (!inSinceBlock)
{
{
...
@@ -1329,7 +1313,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1329,7 +1313,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}"date"{B
N}+
{
<DocScan>{CMD}"date"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inDateBlock)
if (!inDateBlock)
{
{
...
@@ -1414,7 +1398,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1414,7 +1398,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
currentListIndent.pop();
currentListIndent.pop();
}
}
}
}
<DocScan>{CMD}"deprecated"{B
N}+
{
<DocScan>{CMD}"deprecated"{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inDeprecatedBlock)
if (!inDeprecatedBlock)
{
{
...
@@ -1452,7 +1436,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1452,7 +1436,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->endDescList();
outDoc->endDescList();
currentListIndent.pop();
currentListIndent.pop();
}
}
<DocScan>{CMD}"author"[s]?{B
N}+
{
<DocScan>{CMD}"author"[s]?{B
SEP}
{
endArgumentList();
endArgumentList();
if (!inAuthorBlock)
if (!inAuthorBlock)
{
{
...
@@ -1472,7 +1456,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1472,7 +1456,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->docify(", ");
outDoc->docify(", ");
}
}
}
}
<DocScan>{CMD}("return"([s])?|"result"){B
N}+
{
<DocScan>{CMD}("return"([s])?|"result"){B
SEP}
{
endArgumentList();
endArgumentList();
if (!inReturnBlock)
if (!inReturnBlock)
{
{
...
@@ -1487,7 +1471,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1487,7 +1471,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->writeDescItem();
outDoc->writeDescItem();
}
}
}
}
<DocScan>{CMD}("sa"|"see"){B
N}+
{
<DocScan>{CMD}("sa"|"see"){B
SEP}
{
endArgumentList();
endArgumentList();
if (!inSeeBlock)
if (!inSeeBlock)
{
{
...
@@ -1506,7 +1490,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1506,7 +1490,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
outDoc->docify(", ");
outDoc->docify(", ");
}
}
}
}
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}"param"{B
N}+
{
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}"param"{B
SEP}
{
QCString t=yytext;
QCString t=yytext;
if (t.contains('\n')>1 && insideItemList)
if (t.contains('\n')>1 && insideItemList)
{
{
...
@@ -1532,7 +1516,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1532,7 +1516,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
}
}
BEGIN(DocParam);
BEGIN(DocParam);
}
}
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}"retval"{B
N}+
{
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}"retval"{B
SEP}
{
QCString t=yytext;
QCString t=yytext;
if (t.contains('\n')>1 && insideItemList)
if (t.contains('\n')>1 && insideItemList)
{
{
...
@@ -1558,7 +1542,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1558,7 +1542,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
}
}
BEGIN(DocParam);
BEGIN(DocParam);
}
}
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}("exception"|"throw")s?{B
N}+
{
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}("exception"|"throw")s?{B
SEP}
{
QCString t=yytext;
QCString t=yytext;
if (t.contains('\n')>1 && insideItemList)
if (t.contains('\n')>1 && insideItemList)
{
{
...
@@ -1585,7 +1569,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -1585,7 +1569,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
BEGIN(DocException);
BEGIN(DocException);
}
}
<DocScan>"\\capt".*
<DocScan>"\\capt".*
<DocParam>({DOCPARAM}{BN}*","{BN}*)*{DOCPARAM}{B
N
}* {
<DocParam>({DOCPARAM}{BN}*","{BN}*)*{DOCPARAM}{B
SEP
}* {
outDoc->startDescTableTitle();
outDoc->startDescTableTitle();
outDoc->startEmphasis();
outDoc->startEmphasis();
outDoc->docify(substitute(yytext,"\"","").stripWhiteSpace());
outDoc->docify(substitute(yytext,"\"","").stripWhiteSpace());
...
...
src/dot.cpp
View file @
df80e278
...
@@ -685,7 +685,7 @@ void DotGfxHierarchyTable::writeGraph(QTextStream &out,const char *path)
...
@@ -685,7 +685,7 @@ void DotGfxHierarchyTable::writeGraph(QTextStream &out,const char *path)
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
QDir
thisDir
;
QDir
thisDir
;
...
@@ -1263,7 +1263,7 @@ void DotClassGraph::writeGraph(QTextStream &out,
...
@@ -1263,7 +1263,7 @@ void DotClassGraph::writeGraph(QTextStream &out,
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
QDir
thisDir
;
QDir
thisDir
;
...
@@ -1474,7 +1474,7 @@ void DotInclDepGraph::writeGraph(QTextStream &out,
...
@@ -1474,7 +1474,7 @@ void DotInclDepGraph::writeGraph(QTextStream &out,
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
QDir
thisDir
;
QDir
thisDir
;
...
@@ -1615,7 +1615,7 @@ void generateGraphLegend(const char *path)
...
@@ -1615,7 +1615,7 @@ void generateGraphLegend(const char *path)
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
// run dot to generate the a .gif image from the graph
// run dot to generate the a .gif image from the graph
...
...
src/doxygen.cpp
View file @
df80e278
...
@@ -1204,6 +1204,7 @@ static void findUsingDeclarations(Entry *root)
...
@@ -1204,6 +1204,7 @@ static void findUsingDeclarations(Entry *root)
}
}
else
if
(
fd
)
else
if
(
fd
)
{
{
//printf("Inside file %s\n",nd->name().data());
fd
->
addUsingDeclaration
(
usingCd
);
fd
->
addUsingDeclaration
(
usingCd
);
}
}
}
}
...
@@ -3231,6 +3232,35 @@ static void substituteTemplateArgNames(ArgumentList *src,
...
@@ -3231,6 +3232,35 @@ static void substituteTemplateArgNames(ArgumentList *src,
}
}
static
QCString
mergeScopes
(
const
QCString
&
leftScope
,
const
QCString
&
rightScope
)
{
// case leftScope=="A" rightScope=="A::B" => result = "A::B"
if
(
leftScopeMatch
(
rightScope
,
leftScope
))
return
rightScope
;
QCString
result
;
int
i
=
0
,
p
=
leftScope
.
length
();
// case leftScope=="A::B" rightScope=="B::C" => result = "A::B::C"
// case leftScope=="A::B" rightScope=="B" => result = "A::B"
bool
found
=
FALSE
;
while
((
i
=
leftScope
.
findRev
(
"::"
,
p
))
!=-
1
)
{
if
(
leftScopeMatch
(
rightScope
,
leftScope
.
right
(
leftScope
.
length
()
-
i
-
2
)))
{
result
=
leftScope
.
left
(
i
+
2
)
+
rightScope
;
found
=
TRUE
;
}
p
=
i
-
1
;
}
if
(
found
)
return
result
;
// case leftScope=="A" rightScope=="B" => result = "A::B"
result
=
leftScope
.
copy
();
if
(
!
result
.
isEmpty
()
&&
!
rightScope
.
isEmpty
())
result
+=
"::"
;
result
+=
rightScope
;
return
result
;
}
/*! This function tries to find a member (in a documented class/file/namespace)
/*! This function tries to find a member (in a documented class/file/namespace)
* that corresponds to the function/variable declaration given in \a funcDecl.
* that corresponds to the function/variable declaration given in \a funcDecl.
*
*
...
@@ -3366,11 +3396,17 @@ static void findMember(Entry *root,
...
@@ -3366,11 +3396,17 @@ static void findMember(Entry *root,
scopeName
=
related
.
copy
();
scopeName
=
related
.
copy
();
}
}
if
(
related
.
isEmpty
()
&&
root
->
parent
&&
!
root
->
parent
->
name
.
isEmpty
())
{
scopeName
=
mergeScopes
(
root
->
parent
->
name
,
scopeName
);
}
// split scope into a namespace and a class part
// split scope into a namespace and a class part
extractNamespaceName
(
scopeName
,
className
,
namespaceName
);
extractNamespaceName
(
scopeName
,
className
,
namespaceName
);
//printf("scopeName=`%s' className=`%s' namespaceName=`%s'\n",
//printf("scopeName=`%s' className=`%s' namespaceName=`%s'\n",
// scopeName.data(),className.data(),namespaceName.data());
// scopeName.data(),className.data(),namespaceName.data());
#if 0
if (related.isEmpty() &&
if (related.isEmpty() &&
root->parent &&
root->parent &&
!root->parent->name.isEmpty()
!root->parent->name.isEmpty()
...
@@ -3423,6 +3459,7 @@ static void findMember(Entry *root,
...
@@ -3423,6 +3459,7 @@ static void findMember(Entry *root,
//printf("3. scopeName=`%s'\n",scopeName.data());
//printf("3. scopeName=`%s'\n",scopeName.data());
//printf("result: scope=%s\n",scopeName.data());
//printf("result: scope=%s\n",scopeName.data());
}
}
#endif
namespaceName
=
removeAnonymousScopes
(
namespaceName
);
namespaceName
=
removeAnonymousScopes
(
namespaceName
);
//printf("namespaceName=`%s' className=`%s'\n",namespaceName.data(),className.data());
//printf("namespaceName=`%s' className=`%s'\n",namespaceName.data(),className.data());
...
@@ -3691,13 +3728,18 @@ static void findMember(Entry *root,
...
@@ -3691,13 +3728,18 @@ static void findMember(Entry *root,
bool
ambig
;
bool
ambig
;
FileDef
*
fd
=
findFileDef
(
Doxygen
::
inputNameDict
,
root
->
fileName
,
ambig
);
FileDef
*
fd
=
findFileDef
(
Doxygen
::
inputNameDict
,
root
->
fileName
,
ambig
);
// list of namespaces using in the file that this member definition is part of
// list of namespaces using in the file that this member definition is part of
NamespaceList
*
nl
=
fd
?
fd
->
getUsedNamespaces
()
:
0
;
NamespaceList
*
nl
=
0
;
ClassList
*
cl
=
fd
?
fd
->
getUsedClasses
()
:
0
;
if
(
nd
)
nl
=
nd
->
getUsedNamespaces
();
else
if
(
fd
)
nl
=
fd
->
getUsedNamespaces
();
ClassList
*
cl
=
0
;
if
(
nd
)
cl
=
nd
->
getUsedClasses
();
else
if
(
fd
)
cl
=
fd
->
getUsedClasses
();
bool
matching
=
bool
matching
=
md
->
isVariable
()
||
md
->
isTypedef
()
||
// needed for function pointers
md
->
isVariable
()
||
md
->
isTypedef
()
||
// needed for function pointers
(
md
->
argumentList
()
==
0
&&
root
->
argList
->
count
()
==
0
)
||
(
md
->
argumentList
()
==
0
&&
root
->
argList
->
count
()
==
0
)
||
matchArguments
(
argList
,
root
->
argList
,
className
,
namespaceName
,
TRUE
,
nl
,
cl
);
matchArguments
(
argList
,
root
->
argList
,
className
,
namespaceName
,
TRUE
,
nl
,
cl
);
Debug
::
print
(
Debug
::
FindMembers
,
0
,
Debug
::
print
(
Debug
::
FindMembers
,
0
,
...
...
src/formula.cpp
View file @
df80e278
...
@@ -56,7 +56,7 @@ void FormulaList::generateBitmaps(const char *path)
...
@@ -56,7 +56,7 @@ void FormulaList::generateBitmaps(const char *path)
// store the original directory
// store the original directory
if
(
!
d
.
exists
())
{
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
if
(
!
d
.
exists
())
{
err
(
"Error: Output dir %s does not exist!
\n
"
,
path
);
exit
(
1
);
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
QDir
thisDir
;
QDir
thisDir
;
// generate a latex file containing one formula per page.
// generate a latex file containing one formula per page.
...
...
src/index.cpp
View file @
df80e278
...
@@ -145,13 +145,9 @@ QCString abbreviate(const char *s,const char *name)
...
@@ -145,13 +145,9 @@ QCString abbreviate(const char *s,const char *name)
void
writeQuickLinks
(
OutputList
&
ol
,
bool
compact
,
bool
ext
=
FALSE
)
void
writeQuickLinks
(
OutputList
&
ol
,
bool
compact
,
bool
ext
=
FALSE
)
{
{
ol
.
pushGeneratorState
();
ol
.
pushGeneratorState
();
//bool manEnabled = ol.isEnabled(OutputGenerator::Man);
//bool texEnabled = ol.isEnabled(OutputGenerator::Latex);
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
QCString
extLink
;
QCString
extLink
;
if
(
ext
)
{
extLink
=
"_doc"
;
}
if
(
ext
)
{
extLink
=
"_doc"
;
}
//if (manEnabled) ol.disable(OutputGenerator::Man);
//if (texEnabled) ol.disable(OutputGenerator::Latex);
if
(
compact
)
ol
.
startCenter
();
else
ol
.
startItemList
();
if
(
compact
)
ol
.
startCenter
();
else
ol
.
startItemList
();
if
(
!
compact
)
ol
.
writeListItem
();
if
(
!
compact
)
ol
.
writeListItem
();
...
@@ -280,23 +276,19 @@ void writeQuickLinks(OutputList &ol,bool compact ,bool ext=FALSE)
...
@@ -280,23 +276,19 @@ void writeQuickLinks(OutputList &ol,bool compact ,bool ext=FALSE)
{
{
ol
.
endItemList
();
ol
.
endItemList
();
}
}
//if (manEnabled) ol.enable(OutputGenerator::Man);
//if (texEnabled) ol.enable(OutputGenerator::Latex);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
static
bool
manIsEnabled
;
void
startTitle
(
OutputList
&
ol
,
const
char
*
fileName
)
void
startTitle
(
OutputList
&
ol
,
const
char
*
fileName
)
{
{
ol
.
startTitleHead
(
fileName
);
ol
.
startTitleHead
(
fileName
);
manIsEnabled
=
ol
.
isEnabled
(
OutputGenerator
::
Man
);
ol
.
pushGeneratorState
(
);
if
(
manIsEnabled
)
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Man
);
}
}
void
endTitle
(
OutputList
&
ol
,
const
char
*
fileName
,
const
char
*
name
)
void
endTitle
(
OutputList
&
ol
,
const
char
*
fileName
,
const
char
*
name
)
{
{
if
(
manIsEnabled
)
ol
.
enable
(
OutputGenerator
::
Man
);
ol
.
popGeneratorState
();
ol
.
endTitleHead
(
fileName
,
name
);
ol
.
endTitleHead
(
fileName
,
name
);
}
}
...
@@ -675,7 +667,6 @@ void writeHierarchicalIndex(OutputList &ol)
...
@@ -675,7 +667,6 @@ void writeHierarchicalIndex(OutputList &ol)
ol
.
endTextBlock
();
ol
.
endTextBlock
();
writeClassHierarchy
(
ol
);
writeClassHierarchy
(
ol
);
endFile
(
ol
);
endFile
(
ol
);
//ol.enable(OutputGenerator::Man);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
...
@@ -959,7 +950,6 @@ void writeFileIndex(OutputList &ol)
...
@@ -959,7 +950,6 @@ void writeFileIndex(OutputList &ol)
ftvHelp
->
decContentsDepth
();
ftvHelp
->
decContentsDepth
();
}
}
endFile
(
ol
);
endFile
(
ol
);
//ol.enable(OutputGenerator::Man);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
...
@@ -1059,7 +1049,6 @@ void writeNamespaceIndex(OutputList &ol)
...
@@ -1059,7 +1049,6 @@ void writeNamespaceIndex(OutputList &ol)
ftvHelp
->
decContentsDepth
();
ftvHelp
->
decContentsDepth
();
}
}
endFile
(
ol
);
endFile
(
ol
);
//ol.enable(OutputGenerator::Man);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
...
@@ -1984,7 +1973,6 @@ void writeExampleIndex(OutputList &ol)
...
@@ -1984,7 +1973,6 @@ void writeExampleIndex(OutputList &ol)
ftvHelp
->
decContentsDepth
();
ftvHelp
->
decContentsDepth
();
}
}
endFile
(
ol
);
endFile
(
ol
);
//ol.enable(OutputGenerator::Man);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
...
@@ -2102,7 +2090,6 @@ void writePageIndex(OutputList &ol)
...
@@ -2102,7 +2090,6 @@ void writePageIndex(OutputList &ol)
ftvHelp
->
decContentsDepth
();
ftvHelp
->
decContentsDepth
();
}
}
endFile
(
ol
);
endFile
(
ol
);
//ol.enable(OutputGenerator::Man);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
...
@@ -2797,13 +2784,6 @@ void writeIndex(OutputList &ol)
...
@@ -2797,13 +2784,6 @@ void writeIndex(OutputList &ol)
ol
.
enable
(
OutputGenerator
::
Man
);
ol
.
enable
(
OutputGenerator
::
Man
);
}
}
// restore generator state
//if (manEnabled) ol.enable(OutputGenerator::Man);
// else ol.disable(OutputGenerator::Man);
//if (texEnabled) ol.enable(OutputGenerator::Latex);
// else ol.disable(OutputGenerator::Latex);
//if (htmEnabled) ol.enable(OutputGenerator::Html);
// else ol.disable(OutputGenerator::Html);
ol
.
popGeneratorState
();
ol
.
popGeneratorState
();
}
}
src/mangen.cpp
View file @
df80e278
...
@@ -97,45 +97,38 @@ void ManGenerator::init()
...
@@ -97,45 +97,38 @@ void ManGenerator::init()
static
QCString
buildFileName
(
const
char
*
name
)
static
QCString
buildFileName
(
const
char
*
name
)
{
{
QCString
fileName
=
name
;
QCString
fileName
;
#if 0
const
char
*
p
=
name
;
// TODO: do something sensible here.
char
c
;
if (fileName.left(6)=="class_")
while
((
c
=*
p
++
))
{
fileName=fileName.right(fileName.length()-6);
}
else if (fileName.left(10)=="interface_")
{
fileName=fileName.right(fileName.length()-10);
}
else if (fileName.left(7)=="struct_")
{
fileName=fileName.right(fileName.length()-7);
}
else if (fileName.left(6)=="union_")
{
fileName=fileName.right(fileName.length()-6);
}
else if (fileName.left(10)=="exception_")
{
{
fileName=fileName.right(fileName.length()-10);
switch
(
c
)
}
else if (fileName.left(6)=="group_")
{
{
fileName=fileName.right(fileName.length()-6);
case
':'
:
fileName
+=
"_"
;
if
(
*
p
==
':'
)
p
++
;
break
;
case
'<'
:
case
'>'
:
case
'&'
:
case
'*'
:
case
'!'
:
case
'^'
:
case
'~'
:
case
'%'
:
case
'+'
:
fileName
+=
"_"
;
break
;
default
:
fileName
+=
c
;
}
}
int i;
if ((i=fileName.findRev('.'))!=-1)
{
fileName=fileName.left(i);
}
}
#endif
if
(
convertToQCString
(
fileName
.
right
(
2
))
!=
Config_getString
(
"MAN_EXTENSION"
))
QCString
&
manExtension
=
Config_getString
(
"MAN_EXTENSION"
);
if
(
convertToQCString
(
fileName
.
right
(
2
))
!=
manExtension
)
{
{
fileName
+=
Config_getString
(
"MAN_EXTENSION"
)
;
fileName
+=
manExtension
;
}
}
return
fileName
;
return
fileName
;
...
...
src/memberdef.cpp
View file @
df80e278
...
@@ -504,7 +504,7 @@ bool MemberDef::isBriefSectionVisible() const
...
@@ -504,7 +504,7 @@ bool MemberDef::isBriefSectionVisible() const
hasDocumentation
()
hasDocumentation
()
);
);
// hide members with no detailed desciption and brief descriptions
// hide members with no detailed desc
r
iption and brief descriptions
// explicitly disabled.
// explicitly disabled.
bool
visibleIfEnabled
=
!
(
Config_getBool
(
"HIDE_UNDOC_MEMBERS"
)
&&
bool
visibleIfEnabled
=
!
(
Config_getBool
(
"HIDE_UNDOC_MEMBERS"
)
&&
documentation
().
isEmpty
()
&&
documentation
().
isEmpty
()
&&
...
@@ -592,7 +592,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
...
@@ -592,7 +592,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
ol
.
startMemberItem
((
annoClassDef
||
annMemb
||
annEnumType
)
?
1
:
0
);
ol
.
startMemberItem
((
annoClassDef
||
annMemb
||
annEnumType
)
?
1
:
0
);
// If there is no detailed description we need to write the anchor here.
// If there is no detailed description we need to write the anchor here.
bool
detailsVisible
=
isDetailedSection
Visi
ble
();
bool
detailsVisible
=
isDetailedSection
Linka
ble
();
if
(
!
detailsVisible
&&
!
annMemb
)
if
(
!
detailsVisible
&&
!
annMemb
)
{
{
QCString
doxyName
=
name
().
copy
();
QCString
doxyName
=
name
().
copy
();
...
@@ -779,7 +779,9 @@ void MemberDef::writeDeclaration(OutputList &ol,
...
@@ -779,7 +779,9 @@ void MemberDef::writeDeclaration(OutputList &ol,
//ol.endMemberItem(gId!=-1,gFile,gHeader,annoClassDef || annMemb);
//ol.endMemberItem(gId!=-1,gFile,gHeader,annoClassDef || annMemb);
// write brief description
// write brief description
if
(
!
briefDescription
().
isEmpty
()
&&
Config_getBool
(
"BRIEF_MEMBER_DESC"
)
&&
!
annMemb
)
if
(
!
briefDescription
().
isEmpty
()
&&
Config_getBool
(
"BRIEF_MEMBER_DESC"
)
&&
!
annMemb
)
{
{
ol
.
startMemberDescription
();
ol
.
startMemberDescription
();
parseDoc
(
ol
,
m_defFileName
,
m_defLine
,
cname
,
name
(),
briefDescription
());
parseDoc
(
ol
,
m_defFileName
,
m_defLine
,
cname
,
name
(),
briefDescription
());
...
@@ -808,7 +810,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
...
@@ -808,7 +810,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
warnIfUndocumented
();
warnIfUndocumented
();
}
}
bool
MemberDef
::
isDetailedSection
Visible
(
bool
inGroup
)
const
bool
MemberDef
::
isDetailedSection
Linkable
(
)
const
{
{
// the member has details documentation for any of the following reasons
// the member has details documentation for any of the following reasons
bool
docFilter
=
bool
docFilter
=
...
@@ -835,16 +837,19 @@ bool MemberDef::isDetailedSectionVisible(bool inGroup) const
...
@@ -835,16 +837,19 @@ bool MemberDef::isDetailedSectionVisible(bool inGroup) const
// this is not a global static or global statics should be extracted
// this is not a global static or global statics should be extracted
bool
staticFilter
=
getClassDef
()
!=
0
||
!
isStatic
()
||
Config_getBool
(
"EXTRACT_STATIC"
);
bool
staticFilter
=
getClassDef
()
!=
0
||
!
isStatic
()
||
Config_getBool
(
"EXTRACT_STATIC"
);
// details are not part of a group or this is for a group documentation page
// TODO: FIX THIS!!! This should made such that it is always TRUE.
bool
groupFilter
=
getGroupDef
()
==
0
||
inGroup
;
// member is part of an anonymous scope that is the type of
// member is part of an anonymous scope that is the type of
// another member in the list.
// another member in the list.
//
//
bool
inAnonymousScope
=
!
briefDescription
().
isEmpty
()
&&
annUsed
;
bool
inAnonymousScope
=
!
briefDescription
().
isEmpty
()
&&
annUsed
;
return
((
docFilter
&&
staticFilter
)
||
inAnonymousScope
)
&&
groupFilter
;
return
((
docFilter
&&
staticFilter
)
||
inAnonymousScope
);
}
bool
MemberDef
::
isDetailedSectionVisible
(
bool
inGroup
)
const
{
bool
groupFilter
=
getGroupDef
()
==
0
||
inGroup
;
return
isDetailedSectionLinkable
()
&&
groupFilter
;
}
}
/*! Writes the "detailed documentation" section of this member to
/*! Writes the "detailed documentation" section of this member to
...
@@ -1147,7 +1152,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
...
@@ -1147,7 +1152,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
ol
.
endEmphasis
();
ol
.
endEmphasis
();
ol
.
endDescTableTitle
();
ol
.
endDescTableTitle
();
ol
.
startDescTableData
();
ol
.
startDescTableData
();
parseDoc
(
ol
,
m_defFileName
,
m_defLine
,
scopeName
,
name
(),
a
->
docs
);
parseDoc
(
ol
,
m_defFileName
,
m_defLine
,
scopeName
,
name
(),
a
->
docs
+
"
\n
"
);
ol
.
endDescTableData
();
ol
.
endDescTableData
();
}
}
}
}
...
@@ -1477,3 +1482,17 @@ void MemberDef::setGroupDef(GroupDef *gd,Grouping::GroupPri_t pri,const QCString
...
@@ -1477,3 +1482,17 @@ void MemberDef::setGroupDef(GroupDef *gd,Grouping::GroupPri_t pri,const QCString
groupStartLine
=
startLine
;
groupStartLine
=
startLine
;
groupHasDocs
=
hasDocs
;
groupHasDocs
=
hasDocs
;
}
}
void
MemberDef
::
setEnumScope
(
MemberDef
*
md
)
{
enumScope
=
md
;
if
(
md
->
group
)
{
group
=
md
->
group
;
grouppri
=
md
->
grouppri
;
groupFileName
=
md
->
groupFileName
;
groupStartLine
=
md
->
groupStartLine
;
groupHasDocs
=
md
->
groupHasDocs
;
}
}
src/memberdef.h
View file @
df80e278
...
@@ -126,6 +126,7 @@ class MemberDef : public Definition
...
@@ -126,6 +126,7 @@ class MemberDef : public Definition
bool
hasDocumentation
()
const
;
// overrides hasDocumentation in definition.h
bool
hasDocumentation
()
const
;
// overrides hasDocumentation in definition.h
bool
isBriefSectionVisible
()
const
;
bool
isBriefSectionVisible
()
const
;
bool
isDetailedSectionVisible
(
bool
inGroup
=
FALSE
)
const
;
bool
isDetailedSectionVisible
(
bool
inGroup
=
FALSE
)
const
;
bool
isDetailedSectionLinkable
()
const
;
// set functions
// set functions
void
setMemberType
(
MemberType
t
)
{
mtype
=
t
;
}
void
setMemberType
(
MemberType
t
)
{
mtype
=
t
;
}
...
@@ -167,7 +168,7 @@ class MemberDef : public Definition
...
@@ -167,7 +168,7 @@ class MemberDef : public Definition
// enumeration specific members
// enumeration specific members
void
insertEnumField
(
MemberDef
*
md
);
void
insertEnumField
(
MemberDef
*
md
);
void
setEnumScope
(
MemberDef
*
md
)
{
enumScope
=
md
;
}
void
setEnumScope
(
MemberDef
*
md
)
;
MemberDef
*
getEnumScope
()
const
{
return
enumScope
;
}
MemberDef
*
getEnumScope
()
const
{
return
enumScope
;
}
void
setEnumDecl
(
OutputList
&
ed
);
void
setEnumDecl
(
OutputList
&
ed
);
//void setEnumUsed() { eUsed=TRUE; }
//void setEnumUsed() { eUsed=TRUE; }
...
...
src/memberlist.cpp
View file @
df80e278
...
@@ -320,12 +320,20 @@ void MemberList::writePlainDeclarations(OutputList &ol,
...
@@ -320,12 +320,20 @@ void MemberList::writePlainDeclarations(OutputList &ol,
cd
?
cd
->
name
().
data
()
:
0
,
md
->
name
().
data
(),
cd
?
cd
->
name
().
data
()
:
0
,
md
->
name
().
data
(),
md
->
briefDescription
()
md
->
briefDescription
()
);
);
if
(
!
md
->
documentation
().
isEmpty
()
||
md
->
hasDocumentedEnumValues
())
if
(
md
->
isDetailedSectionLinkable
())
{
{
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
endEmphasis
();
ol
.
endEmphasis
();
ol
.
docify
(
" "
);
ol
.
docify
(
" "
);
if
(
md
->
getGroupDef
()
!=
0
&&
gd
==
0
)
// forward link to group
{
ol
.
startTextLink
(
md
->
getGroupDef
()
->
getOutputFileBase
(),
md
->
anchor
());
}
else
{
ol
.
startTextLink
(
0
,
md
->
anchor
());
ol
.
startTextLink
(
0
,
md
->
anchor
());
}
parseText
(
ol
,
theTranslator
->
trMore
());
parseText
(
ol
,
theTranslator
->
trMore
());
ol
.
endTextLink
();
ol
.
endTextLink
();
ol
.
startEmphasis
();
ol
.
startEmphasis
();
...
...
src/rtfgen.cpp
View file @
df80e278
...
@@ -2588,7 +2588,7 @@ bool RTFGenerator::preProcessFileInplace(const char *path,const char *name)
...
@@ -2588,7 +2588,7 @@ bool RTFGenerator::preProcessFileInplace(const char *path,const char *name)
}
}
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
QCString
oldDir
=
convertToQCString
(
QDir
::
currentDirPath
());
// goto the html output directory (i.e. path)
// go
to the html output directory (i.e. path)
QDir
::
setCurrent
(
d
.
absPath
());
QDir
::
setCurrent
(
d
.
absPath
());
QDir
thisDir
;
QDir
thisDir
;
...
...
src/scanner.l
View file @
df80e278
...
@@ -3388,6 +3388,10 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -3388,6 +3388,10 @@ TITLE [tT][iI][tT][lL][eE]
yyLineNr++;
yyLineNr++;
BEGIN( lastGroupContext );
BEGIN( lastGroupContext );
}
}
<GroupName>"*/" {
unput('/');unput('*');
BEGIN( lastGroupContext );
}
<ClassDoc,Doc>{B}*{CMD}("brief"|"short") {
<ClassDoc,Doc>{B}*{CMD}("brief"|"short") {
lastBriefContext=YY_START;
lastBriefContext=YY_START;
BEGIN( ClassDocBrief );
BEGIN( ClassDocBrief );
...
@@ -3628,7 +3632,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -3628,7 +3632,7 @@ TITLE [tT][iI][tT][lL][eE]
unput(afterDocTerminator);
unput(afterDocTerminator);
BEGIN(lastAfterDocContext);
BEGIN(lastAfterDocContext);
}
}
<ClassDocRelates,ClassDocFunc,ClassDocDefine,GroupDocArg1,ClassDocArg1,SectionTitle,EnumDocArg1,PageDocArg1,ExampleDocArg1,ClassDefineArgs
,GroupName
>"*/" {
<ClassDocRelates,ClassDocFunc,ClassDocDefine,GroupDocArg1,ClassDocArg1,SectionTitle,EnumDocArg1,PageDocArg1,ExampleDocArg1,ClassDefineArgs>"*/" {
// defer "*/" to a later time
// defer "*/" to a later time
unput('/');
unput('/');
unput('*');
unput('*');
...
...
src/translator.h
View file @
df80e278
...
@@ -567,7 +567,7 @@ class Translator
...
@@ -567,7 +567,7 @@ class Translator
virtual
QCString
trStaticPrivateMembers
()
=
0
;
virtual
QCString
trStaticPrivateMembers
()
=
0
;
/*! this function is used to produce a comma-separated list of items.
/*! this function is used to produce a comma-separated list of items.
*
u
se generateMarker(i) to indicate where item i should be put.
*
U
se generateMarker(i) to indicate where item i should be put.
*/
*/
virtual
QCString
trWriteList
(
int
numEntries
)
=
0
;
virtual
QCString
trWriteList
(
int
numEntries
)
=
0
;
...
...
src/translator_adapter.h
View file @
df80e278
...
@@ -45,12 +45,24 @@ class TranslatorAdapterCVS : public Translator
...
@@ -45,12 +45,24 @@ class TranslatorAdapterCVS : public Translator
// The first five lines below should be uncommented, and the
// The first five lines below should be uncommented, and the
// release number at the fifth of those lines should be set.
// release number at the fifth of those lines should be set.
// class TranslatorAdapter_1_2_
7
: public TranslatorAdapterCVS
// class TranslatorAdapter_1_2_
8
: public TranslatorAdapterCVS
// {
// {
// public:
// public:
// virtual QCString updateNeededMessage()
// virtual QCString updateNeededMessage()
// { return createUpdateNeededMessage(idLanguage(),"release 1.2.7"); }
// { return createUpdateNeededMessage(idLanguage(),"release 1.2.7"); }
// Put new adapter methods below...
//
};
class
TranslatorAdapter_1_2_7
:
public
TranslatorAdapterCVS
{
public
:
virtual
QCString
updateNeededMessage
()
{
return
createUpdateNeededMessage
(
idLanguage
(),
"release 1.2.7"
);
}
/*! These are the default implementations of the obsolete methods
/*! These are the default implementations of the obsolete methods
* for introducing author/authors (possibly localized).
* for introducing author/authors (possibly localized).
*/
*/
...
@@ -72,12 +84,13 @@ class TranslatorAdapterCVS : public Translator
...
@@ -72,12 +84,13 @@ class TranslatorAdapterCVS : public Translator
}
}
};
};
/*! \brief Translator adapter class for release 1.2.6
/*! \brief Translator adapter class for release 1.2.6
*
*
* Translator adapter for dealing with translator changes since
* Translator adapter for dealing with translator changes since
* release 1.2.6
* release 1.2.6
*/
*/
class
TranslatorAdapter_1_2_6
:
public
TranslatorAdapter
CVS
class
TranslatorAdapter_1_2_6
:
public
TranslatorAdapter
_1_2_7
{
{
public
:
public
:
virtual
QCString
updateNeededMessage
()
virtual
QCString
updateNeededMessage
()
...
...
src/translator_br.h
View file @
df80e278
...
@@ -18,9 +18,7 @@
...
@@ -18,9 +18,7 @@
#ifndef TRANSLATOR_BR_H
#ifndef TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
#include "translator_adapter.h"
class
TranslatorBrazilian
:
public
Translator
class
TranslatorBrazilian
:
public
TranslatorAdapter_1_2_6
{
{
public
:
public
:
...
@@ -1170,5 +1168,160 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_6
...
@@ -1170,5 +1168,160 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_6
return
"Lista de Bug"
;
return
"Lista de Bug"
;
}
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.6
//////////////////////////////////////////////////////////////////////////
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value
and
* <pre>
* Codepage number:
* Charset Name Charset Value(hex) Codepage number
* ------------------------------------------------------
* DEFAULT_CHARSET 1 (x01)
* SYMBOL_CHARSET 2 (x02)
* OEM_CHARSET 255 (xFF)
* ANSI_CHARSET 0 (x00) 1252
* RUSSIAN_CHARSET 204 (xCC) 1251
* EE_CHARSET 238 (xEE) 1250
* GREEK_CHARSET 161 (xA1) 1253
* TURKISH_CHARSET 162 (xA2) 1254
* BALTIC_CHARSET 186 (xBA) 1257
* HEBREW_CHARSET 177 (xB1) 1255
* ARABIC _CHARSET 178 (xB2) 1256
* SHIFTJIS_CHARSET 128 (x80) 932
* HANGEUL_CHARSET 129 (x81) 949
* GB2313_CHARSET 134 (x86) 936
* CHINESEBIG5_CHARSET 136 (x88) 950
* </pre>
*
*/
virtual
QCString
trRTFansicp
()
{
return
"1252"
;
}
/*! Used as ansicpg for RTF fcharset
* \see trRTFansicp() for a table of possible values.
*/
virtual
QCString
trRTFCharSet
()
{
return
"0"
;
}
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
"Índice"
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trClass
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Classe"
:
"classe"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trFile
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Arquivo"
:
"arquivo"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trNamespace
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Namespace"
:
"namespace"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGroup
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Grupo"
:
"grupo"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trPage
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Página"
:
"página"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trMember
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Membro"
:
"membro"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Campo"
:
"campo"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGlobal
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Globa"
:
"globa"
));
if
(
!
singular
){
result
+=
"is"
;
}
else
{
result
+=
"l"
;
}
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.7
//////////////////////////////////////////////////////////////////////////
/*! This text is generated when the \\author command is used and
* for the author section in man pages. */
virtual
QCString
trAuthor
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Autor"
:
"autor"
));
if
(
!
singular
)
result
+=
"es"
;
return
result
;
}
};
};
#endif
#endif
src/translator_cz.h
View file @
df80e278
...
@@ -769,7 +769,7 @@ class TranslatorCzech : public Translator
...
@@ -769,7 +769,7 @@ class TranslatorCzech : public Translator
return
decode
(
result
);
return
decode
(
result
);
}
}
/*
!
/*
* these are for the member sections of a class, struct or union
* these are for the member sections of a class, struct or union
*/
*/
virtual
QCString
trPublicMembers
()
virtual
QCString
trPublicMembers
()
...
@@ -1006,17 +1006,17 @@ class TranslatorCzech : public Translator
...
@@ -1006,17 +1006,17 @@ class TranslatorCzech : public Translator
{
{
return
decode
(
"Zobrazit dokumentaci tohoto souboru."
);
return
decode
(
"Zobrazit dokumentaci tohoto souboru."
);
}
}
/*! Text for the \pre command */
/*! Text for the \
\
pre command */
virtual
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
{
return
decode
(
"Precondition"
);
return
decode
(
"Precondition"
);
}
}
/*! Text for the \post command */
/*! Text for the \
\
post command */
virtual
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
{
return
decode
(
"Postcondition"
);
return
decode
(
"Postcondition"
);
}
}
/*! Text for the \invariant command */
/*! Text for the \
\
invariant command */
virtual
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
{
return
decode
(
"Invariant"
);
return
decode
(
"Invariant"
);
...
...
src/translator_de.h
View file @
df80e278
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
//
//
// Todo:
// Todo:
// - translation of all Config_getBool("OPTIMIZE_OUTPUT_FOR_C")
// - translation of all Config_getBool("OPTIMIZE_OUTPUT_FOR_C")
// strings (see translator.h)
// strings (see translator
_en
.h)
// - translation of "compound"
// - translation of "compound"
// - see FIXME
// - see FIXME
// - was ist richtig: "Liste aller dokumentierter Elemente" oder
// - was ist richtig: "Liste aller dokumentierter Elemente" oder
...
@@ -1287,9 +1287,9 @@ class TranslatorGerman : public Translator
...
@@ -1287,9 +1287,9 @@ class TranslatorGerman : public Translator
return
result
;
return
result
;
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 1.2.7-20010524
// new since 1.2.7-20010524
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
/* This text is generated when the \author command is used and
/* This text is generated when the \author command is used and
* for the author section in man pages.
* for the author section in man pages.
...
...
src/translator_dk.h
View file @
df80e278
...
@@ -37,7 +37,7 @@
...
@@ -37,7 +37,7 @@
#ifndef TRANSLATOR_DK_H
#ifndef TRANSLATOR_DK_H
#define TRANSLATOR_DK_H
#define TRANSLATOR_DK_H
class
TranslatorDanish
:
public
TranslatorAdapter
CVS
class
TranslatorDanish
:
public
TranslatorAdapter
_1_2_7
{
{
public
:
public
:
...
...
src/translator_es.h
View file @
df80e278
...
@@ -25,7 +25,7 @@
...
@@ -25,7 +25,7 @@
#ifndef TRANSLATOR_ES_H
#ifndef TRANSLATOR_ES_H
#define TRANSLATOR_ES_H
#define TRANSLATOR_ES_H
class
TranslatorSpanish
:
public
TranslatorAdapter
CVS
class
TranslatorSpanish
:
public
TranslatorAdapter
_1_2_7
{
{
public
:
public
:
virtual
QCString
idLanguage
()
virtual
QCString
idLanguage
()
...
@@ -554,9 +554,7 @@ class TranslatorSpanish : public TranslatorAdapterCVS
...
@@ -554,9 +554,7 @@ class TranslatorSpanish : public TranslatorAdapterCVS
return
result
;
return
result
;
}
}
/*! \mgroup Class sections
/* these are for the member sections of a class, struct or union */
* these are for the member sections of a class, struct or union
*/
virtual
QCString
trPublicMembers
()
virtual
QCString
trPublicMembers
()
{
return
"Métodos públicos"
;
}
{
return
"Métodos públicos"
;
}
virtual
QCString
trPublicSlots
()
virtual
QCString
trPublicSlots
()
...
@@ -577,7 +575,6 @@ class TranslatorSpanish : public TranslatorAdapterCVS
...
@@ -577,7 +575,6 @@ class TranslatorSpanish : public TranslatorAdapterCVS
{
return
"Slots privados"
;
}
{
return
"Slots privados"
;
}
virtual
QCString
trStaticPrivateMembers
()
virtual
QCString
trStaticPrivateMembers
()
{
return
"Métodos privados estáticos"
;
}
{
return
"Métodos privados estáticos"
;
}
/*! \endmgroup */
/*! this function is used to produce a comma-separated list of items.
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
* use generateMarker(i) to indicate where item i should be put.
...
@@ -779,17 +776,17 @@ class TranslatorSpanish : public TranslatorAdapterCVS
...
@@ -779,17 +776,17 @@ class TranslatorSpanish : public TranslatorAdapterCVS
{
{
return
"Ir a la documentación de este archivo."
;
return
"Ir a la documentación de este archivo."
;
}
}
/*! Text for the \pre command */
/*! Text for the \
\
pre command */
virtual
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
{
return
"Precondición"
;
return
"Precondición"
;
}
}
/*! Text for the \post command */
/*! Text for the \
\
post command */
virtual
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
{
return
"Postcondición"
;
return
"Postcondición"
;
}
}
/*! Text for the \invariant command */
/*! Text for the \
\
invariant command */
virtual
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
{
return
"Invariante"
;
return
"Invariante"
;
...
...
src/translator_it.h
View file @
df80e278
...
@@ -57,7 +57,7 @@
...
@@ -57,7 +57,7 @@
#ifndef TRANSLATOR_IT_H
#ifndef TRANSLATOR_IT_H
#define TRANSLATOR_IT_H
#define TRANSLATOR_IT_H
class
TranslatorItalian
:
public
TranslatorAdapter
CVS
class
TranslatorItalian
:
public
TranslatorAdapter
_1_2_7
{
{
public
:
public
:
...
...
src/translator_nl.h
View file @
df80e278
...
@@ -18,15 +18,35 @@
...
@@ -18,15 +18,35 @@
#ifndef TRANSLATOR_NL_H
#ifndef TRANSLATOR_NL_H
#define TRANSLATOR_NL_H
#define TRANSLATOR_NL_H
#include "translator_adapter.h"
class
TranslatorDutch
:
public
Translator
class
TranslatorDutch
:
public
TranslatorAdapter_1_2_6
{
{
public
:
public
:
QCString
idLanguage
()
QCString
idLanguage
()
{
return
"dutch"
;
}
{
return
"dutch"
;
}
QCString
latexBabelPackage
()
/*! Used to get the LaTeX command(s) for the language support.
{
return
"dutch"
;
}
* This method should return string with commands that switch
* LaTeX to the desired language. For example
* <pre>"\\usepackage[german]{babel}\n"
* </pre>
* or
* <pre>"\\usepackage{polski}\n"
* "\\usepackage[latin2]{inputenc}\n"
* "\\usepackage[T1]{fontenc}\n"
* </pre>
*
* The Dutch LaTeX does not use such commands. Because of this
* the empty string is returned in this implementation.
*/
QCString
latexLanguageSupportCommand
()
{
return
"
\\
usepackage[dutch]{babel}
\n
"
;
}
/*! return the language charset. This will be used for the HTML output */
QCString
idLanguageCharset
()
{
return
"iso-8859-1"
;
}
QCString
trRelatedFunctions
()
QCString
trRelatedFunctions
()
{
return
"Gerelateerde functies"
;
}
{
return
"Gerelateerde functies"
;
}
QCString
trRelatedSubscript
()
QCString
trRelatedSubscript
()
...
@@ -63,8 +83,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
...
@@ -63,8 +83,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
{
return
"enum waarde"
;
}
{
return
"enum waarde"
;
}
QCString
trDefinedIn
()
QCString
trDefinedIn
()
{
return
"gedefinieerd in"
;
}
{
return
"gedefinieerd in"
;
}
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"Dit is de letterlijke tekst van de include file "
+
f
+
"."
;
}
QCString
trModules
()
QCString
trModules
()
{
return
"Modules"
;
}
{
return
"Modules"
;
}
QCString
trClassHierarchy
()
QCString
trClassHierarchy
()
...
@@ -166,8 +184,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
...
@@ -166,8 +184,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
{
return
"Variabelen"
;
}
{
return
"Variabelen"
;
}
QCString
trEnumerationValues
()
QCString
trEnumerationValues
()
{
return
"Enumeratie waarden"
;
}
{
return
"Enumeratie waarden"
;
}
QCString
trAuthor
()
{
return
"auteur"
;
}
QCString
trDefineDocumentation
()
QCString
trDefineDocumentation
()
{
return
"Documentatie van defines"
;
}
{
return
"Documentatie van defines"
;
}
QCString
trFunctionPrototypeDocumentation
()
QCString
trFunctionPrototypeDocumentation
()
...
@@ -184,8 +200,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
...
@@ -184,8 +200,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
{
return
"Documentatie van variabelen"
;
}
{
return
"Documentatie van variabelen"
;
}
QCString
trCompounds
()
QCString
trCompounds
()
{
return
"Compounds"
;
}
{
return
"Compounds"
;
}
QCString
trFiles
()
{
return
"Files"
;
}
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
{
QCString
result
=
(
QCString
)
"Gegenereerd op "
+
date
;
QCString
result
=
(
QCString
)
"Gegenereerd op "
+
date
;
...
@@ -215,8 +229,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
...
@@ -215,8 +229,6 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
{
return
"Versie"
;
}
{
return
"Versie"
;
}
QCString
trDate
()
QCString
trDate
()
{
return
"Datum"
;
}
{
return
"Datum"
;
}
QCString
trAuthors
()
{
return
"Auteur(s)"
;
}
QCString
trReturns
()
QCString
trReturns
()
{
return
"Retourneert"
;
}
{
return
"Retourneert"
;
}
QCString
trSeeAlso
()
QCString
trSeeAlso
()
...
@@ -802,6 +814,156 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
...
@@ -802,6 +814,156 @@ class TranslatorDutch : public TranslatorAdapter_1_2_6
return
"Bug Lijst"
;
return
"Bug Lijst"
;
}
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.6
//////////////////////////////////////////////////////////////////////////
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value and
* <pre>
* Codepage number:
* Charset Name Charset Value(hex) Codepage number
* ------------------------------------------------------
* DEFAULT_CHARSET 1 (x01)
* SYMBOL_CHARSET 2 (x02)
* OEM_CHARSET 255 (xFF)
* ANSI_CHARSET 0 (x00) 1252
* RUSSIAN_CHARSET 204 (xCC) 1251
* EE_CHARSET 238 (xEE) 1250
* GREEK_CHARSET 161 (xA1) 1253
* TURKISH_CHARSET 162 (xA2) 1254
* BALTIC_CHARSET 186 (xBA) 1257
* HEBREW_CHARSET 177 (xB1) 1255
* ARABIC _CHARSET 178 (xB2) 1256
* SHIFTJIS_CHARSET 128 (x80) 932
* HANGEUL_CHARSET 129 (x81) 949
* GB2313_CHARSET 134 (x86) 936
* CHINESEBIG5_CHARSET 136 (x88) 950
* </pre>
*
*/
virtual
QCString
trRTFansicp
()
{
return
"1252"
;
}
/*! Used as ansicpg for RTF fcharset
* \see trRTFansicp() for a table of possible values.
*/
virtual
QCString
trRTFCharSet
()
{
return
"0"
;
}
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
"Index"
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trClass
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Klasse"
:
"klass"
));
if
(
!
singular
)
result
+=
"n"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trFile
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"File"
:
"file"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trNamespace
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Namespace"
:
"namespace"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGroup
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Groep"
:
"groep"
));
if
(
!
singular
)
result
+=
"en"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trPage
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Pagina"
:
"pagina"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trMember
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Member"
:
"member"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Veld"
:
"veld"
));
if
(
!
singular
)
result
+=
"en"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGlobal
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Globale member"
:
"globale member"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.7
//////////////////////////////////////////////////////////////////////////
/*! This text is generated when the \\author command is used and
* for the author section in man pages. */
virtual
QCString
trAuthor
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Auteur"
:
"auteur"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
}
};
};
#endif
#endif
src/translator_sk.h
View file @
df80e278
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
#ifndef TRANSLATOR_SK_H
#ifndef TRANSLATOR_SK_H
#define TRANSLATOR_SK_H
#define TRANSLATOR_SK_H
class
TranslatorSlovak
:
public
TranslatorAdapter
CVS
class
TranslatorSlovak
:
public
TranslatorAdapter
_1_2_7
{
{
private
:
private
:
/*! The Decode() inline assumes the source written in the
/*! The Decode() inline assumes the source written in the
...
@@ -659,9 +659,7 @@ class TranslatorSlovak : public TranslatorAdapterCVS
...
@@ -659,9 +659,7 @@ class TranslatorSlovak : public TranslatorAdapterCVS
return
Decode
(
result
);
return
Decode
(
result
);
}
}
/*! \mgroup Class sections
/* these are for the member sections of a class, struct or union */
* these are for the member sections of a class, struct or union
*/
virtual
QCString
trPublicMembers
()
virtual
QCString
trPublicMembers
()
{
return
Decode
(
"Verejn metdy"
);
}
{
return
Decode
(
"Verejn metdy"
);
}
virtual
QCString
trPublicSlots
()
virtual
QCString
trPublicSlots
()
...
@@ -682,7 +680,6 @@ class TranslatorSlovak : public TranslatorAdapterCVS
...
@@ -682,7 +680,6 @@ class TranslatorSlovak : public TranslatorAdapterCVS
{
return
Decode
(
"Privtne sloty"
);
}
{
return
Decode
(
"Privtne sloty"
);
}
virtual
QCString
trStaticPrivateMembers
()
virtual
QCString
trStaticPrivateMembers
()
{
return
Decode
(
"Statick privtne metdy"
);
}
{
return
Decode
(
"Statick privtne metdy"
);
}
/*! \endmgroup */
/*! this function is used to produce a comma-separated list of items.
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
* use generateMarker(i) to indicate where item i should be put.
...
@@ -899,17 +896,17 @@ class TranslatorSlovak : public TranslatorAdapterCVS
...
@@ -899,17 +896,17 @@ class TranslatorSlovak : public TranslatorAdapterCVS
{
{
return
Decode
(
"Zobrazi dokumentciu tohoto sboru."
);
return
Decode
(
"Zobrazi dokumentciu tohoto sboru."
);
}
}
/*! Text for the \pre command */
/*! Text for the \
\
pre command */
virtual
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
{
return
Decode
(
"Prepodmienka"
);
return
Decode
(
"Prepodmienka"
);
}
}
/*! Text for the \post command */
/*! Text for the \
\
post command */
virtual
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
{
return
Decode
(
"Postpodmienka"
);
return
Decode
(
"Postpodmienka"
);
}
}
/*! Text for the \invariant command */
/*! Text for the \
\
invariant command */
virtual
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
{
return
Decode
(
"Invariant"
);
return
Decode
(
"Invariant"
);
...
...
src/util.cpp
View file @
df80e278
...
@@ -1830,7 +1830,7 @@ bool getDefs(const QCString &scName,const QCString &memberName,
...
@@ -1830,7 +1830,7 @@ bool getDefs(const QCString &scName,const QCString &memberName,
return
TRUE
;
/* found match */
return
TRUE
;
/* found match */
}
}
}
}
/* goto the parent scope */
/* go
to the parent scope */
if
(
scopeOffset
==
0
)
if
(
scopeOffset
==
0
)
{
{
...
@@ -2650,18 +2650,16 @@ QCString convertNameToFile(const char *name,bool allowDots)
...
@@ -2650,18 +2650,16 @@ QCString convertNameToFile(const char *name,bool allowDots)
void
extractNamespaceName
(
const
QCString
&
scopeName
,
void
extractNamespaceName
(
const
QCString
&
scopeName
,
QCString
&
className
,
QCString
&
namespaceName
)
QCString
&
className
,
QCString
&
namespaceName
)
{
{
QCString
clName
=
scopeName
.
copy
()
;
int
i
,
p
;
//QCString ns
Name;
QCString
clName
=
scope
Name
;
NamespaceDef
*
nd
=
0
;
NamespaceDef
*
nd
=
0
;
if
(
!
clName
.
isEmpty
()
&&
(
nd
=
getResolvedNamespace
(
clName
))
&&
getClass
(
clName
)
==
0
)
if
(
!
clName
.
isEmpty
()
&&
(
nd
=
getResolvedNamespace
(
clName
))
&&
getClass
(
clName
)
==
0
)
{
// the whole name is a namespace (and not a class)
{
// the whole name is a namespace (and not a class)
namespaceName
=
nd
->
name
().
copy
();
namespaceName
=
nd
->
name
().
copy
();
className
.
resize
(
0
);
className
.
resize
(
0
);
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
goto
done
;
// className.data(),namespaceName.data());
return
;
}
}
int
i
,
p
=
clName
.
length
()
-
2
;
p
=
clName
.
length
()
-
2
;
while
(
p
>=
0
&&
(
i
=
clName
.
findRev
(
"::"
,
p
))
!=-
1
)
while
(
p
>=
0
&&
(
i
=
clName
.
findRev
(
"::"
,
p
))
!=-
1
)
// see if the first part is a namespace (and not a class)
// see if the first part is a namespace (and not a class)
{
{
...
@@ -2669,14 +2667,16 @@ void extractNamespaceName(const QCString &scopeName,
...
@@ -2669,14 +2667,16 @@ void extractNamespaceName(const QCString &scopeName,
{
{
namespaceName
=
nd
->
name
().
copy
();
namespaceName
=
nd
->
name
().
copy
();
className
=
clName
.
right
(
clName
.
length
()
-
i
-
2
);
className
=
clName
.
right
(
clName
.
length
()
-
i
-
2
);
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
goto
done
;
// className.data(),namespaceName.data());
return
;
}
}
p
=
i
-
2
;
// try a smaller piece of the scope
p
=
i
-
2
;
// try a smaller piece of the scope
}
}
// not found, so we just have to guess.
className
=
scopeName
.
copy
();
className
=
scopeName
.
copy
();
namespaceName
.
resize
(
0
);
namespaceName
.
resize
(
0
);
done:
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
// className.data(),namespaceName.data());
// className.data(),namespaceName.data());
return
;
return
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment