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
0d0eec1d
Commit
0d0eec1d
authored
Oct 01, 2000
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.2-20001001
parent
6778bfcd
Changes
59
Hide whitespace changes
Inline
Side-by-side
Showing
59 changed files
with
1030 additions
and
212 deletions
+1030
-212
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
configgen.cpp
addon/configgen/configgen.cpp
+16
-14
autolink.doc
doc/autolink.doc
+5
-1
config.doc
doc/config.doc
+5
-5
docblocks.doc
doc/docblocks.doc
+15
-16
afterdoc.cfg
examples/afterdoc.cfg
+9
-8
author.cfg
examples/author.cfg
+1
-0
autolink.cfg
examples/autolink.cfg
+1
-0
class.cfg
examples/class.cfg
+1
-0
define.cfg
examples/define.cfg
+1
-0
diagrams.cfg
examples/diagrams.cfg
+1
-0
enum.cfg
examples/enum.cfg
+1
-0
example.cfg
examples/example.cfg
+1
-0
file.cfg
examples/file.cfg
+1
-0
func.cfg
examples/func.cfg
+1
-0
group.cfg
examples/group.cfg
+1
-0
include.cfg
examples/include.cfg
+1
-0
jdstyle.cfg
examples/jdstyle.cfg
+9
-8
memgrp.cfg
examples/memgrp.cfg
+10
-8
memgrp.cpp
examples/memgrp.cpp
+2
-1
overload.cfg
examples/overload.cfg
+1
-0
page.cfg
examples/page.cfg
+1
-0
par.cfg
examples/par.cfg
+1
-0
qtstyle.cfg
examples/qtstyle.cfg
+1
-0
relates.cfg
examples/relates.cfg
+1
-0
restypedef.cfg
examples/restypedef.cfg
+1
-0
structcmd.cfg
examples/structcmd.cfg
+1
-0
tag.cfg
examples/tag.cfg
+1
-0
templ.cfg
examples/templ.cfg
+1
-0
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+7
-4
classdef.h
src/classdef.h
+1
-0
config.h
src/config.h
+2
-2
config.l
src/config.l
+9
-8
definition.h
src/definition.h
+15
-10
doc.l
src/doc.l
+5
-0
doxygen.cpp
src/doxygen.cpp
+29
-2
doxygen.pro.in
src/doxygen.pro.in
+1
-1
entry.cpp
src/entry.cpp
+3
-0
entry.h
src/entry.h
+3
-4
filedef.h
src/filedef.h
+1
-0
groupdef.cpp
src/groupdef.cpp
+6
-16
groupdef.h
src/groupdef.h
+1
-0
htmlgen.cpp
src/htmlgen.cpp
+6
-0
htmlhelp.cpp
src/htmlhelp.cpp
+26
-5
htmlhelp.h
src/htmlhelp.h
+6
-0
language.cpp
src/language.cpp
+5
-0
memberdef.cpp
src/memberdef.cpp
+22
-18
memberdef.h
src/memberdef.h
+4
-0
memberlist.cpp
src/memberlist.cpp
+26
-12
memberlist.h
src/memberlist.h
+1
-1
namespacedef.h
src/namespacedef.h
+1
-0
page.h
src/page.h
+5
-2
rtfgen.cpp
src/rtfgen.cpp
+5
-5
scanner.l
src/scanner.l
+64
-52
translator_si.h
src/translator_si.h
+671
-0
util.cpp
src/util.cpp
+8
-3
No files found.
INSTALL
View file @
0d0eec1d
DOXYGEN Version 1.2.2
DOXYGEN Version 1.2.2
-20001001
Please read the installation section of the manual for instructions.
--------
Dimitri van Heesch (
24 Septem
ber 2000)
Dimitri van Heesch (
01 Octo
ber 2000)
README
View file @
0d0eec1d
DOXYGEN Version 1.2.2
DOXYGEN Version 1.2.2
-20001001
Please read INSTALL for compilation instructions.
...
...
@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
Enjoy,
Dimitri van Heesch (
24 Septem
ber 2000)
Dimitri van Heesch (
01 Octo
ber 2000)
VERSION
View file @
0d0eec1d
1.2.2
1.2.2
-20001001
addon/configgen/configgen.cpp
View file @
0d0eec1d
...
...
@@ -775,26 +775,27 @@ void init()
"information to generate all constant output in the proper language.
\n
"
"The default language is English, other supported languages are:
\n
"
"Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese,
\n
"
"Korean, Hungarian, Spanish, Romanian, Russian, Croatian, Polish,
and
\n
"
"Portuguese.
\n
"
"Korean, Hungarian, Spanish, Romanian, Russian, Croatian, Polish,
\n
"
"Portuguese
and Slovene
.
\n
"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"English"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Croatian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Czech"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Dutch"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"English"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"French"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Italian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Czech"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Swedish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"German"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Finnish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"German"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Hungarian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Italian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Japanese"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Korean"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Spanish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Romanian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Russian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Croatian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Polish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Portuguese"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Slovene"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Spanish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Swedish"
);
ConfigBool
::
add
(
"extractAllFlag"
,
"EXTRACT_ALL"
,
"FALSE"
,
...
...
@@ -956,12 +957,13 @@ void init()
);
ConfigBool
::
add
(
"autoBriefFlag"
,
"JAVADOC_AUTOBRIEF"
,
"
TRU
E"
,
"javadoc comments behaves as Qt comments."
,
"If the JAVADOC_AUTOBRIEF tag is set to YES
(the default)
then Doxygen
\n
"
"
FALS
E"
,
"
should
javadoc comments behaves as Qt comments."
,
"If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
\n
"
"will interpret the first line (until the first dot) of a JavaDoc-style
\n
"
"comment as the brief description. If set to NO, the Javadoc-style will
\n
"
"behave just like the Qt-style comments.
\n
"
"comment as the brief description. If set to NO, the JavaDoc
\n
"
"comments will behave just like the Qt-style comments (thus requiring an
\n
"
"explict @brief command for a brief description.
\n
"
);
ConfigBool
::
add
(
"inheritDocsFlag"
,
"INHERIT_DOCS"
,
...
...
doc/autolink.doc
View file @
0d0eec1d
...
...
@@ -69,6 +69,10 @@
\par Note 2:
For JavaDoc compatibility a \# may be used instead of a :: in
the patterns above.
\par Note 3:
In the documentation of a class containing a member foo,
a reference to a global variable is made using ::foo, whereas \#foo
will link to the member.
For non overloaded members the argument list may be omitted.
...
...
@@ -111,7 +115,7 @@ typedef struct StructName TypeName
\par Example:
\verbinclude restypedef.cpp
\htmlonly
Click <a href="$(DOXYGEN_DOCDIR)/examples/restypedef/html/restypedef
.
cpp.html">here</a>
Click <a href="$(DOXYGEN_DOCDIR)/examples/restypedef/html/restypedef
_
cpp.html">here</a>
for the corresponding HTML documentation that is generated by Doxygen.
\endhtmlonly
*/
doc/config.doc
View file @
0d0eec1d
...
...
@@ -47,10 +47,10 @@ file using a <code>\@INCLUDE</code> tag as follows:
\
endverbatim
The
include
file
is
searched
in
the
current
working
directory
.
You
can
also
specify
a
list
of
directories
that
should
be
searched
before
looking
in
the
current
working
directory
.
Do
this
by
putting
a
<
code
>\@
INCLUDEPATH
</
code
>
tag
in
the
current
working
directory
.
Do
this
by
putting
a
<
code
>\@
INCLUDE
_
PATH
</
code
>
tag
with
these
paths
before
the
<
code
>\@
INCLUDE
</
code
>
tag
,
e
.
g
:
\
verbatim
@
INCLUDEPATH
=
my_config_dir
@
INCLUDE
_
PATH
=
my_config_dir
\
endverbatim
The
configuration
options
can
be
divided
into
several
categories
.
...
...
@@ -370,10 +370,10 @@ followed by the descriptions of the tags grouped by category.
\
anchor
cfg_javadoc_autobrief
<
dt
>\
c
JAVADOC_AUTOBRIEF
<
dd
>
\
addindex
JAVADOC_AUTOBRIEF
If
the
\
c
JAVADOC_AUTOBRIEF
is
set
to
\
c
YES
(
the
default
)
then
Doxygen
If
the
\
c
JAVADOC_AUTOBRIEF
is
set
to
\
c
YES
then
Doxygen
will
interpret
the
first
line
(
until
the
first
dot
)
of
a
JavaDoc
-
style
comment
as
the
brief
description
.
If
set
to
NO
,
the
Javadoc
-
style
will
behave
just
like
the
Qt
-
style
comments
.
comment
as
the
brief
description
.
If
set
to
NO
(
the
default
),
the
Javadoc
-
style
will
behave
just
like
the
Qt
-
style
comments
.
\
anchor
cfg_inherit_docs
<
dt
>\
c
INHERIT_DOCS
<
dd
>
...
...
doc/docblocks.doc
View file @
0d0eec1d
...
...
@@ -66,34 +66,33 @@ sentence of the detailed description
to \c NO). Both the brief and the detailed descriptions are optional
for the Qt style.
Here is the same piece of code, this time documented using the JavaDoc
style:
By default a JavaDoc style documentation block behaves the same way as a
Qt style documentation block. This is not according the JavaDoc specification
however, where the first sentence of the documentation block is automatically
treated as a brief description. To enable this behaviour you should set
\ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" to YES in the configuration
file. If you enble this option and want to put a dot in the middle of a
sentence without ending it, you should put a backslash and a space after it.
Here is an example:
\verbatim
/** Brief description (e.g.\ using only a few words). Details follow. */
\endverbatim
Here is the same piece of code as shown above, this time documented using the
JavaDoc style and \ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" set to YES:
\verbinclude jdstyle.cpp
\htmlonly
Click <a href="$(DOXYGEN_DOCDIR)/examples/jdstyle/html/class_test.html">here</a>
for the corresponding HTML documentation that is generated by doxygen.
\endhtmlonly
Note that by default the first sentence of the documentation (until the <tt>.</tt>)
is treated as a brief description, whereas the documentation block as a whole
forms the detailed description. If you want to put a dot in the middle of a
sentence you should put a backslash and space behind it. Example:
\verbatim
/** Brief description (e.g.\ using only a few words). Details follow. */
\endverbatim
The brief description is required for the JavaDoc style, unless you set
\ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" to NO. If you do this,
doxygen treats JavaDoc comments just like Qt comments (i.e. You have
to insert an explicit \ref cmdbrief "\\brief" command to add a brief description).
Unlike most other documentation systems, doxygen also allows you to put
the documentation of members (including global functions) in front of
the \e definition. This way the documentation can be placed in the source
file instead of the header file. This keeps the header file compact, and allows the
implementer of the members more direct access to the documentation.
As a compromise the brief description could be placed before the
declaration and the detailed description before the member definition
(assuming you use the Qt style comments).
declaration and the detailed description before the member definition.
\par Note:
Each entity can only have \e one brief and \e one detailed description. If you
...
...
examples/afterdoc.cfg
View file @
0d0eec1d
PROJECT_NAME = "AfterDocs"
OUTPUT_DIRECTORY = afterdoc
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = afterdoc.h
QUIET = YES
PROJECT_NAME = "AfterDocs"
OUTPUT_DIRECTORY = afterdoc
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = afterdoc.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/author.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = author.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/autolink.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = autolink.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/class.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = class.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/define.cfg
View file @
0d0eec1d
...
...
@@ -7,3 +7,4 @@ CASE_SENSE_NAMES = NO
INPUT = define.h
ENABLE_PREPROCESSING = YES
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/diagrams.cfg
View file @
0d0eec1d
...
...
@@ -10,3 +10,4 @@ ENABLE_PREPROCESSING = YES
INPUT = .
FILE_PATTERNS = diagrams_*.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/enum.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = enum.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/example.cfg
View file @
0d0eec1d
...
...
@@ -8,3 +8,4 @@ CASE_SENSE_NAMES = NO
INPUT = example.cpp
EXAMPLE_PATH = example_test.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/file.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = file.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/func.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = func.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/group.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = group.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/include.cfg
View file @
0d0eec1d
...
...
@@ -7,3 +7,4 @@ CASE_SENSE_NAMES = NO
INPUT = include.cpp
EXAMPLE_PATH = example_test.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/jdstyle.cfg
View file @
0d0eec1d
PROJECT_NAME = "JavaDoc Style"
OUTPUT_DIRECTORY = jdstyle
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = jdstyle.cpp
QUIET = YES
PROJECT_NAME = "JavaDoc Style"
OUTPUT_DIRECTORY = jdstyle
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = jdstyle.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/memgrp.cfg
View file @
0d0eec1d
PROJECT_NAME = "Member Grouping"
OUTPUT_DIRECTORY = memgrp
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = memgrp.cpp
QUIET = YES
PROJECT_NAME = "Member Grouping"
OUTPUT_DIRECTORY = memgrp
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = memgrp.cpp
QUIET = YES
DISTRIBUTE_GROUP_DOC = YES
JAVADOC_AUTOBRIEF = YES
examples/memgrp.cpp
View file @
0d0eec1d
...
...
@@ -33,7 +33,8 @@ void Test::func1InGroup2() {}
*/
//@{
//! one description for all members of this group
//! one description for all members of this group
//! (because DISTRIBUTE_GROUP_DOC is YES in the config file)
#define A 1
#define B 2
void
glob_func
();
...
...
examples/overload.cfg
View file @
0d0eec1d
...
...
@@ -7,3 +7,4 @@ CASE_SENSE_NAMES = NO
SORT_MEMBER_DOCS = NO
INPUT = overload.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/page.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = page.doc
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/par.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = par.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/qtstyle.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = qtstyle.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/relates.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = relates.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/restypedef.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = restypedef.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/structcmd.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = structcmd.h
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/tag.cfg
View file @
0d0eec1d
...
...
@@ -8,3 +8,4 @@ INPUT = tag.cpp
TAGFILES = example.tag
PERL_PATH = perl
QUIET = YES
JAVADOC_AUTOBRIEF = YES
examples/templ.cfg
View file @
0d0eec1d
...
...
@@ -6,3 +6,4 @@ GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
INPUT = templ.cpp
QUIET = YES
JAVADOC_AUTOBRIEF = YES
packages/rpm/doxygen.spec
View file @
0d0eec1d
Name: doxygen
Version: 1.2.2
Version: 1.2.2
-20001001
Summary: documentation system for C, C++ and IDL
Release: 1
Source0: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
0d0eec1d
...
...
@@ -386,10 +386,13 @@ void ClassDef::insertMember(MemberDef *md)
functionMembers
.
append
(
md
);
break
;
case
Private
:
if
(
Config
::
sortMembersFlag
)
functionMembers
.
inSort
(
md
);
else
functionMembers
.
append
(
md
);
if
(
Config
::
extractPrivateFlag
)
{
if
(
Config
::
sortMembersFlag
)
functionMembers
.
inSort
(
md
);
else
functionMembers
.
append
(
md
);
}
break
;
}
break
;
...
...
src/classdef.h
View file @
0d0eec1d
...
...
@@ -58,6 +58,7 @@ class ClassDef : public Definition
const
char
*
name
,
CompoundType
ct
,
const
char
*
ref
=
0
,
const
char
*
fName
=
0
);
~
ClassDef
();
DefType
definitionType
()
{
return
TypeClass
;
}
QCString
getOutputFileBase
()
const
{
return
fileName
;
}
QCString
displayName
()
const
;
CompoundType
compoundType
()
const
{
return
compType
;
}
...
...
src/config.h
View file @
0d0eec1d
/* This file was generated by configgen on Sun
Sep 24 18:38:07
2000
/* This file was generated by configgen on Sun
Oct 1 13:51:26
2000
* from config_templ.h
*
* DO NOT EDIT!
...
...
@@ -60,7 +60,7 @@ struct Config
static
bool
hideScopeNames
;
// hide the name of the scope.
static
bool
verbatimHeaderFlag
;
// enable/disable generation of verb headers.
static
bool
showIncFileFlag
;
// show include file in file documentation?
static
bool
autoBriefFlag
;
// javadoc comments behaves as Qt comments.
static
bool
autoBriefFlag
;
//
should
javadoc comments behaves as Qt comments.
static
bool
inheritDocsFlag
;
// inheritance of documentation enabled?
static
bool
inlineInfoFlag
;
// show info about inline members?
static
bool
sortMembersFlag
;
// sort members alphabetically?
...
...
src/config.l
View file @
0d0eec1d
/* This file was generated by configgen on Sun
Sep 24 18:38:07
2000
/* This file was generated by configgen on Sun
Oct 1 13:51:26
2000
* from config_templ.l
*
* DO NOT EDIT!
...
...
@@ -97,7 +97,7 @@ bool Config::caseSensitiveNames = TRUE;
bool Config::hideScopeNames = FALSE;
bool Config::verbatimHeaderFlag = TRUE;
bool Config::showIncFileFlag = TRUE;
bool Config::autoBriefFlag =
TRU
E;
bool Config::autoBriefFlag =
FALS
E;
bool Config::inheritDocsFlag = TRUE;
bool Config::inlineInfoFlag = TRUE;
bool Config::sortMembersFlag = TRUE;
...
...
@@ -823,7 +823,7 @@ void Config::init()
Config::hideScopeNames = FALSE;
Config::verbatimHeaderFlag = TRUE;
Config::showIncFileFlag = TRUE;
Config::autoBriefFlag =
TRU
E;
Config::autoBriefFlag =
FALS
E;
Config::inheritDocsFlag = TRUE;
Config::inlineInfoFlag = TRUE;
Config::sortMembersFlag = TRUE;
...
...
@@ -1015,8 +1015,8 @@ void writeTemplateConfig(QFile *f,bool sl)
t << "# information to generate all constant output in the proper language. \n";
t << "# The default language is English, other supported languages are: \n";
t << "# Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese, \n";
t << "# Korean, Hungarian, Spanish, Romanian, Russian, Croatian, Polish,
and
\n";
t << "# Portuguese.\n";
t << "# Korean, Hungarian, Spanish, Romanian, Russian, Croatian, Polish, \n";
t << "# Portuguese
and Slovene
.\n";
t << "\n";
}
t << "OUTPUT_LANGUAGE = ";
...
...
@@ -1240,10 +1240,11 @@ void writeTemplateConfig(QFile *f,bool sl)
if (!sl)
{
t << "\n";
t << "# If the JAVADOC_AUTOBRIEF tag is set to YES
(the default)
then Doxygen \n";
t << "# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen \n";
t << "# will interpret the first line (until the first dot) of a JavaDoc-style \n";
t << "# comment as the brief description. If set to NO, the Javadoc-style will \n";
t << "# behave just like the Qt-style comments. \n";
t << "# comment as the brief description. If set to NO, the JavaDoc \n";
t << "# comments will behave just like the Qt-style comments (thus requiring an \n";
t << "# explict @brief command for a brief description. \n";
t << "\n";
}
t << "JAVADOC_AUTOBRIEF = ";
...
...
src/definition.h
View file @
0d0eec1d
...
...
@@ -32,27 +32,32 @@ class MemberDef;
class
Definition
{
public
:
/*! create a new definition */
/*! Types of derived classes */
enum
DefType
{
TypeClass
,
TypeMember
,
TypeFile
,
TypeGroup
,
TypeNamespace
};
/*! Use this for dynamic inspection of the derived class */
virtual
DefType
definitionType
()
=
0
;
/*! Create a new definition */
Definition
(
const
char
*
defFileName
,
int
defLine
,
const
char
*
name
,
const
char
*
b
=
0
,
const
char
*
d
=
0
);
/*!
d
estroys the definition */
/*!
D
estroys the definition */
virtual
~
Definition
();
/*!
r
eturns the name of the definition */
/*!
R
eturns the name of the definition */
const
QCString
&
name
()
const
{
return
n
;
}
/*!
r
eturns the base name of the output file that contains this
/*!
R
eturns the base name of the output file that contains this
* definition.
*/
virtual
QCString
getOutputFileBase
()
const
=
0
;
/*! Returns the name of the source listing of this file. */
const
QCString
sourceName
()
const
{
return
getOutputFileBase
()
+
"-source"
;
}
/*!
r
eturns the detailed description of this definition */
/*!
R
eturns the detailed description of this definition */
const
QCString
&
documentation
()
const
{
return
doc
;
}
/*!
r
eturns the brief description of this definition */
/*!
R
eturns the brief description of this definition */
const
QCString
&
briefDescription
()
const
{
return
brief
;
}
/*!
s
ets a new \a name for the definition */
/*!
S
ets a new \a name for the definition */
void
setName
(
const
char
*
name
)
{
n
=
name
;
}
/*!
s
ets the documentation of this definition to \a d. */
/*!
S
ets the documentation of this definition to \a d. */
void
setDocumentation
(
const
char
*
d
,
bool
stripWhiteSpace
=
TRUE
)
{
if
(
stripWhiteSpace
)
...
...
@@ -60,11 +65,11 @@ class Definition
else
doc
=
d
;
}
/*!
s
ets the brief description of this definition to \a b.
/*!
S
ets the brief description of this definition to \a b.
* A dot is added to the sentence if not available.
*/
void
setBriefDescription
(
const
char
*
b
);
/*!
r
eturns TRUE iff the definition is documented */
/*!
R
eturns TRUE iff the definition is documented */
virtual
bool
hasDocumentation
();
virtual
bool
isLinkableInProject
()
=
0
;
virtual
bool
isLinkable
()
=
0
;
...
...
src/doc.l
View file @
0d0eec1d
...
...
@@ -984,6 +984,11 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
}
}
<DocScan>(({B}*"\n"){2,}{B}*)?{CMD}"par"{B}* {
QCString t=yytext;
if (t.contains('\n')>1 && insideItemList)
{
forceEndItemList();
}
BEGIN(DocPar);
}
<DocPar>[^\n]*{BN} {
...
...
src/doxygen.cpp
View file @
0d0eec1d
...
...
@@ -1107,6 +1107,7 @@ static MemberDef *addVariableToClass(
md
->
setDocumentation
(
root
->
doc
);
md
->
setBriefDescription
(
root
->
brief
);
md
->
setDefinition
(
def
);
md
->
setBitfields
(
root
->
bitfields
);
md
->
addSectionsToDefinition
(
root
->
anchors
);
md
->
setFromAnnonymousScope
(
fromAnnScope
);
md
->
setFromAnnonymousMember
(
fromAnnMemb
);
...
...
@@ -2038,6 +2039,22 @@ static void transferRelatedFunctionDocumentation()
}
//----------------------------------------------------------------------
static
void
replaceNamespaceAliases
(
QCString
&
scope
,
int
i
)
{
//printf("replaceNamespaceAliases(%s,%d)\n",scope.data(),i);
while
(
i
>
0
)
{
QCString
*
s
=
namespaceAliasDict
[
scope
.
left
(
i
)];
if
(
s
)
{
scope
=*
s
+
scope
.
right
(
scope
.
length
()
-
i
);
i
=
s
->
length
();
}
i
=
scope
.
findRev
(
"::"
,
i
-
1
);
}
//printf("replaceNamespaceAliases() result=%s\n",scope.data());
}
static
bool
findBaseClassRelation
(
Entry
*
root
,
ClassDef
*
cd
,
BaseInfo
*
bi
,
...
...
@@ -2109,6 +2126,14 @@ static bool findBaseClassRelation(Entry *root,ClassDef *cd,
bool
found
=
baseClass
!=
0
&&
baseClass
!=
cd
;
NamespaceDef
*
nd
=
cd
->
getNamespaceDef
();
if
(
!
found
&&
(
i
=
baseClassName
.
findRev
(
"::"
))
!=-
1
)
{
// replace any namespace aliases
replaceNamespaceAliases
(
baseClassName
,
i
);
baseClass
=
getResolvedClass
(
baseClassName
);
found
=
baseClass
!=
0
&&
baseClass
!=
cd
;
}
if
(
!
found
)
{
FileDef
*
fd
=
cd
->
getFileDef
();
...
...
@@ -2148,7 +2173,6 @@ static bool findBaseClassRelation(Entry *root,ClassDef *cd,
}
if
(
!
found
&&
nd
)
// class is inside a namespace
{
//printf(" class %s inside namespace %s\n",cd->name().data(),nd->name().data());
NamespaceList
*
nl
=
nd
->
getUsedNamespaces
();
QCString
fName
=
nd
->
name
()
+
"::"
+
baseClassName
;
found
=
(
baseClass
=
getResolvedClass
(
fName
))
!=
0
&&
root
->
name
!=
fName
;
...
...
@@ -2264,18 +2288,21 @@ static void computeClassRelations(Entry *root)
if
(
(
(
// is it a compound (class, struct, union, interface ...)
root
->
section
&
Entry
::
COMPOUND_MASK
)
||
(
// is it a documentation block with inheritance info.
(
root
->
section
&
Entry
::
COMPOUNDDOC_MASK
)
&&
root
->
extends
->
count
()
>
0
)
)
&&
!
root
->
name
.
isEmpty
()
!
root
->
name
.
isEmpty
()
// sanity check
)
{
ClassDef
*
cd
;
// strip any annonymous scopes first
QCString
bName
=
stripAnnonymousNamespaceScope
(
root
->
name
);
Debug
::
print
(
Debug
::
Classes
,
0
,
" Class %s :
\n
"
,
bName
.
data
());
if
((
cd
=
getClass
(
bName
)))
...
...
src/doxygen.pro.in
View file @
0d0eec1d
...
...
@@ -27,7 +27,7 @@ HEADERS = doxygen.h scanner.h doc.h classdef.h classlist.h memberdef.h \
translator_it.h formula.h debug.h membergroup.h htmlhelp.h \
translator_ru.h translator_pl.h dot.h rtfgen.h xml.h xml_dtd.h \
reflist.h page.h sortdict.h translator_hu.h translator_kr.h \
translator_ro.h
translator_ro.h
translator_si.h
SOURCES = doxygen.cpp scanner.cpp doc.cpp classdef.cpp classlist.cpp \
memberdef.cpp membername.cpp index.cpp memberlist.cpp \
entry.cpp logos.cpp instdox.cpp message.cpp code.cpp \
...
...
src/entry.cpp
View file @
0d0eec1d
...
...
@@ -56,6 +56,7 @@ Entry::Entry(const Entry &e)
type
=
e
.
type
.
copy
();
name
=
e
.
name
.
copy
();
args
=
e
.
args
.
copy
();
bitfields
=
e
.
bitfields
.
copy
();
exception
=
e
.
exception
.
copy
();
program
=
e
.
program
.
copy
();
includeFile
=
e
.
includeFile
.
copy
();
...
...
@@ -197,6 +198,7 @@ void Entry::reset()
name
.
resize
(
0
);
type
.
resize
(
0
);
args
.
resize
(
0
);
bitfields
.
resize
(
0
);
exception
.
resize
(
0
);
program
.
resize
(
0
);
//body.resize(0);
...
...
@@ -242,6 +244,7 @@ int Entry::getSize()
size
+=
type
.
length
()
+
1
;
size
+=
name
.
length
()
+
1
;
size
+=
args
.
length
()
+
1
;
size
+=
bitfields
.
length
()
+
1
;
size
+=
exception
.
length
()
+
1
;
size
+=
program
.
length
()
+
1
;
//size+=body.length()+1;
...
...
src/entry.h
View file @
0d0eec1d
...
...
@@ -162,8 +162,6 @@ class Entry
int
section
;
// entry type (see Sections);
Protection
protection
;
// class protection
//bool sig; // a Qt signal ?
//bool slot; // a Qt slot ?
MethodTypes
mtype
;
// signal, slot or dcop method?
bool
stat
;
// static ?
bool
explicitExternal
;
// explicitly defined as external?
...
...
@@ -176,6 +174,7 @@ class Entry
QCString
type
;
// member type
QCString
name
;
// member name
QCString
args
;
// member argument string
QCString
bitfields
;
// member's bit fields
ArgumentList
*
argList
;
// member arguments as a list
ArgumentList
*
tArgList
;
// template argument list
ArgumentList
*
mtArgList
;
// member template argument list
...
...
@@ -183,8 +182,6 @@ class Entry
QCString
memberSpec
;
// template specialization of the member
QCString
program
;
// the program text
QCString
initializer
;
// initial value (for variables)
int
bodyLine
;
// line number of the definition in the source
int
endBodyLine
;
// line number where the definition ends
QCString
includeFile
;
// include file (2 arg of \class, must be unique)
QCString
includeName
;
// include name (3 arg of \class)
QCString
doc
;
// documentation block (partly parsed)
...
...
@@ -192,6 +189,8 @@ class Entry
QCString
brief
;
// brief description (doc block)
QCString
inside
;
// name of the class in which documents are found
QCString
exception
;
// throw specification
int
bodyLine
;
// line number of the definition in the source
int
endBodyLine
;
// line number where the definition ends
int
mGrpId
;
// member group id
QList
<
Entry
>
*
sublist
;
// entries that are children of this one
QList
<
BaseInfo
>
*
extends
;
// list of base classes
...
...
src/filedef.h
View file @
0d0eec1d
...
...
@@ -66,6 +66,7 @@ class FileDef : public Definition
FileDef
(
const
char
*
p
,
const
char
*
n
,
const
char
*
ref
=
0
);
~
FileDef
();
DefType
definitionType
()
{
return
TypeFile
;
}
/*! Returns the unique file name (this may include part of the path). */
QCString
name
()
const
...
...
src/groupdef.cpp
View file @
0d0eec1d
...
...
@@ -366,7 +366,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
}
}
defineMembers
.
countDocMembers
();
defineMembers
.
countDocMembers
(
TRUE
);
if
(
defineMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
@@ -376,7 +376,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
defineMembers
.
writeDocumentation
(
ol
,
name
(),
this
);
}
protoMembers
.
countDocMembers
();
protoMembers
.
countDocMembers
(
TRUE
);
if
(
protoMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
@@ -386,7 +386,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
protoMembers
.
writeDocumentation
(
ol
,
name
(),
this
);
}
typedefMembers
.
countDocMembers
();
typedefMembers
.
countDocMembers
(
TRUE
);
if
(
typedefMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
@@ -396,7 +396,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
typedefMembers
.
writeDocumentation
(
ol
,
name
(),
this
);
}
enumMembers
.
countDocMembers
();
enumMembers
.
countDocMembers
(
TRUE
);
if
(
enumMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
@@ -406,17 +406,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
enumMembers
.
writeDocumentation
(
ol
,
name
(),
this
);
}
//enumValMembers.countDocMembers();
//if (enumValMembers.totalCount()>0 )
//{
// ol.writeRuler();
// ol.startGroupHeader();
// parseText(ol,theTranslator->trEnumerationValueDocumentation());
// ol.endGroupHeader();
// enumValMembers.writeDocumentation(ol,name());
//}
funcMembers
.
countDocMembers
();
funcMembers
.
countDocMembers
(
TRUE
);
if
(
funcMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
@@ -426,7 +416,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
funcMembers
.
writeDocumentation
(
ol
,
name
(),
this
);
}
varMembers
.
countDocMembers
();
varMembers
.
countDocMembers
(
TRUE
);
if
(
varMembers
.
totalCount
()
>
0
)
{
ol
.
writeRuler
();
...
...
src/groupdef.h
View file @
0d0eec1d
...
...
@@ -41,6 +41,7 @@ class GroupDef : public Definition
public
:
GroupDef
(
const
char
*
fileName
,
int
line
,
const
char
*
name
,
const
char
*
title
);
~
GroupDef
();
DefType
definitionType
()
{
return
TypeGroup
;
}
QCString
getOutputFileBase
()
const
{
return
fileName
;
}
const
char
*
groupTitle
()
const
{
return
title
;
}
void
addFile
(
const
FileDef
*
def
);
...
...
src/htmlgen.cpp
View file @
0d0eec1d
...
...
@@ -29,6 +29,7 @@
#include "version.h"
#include "dot.h"
#include "language.h"
#include "htmlhelp.h"
#define GROUP_COLOR "#ff8080"
...
...
@@ -157,6 +158,11 @@ void HtmlGenerator::startFile(const char *name,const char *title,bool external)
lastTitle
=
title
;
if
(
fileName
.
right
(
5
)
!=
".html"
)
fileName
+=
".html"
;
startPlainFile
(
fileName
);
if
(
Config
::
htmlHelpFlag
)
{
HtmlHelp
::
getInstance
()
->
addIndexFile
(
fileName
);
}
lastFile
=
fileName
;
if
(
header
.
isEmpty
())
{
...
...
src/htmlhelp.cpp
View file @
0d0eec1d
...
...
@@ -287,9 +287,12 @@ void HtmlHelp::initialize()
"<param name=
\"
ImageType
\"
value=
\"
Folder
\"
>
\n
"
"</OBJECT>
\n
"
"<UL>
\n
"
;
}
void
HtmlHelp
::
createProjectFile
()
{
/* Write the project file */
fName
=
Config
::
htmlOutputDir
+
"/index.hhp"
;
QCString
fName
=
Config
::
htmlOutputDir
+
"/index.hhp"
;
QFile
f
(
fName
);
if
(
f
.
open
(
IO_WriteOnly
))
{
...
...
@@ -298,12 +301,23 @@ void HtmlHelp::initialize()
"Compatibility=1.1
\n
"
"Full-text search=Yes
\n
"
"Contents file=index.hhc
\n
"
"Default Window=
indexHelp
\n
"
"Default Window=
main
\n
"
"Default topic=index.html
\n
"
"Index file=index.hhk
\n
"
"Title="
<<
Config
::
projectName
<<
endl
<<
endl
<<
"[FILES]
\n
"
"index.html"
;
"Title="
<<
Config
::
projectName
<<
endl
<<
endl
;
t
<<
"[WINDOWS]"
<<
endl
;
t
<<
"main=
\"
"
<<
Config
::
projectName
<<
"
\"
,
\"
index.hhc
\"
,"
"
\"
index.hhk
\"
,
\"
index.html
\"
,
\"
index.html
\"
,,,,,0x23520,,"
"0x3006,,,,,,,,0"
<<
endl
<<
endl
;
t
<<
"[FILES]"
<<
endl
;
char
*
s
=
indexFiles
.
first
();
while
(
s
)
{
t
<<
s
<<
endl
;
s
=
indexFiles
.
next
();
}
f
.
close
();
}
else
...
...
@@ -312,6 +326,11 @@ void HtmlHelp::initialize()
}
}
void
HtmlHelp
::
addIndexFile
(
const
char
*
s
)
{
indexFiles
.
append
(
s
);
}
/*! Finalizes the HTML help. This will finish and close the
* contents file (index.hhc) and the index file (index.hhk).
* \sa initialize()
...
...
@@ -331,6 +350,8 @@ void HtmlHelp::finalize()
kts
.
unsetDevice
();
kf
->
close
();
delete
kf
;
createProjectFile
();
}
/*! Increase the level of the contents hierarchy.
...
...
src/htmlhelp.h
View file @
0d0eec1d
...
...
@@ -23,6 +23,7 @@
#include "qtbc.h"
#include <qtextstream.h>
#include <qstrlist.h>
class
QFile
;
class
HtmlHelpIndex
;
...
...
@@ -45,12 +46,17 @@ class HtmlHelp
const
char
*
anchor
=
0
);
void
addIndexItem
(
const
char
*
level1
,
const
char
*
level2
,
const
char
*
ref
,
const
char
*
anchor
);
void
addIndexFile
(
const
char
*
name
);
private
:
void
createProjectFile
();
HtmlHelp
();
QFile
*
cf
,
*
kf
;
QTextStream
cts
,
kts
;
HtmlHelpIndex
*
index
;
int
dc
;
QStrList
indexFiles
;
static
HtmlHelp
*
theInstance
;
};
...
...
src/language.cpp
View file @
0d0eec1d
...
...
@@ -34,6 +34,7 @@
#include "translator_hu.h"
#include "translator_kr.h"
#include "translator_ro.h"
#include "translator_si.h"
#endif
#define L_EQUAL(a) !stricmp(langName,a)
...
...
@@ -115,6 +116,10 @@ bool setTranslator(const char *langName)
{
theTranslator
=
new
TranslatorRomanian
;
}
else
if
(
L_EQUAL
(
"slovene"
))
{
theTranslator
=
new
TranslatorSlovene
;
}
#endif
else
// use the default language (i.e. english)
{
...
...
src/memberdef.cpp
View file @
0d0eec1d
...
...
@@ -450,8 +450,15 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *cd,NamespaceDef *nd,
{
Definition
*
d
=
0
;
if
(
cd
)
d
=
cd
;
else
if
(
nd
)
d
=
nd
;
else
if
(
fd
)
d
=
fd
;
else
if
(
gd
)
d
=
gd
;
if
(
d
==
0
)
return
;
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
name
());
if
(
d
==
0
)
{
err
(
"Member %s without group! Please report this bug!
\n
"
,
name
().
data
());
return
;
}
if
(
group
!=
0
&&
gd
==
0
)
// forward link to the group
{
ol
.
writeObjectLink
(
group
->
getReference
(),
group
->
getOutputFileBase
(),
anchor
(),
name
());
}
else
// local link
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
name
());
}
}
...
...
@@ -689,19 +696,6 @@ void MemberDef::writeDeclaration(OutputList &ol,
// write name
if
(
!
name
().
isEmpty
()
&&
name
().
at
(
0
)
!=
'@'
)
{
//if (grpId!=-1)
//{
// if (annMemb)
// {
// //printf("anchor=%s ann_anchor=%s\n",anchor(),annMemb->anchor());
// annMemb->writeLink(ol,cd,nd,fd,gd,inGroup ? memberGroup : 0);
// annMemb->annUsed=annUsed=TRUE;
// }
// else
// writeLink(ol,0,0,0,0,memberGroup);
// //ol.writeBoldString(name());
//}
//else
if
(
isLinkable
())
{
if
(
annMemb
)
...
...
@@ -748,7 +742,11 @@ void MemberDef::writeDeclaration(OutputList &ol,
ol
.
docify
(
excpString
());
}
if
(
!
init
.
isEmpty
()
&&
initLines
==
0
&&
maxInitLines
>
0
)
// add initializer
if
(
!
bitfields
.
isEmpty
())
// add bitfields
{
linkifyText
(
TextGeneratorOLImpl
(
ol
),
cname
,
name
(),
bitfields
.
simplifyWhiteSpace
());
}
else
if
(
!
init
.
isEmpty
()
&&
initLines
==
0
&&
maxInitLines
>
0
)
// add initializer
{
if
(
!
isDefine
())
{
...
...
@@ -797,9 +795,15 @@ void MemberDef::writeDeclaration(OutputList &ol,
* all active output formats.
*/
void
MemberDef
::
writeDocumentation
(
MemberList
*
ml
,
OutputList
&
ol
,
const
char
*
scopeName
,
Definition
*
container
)
const
char
*
scopeName
,
Definition
*
container
)
{
// hide global static functions unless extractStaticFlag is enabled
if
(
getClassDef
()
==
0
&&
isStatic
()
&&
!
Config
::
extractStaticFlag
)
return
;
// hide member that are documented in their own group
if
(
group
!=
0
&&
container
->
definitionType
()
!=
TypeGroup
)
return
;
bool
hasDocs
=
detailsAreVisible
();
//printf("MemberDef::writeDocumentation(): type=`%s' def=`%s'\n",type.data(),definition());
if
(
...
...
@@ -996,7 +1000,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
if
(
protection
()
==
Protected
)
sl
.
append
(
"protected"
);
else
if
(
protection
()
==
Private
)
sl
.
append
(
"private"
);
if
(
lvirt
==
Virtual
)
sl
.
append
(
"virtual"
);
else
if
(
lvirt
==
Pure
)
sl
.
append
(
"pure virtual"
);
else
if
(
lvirt
==
Pure
)
sl
.
append
(
"pure virtual"
);
if
(
isSignal
())
sl
.
append
(
"signal"
);
if
(
isSlot
())
sl
.
append
(
"slot"
);
}
...
...
src/memberdef.h
View file @
0d0eec1d
...
...
@@ -73,6 +73,7 @@ class MemberDef : public Definition
bool
related
,
MemberType
t
,
const
ArgumentList
*
tal
,
const
ArgumentList
*
al
);
~
MemberDef
();
DefType
definitionType
()
{
return
TypeMember
;
}
QCString
getOutputFileBase
()
const
;
const
char
*
declaration
()
const
{
return
decl
;
}
...
...
@@ -80,6 +81,7 @@ class MemberDef : public Definition
const
char
*
typeString
()
const
{
return
type
;
}
const
char
*
argsString
()
const
{
return
args
;
}
const
char
*
excpString
()
const
{
return
exception
;
}
const
char
*
bitfieldString
()
const
{
return
bitfields
;
}
QCString
anchor
()
const
;
const
QCString
&
initializer
()
const
{
return
init
;
}
int
initializerLines
()
const
{
return
initLines
;
}
...
...
@@ -133,6 +135,7 @@ class MemberDef : public Definition
init
=
init
.
stripWhiteSpace
();
initLines
=
init
.
contains
(
'\n'
);
}
void
setBitfields
(
const
char
*
s
)
{
bitfields
=
s
;
}
void
setMaxInitLines
(
int
lines
)
{
if
(
lines
!=-
1
)
maxInitLines
=
lines
;
}
void
setMemberClass
(
ClassDef
*
cd
)
{
classDef
=
cd
;
}
void
setSectionList
(
MemberList
*
sl
)
{
section
=
sl
;
}
...
...
@@ -231,6 +234,7 @@ class MemberDef : public Definition
NamespaceDef
*
nspace
;
// the namespace this member is in.
QCString
type
;
// return type
QCString
args
;
// function arguments/variable array specifiers
QCString
bitfields
;
// struct member bitfields
QCString
exception
;
// exceptions that can be thrown
QCString
init
;
// initializer
int
initLines
;
// number of lines in the initializer
...
...
src/memberlist.cpp
View file @
0d0eec1d
...
...
@@ -110,7 +110,7 @@ void MemberList::countDecMembers(bool inGroup,bool countSubGroups,bool sectionPe
//printf("MemberList::countDecMembers(%d)=%d\n",inGroup,m_count);
}
void
MemberList
::
countDocMembers
()
void
MemberList
::
countDocMembers
(
bool
listOfGroup
)
{
/*varCnt=funcCnt=enumCnt=enumValCnt=typeCnt=protoCnt=defCnt=friendCnt=0;*/
m_count
=
0
;
...
...
@@ -122,7 +122,9 @@ void MemberList::countDocMembers()
bool
visibleIfStatic
=
!
(
md
->
getClassDef
()
==
0
&&
md
->
isStatic
()
&&
!
Config
::
extractStaticFlag
);
if
(
visibleIfStatic
&&
bool
inOwnGroup
=
(
md
->
getGroupDef
()
!=
0
&&
!
listOfGroup
);
if
(
visibleIfStatic
&&
!
inOwnGroup
&&
(
Config
::
extractAllFlag
||
md
->
detailsAreVisible
())
)
{
...
...
@@ -298,6 +300,9 @@ void MemberList::writePlainDeclarations(OutputList &ol,
typeDecl
.
writeChar
(
' '
);
}
const
uint
MAX_ENUM_VALUES_FOR_ONE_LINE
=
4
;
int
enumMemCount
=
0
;
typeDecl
.
docify
(
"{ "
);
QList
<
MemberDef
>
*
fmdl
=
md
->
enumFieldList
();
if
(
fmdl
)
...
...
@@ -305,12 +310,17 @@ void MemberList::writePlainDeclarations(OutputList &ol,
MemberDef
*
fmd
=
fmdl
->
first
();
while
(
fmd
)
{
/* in html we start each enum item on a new line */
typeDecl
.
pushGeneratorState
();
typeDecl
.
disableAllBut
(
OutputGenerator
::
Html
);
typeDecl
.
lineBreak
();
typeDecl
.
writeString
(
" "
);
typeDecl
.
popGeneratorState
();
/* in html we start a new line after a number of items */
if
(
fmdl
->
count
()
>
MAX_ENUM_VALUES_FOR_ONE_LINE
&&
(
enumMemCount
%
MAX_ENUM_VALUES_FOR_ONE_LINE
)
==
0
)
{
typeDecl
.
pushGeneratorState
();
typeDecl
.
disableAllBut
(
OutputGenerator
::
Html
);
typeDecl
.
lineBreak
();
typeDecl
.
writeString
(
" "
);
typeDecl
.
popGeneratorState
();
}
if
(
fmd
->
hasDocumentation
())
// enum value has docs
{
...
...
@@ -334,12 +344,16 @@ void MemberList::writePlainDeclarations(OutputList &ol,
typeDecl
.
disable
(
OutputGenerator
::
Man
);
typeDecl
.
writeString
(
"
\n
"
);
// to prevent too long lines in LaTeX
typeDecl
.
enable
(
OutputGenerator
::
Man
);
enumMemCount
++
;
}
}
typeDecl
.
pushGeneratorState
();
typeDecl
.
disableAllBut
(
OutputGenerator
::
Html
);
typeDecl
.
lineBreak
();
typeDecl
.
popGeneratorState
();
if
(
fmdl
->
count
()
>
MAX_ENUM_VALUES_FOR_ONE_LINE
)
{
typeDecl
.
pushGeneratorState
();
typeDecl
.
disableAllBut
(
OutputGenerator
::
Html
);
typeDecl
.
lineBreak
();
typeDecl
.
popGeneratorState
();
}
typeDecl
.
docify
(
" }"
);
md
->
setEnumDecl
(
typeDecl
);
int
enumVars
=
0
;
...
...
src/memberlist.h
View file @
0d0eec1d
...
...
@@ -42,7 +42,7 @@ class MemberList : public QList<MemberDef>
int
defineCount
()
const
{
return
defCnt
;
}
int
friendCount
()
const
{
return
friendCnt
;
}
void
countDecMembers
(
bool
inGroup
,
bool
countSubGroups
,
bool
sectionPerType
);
void
countDocMembers
();
void
countDocMembers
(
bool
listOfGroup
=
FALSE
);
int
totalCount
()
const
{
return
//varCnt+funcCnt+enumCnt+enumValCnt+typeCnt+
//protoCnt+defCnt+friendCnt;
...
...
src/namespacedef.h
View file @
0d0eec1d
...
...
@@ -39,6 +39,7 @@ class NamespaceDef : public Definition
NamespaceDef
(
const
char
*
defFileName
,
int
defLine
,
const
char
*
name
,
const
char
*
ref
=
0
);
~
NamespaceDef
();
DefType
definitionType
()
{
return
TypeNamespace
;
}
QCString
getOutputFileBase
()
const
{
return
fileName
;
}
void
insertUsedFile
(
const
char
*
fname
);
void
writeDocumentation
(
OutputList
&
ol
);
...
...
src/page.h
View file @
0d0eec1d
...
...
@@ -49,10 +49,13 @@ class PageSDict : public SDict<PageInfo>
}
};
class
PageSDictIterator
:
public
SDict
<
PageInfo
>::
Iterator
// typedef is to get around Solaris compile problem
typedef
SDict
<
PageInfo
>::
Iterator
_SDictPageInfoIterator
;
class
PageSDictIterator
:
public
_SDictPageInfoIterator
{
public
:
PageSDictIterator
(
const
PageSDict
&
d
)
:
SDict
<
PageInfo
>::
Iterator
(
d
)
{}
PageSDictIterator
(
const
PageSDict
&
d
)
:
_SDictPageInfo
Iterator
(
d
)
{}
~
PageSDictIterator
()
{}
};
src/rtfgen.cpp
View file @
0d0eec1d
...
...
@@ -488,14 +488,14 @@ bool StyleData::setStyle(const char* s, const char* styleName)
if
(
start
<
0
)
{
err
(
"Style sheet '%s' contains no '
\\
s' clause.
\n
{%s}
\n
"
,
styleName
,
s
);
return
false
;
return
FALSE
;
}
s
+=
start
;
index
=
(
int
)
atol
(
s
+
2
);
ASSERT
(
index
>
0
);
// search for the end of pure formatting codes
const
char
*
end
=
s
+
len
;
bool
haveNewDefinition
=
true
;
bool
haveNewDefinition
=
TRUE
;
for
(;;)
{
if
(
*
end
==
'{'
)
...
...
@@ -518,7 +518,7 @@ bool StyleData::setStyle(const char* s, const char* styleName)
}
else
if
(
*
end
==
0
)
{
// no style-definition part, keep default value
haveNewDefinition
=
false
;
haveNewDefinition
=
FALSE
;
break
;
}
else
// plain name without leading \\snext
...
...
@@ -534,7 +534,7 @@ bool StyleData::setStyle(const char* s, const char* styleName)
definition
=
new
char
[
size
];
memcpy
(
definition
,
end
,
size
);
}
return
true
;
return
TRUE
;
}
static
void
loadStylesheet
(
const
char
*
name
,
QDict
<
StyleData
>&
dict
)
...
...
@@ -591,7 +591,7 @@ void RTFGenerator::init()
err
(
"Could not create output directory %s
\n
"
,
dir
.
data
());
exit
(
1
);
}
Rtf_Style
.
setAutoDelete
(
true
);
Rtf_Style
.
setAutoDelete
(
TRUE
);
// first duplicate strings of Rtf_Style_Default
const
struct
Rtf_Style_Default
*
def
=
Rtf_Style_Default
;
...
...
src/scanner.l
View file @
0d0eec1d
...
...
@@ -339,6 +339,7 @@ TITLE [tT][iI][tT][lL][eE]
%x Bases
%x BasesProt
%x NextSemi
%x BitFields
%x FindMembers
%x FindMemberName
%x FindFields
...
...
@@ -501,7 +502,7 @@ TITLE [tT][iI][tT][lL][eE]
--curlyCount ;
}
else
BEGIN( NextSemi )
;
BEGIN( NextSemi );
}
<NextSemi>"'"\\[0-7]{1,3}"'"
<NextSemi>"'"\\."'"
...
...
@@ -512,8 +513,12 @@ TITLE [tT][iI][tT][lL][eE]
}
<NextSemi>[;,] {
unput(*yytext);
BEGIN( FindMembers )
;
BEGIN( FindMembers );
}
<BitFields>[;,] {
unput(*yytext);
BEGIN( FindMembers );
}
<FindMembers>{B}*"k_dcop"{BN}*":"{BN}* { current->mtype = mtype = DCOP;
current->protection = protection = Public ;
current->type.resize(0);
...
...
@@ -779,7 +784,16 @@ TITLE [tT][iI][tT][lL][eE]
BEGIN( NSAliasArg );
}
<NSAliasArg>({ID}"::")*{ID} {
namespaceAliasDict.insert(aliasName,new QCString(yytext));
printf("Inserting namespace alias %s::%s->%s\n",current_root->name.data(),aliasName.data(),yytext);
if (current_root->name.isEmpty())
{
namespaceAliasDict.insert(aliasName,new QCString(yytext));
}
else
{
namespaceAliasDict.insert(current_root->name+"::"+aliasName,
new QCString(current_root->name+"::"+yytext));
}
}
<NSAliasArg>";" {
BEGIN( FindMembers );
...
...
@@ -997,7 +1011,7 @@ TITLE [tT][iI][tT][lL][eE]
<DefineEnd>.
<FindMembers>[*&]+ { current->name += yytext ; }
<FindMembers,MemberSpec,Function,NextSemi,ReadInitializer>";"{BN}*("/**"|"//!"|"/*!"|"///")"<" {
<FindMembers,MemberSpec,Function,NextSemi,
BitFields,
ReadInitializer>";"{BN}*("/**"|"//!"|"/*!"|"///")"<" {
lineCount();
if (current->bodyLine==-1)
current->bodyLine=yyLineNr;
...
...
@@ -1019,7 +1033,7 @@ TITLE [tT][iI][tT][lL][eE]
BEGIN(AfterDoc);
}
}
<MemberSpec,FindFields,FindMembers,NextSemi,ReadInitializer>","{BN}*("/**"|"//!"|"/*!"|"///")"<" {
<MemberSpec,FindFields,FindMembers,NextSemi,
BitFields,
ReadInitializer>","{BN}*("/**"|"//!"|"/*!"|"///")"<" {
lineCount();
lastAfterDocContext = YY_START;
afterDocTerminator = ',';
...
...
@@ -1043,7 +1057,10 @@ TITLE [tT][iI][tT][lL][eE]
lineCount();
lastAfterDocContext = YY_START;
if (YY_START==DefineEnd)
{
afterDocTerminator = '\n';
yyLineNr--;
}
else
afterDocTerminator = 0;
if (yytext[yyleng-3]=='/')
...
...
@@ -1241,59 +1258,54 @@ TITLE [tT][iI][tT][lL][eE]
yyLineNr++;
*pCopyCurlyString+=*yytext;
}
<FindMembers>[:;,] {
<FindMembers>":" {
BEGIN(BitFields);
current->bitfields+=":";
}
<BitFields>. {
current->bitfields+=*yytext;
}
<FindMembers>[;,] {
QCString oldType = current->type.copy();
QCString oldDocs = current->doc.copy();
if ( *yytext != ':'
)
if (current->bodyLine==-1
)
{
if (current->bodyLine==-1)
{
current->bodyLine = yyLineNr;
}
current->type=current->type.simplifyWhiteSpace();
current->args=current->args.simplifyWhiteSpace();
current->name=current->name.stripWhiteSpace();
if (!current->name.isEmpty() && current->type.left(8)=="typedef ")
{
// add typedef to dictionary
QCString dest = extractName(current->type.right(current->type.length()-8));
if (typedefDict[current->name]==0 && !dest.isEmpty())
{
//printf("1>>>>>>>>>> adding %s->%s\n",current->name.data(),dest.data());
typedefDict.insert(current->name, new QCString(dest));
}
}
current->section = Entry::VARIABLE_SEC ;
current->fileName = yyFileName;
current->startLine = yyLineNr;
//printf("New variable type=`%s' name=`%s' groupId=%d\n",current->type.data(),current->name.data(),current->mGrpId);
current_root->addSubEntry( current ) ;
current = new Entry ;
// variable found
current->section = Entry::EMPTY_SEC ;
current->protection = protection;
current->mtype = Method;
current->virt = Normal;
current->stat = gstat;
current->mGrpId = memberGroupId;
current->bodyLine = yyLineNr;
}
// skip expression or bitfield if needed
if ( *yytext == ':')
{
BEGIN( NextSemi );
current->type=current->type.simplifyWhiteSpace();
current->args=current->args.simplifyWhiteSpace();
current->name=current->name.stripWhiteSpace();
if (!current->name.isEmpty() && current->type.left(8)=="typedef ")
{
// add typedef to dictionary
QCString dest = extractName(current->type.right(current->type.length()-8));
if (typedefDict[current->name]==0 && !dest.isEmpty())
{
//printf("1>>>>>>>>>> adding %s->%s\n",current->name.data(),dest.data());
typedefDict.insert(current->name, new QCString(dest));
}
}
else
current->section = Entry::VARIABLE_SEC ;
current->fileName = yyFileName;
current->startLine = yyLineNr;
//printf("New variable type=`%s' name=`%s' groupId=%d\n",current->type.data(),current->name.data(),current->mGrpId);
current_root->addSubEntry( current ) ;
current = new Entry ;
// variable found
current->section = Entry::EMPTY_SEC ;
current->protection = protection;
current->mtype = Method;
current->virt = Normal;
current->stat = gstat;
current->mGrpId = memberGroupId;
if ( *yytext == ',' )
{
if ( *yytext == ',' )
{
int i=oldType.length();
while (i>0 && (oldType[i-1]=='*' || oldType[i-1]==' ')) i--;
current->type = oldType.left(i);
current->doc = oldDocs;
}
BEGIN( FindMembers ) ;
int i=oldType.length();
while (i>0 && (oldType[i-1]=='*' || oldType[i-1]==' ')) i--;
current->type = oldType.left(i);
current->doc = oldDocs;
}
BEGIN( FindMembers ) ;
}
<FindMembers>"[" {
...
...
@@ -2661,7 +2673,7 @@ TITLE [tT][iI][tT][lL][eE]
lastDocRelContext = YY_START;
BEGIN( ClassDocRelates );
}
<ClassDocRelates>
{ID}
{
<ClassDocRelates>
({ID}"::")*{ID}
{
current->relates = yytext;
BEGIN( lastDocRelContext );
}
...
...
src/translator_si.h
0 → 100644
View file @
0d0eec1d
/******************************************************************************
*
*
*
* Copyright (C) 1997-2000 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
*
*/
// translation by Matjaz Ostroversnik <matjaz.ostroversnik@zrs-tk.si>
#ifndef TRANSLATOR_SI_H
#define TRANSLATOR_SI_H
#include "translator.h"
class
TranslatorSlovene
:
public
Translator
{
public
:
QCString
idLanguage
()
{
return
"slovene"
;
}
/*! Used to get the command(s) for the language support. This method
* was designed for languages which do not prefer babel package.
* If this methods returns empty string, then the latexBabelPackage()
* method is used to generate the command for using the babel package.
*/
QCString
latexLanguageSupportCommand
()
{
return
"
\\
usepackage[slovene]{babel}
\n\\
usepackage[latin2]{inputenc}
\n\\
usepackage[T1]{fontenc}
\n
"
;
}
QCString
latexBabelPackage
()
{
return
"slovene"
;
}
QCString
idLanguageCharset
()
{
#ifdef _WIN32
return
"windows-1250"
;
#else
return
"iso-8859-2"
;
#endif
}
QCString
trRelatedFunctions
()
{
return
"Povezane funkcije"
;
}
QCString
trRelatedSubscript
()
{
return
"(To niso metode.)"
;
}
QCString
trDetailedDescription
()
{
return
"Podroben opis"
;
}
QCString
trMemberTypedefDocumentation
()
{
return
"Opis <code> uporabniko definiranih tipov (typedef) </code>"
;
}
QCString
trMemberEnumerationDocumentation
()
{
return
"Opis <code> natevnih tipov </code> lanova"
;
}
QCString
trEnumerationValueDocumentation
()
{
return
"Opis <code> natevnih vednosti (enum) </code> "
;
}
QCString
trMemberFunctionDocumentation
()
{
return
"Opis metod"
;
}
QCString
trMemberDataDocumentation
()
{
return
"Opis atributov"
;
}
QCString
trGeneratedFrom
(
const
char
*
s
,
bool
single
)
{
QCString
result
=
(
QCString
)
"Dokumentacija za "
+
s
+
"je generirana iz "
;
if
(
single
)
result
+=
"datoteke :"
;
else
result
+=
"naslednih datotek:"
;
return
result
;
}
QCString
trMore
()
{
return
"..."
;
}
QCString
trListOfAllMembers
()
{
return
"Seznam vseh metod / atributov."
;
}
QCString
trMemberList
()
{
return
" - Seznam metod in atributov."
;
}
QCString
trThisIsTheListOfAllMembers
()
{
return
"To je seznam metod razreda "
;
}
QCString
trIncludingInheritedMembers
()
{
return
", vkljuujo dedovane metode in atribute."
;
}
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
"zgenerirano avtomatino z Doxygen-om"
;
if
(
s
)
result
+=
(
QCString
)
" za "
+
s
;
result
+=
" iz programskog koda."
;
return
result
;
}
QCString
trEnumName
()
{
return
"enum ime"
;
}
QCString
trEnumValue
()
{
return
"enum vrednost"
;
}
QCString
trDefinedIn
()
{
return
"definirano v"
;
}
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"Ovo je citirani tekst iz include datoteke "
+
f
+
"."
;
}
QCString
trModules
()
{
return
"Moduli"
;
}
QCString
trClassHierarchy
()
{
return
"dedovalna hierarhija"
;
}
QCString
trCompoundList
()
{
return
"kratek opis razredov"
;
}
QCString
trFileList
()
{
return
"seznam datotek"
;
}
QCString
trHeaderFiles
()
{
return
"
\"
Header
\"
datoteka"
;
}
QCString
trCompoundMembers
()
{
return
"metode in atributi"
;
}
QCString
trFileMembers
()
{
return
"komponente v datotekah"
;
}
QCString
trRelatedPages
()
{
return
"Povezane strani"
;
}
QCString
trExamples
()
{
return
"Primeri"
;
}
QCString
trSearch
()
{
return
"Ii"
;
}
QCString
trClassHierarchyDescription
()
{
return
"Hierarhino drevo je (okvirno) sortirano po abecedi. "
;
}
QCString
trFileListDescription
(
bool
extractAll
)
{
QCString
result
=
"Seznam vseh "
;
if
(
!
extractAll
)
result
+=
"dokumentiranih "
;
result
+=
"datotek, s kratkim opisom:"
;
return
result
;
}
QCString
trCompoundListDescription
()
{
return
"Seznam razredov, mnoic in struktur "
"s kratkim opisom :"
;
}
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"Seznam vseh "
;
if
(
!
extractAll
)
result
+=
"dokumentiranih "
;
result
+=
"metod in atributov s povezavami na "
;
if
(
extractAll
)
result
+=
"opis posamezne metode in/ali atributa:"
;
else
result
+=
"opis razreda :"
;
return
result
;
}
QCString
trFileMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"Seznam "
;
if
(
!
extractAll
)
result
+=
"dokumentiranih "
;
result
+=
"entite v datotekah "
;
if
(
extractAll
)
result
+=
"skupaj z opisom datoteke v kateri se nahajajo:"
;
else
result
+=
"z linki na datoteke v katerih se nahajajo:"
;
return
result
;
}
QCString
trHeaderFilesDescription
()
{
return
"Seznam header datotek, ki tvoriju aplikacijski vmesnik (API) :"
;
}
QCString
trExamplesDescription
()
{
return
"Seznam primerov :"
;
}
QCString
trRelatedPagesDescription
()
{
return
"Seznam povezanih strani:"
;
}
QCString
trModulesDescription
()
{
return
"Seznam modulov:"
;
}
QCString
trNoDescriptionAvailable
()
{
return
"Opis ni dostopen"
;
}
QCString
trDocumentation
()
{
return
"Dokumentacija"
;
}
QCString
trModuleIndex
()
{
return
"seznam modulov"
;
}
QCString
trHierarchicalIndex
()
{
return
"Hierarhini indeks"
;
}
QCString
trCompoundIndex
()
{
return
"abecedni seznam"
;
}
QCString
trFileIndex
()
{
return
"seznam datotek"
;
}
QCString
trModuleDocumentation
()
{
return
"Dokumentacija modulov"
;
}
QCString
trClassDocumentation
()
{
return
"Opis razreda"
;
}
QCString
trFileDocumentation
()
{
return
"Opis datoteke"
;
}
QCString
trExampleDocumentation
()
{
return
"Opis primera"
;
}
QCString
trPageDocumentation
()
{
return
"Dokumentacija povezanih strani"
;
}
QCString
trReferenceManual
()
{
return
"Prironik"
;
}
QCString
trDefines
()
{
return
"Makro deklaracije"
;
}
QCString
trFuncProtos
()
{
return
"Prototipi funkcij"
;
}
QCString
trTypedefs
()
{
return
"Uporabniko definirani tipi"
;
}
QCString
trEnumerations
()
{
return
"Natevni tipi"
;
}
QCString
trFunctions
()
{
return
"Funkcije"
;
}
QCString
trVariables
()
{
return
"Spremenljivke"
;
}
QCString
trEnumerationValues
()
{
return
"Vrednosti natevnih tipov"
;
}
QCString
trAuthor
()
{
return
"avtor"
;
}
QCString
trDefineDocumentation
()
{
return
"Opis makro definicije"
;
}
QCString
trFunctionPrototypeDocumentation
()
{
return
"Opis prototipa funkcije"
;
}
QCString
trTypedefDocumentation
()
{
return
"Opis uporabniko definiranega tipa"
;
}
QCString
trEnumerationTypeDocumentation
()
{
return
"Opis natevnega (enum) tipa"
;
}
QCString
trFunctionDocumentation
()
{
return
"Opis funkcije"
;
}
QCString
trVariableDocumentation
()
{
return
"Opis spremenljivke"
;
}
QCString
trCompounds
()
{
return
"Strukture"
;
}
QCString
trFiles
()
{
return
"Datoteke"
;
}
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
QCString
result
=
(
QCString
)
"Generirano "
+
date
;
if
(
projName
)
result
+=
(
QCString
)
" projekt: "
+
projName
;
result
+=
(
QCString
)
" generator: "
;
return
result
;
}
QCString
trWrittenBy
()
{
return
"napisal "
;
}
QCString
trClassDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
"Diagram razredov za "
+
clName
;
}
QCString
trForInternalUseOnly
()
{
return
"Samo za interno uporabo."
;
}
QCString
trReimplementedForInternalReasons
()
{
return
"Reimplementirano zbog internih razloga; "
"Nema utjecaja na API."
;
}
QCString
trWarning
()
{
return
"Opozorilo"
;
}
QCString
trBugsAndLimitations
()
{
return
"Napake in omejtive"
;
}
QCString
trVersion
()
{
return
"Verzija"
;
}
QCString
trDate
()
{
return
"Datum"
;
}
QCString
trAuthors
()
{
return
"Avtor(ji)"
;
}
QCString
trReturns
()
{
return
"Rezultat(i)"
;
}
QCString
trSeeAlso
()
{
return
"Glej"
;
}
QCString
trParameters
()
{
return
"Parametri"
;
}
QCString
trExceptions
()
{
return
"Izjeme (Exceptions)"
;
}
QCString
trGeneratedBy
()
{
return
"Izdelano s pomojo"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
QCString
trNamespaceList
()
{
return
"Seznam imenskih prostorov"
;
}
QCString
trNamespaceListDescription
(
bool
extractAll
)
{
QCString
result
=
"Seznam "
;
if
(
!
extractAll
)
result
+=
"dokumentiranih "
;
result
+=
"imenskih prostorov z opisom:"
;
return
result
;
}
QCString
trFriends
()
{
return
"Prijatelji (Friends) "
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
QCString
trRelatedFunctionDocumentation
()
{
return
"Podatki o poveznih funkcijah"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////
QCString
trCompoundReference
(
const
char
*
clName
,
ClassDef
::
CompoundType
compType
,
bool
/*isTemplate*/
)
// used as the title of the HTML page of a class/struct/union
{
QCString
result
=
"Opis "
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
" razreda "
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
" strukture "
;
break
;
case
ClassDef
:
:
Union
:
result
+=
" unije "
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
" vmesnika (interface) "
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
" izjeme (exception) "
;
break
;
}
result
+=
(
QCString
)
clName
;
return
result
;
}
QCString
trFileReference
(
const
char
*
fileName
)
// used as the title of the HTML page of a file
{
QCString
result
=
"Vsebina datoteke "
;
result
+=
fileName
;
return
result
;
}
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
// used as the title of the HTML page of a namespace
{
QCString
result
=
"Opis imenskega prostora "
;
result
+=
namespaceName
;
return
result
;
}
// these are for the member sections of a class, struct or union
QCString
trPublicMembers
()
{
return
"Javne metode"
;
}
QCString
trPublicSlots
()
{
return
"Public slotovi"
;
}
QCString
trSignals
()
{
return
"Programske prekinitve"
;
}
QCString
trStaticPublicMembers
()
{
return
"Statine javne metode in atributi"
;
}
QCString
trProtectedMembers
()
{
return
"Zaitene metode in atributi"
;
}
QCString
trProtectedSlots
()
{
return
"Zaiteni sloti"
;
}
QCString
trStaticProtectedMembers
()
{
return
"Statine zaitene metode in atributi"
;
}
QCString
trPrivateMembers
()
{
return
"Skrite metode in atributi"
;
}
QCString
trPrivateSlots
()
{
return
"Skriti slotovi"
;
}
QCString
trStaticPrivateMembers
()
{
return
"Statine skrite metode in atributi"
;
}
// end of member sections
QCString
trWriteList
(
int
numEntries
)
{
// this function is used to produce a comma-separated list of items.
// use generateMarker(i) to indicate where item i should be put.
QCString
result
;
int
i
;
// the inherits list contain `numEntries' classes
for
(
i
=
0
;
i
<
numEntries
;
i
++
)
{
// use generateMarker to generate placeholders for the class links!
result
+=
generateMarker
(
i
);
// generate marker for entry i in the list
// (order is left to right)
if
(
i
!=
numEntries
-
1
)
// not the last entry, so we need a separator
{
if
(
i
<
numEntries
-
2
)
// not the fore last entry
result
+=
", "
;
else
// the fore last entry
result
+=
" in "
;
}
}
return
result
;
}
QCString
trInheritsList
(
int
numEntries
)
// used in class documentation to produce a list of base classes,
// if class diagrams are disabled.
{
return
"Deduje od "
+
trWriteList
(
numEntries
)
+
"."
;
}
QCString
trInheritedByList
(
int
numEntries
)
// used in class documentation to produce a list of super classes,
// if class diagrams are disabled.
{
return
"Naslijeena u "
+
trWriteList
(
numEntries
)
+
"."
;
}
QCString
trReimplementedFromList
(
int
numEntries
)
// used in member documentation blocks to produce a list of
// members that are hidden by this one.
{
return
"Redefinirano v "
+
trWriteList
(
numEntries
)
+
"."
;
}
QCString
trReimplementedInList
(
int
numEntries
)
{
// used in member documentation blocks to produce a list of
// all member that overwrite the implementation of this member.
return
"Reimplementacija u "
+
trWriteList
(
numEntries
)
+
"."
;
}
QCString
trNamespaceMembers
()
// This is put above each page as a link to all members of namespaces.
{
return
"Namespace lanovi"
;
}
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
// This is an introduction to the page with all namespace members
{
QCString
result
=
"Lista svih "
;
if
(
!
extractAll
)
result
+=
"dokumentiranih "
;
result
+=
"namespace lanova s linkovima na "
;
if
(
extractAll
)
result
+=
"namespace dokumentaciju svakog lana:"
;
else
result
+=
"namespace kojima pripadaju:"
;
return
result
;
}
QCString
trNamespaceIndex
()
// This is used in LaTeX as the title of the chapter with the
// index of all namespaces.
{
return
"Indeks namespace-a"
;
}
QCString
trNamespaceDocumentation
()
// This is used in LaTeX as the title of the chapter containing
// the documentation of all namespaces.
{
return
"Podati o imenskih prostorih"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
//////////////////////////////////////////////////////////////////////////
/*! This is put at the bottom of a class documentation page and is
* followed by a list of files that were used to generate the page.
*/
QCString
trGeneratedFromFiles
(
ClassDef
::
CompoundType
compType
,
bool
single
)
{
// here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
QCString
result
=
(
QCString
)
"Opis "
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
"razreda"
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
"strukture"
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"unije"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"vmesnika (interface)"
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"izjeme (exception)"
;
break
;
}
result
+=
" je zgrajen na podlagi naslednj"
;
if
(
single
)
result
+=
"e "
;
else
result
+=
"ih"
;
result
+=
" datotek"
;
if
(
single
)
result
+=
"e :"
;
else
result
+=
" :"
;
return
result
;
}
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
*/
QCString
trAlphabeticalList
()
{
return
"abecedni seznam"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
//////////////////////////////////////////////////////////////////////////
/*! This is used as the heading text for the retval command. */
QCString
trReturnValues
()
{
return
"Povratna vrednost"
;
}
/*! This is in the (quick) index as a link to the main page (index.html)
*/
QCString
trMainPage
()
{
return
"prva stran"
;
}
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
*/
QCString
trPageAbbreviation
()
{
return
"str."
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991106
//////////////////////////////////////////////////////////////////////////
QCString
trSources
()
{
return
"Izvorne datoteke"
;
}
QCString
trDefinedAtLineInSourceFile
()
{
return
"Definirano v @0 vrstici datoteke @1."
;
}
QCString
trDefinedInSourceFile
()
{
return
"Definirano v datoteki @0."
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991205
//////////////////////////////////////////////////////////////////////////
QCString
trDeprecated
()
{
return
"Zastarelo"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.0.0
//////////////////////////////////////////////////////////////////////////
/*! this text is put before a collaboration diagram */
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
"Kolaboracijski diagram razreda "
+
clName
+
":"
;
}
/*! this text is put before an include dependency graph */
QCString
trInclDepGraph
(
const
char
*
fName
)
{
return
(
QCString
)
"Graf prikazuje seznam datotek, "
"ki jih datoteka
\"
"
+
fName
+
"
\"
"
"direktno ali indirektno vkljuuje. Pravokotniki ponazarjajo datoteke, puice "
"predstavljajo relacije med njimi. "
"rn pravokotnik ponazarja datoteko "
+
fName
+
". Puice A->B ponazarjajo "
"usmerjeno relacijo
\"
A vkljuuje B
\"
."
;
}
/*! header that is put before the list of constructor/destructors. */
QCString
trConstructorDocumentation
()
{
return
"Opis konstruktorjev in destruktorjev "
;
}
/*! Used in the file documentation to point to the corresponding sources. */
QCString
trGotoSourceCode
()
{
return
"izvorna koda"
;
}
/*! Used in the file sources to point to the corresponding documentation. */
QCString
trGotoDocumentation
()
{
return
"dokumenacija tekoe datoteke."
;
}
/*! Text for the \pre command */
QCString
trPrecondition
()
{
return
"Predpogoji (preconditions)"
;
}
/*! Text for the \post command */
QCString
trPostcondition
()
{
return
"Naknadni pogoji (posconditions)"
;
}
/*! Text for the \invariant command */
QCString
trInvariant
()
{
return
"Invarianta"
;
}
/*! Text shown before a multi-line variable/enum initialization */
QCString
trInitialValue
()
{
return
"Zaetna vrednost / definicija :"
;
}
/*! Text used the source code in the file index */
QCString
trCode
()
{
return
"koda"
;
}
QCString
trGraphicalHierarchy
()
{
return
"Hierarhija razredov v grafini obliki"
;
}
QCString
trGotoGraphicalHierarchy
()
{
return
"Dedovalna hierarhija v grafini obliki"
;
}
QCString
trGotoTextualHierarchy
()
{
return
"Dedovalna hierarhija v tekstovni obliki"
;
}
QCString
trPageIndex
()
{
return
"Indeks strani"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
QCString
trNote
()
{
return
"Opomba"
;
}
QCString
trPublicTypes
()
{
return
"Javni tipi"
;
}
QCString
trPublicAttribs
()
{
return
"Javni atributi"
;
}
QCString
trStaticPublicAttribs
()
{
return
"Statini javni atributi"
;
}
QCString
trProtectedTypes
()
{
return
"Zaiteni tipi"
;
}
QCString
trProtectedAttribs
()
{
return
"Zaiteni atributi"
;
}
QCString
trStaticProtectedAttribs
()
{
return
"Statini zaiteni tipi"
;
}
QCString
trPrivateTypes
()
{
return
"Skriti tipi"
;
}
QCString
trPrivateAttribs
()
{
return
"Skriti atributi"
;
}
QCString
trStaticPrivateAttribs
()
{
return
"Statini skriti atributi"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.3
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a todo item */
QCString
trTodo
()
{
return
"TODO"
;
}
/*! Used as the header of the todo list */
QCString
trTodoList
()
{
return
"Seznam nedokonanih opravil"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.4
//////////////////////////////////////////////////////////////////////////
QCString
trReferencedBy
()
{
return
"Uporabniki entitete: "
;
}
QCString
trRemarks
()
{
return
"Opomba"
;
}
QCString
trAttention
()
{
return
"Pozor"
;
}
QCString
trInclByDepGraph
()
{
return
"Graf prikazuje datoteke, ki posredno ali neposredno "
"vkljuujejo tekoo datoteko. Pravokotniki simbolizirajo datoteke, "
"puice pa relacije med datotekami. Tekoa datoteka je prikazana "
"kot pravokotnik s rno podlago, ostale pa kot pravokotnik brez podlage. "
"Smer puice A->B definira relacijo
\"
A vkljuuje B
\"
. "
"Vse datoteke, ki torej mejijo na tekoo (t.j. obstaja povezava med rnim in "
"praznim pravokotnikom), jo direktno vkljuujejo, medtem, ko jo ostale vkljuujejo "
"le posredno. "
;
}
QCString
trSince
()
{
return
"Od"
;
}
};
#endif
src/util.cpp
View file @
0d0eec1d
...
...
@@ -1922,7 +1922,8 @@ bool getScopeDefs(const char *docScope,const char *scope,
* with name memberName.
* 3) "memberName(...)" a specific (overloaded) function or define
* with name memberName
* 4) "::memberName a non-function member or define
* 4) "::name a global variable or define
* 4) "#memberName member variable, global variable or define
* 5) ("ScopeName::")+"memberName()"
* 6) ("ScopeName::")+"memberName(...)"
* 7) ("ScopeName::")+"memberName"
...
...
@@ -1934,7 +1935,9 @@ bool generateRef(OutputList &ol,const char *scName,
{
//printf("generateRef(scName=%s,name=%s,rt=%s)\n",scName,name,rt);
QCString
tmpName
=
substitute
(
name
,
"#"
,
"::"
);
QCString
tsName
=
name
;
bool
memberScopeFirst
=
tsName
.
find
(
'#'
)
!=-
1
;
QCString
tmpName
=
substitute
(
tsName
,
"#"
,
"::"
);
QCString
linkText
=
rt
;
int
scopePos
=
tmpName
.
findRev
(
"::"
);
int
bracePos
=
tmpName
.
findRev
(
'('
);
// reverse is needed for operator()(...)
...
...
@@ -2021,7 +2024,8 @@ bool generateRef(OutputList &ol,const char *scName,
// scopeStr.data(),nameStr.data(),argsStr.data());
// check if nameStr is a member or global.
if
(
getDefs
(
scopeStr
,
nameStr
,
argsStr
,
md
,
cd
,
fd
,
nd
,
gd
,
scopePos
==
0
))
if
(
getDefs
(
scopeStr
,
nameStr
,
argsStr
,
md
,
cd
,
fd
,
nd
,
gd
,
scopePos
==
0
&&
!
memberScopeFirst
))
{
//printf("after getDefs nd=%p\n",nd);
QCString
anchor
;
...
...
@@ -2118,6 +2122,7 @@ bool generateRef(OutputList &ol,const char *scName,
bool
generateLink
(
OutputList
&
ol
,
const
char
*
clName
,
const
char
*
lr
,
bool
inSeeBlock
,
const
char
*
lt
)
{
//printf("generateLink clName=`%s' lr=`%s' lt=`%s'\n",clName,lr,lt);
QCString
linkRef
=
lr
;
FileDef
*
fd
;
GroupDef
*
gd
;
...
...
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