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
b91275de
Commit
b91275de
authored
Sep 10, 2000
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-20000910
parent
6838640c
Changes
38
Hide whitespace changes
Inline
Side-by-side
Showing
38 changed files
with
1434 additions
and
471 deletions
+1434
-471
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
configgen.cpp
addon/configgen/configgen.cpp
+18
-7
config.doc
doc/config.doc
+47
-2
faq.doc
doc/faq.doc
+10
-0
features.doc
doc/features.doc
+1
-1
index.doc
doc/index.doc
+2
-2
language.doc
doc/language.doc
+31
-4
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+17
-5
classdef.h
src/classdef.h
+1
-0
config.h
src/config.h
+2
-1
config.l
src/config.l
+20
-3
definition.h
src/definition.h
+1
-1
doc.l
src/doc.l
+8
-1
dot.cpp
src/dot.cpp
+1
-1
doxygen.cpp
src/doxygen.cpp
+34
-24
doxygen.h
src/doxygen.h
+1
-0
doxygen.pro.in
src/doxygen.pro.in
+1
-1
entry.cpp
src/entry.cpp
+2
-4
entry.h
src/entry.h
+4
-2
filedef.cpp
src/filedef.cpp
+2
-4
filedef.h
src/filedef.h
+5
-2
index.cpp
src/index.cpp
+3
-3
language.cpp
src/language.cpp
+5
-0
latexgen.cpp
src/latexgen.cpp
+2
-1
memberdef.cpp
src/memberdef.cpp
+2
-0
memberdef.h
src/memberdef.h
+3
-1
memberlist.cpp
src/memberlist.cpp
+2
-1
rtfgen.cpp
src/rtfgen.cpp
+5
-5
scanner.l
src/scanner.l
+55
-46
translator.h
src/translator.h
+93
-0
translator_cz.h
src/translator_cz.h
+190
-244
translator_hr.h
src/translator_hr.h
+26
-95
translator_kr.h
src/translator_kr.h
+803
-0
util.cpp
src/util.cpp
+30
-4
util.h
src/util.h
+1
-0
No files found.
INSTALL
View file @
b91275de
DOXYGEN Version 1.2.1-20000
829
DOXYGEN Version 1.2.1-20000
910
Please read the installation section of the manual for instructions.
Please read the installation section of the manual for instructions.
--------
--------
Dimitri van Heesch (
29 August
2000)
Dimitri van Heesch (
10 September
2000)
README
View file @
b91275de
DOXYGEN Version 1.2.1-20000
829
DOXYGEN Version 1.2.1-20000
910
Please read INSTALL for compilation instructions.
Please read INSTALL for compilation instructions.
...
@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
...
@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
Enjoy,
Enjoy,
Dimitri van Heesch (
29 August
2000)
Dimitri van Heesch (
10 September
2000)
VERSION
View file @
b91275de
1.2.1-20000
829
1.2.1-20000
910
addon/configgen/configgen.cpp
View file @
b91275de
...
@@ -775,7 +775,7 @@ void init()
...
@@ -775,7 +775,7 @@ void init()
"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
"
"Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese,
\n
"
"Spanish, Russian, Croatian, Polish, and Portuguese.
\n
"
"
Korean, Hungarian,
Spanish, Russian, Croatian, Polish, and Portuguese.
\n
"
);
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"English"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"English"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Dutch"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Dutch"
);
...
@@ -785,7 +785,9 @@ void init()
...
@@ -785,7 +785,9 @@ void init()
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Swedish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Swedish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"German"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"German"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Finnish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Finnish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Hungarian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Japanese"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Japanese"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Korean"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Spanish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Spanish"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Russian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Russian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Croatian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Croatian"
);
...
@@ -920,11 +922,11 @@ void init()
...
@@ -920,11 +922,11 @@ void init()
"CASE_SENSE_NAMES"
,
"CASE_SENSE_NAMES"
,
"TRUE"
,
"TRUE"
,
"determines if output can be mixed case."
,
"determines if output can be mixed case."
,
"If the CASE_SENSE_NAMES tag is set to NO
(the default) then Doxygen
\n
"
"If the CASE_SENSE_NAMES tag is set to NO
then Doxygen will only generate
\n
"
"
will only generate file names in lower case letters. If set t
o
\n
"
"
file names in lower case letters. If set to YES upper case letters are als
o
\n
"
"
YES upper case letters are also allowed. This is useful if you have
\n
"
"
allowed. This is useful if you have classes or files whose names only differ
\n
"
"
classes or files whose names only differ in case and if your file system
\n
"
"
in case and if your file system supports case sensitive file names. Windows
\n
"
"
supports case sensitive file names.
\n
"
"
users are adviced to set this option to NO.
\n
"
);
);
ConfigBool
::
add
(
"hideScopeNames"
,
ConfigBool
::
add
(
"hideScopeNames"
,
"HIDE_SCOPE_NAMES"
,
"HIDE_SCOPE_NAMES"
,
...
@@ -983,6 +985,15 @@ void init()
...
@@ -983,6 +985,15 @@ void init()
"alphabetically by member name. If set to NO the members will appear in
\n
"
"alphabetically by member name. If set to NO the members will appear in
\n
"
"declaration order.
\n
"
"declaration order.
\n
"
);
);
ConfigBool
::
add
(
"distributeDocFlag"
,
"DISTRIBUTE_GROUP_DOC"
,
"FALSE"
,
"distribute docs over member group?"
,
"If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
\n
"
"tag is set to YES, then doxygen will reuse the documentation of the first
\n
"
"member in the group (if any) for the other members of the group. By default
\n
"
"all members of a group must be documented explicitly.
\n
"
);
ConfigInt
::
add
(
"tabSize"
,
ConfigInt
::
add
(
"tabSize"
,
"TAB_SIZE"
,
"TAB_SIZE"
,
"8"
,
"8"
,
...
@@ -1019,7 +1030,7 @@ void init()
...
@@ -1019,7 +1030,7 @@ void init()
""
,
""
,
"list of aliases"
,
"list of aliases"
,
"This tag can be used to specify a number of aliases that acts
\n
"
"This tag can be used to specify a number of aliases that acts
\n
"
"as commands in the documentation. An alias has the form
\"
\\
name=value
\"
.
\n
"
"as commands in the documentation. An alias has the form
\"
name=value
\"
.
\n
"
"For example adding
\"
sideeffect=
\\
par Side Effects:
\\
n
\"
will allow you to
\n
"
"For example adding
\"
sideeffect=
\\
par Side Effects:
\\
n
\"
will allow you to
\n
"
"put the command
\\
sideeffect (or @sideeffect) in the documentation, which
\n
"
"put the command
\\
sideeffect (or @sideeffect) in the documentation, which
\n
"
"will result in a user defined paragraph with heading
\"
Side Effects:
\"
.
\n
"
"will result in a user defined paragraph with heading
\"
Side Effects:
\"
.
\n
"
...
...
doc/config.doc
View file @
b91275de
...
@@ -66,6 +66,7 @@ followed by the descriptions of the tags grouped by category.
...
@@ -66,6 +66,7 @@ followed by the descriptions of the tags grouped by category.
\
begin
{
multicols
}{
3
}
\
begin
{
multicols
}{
3
}
\
begin
{
CompactList
}
\
begin
{
CompactList
}
\
endlatexonly
\
endlatexonly
<
li
>
\
refitem
cfg_aliases
ALIASES
<
li
>
\
refitem
cfg_allexternals
ALLEXTERNALS
<
li
>
\
refitem
cfg_allexternals
ALLEXTERNALS
<
li
>
\
refitem
cfg_alphabetical_index
ALPHABETICAL_INDEX
<
li
>
\
refitem
cfg_alphabetical_index
ALPHABETICAL_INDEX
<
li
>
\
refitem
cfg_always_detailed_sec
ALWAYS_DETAILED_SEC
<
li
>
\
refitem
cfg_always_detailed_sec
ALWAYS_DETAILED_SEC
...
@@ -81,6 +82,7 @@ followed by the descriptions of the tags grouped by category.
...
@@ -81,6 +82,7 @@ followed by the descriptions of the tags grouped by category.
<
li
>
\
refitem
cfg_compact_latex
COMPACT_LATEX
<
li
>
\
refitem
cfg_compact_latex
COMPACT_LATEX
<
li
>
\
refitem
cfg_compact_rtf
COMPACT_RTF
<
li
>
\
refitem
cfg_compact_rtf
COMPACT_RTF
<
li
>
\
refitem
cfg_disable_index
DISABLE_INDEX
<
li
>
\
refitem
cfg_disable_index
DISABLE_INDEX
<
li
>
\
refitem
cfg_distribute_group_doc
DISTRIBUTE_GROUP_DOC
<
li
>
\
refitem
cfg_doc_abspath
DOC_ABSPATH
<
li
>
\
refitem
cfg_doc_abspath
DOC_ABSPATH
<
li
>
\
refitem
cfg_doc_url
DOC_URL
<
li
>
\
refitem
cfg_doc_url
DOC_URL
<
li
>
\
refitem
cfg_dot_path
DOT_PATH
<
li
>
\
refitem
cfg_dot_path
DOT_PATH
...
@@ -104,6 +106,8 @@ followed by the descriptions of the tags grouped by category.
...
@@ -104,6 +106,8 @@ followed by the descriptions of the tags grouped by category.
<
li
>
\
refitem
cfg_generate_man
GENERATE_MAN
<
li
>
\
refitem
cfg_generate_man
GENERATE_MAN
<
li
>
\
refitem
cfg_generate_rtf
GENERATE_RTF
<
li
>
\
refitem
cfg_generate_rtf
GENERATE_RTF
<
li
>
\
refitem
cfg_generate_tagfile
GENERATE_TAGFILE
<
li
>
\
refitem
cfg_generate_tagfile
GENERATE_TAGFILE
<
li
>
\
refitem
cfg_generate_testlist
GENERATE_TESTLIST
<
li
>
\
refitem
cfg_generate_todolist
GENERATE_TODOLIST
<
li
>
\
refitem
cfg_graphical_hierarchy
GRAPHICAL_HIERARCHY
<
li
>
\
refitem
cfg_graphical_hierarchy
GRAPHICAL_HIERARCHY
<
li
>
\
refitem
cfg_have_dot
HAVE_DOT
<
li
>
\
refitem
cfg_have_dot
HAVE_DOT
<
li
>
\
refitem
cfg_hide_scope_names
HIDE_SCOPE_NAMES
<
li
>
\
refitem
cfg_hide_scope_names
HIDE_SCOPE_NAMES
...
@@ -203,8 +207,8 @@ followed by the descriptions of the tags grouped by category.
...
@@ -203,8 +207,8 @@ followed by the descriptions of the tags grouped by category.
documentation
generated
by
doxygen
is
written
.
Doxygen
will
use
this
documentation
generated
by
doxygen
is
written
.
Doxygen
will
use
this
information
to
generate
all
constant
output
in
the
proper
language
.
information
to
generate
all
constant
output
in
the
proper
language
.
The
default
language
is
English
,
other
supported
languages
are
:
The
default
language
is
English
,
other
supported
languages
are
:
Dutch
,
French
,
Italian
,
Czech
,
Swedish
,
German
,
Finnish
,
Japanese
,
Dutch
,
French
,
Italian
,
Czech
,
Swedish
,
German
,
Finnish
,
Hungarian
,
Japanese
,
Spanish
,
Russian
,
Croatian
,
Polish
and
Portuguese
.
Korean
,
Spanish
,
Russian
,
Croatian
,
Polish
and
Portuguese
.
\
anchor
cfg_disable_index
\
anchor
cfg_disable_index
<
dt
>\
c
DISABLE_INDEX
<
dd
>
<
dt
>\
c
DISABLE_INDEX
<
dd
>
...
@@ -392,6 +396,14 @@ followed by the descriptions of the tags grouped by category.
...
@@ -392,6 +396,14 @@ followed by the descriptions of the tags grouped by category.
alphabetically
by
member
name
.
If
set
to
\
c
NO
the
members
will
appear
in
alphabetically
by
member
name
.
If
set
to
\
c
NO
the
members
will
appear
in
declaration
order
.
declaration
order
.
\
anchor
cfg_distribute_group_doc
<
dt
>\
c
DISTRIBUTE_GROUP_DOC
<
dd
>
\
addindex
DISTRIBUTE_GROUP_DOC
If
member
grouping
is
used
in
the
documentation
and
the
DISTRIBUTE_GROUP_DOC
tag
is
set
to
YES
,
then
doxygen
will
reuse
the
documentation
of
the
first
member
in
the
group
(
if
any
)
for
the
other
members
of
the
group
.
By
default
all
members
of
a
group
must
be
documented
explicitly
.
\
anchor
cfg_tab_size
\
anchor
cfg_tab_size
<
dt
>\
c
TAB_SIZE
<
dd
>
<
dt
>\
c
TAB_SIZE
<
dd
>
\
addindex
TAB_SIZE
\
addindex
TAB_SIZE
...
@@ -405,6 +417,39 @@ followed by the descriptions of the tags grouped by category.
...
@@ -405,6 +417,39 @@ followed by the descriptions of the tags grouped by category.
documentation
sections
,
marked
by
\
ref
cmdif
"
\\
if"
\<
section
-
label
\>
...
documentation
sections
,
marked
by
\
ref
cmdif
"
\\
if"
\<
section
-
label
\>
...
\
ref
cmdendif
"
\\
endif"
blocks
.
\
ref
cmdendif
"
\\
endif"
blocks
.
\
anchor
cfg_generate_todolist
<
dt
>\
c
GENERATE_TODOLIST
<
dd
>
\
addindex
GENERATE_TODOLIST
The
GENERATE_TODOLIST
tag
can
be
used
to
enable
(
YES
)
or
disable
(
NO
)
the
todo
list
.
This
list
is
created
by
putting
\
ref
cmdtodo
"
\\
todo"
commands
in
the
documentation
.
\
anchor
cfg_generate_testlist
<
dt
>\
c
GENERATE_TESTLIST
<
dd
>
\
addindex
GENERATE_TESTLIST
The
GENERATE_TESTLIST
tag
can
be
used
to
enable
(
YES
)
or
disable
(
NO
)
the
test
list
.
This
list
is
created
by
putting
\
ref
cmdtest
"
\\
test"
commands
in
the
documentation
.
\
anchor
cfg_aliases
<
dt
>\
c
ALIASES
<
dd
>
\
addindex
ALIASES
This
tag
can
be
used
to
specify
a
number
of
aliases
that
acts
as
commands
in
the
documentation
.
An
alias
has
the
form
\
verbatim
name
=
value
\
endverbatim
For
example
adding
\
verbatim
"sideeffect=\par Side Effects:
\n
"
\
endverbatim
will
allow
you
to
put
the
command
\\
sideeffect
(
or
\@
sideeffect
)
in
the
documentation
,
which
will
result
in
a
user
defined
paragraph
with
heading
"Side Effects:"
.
You
can
put
\\
n
's in the value part of an alias to insert newlines.
Predefined commands cannot be overwritten using aliases.
</dl>
</dl>
\subsection messages_input Options related to warning and progress messages
\subsection messages_input Options related to warning and progress messages
...
...
doc/faq.doc
View file @
b91275de
...
@@ -169,6 +169,16 @@ EXCLUDE_PATTERNS = */test/*
...
@@ -169,6 +169,16 @@ EXCLUDE_PATTERNS = */test/*
Put a \% in front of the class name. Like this: \%MyClass. Doxygen will then
Put a \% in front of the class name. Like this: \%MyClass. Doxygen will then
remove the % and keep the word unlinked.
remove the % and keep the word unlinked.
<li><b>Help! I get the cryptic message
"input buffer overflow, can't enlarge buffer because scanner uses REJECT"</b>
This error happens when doxygen lexical scanner has a rules that matches
more than 16K input character in one go. I've seen this happening
on a very large generated file (>16K lines), where the built-in preprocessor
converted it into an empty file (with >16K of newlines). Another case
where this might happen is if you have lines in you code with more than
16K characters.
</ol>
</ol>
\htmlonly
\htmlonly
...
...
doc/features.doc
View file @
b91275de
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
<li>Requires very little overhead from the writer of the documentation.
<li>Requires very little overhead from the writer of the documentation.
Plain text will do, but for more fancy or structured output HTML tags
Plain text will do, but for more fancy or structured output HTML tags
and/or some of doxygen's special commands can be used.
and/or some of doxygen's special commands can be used.
<li>Supports C++, (Corba
and Microsoft
) IDL and C sources.
<li>Supports C++, (Corba
, Microsoft, and KDE-DCOP
) IDL and C sources.
<li>Supports documentation of files, namespaces, classes, structs, unions,
<li>Supports documentation of files, namespaces, classes, structs, unions,
templates, variables, functions, typedefs, enums and defines.
templates, variables, functions, typedefs, enums and defines.
<li>JavaDoc (1.1), Qt-Doc, and KDOC compatible.
<li>JavaDoc (1.1), Qt-Doc, and KDOC compatible.
...
...
doc/index.doc
View file @
b91275de
...
@@ -49,8 +49,8 @@ Documents produced by Doxygen are derivative works derived from the
...
@@ -49,8 +49,8 @@ Documents produced by Doxygen are derivative works derived from the
input used in their production; they are not affected by this license.
input used in their production; they are not affected by this license.
<h2>Introduction</h2>
<h2>Introduction</h2>
Doxygen is a documentation system for C++, IDL
(Corba and Microsoft flavors)
Doxygen is a documentation system for C++, IDL
and C.
(Corba, Microsoft and KDE-DCOP flavors)
and C.
It can help you in three ways:
It can help you in three ways:
<ol>
<ol>
...
...
doc/language.doc
View file @
b91275de
...
@@ -22,9 +22,9 @@ Doxygen has support for multiple languages. This means that the text fragments t
...
@@ -22,9 +22,9 @@ Doxygen has support for multiple languages. This means that the text fragments t
doxygen generates can changed into languages other than English
doxygen generates can changed into languages other than English
(the default) at configuration time.
(the default) at configuration time.
<p>
<p>
Currently, supported languages are English, French, Czech, Dutch,
Currently, supported languages are English, French, Czech, Dutch,
Spannish,
Swedish,
Italian, German and Japanese. A number
Swedish,
Russian, Czech, Croatian, Italian, Hungarian, Finnish, German and Japanese,
of people have volunteered to add support for other languages as well.
and Korean.
Here is a list of the languages and their current maintainers:
Here is a list of the languages and their current maintainers:
<p>
<p>
...
@@ -155,6 +155,30 @@ Here is a list of the languages and their current maintainers:
...
@@ -155,6 +155,30 @@ Here is a list of the languages and their current maintainers:
snob@NOSPAM.int.spb.ru</a>
snob@NOSPAM.int.spb.ru</a>
</TD>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TD>
Korean
</TD>
<TD>
Richard Kim
</TD>
<TD>
<a href="mailto:ryk@NOSPAM.dspwiz.com">
ryk@NOSPAM.dspwiz.com</a>
</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>
Hungarian
</TD>
<TD>
Fldvri Gyrgy
</TD>
<TD>
<a href="mailto:foldvari@NOSPAM.diatronltd.com">
foldvari@NOSPAM.diatronltd.com</a>
</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>
Croatian
Croatian
...
@@ -167,7 +191,6 @@ Here is a list of the languages and their current maintainers:
...
@@ -167,7 +191,6 @@ Here is a list of the languages and their current maintainers:
boris.bralo@NOSPAM.zg.tel.hr</a>
boris.bralo@NOSPAM.zg.tel.hr</a>
</TD>
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>
<TD>
Polish
Polish
...
@@ -225,6 +248,10 @@ Here is a list of the languages and their current maintainers:
...
@@ -225,6 +248,10 @@ Here is a list of the languages and their current maintainers:
\hline
\hline
Russian & Nickolay Semyonov & {\tt snob@int.spb.ru} \\
Russian & Nickolay Semyonov & {\tt snob@int.spb.ru} \\
\hline
\hline
Korean & Richard Kim & {\\tt ryk@dspwiz.com} \\
\hline
Hungarian & Fldvri Gyrgy & {\\tt foldvari@diatronltd.com} \\
\hline
Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr} \\
Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr} \\
\hline
\hline
Polish & Grzegorz Kowal & {\tt g\_kowal@poczta.onet.pl} \\
Polish & Grzegorz Kowal & {\tt g\_kowal@poczta.onet.pl} \\
...
...
packages/rpm/doxygen.spec
View file @
b91275de
Name: doxygen
Name: doxygen
Version: 1.2.1-20000
829
Version: 1.2.1-20000
910
Summary: documentation system for C, C++ and IDL
Summary: documentation system for C, C++ and IDL
Release: 1
Release: 1
Source0: doxygen-%{version}.src.tar.gz
Source0: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
b91275de
...
@@ -178,6 +178,7 @@ void ClassDef::addMembersToMemberGroup()
...
@@ -178,6 +178,7 @@ void ClassDef::addMembersToMemberGroup()
addMemberListToGroup
(
&
pubAttribs
);
addMemberListToGroup
(
&
pubAttribs
);
addMemberListToGroup
(
&
pubSlots
);
addMemberListToGroup
(
&
pubSlots
);
addMemberListToGroup
(
&
signals
);
addMemberListToGroup
(
&
signals
);
addMemberListToGroup
(
&
dcopMethods
);
addMemberListToGroup
(
&
pubStaticMembers
);
addMemberListToGroup
(
&
pubStaticMembers
);
addMemberListToGroup
(
&
pubStaticAttribs
);
addMemberListToGroup
(
&
pubStaticAttribs
);
addMemberListToGroup
(
&
proTypes
);
addMemberListToGroup
(
&
proTypes
);
...
@@ -219,11 +220,15 @@ void ClassDef::insertMember(MemberDef *md)
...
@@ -219,11 +220,15 @@ void ClassDef::insertMember(MemberDef *md)
{
{
switch
(
md
->
memberType
())
switch
(
md
->
memberType
())
{
{
case
MemberDef
:
:
Signal
:
case
MemberDef
:
:
Signal
:
// Qt specific
signals
.
append
(
md
);
signals
.
append
(
md
);
md
->
setSectionList
(
&
signals
);
md
->
setSectionList
(
&
signals
);
break
;
break
;
case
MemberDef
:
:
Slot
:
case
MemberDef
:
:
DCOP
:
// KDE2 specific
dcopMethods
.
append
(
md
);
md
->
setSectionList
(
&
dcopMethods
);
break
;
case
MemberDef
:
:
Slot
:
// Qt specific
switch
(
md
->
protection
())
switch
(
md
->
protection
())
{
{
case
Protected
:
case
Protected
:
...
@@ -358,7 +363,8 @@ void ClassDef::insertMember(MemberDef *md)
...
@@ -358,7 +363,8 @@ void ClassDef::insertMember(MemberDef *md)
{
{
switch
(
md
->
memberType
())
switch
(
md
->
memberType
())
{
{
case
MemberDef
:
:
Signal
:
case
MemberDef
:
:
Signal
:
// fall through
case
MemberDef
:
:
DCOP
:
if
(
Config
::
sortMembersFlag
)
if
(
Config
::
sortMembersFlag
)
functionMembers
.
inSort
(
md
);
functionMembers
.
inSort
(
md
);
else
else
...
@@ -511,6 +517,7 @@ void ClassDef::computeAnchors()
...
@@ -511,6 +517,7 @@ void ClassDef::computeAnchors()
setAnchors
(
's'
,
&
pubTypes
);
setAnchors
(
's'
,
&
pubTypes
);
setAnchors
(
't'
,
&
proTypes
);
setAnchors
(
't'
,
&
proTypes
);
setAnchors
(
'u'
,
&
priTypes
);
setAnchors
(
'u'
,
&
priTypes
);
setAnchors
(
'v'
,
&
dcopMethods
);
}
}
void
ClassDef
::
distributeMemberGroupDocumentation
()
void
ClassDef
::
distributeMemberGroupDocumentation
()
...
@@ -857,6 +864,8 @@ void ClassDef::writeDocumentation(OutputList &ol)
...
@@ -857,6 +864,8 @@ void ClassDef::writeDocumentation(OutputList &ol)
pubAttribs
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trPublicAttribs
(),
0
);
pubAttribs
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trPublicAttribs
(),
0
);
pubSlots
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trPublicSlots
(),
0
);
pubSlots
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trPublicSlots
(),
0
);
signals
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trSignals
(),
0
);
signals
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trSignals
(),
0
);
dcopMethods
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trDCOPMethods
(),
0
);
// static public members
// static public members
pubStaticMembers
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trStaticPublicMembers
(),
0
);
pubStaticMembers
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trStaticPublicMembers
(),
0
);
pubStaticAttribs
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trStaticPublicAttribs
(),
0
);
pubStaticAttribs
.
writeDeclarations
(
ol
,
this
,
0
,
0
,
0
,
theTranslator
->
trStaticPublicAttribs
(),
0
);
...
@@ -1066,7 +1075,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
...
@@ -1066,7 +1075,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
ol
.
docify
(
stripFromPath
(
path
));
ol
.
docify
(
stripFromPath
(
path
));
}
}
if
(
fd
->
generateSource
()
||
(
!
fd
->
isReference
()
&&
Config
::
sourceBrowseFlag
))
if
(
fd
->
generateSource
File
(
))
{
{
ol
.
writeObjectLink
(
0
,
fd
->
sourceName
(),
0
,
fd
->
name
());
ol
.
writeObjectLink
(
0
,
fd
->
sourceName
(),
0
,
fd
->
name
());
}
}
...
@@ -1340,6 +1349,7 @@ void ClassDef::writeDeclaration(OutputList &ol,MemberDef *md,bool inGroup)
...
@@ -1340,6 +1349,7 @@ void ClassDef::writeDeclaration(OutputList &ol,MemberDef *md,bool inGroup)
pubAttribs
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubAttribs
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubSlots
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubSlots
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
signals
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
signals
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
dcopMethods
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubStaticMembers
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubStaticMembers
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubStaticAttribs
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
pubStaticAttribs
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
proTypes
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
proTypes
.
writePlainDeclarations
(
ol
,
this
,
0
,
0
,
0
);
...
@@ -1856,7 +1866,8 @@ void ClassDef::generateXML(QTextStream &t)
...
@@ -1856,7 +1866,8 @@ void ClassDef::generateXML(QTextStream &t)
}
}
int
numMembers
=
int
numMembers
=
pubTypes
.
count
()
+
pubMembers
.
count
()
+
pubAttribs
.
count
()
+
pubTypes
.
count
()
+
pubMembers
.
count
()
+
pubAttribs
.
count
()
+
pubSlots
.
count
()
+
signals
.
count
()
+
pubStaticMembers
.
count
()
+
pubSlots
.
count
()
+
signals
.
count
()
+
dcopMethods
.
count
()
+
pubStaticMembers
.
count
()
+
pubStaticAttribs
.
count
()
+
proTypes
.
count
()
+
proMembers
.
count
()
+
pubStaticAttribs
.
count
()
+
proTypes
.
count
()
+
proMembers
.
count
()
+
proAttribs
.
count
()
+
proSlots
.
count
()
+
proStaticMembers
.
count
()
+
proAttribs
.
count
()
+
proSlots
.
count
()
+
proStaticMembers
.
count
()
+
proStaticAttribs
.
count
()
+
priTypes
.
count
()
+
priMembers
.
count
()
+
proStaticAttribs
.
count
()
+
priTypes
.
count
()
+
priMembers
.
count
()
+
...
@@ -1870,6 +1881,7 @@ void ClassDef::generateXML(QTextStream &t)
...
@@ -1870,6 +1881,7 @@ void ClassDef::generateXML(QTextStream &t)
generateXMLSection
(
t
,
&
pubAttribs
,
"public-attrib"
);
generateXMLSection
(
t
,
&
pubAttribs
,
"public-attrib"
);
generateXMLSection
(
t
,
&
pubSlots
,
"public-slot"
);
generateXMLSection
(
t
,
&
pubSlots
,
"public-slot"
);
generateXMLSection
(
t
,
&
signals
,
"signal"
);
generateXMLSection
(
t
,
&
signals
,
"signal"
);
generateXMLSection
(
t
,
&
dcopMethods
,
"dcop-func"
);
generateXMLSection
(
t
,
&
pubStaticMembers
,
"public-static-func"
);
generateXMLSection
(
t
,
&
pubStaticMembers
,
"public-static-func"
);
generateXMLSection
(
t
,
&
pubStaticAttribs
,
"public-static-attrib"
);
generateXMLSection
(
t
,
&
pubStaticAttribs
,
"public-static-attrib"
);
generateXMLSection
(
t
,
&
proTypes
,
"protected-type"
);
generateXMLSection
(
t
,
&
proTypes
,
"protected-type"
);
...
...
src/classdef.h
View file @
b91275de
...
@@ -167,6 +167,7 @@ class ClassDef : public Definition
...
@@ -167,6 +167,7 @@ class ClassDef : public Definition
MemberList
related
;
MemberList
related
;
MemberList
signals
;
MemberList
signals
;
MemberList
friends
;
MemberList
friends
;
MemberList
dcopMethods
;
/* member list by types */
/* member list by types */
MemberList
constructors
;
MemberList
constructors
;
...
...
src/config.h
View file @
b91275de
/* This file was generated by configgen on
Fri Aug 25 21:22:11
2000
/* This file was generated by configgen on
Sat Sep 2 10:51:52
2000
* from config_templ.h
* from config_templ.h
*
*
* DO NOT EDIT!
* DO NOT EDIT!
...
@@ -64,6 +64,7 @@ struct Config
...
@@ -64,6 +64,7 @@ struct Config
static
bool
inheritDocsFlag
;
// inheritance of documentation enabled?
static
bool
inheritDocsFlag
;
// inheritance of documentation enabled?
static
bool
inlineInfoFlag
;
// show info about inline members?
static
bool
inlineInfoFlag
;
// show info about inline members?
static
bool
sortMembersFlag
;
// sort members alphabetically?
static
bool
sortMembersFlag
;
// sort members alphabetically?
static
bool
distributeDocFlag
;
// distribute docs over member group?
static
int
tabSize
;
// number of spaces in a tab
static
int
tabSize
;
// number of spaces in a tab
static
QStrList
sectionFilterList
;
// list of section filters that are enabled
static
QStrList
sectionFilterList
;
// list of section filters that are enabled
static
bool
generateTodoList
;
// do we want a todo list?
static
bool
generateTodoList
;
// do we want a todo list?
...
...
src/config.l
View file @
b91275de
/* This file was generated by configgen on
Fri Aug 25 21:22:11
2000
/* This file was generated by configgen on
Sat Sep 2 10:51:52
2000
* from config_templ.l
* from config_templ.l
*
*
* DO NOT EDIT!
* DO NOT EDIT!
...
@@ -101,6 +101,7 @@ bool Config::autoBriefFlag = TRUE;
...
@@ -101,6 +101,7 @@ bool Config::autoBriefFlag = TRUE;
bool Config::inheritDocsFlag = TRUE;
bool Config::inheritDocsFlag = TRUE;
bool Config::inlineInfoFlag = TRUE;
bool Config::inlineInfoFlag = TRUE;
bool Config::sortMembersFlag = TRUE;
bool Config::sortMembersFlag = TRUE;
bool Config::distributeDocFlag = FALSE;
int Config::tabSize = 8;
int Config::tabSize = 8;
QStrList Config::sectionFilterList;
QStrList Config::sectionFilterList;
bool Config::generateTodoList = TRUE;
bool Config::generateTodoList = TRUE;
...
@@ -357,6 +358,7 @@ static void readIncludeFile(const char *incName)
...
@@ -357,6 +358,7 @@ static void readIncludeFile(const char *incName)
<Start>"INHERIT_DOCS"[ \t]*"=" { BEGIN(GetBool); b=&Config::inheritDocsFlag; }
<Start>"INHERIT_DOCS"[ \t]*"=" { BEGIN(GetBool); b=&Config::inheritDocsFlag; }
<Start>"INLINE_INFO"[ \t]*"=" { BEGIN(GetBool); b=&Config::inlineInfoFlag; }
<Start>"INLINE_INFO"[ \t]*"=" { BEGIN(GetBool); b=&Config::inlineInfoFlag; }
<Start>"SORT_MEMBER_DOCS"[ \t]*"=" { BEGIN(GetBool); b=&Config::sortMembersFlag; }
<Start>"SORT_MEMBER_DOCS"[ \t]*"=" { BEGIN(GetBool); b=&Config::sortMembersFlag; }
<Start>"DISTRIBUTE_GROUP_DOC"[ \t]*"=" { BEGIN(GetBool); b=&Config::distributeDocFlag; }
<Start>"TAB_SIZE"[ \t]*"=" { BEGIN(GetString); s=&tabSizeString; s->resize(0); }
<Start>"TAB_SIZE"[ \t]*"=" { BEGIN(GetString); s=&tabSizeString; s->resize(0); }
<Start>"ENABLED_SECTIONS"[ \t]*"=" { BEGIN(GetStrList); l=&Config::sectionFilterList; l->clear(); elemStr=""; }
<Start>"ENABLED_SECTIONS"[ \t]*"=" { BEGIN(GetStrList); l=&Config::sectionFilterList; l->clear(); elemStr=""; }
<Start>"ENABLED_SECTIONS"[ \t]*"+=" { BEGIN(GetStrList); l=&Config::sectionFilterList; elemStr=""; }
<Start>"ENABLED_SECTIONS"[ \t]*"+=" { BEGIN(GetStrList); l=&Config::sectionFilterList; elemStr=""; }
...
@@ -587,6 +589,7 @@ void dumpConfig()
...
@@ -587,6 +589,7 @@ void dumpConfig()
printf("inheritDocsFlag=`%d'\n",Config::inheritDocsFlag);
printf("inheritDocsFlag=`%d'\n",Config::inheritDocsFlag);
printf("inlineInfoFlag=`%d'\n",Config::inlineInfoFlag);
printf("inlineInfoFlag=`%d'\n",Config::inlineInfoFlag);
printf("sortMembersFlag=`%d'\n",Config::sortMembersFlag);
printf("sortMembersFlag=`%d'\n",Config::sortMembersFlag);
printf("distributeDocFlag=`%d'\n",Config::distributeDocFlag);
printf("tabSize=`%d'\n",Config::tabSize);
printf("tabSize=`%d'\n",Config::tabSize);
{
{
char *is=Config::sectionFilterList.first();
char *is=Config::sectionFilterList.first();
...
@@ -824,6 +827,7 @@ void Config::init()
...
@@ -824,6 +827,7 @@ void Config::init()
Config::inheritDocsFlag = TRUE;
Config::inheritDocsFlag = TRUE;
Config::inlineInfoFlag = TRUE;
Config::inlineInfoFlag = TRUE;
Config::sortMembersFlag = TRUE;
Config::sortMembersFlag = TRUE;
Config::distributeDocFlag = FALSE;
Config::tabSize = 8;
Config::tabSize = 8;
Config::sectionFilterList.clear();
Config::sectionFilterList.clear();
Config::generateTodoList = TRUE;
Config::generateTodoList = TRUE;
...
@@ -1011,7 +1015,7 @@ void writeTemplateConfig(QFile *f,bool sl)
...
@@ -1011,7 +1015,7 @@ void writeTemplateConfig(QFile *f,bool sl)
t << "# information to generate all constant output in the proper language. \n";
t << "# information to generate all constant output in the proper language. \n";
t << "# The default language is English, other supported languages are: \n";
t << "# The default language is English, other supported languages are: \n";
t << "# Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese, \n";
t << "# Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese, \n";
t << "# Spanish, Russian, Croatian, Polish, and Portuguese.\n";
t << "#
Korean, Hungarian,
Spanish, Russian, Croatian, Polish, and Portuguese.\n";
t << "\n";
t << "\n";
}
}
t << "OUTPUT_LANGUAGE = ";
t << "OUTPUT_LANGUAGE = ";
...
@@ -1278,6 +1282,18 @@ void writeTemplateConfig(QFile *f,bool sl)
...
@@ -1278,6 +1282,18 @@ void writeTemplateConfig(QFile *f,bool sl)
writeBoolValue(t,Config::sortMembersFlag);
writeBoolValue(t,Config::sortMembersFlag);
t << "\n";
t << "\n";
if (!sl)
if (!sl)
{
t << "\n";
t << "# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC \n";
t << "# tag is set to YES, then doxygen will reuse the documentation of the first \n";
t << "# member in the group (if any) for the other members of the group. By default \n";
t << "# all members of a group must be documented explicitly.\n";
t << "\n";
}
t << "DISTRIBUTE_GROUP_DOC = ";
writeBoolValue(t,Config::distributeDocFlag);
t << "\n";
if (!sl)
{
{
t << "\n";
t << "\n";
t << "# The TAB_SIZE tag can be used to set the number of spaces in a tab. \n";
t << "# The TAB_SIZE tag can be used to set the number of spaces in a tab. \n";
...
@@ -1323,10 +1339,11 @@ void writeTemplateConfig(QFile *f,bool sl)
...
@@ -1323,10 +1339,11 @@ void writeTemplateConfig(QFile *f,bool sl)
{
{
t << "\n";
t << "\n";
t << "# This tag can be used to specify a number of aliases that acts \n";
t << "# This tag can be used to specify a number of aliases that acts \n";
t << "# as commands in the documentation. An alias has the form \"
\\
name=value\". \n";
t << "# as commands in the documentation. An alias has the form \"name=value\". \n";
t << "# For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to \n";
t << "# For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to \n";
t << "# put the command \\sideeffect (or @sideeffect) in the documentation, which \n";
t << "# put the command \\sideeffect (or @sideeffect) in the documentation, which \n";
t << "# will result in a user defined paragraph with heading \"Side Effects:\". \n";
t << "# will result in a user defined paragraph with heading \"Side Effects:\". \n";
t << "# You can put \\n's in the value part of an alias to insert newlines. \n";
t << "# Predefined commands cannot be overwritten using aliases. \n";
t << "# Predefined commands cannot be overwritten using aliases. \n";
t << "\n";
t << "\n";
}
}
...
...
src/definition.h
View file @
b91275de
...
@@ -69,7 +69,7 @@ class Definition
...
@@ -69,7 +69,7 @@ class Definition
virtual
bool
isLinkableInProject
()
=
0
;
virtual
bool
isLinkableInProject
()
=
0
;
virtual
bool
isLinkable
()
=
0
;
virtual
bool
isLinkable
()
=
0
;
bool
isReference
()
{
return
!
ref
.
isEmpty
();
}
bool
isReference
()
const
{
return
!
ref
.
isEmpty
();
}
void
setReference
(
const
char
*
r
)
{
ref
=
r
;
}
void
setReference
(
const
char
*
r
)
{
ref
=
r
;
}
QCString
getReference
()
{
return
ref
;
}
QCString
getReference
()
{
return
ref
;
}
...
...
src/doc.l
View file @
b91275de
...
@@ -2043,7 +2043,14 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
...
@@ -2043,7 +2043,14 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
}
}
else
else
{
{
outDoc->newParagraph();
if (insidePre)
{
outDoc->docify(yytext);
}
else
{
outDoc->newParagraph();
}
}
}
if (inBlock()) endBlock();
if (inBlock()) endBlock();
}
}
...
...
src/dot.cpp
View file @
b91275de
...
@@ -1205,7 +1205,7 @@ void DotInclDepGraph::buildGraph(DotNode *n,FileDef *fd,int distance)
...
@@ -1205,7 +1205,7 @@ void DotInclDepGraph::buildGraph(DotNode *n,FileDef *fd,int distance)
{
{
in
=
bfd
->
absFilePath
();
in
=
bfd
->
absFilePath
();
doc
=
bfd
->
isLinkableInProject
();
doc
=
bfd
->
isLinkableInProject
();
src
=
bfd
->
generateSource
()
||
(
!
bfd
->
isReference
()
&&
Config
::
sourceBrowseFlag
);
src
=
bfd
->
generateSource
File
(
);
}
}
if
(
doc
||
src
)
if
(
doc
||
src
)
{
{
...
...
src/doxygen.cpp
View file @
b91275de
...
@@ -90,6 +90,7 @@ FileNameDict *includeNameDict; // include names
...
@@ -90,6 +90,7 @@ FileNameDict *includeNameDict; // include names
FileNameDict
*
exampleNameDict
;
// examples
FileNameDict
*
exampleNameDict
;
// examples
FileNameDict
*
imageNameDict
;
// images
FileNameDict
*
imageNameDict
;
// images
StringDict
typedefDict
(
1009
);
// all typedefs
StringDict
typedefDict
(
1009
);
// all typedefs
StringDict
namespaceAliasDict
(
257
);
// all namespace aliases
GroupDict
groupDict
(
257
);
// all groups
GroupDict
groupDict
(
257
);
// all groups
FormulaDict
formulaDict
(
1009
);
// all formulas
FormulaDict
formulaDict
(
1009
);
// all formulas
FormulaDict
formulaNameDict
(
1009
);
// the label name of all formulas
FormulaDict
formulaNameDict
(
1009
);
// the label name of all formulas
...
@@ -502,7 +503,7 @@ static void addIncludeFile(ClassDef *cd,FileDef *ifd,Entry *root)
...
@@ -502,7 +503,7 @@ static void addIncludeFile(ClassDef *cd,FileDef *ifd,Entry *root)
// generate code for header
// generate code for header
{
{
cd
->
setIncludeFile
(
fd
,
iName
,
local
);
cd
->
setIncludeFile
(
fd
,
iName
,
local
);
fd
->
setGenerateSource
(
TRUE
);
//
fd->setGenerateSource(TRUE);
}
}
else
// put #include in the class documentation without link
else
// put #include in the class documentation without link
{
{
...
@@ -526,7 +527,7 @@ static bool addNamespace(Entry *root,ClassDef *cd)
...
@@ -526,7 +527,7 @@ static bool addNamespace(Entry *root,ClassDef *cd)
//printf("addNameSpace() trying: %s\n",e->name.data());
//printf("addNameSpace() trying: %s\n",e->name.data());
QCString
nsName
=
stripAnnonymousNamespaceScope
(
e
->
name
);
QCString
nsName
=
stripAnnonymousNamespaceScope
(
e
->
name
);
if
(
!
nsName
.
isEmpty
()
&&
nsName
.
at
(
0
)
!=
'@'
&&
if
(
!
nsName
.
isEmpty
()
&&
nsName
.
at
(
0
)
!=
'@'
&&
(
nd
=
namespaceDict
[
nsName
]
)
(
nd
=
getResolvedNamespace
(
nsName
)
)
)
)
{
{
cd
->
setNamespace
(
nd
);
cd
->
setNamespace
(
nd
);
...
@@ -688,7 +689,7 @@ static void buildClassList(Entry *root)
...
@@ -688,7 +689,7 @@ static void buildClassList(Entry *root)
// namespace is part of the class name
// namespace is part of the class name
if
(
!
found
&&
!
namespaceName
.
isEmpty
())
if
(
!
found
&&
!
namespaceName
.
isEmpty
())
{
{
NamespaceDef
*
nd
=
namespaceDict
[
namespaceName
]
;
NamespaceDef
*
nd
=
getResolvedNamespace
(
namespaceName
)
;
if
(
nd
)
if
(
nd
)
{
{
cd
->
setNamespace
(
nd
);
cd
->
setNamespace
(
nd
);
...
@@ -850,7 +851,7 @@ static void findUsingDirectives(Entry *root)
...
@@ -850,7 +851,7 @@ static void findUsingDirectives(Entry *root)
nsName
=
root
->
parent
->
name
.
copy
();
nsName
=
root
->
parent
->
name
.
copy
();
if
(
!
nsName
.
isEmpty
())
if
(
!
nsName
.
isEmpty
())
{
{
nd
=
namespaceDict
[
nsName
]
;
nd
=
getResolvedNamespace
(
nsName
)
;
}
}
}
}
...
@@ -864,7 +865,7 @@ static void findUsingDirectives(Entry *root)
...
@@ -864,7 +865,7 @@ static void findUsingDirectives(Entry *root)
QCString
scope
=
scopeOffset
>
0
?
QCString
scope
=
scopeOffset
>
0
?
nsName
.
left
(
scopeOffset
)
+
"::"
:
QCString
();
nsName
.
left
(
scopeOffset
)
+
"::"
:
QCString
();
//printf("Trying with scope=`%s'\n",scope.data());
//printf("Trying with scope=`%s'\n",scope.data());
usingNd
=
namespaceDict
[
scope
+
root
->
name
]
;
usingNd
=
getResolvedNamespace
(
scope
+
root
->
name
)
;
if
(
scopeOffset
==
0
)
if
(
scopeOffset
==
0
)
{
{
scopeOffset
=-
1
;
scopeOffset
=-
1
;
...
@@ -959,7 +960,7 @@ static void findUsingDeclarations(Entry *root)
...
@@ -959,7 +960,7 @@ static void findUsingDeclarations(Entry *root)
scName
=
root
->
parent
->
name
.
copy
();
scName
=
root
->
parent
->
name
.
copy
();
if
(
!
scName
.
isEmpty
())
if
(
!
scName
.
isEmpty
())
{
{
nd
=
namespaceDict
[
scName
]
;
nd
=
getResolvedNamespace
(
scName
)
;
}
}
}
}
...
@@ -1175,7 +1176,7 @@ static MemberDef *addVariableToFile(
...
@@ -1175,7 +1176,7 @@ static MemberDef *addVariableToFile(
QCString
nscope
=
removeAnnonymousScopes
(
scope
);
QCString
nscope
=
removeAnnonymousScopes
(
scope
);
if
(
!
nscope
.
isEmpty
())
if
(
!
nscope
.
isEmpty
())
{
{
nd
=
namespaceDict
[
nscope
]
;
nd
=
getResolvedNamespace
(
nscope
)
;
}
}
}
}
QCString
def
;
QCString
def
;
...
@@ -1221,7 +1222,7 @@ static MemberDef *addVariableToFile(
...
@@ -1221,7 +1222,7 @@ static MemberDef *addVariableToFile(
NamespaceDef
*
nd
=
0
;
NamespaceDef
*
nd
=
0
;
if
(
!
nscope
.
isEmpty
())
if
(
!
nscope
.
isEmpty
())
{
{
nd
=
namespaceDict
[
nscope
]
;
nd
=
getResolvedNamespace
(
nscope
)
;
}
}
if
(
nd
==
0
||
md
->
getNamespaceDef
()
==
nd
)
if
(
nd
==
0
||
md
->
getNamespaceDef
()
==
nd
)
// variable already in the scope
// variable already in the scope
...
@@ -1540,10 +1541,11 @@ static void buildMemberList(Entry *root)
...
@@ -1540,10 +1541,11 @@ static void buildMemberList(Entry *root)
if
(
name
.
left
(
2
)
==
"::"
)
name
=
name
.
right
(
name
.
length
()
-
2
);
if
(
name
.
left
(
2
)
==
"::"
)
name
=
name
.
right
(
name
.
length
()
-
2
);
MemberDef
::
MemberType
mtype
;
MemberDef
::
MemberType
mtype
;
if
(
isFriend
)
mtype
=
MemberDef
::
Friend
;
if
(
isFriend
)
mtype
=
MemberDef
::
Friend
;
else
if
(
root
->
sig
)
mtype
=
MemberDef
::
Signal
;
else
if
(
root
->
mtype
==
Signal
)
mtype
=
MemberDef
::
Signal
;
else
if
(
root
->
slot
)
mtype
=
MemberDef
::
Slot
;
else
if
(
root
->
mtype
==
Slot
)
mtype
=
MemberDef
::
Slot
;
else
mtype
=
MemberDef
::
Function
;
else
if
(
root
->
mtype
==
DCOP
)
mtype
=
MemberDef
::
DCOP
;
else
mtype
=
MemberDef
::
Function
;
// strip redundant template specifier for constructors
// strip redundant template specifier for constructors
if
((
i
=
name
.
find
(
'<'
))
!=-
1
&&
name
.
find
(
'>'
)
!=-
1
)
if
((
i
=
name
.
find
(
'<'
))
!=-
1
&&
name
.
find
(
'>'
)
!=-
1
)
...
@@ -1699,7 +1701,7 @@ static void buildMemberList(Entry *root)
...
@@ -1699,7 +1701,7 @@ static void buildMemberList(Entry *root)
NamespaceDef
*
rnd
=
0
;
NamespaceDef
*
rnd
=
0
;
if
(
!
root
->
parent
->
name
.
isEmpty
())
if
(
!
root
->
parent
->
name
.
isEmpty
())
{
{
rnd
=
namespaceDict
[
root
->
parent
->
name
]
;
rnd
=
getResolvedNamespace
(
root
->
parent
->
name
)
;
}
}
FileDef
*
fd
=
md
->
getFileDef
();
FileDef
*
fd
=
md
->
getFileDef
();
QCString
nsName
,
rnsName
;
QCString
nsName
,
rnsName
;
...
@@ -1811,7 +1813,7 @@ static void buildMemberList(Entry *root)
...
@@ -1811,7 +1813,7 @@ static void buildMemberList(Entry *root)
QCString
nscope
=
removeAnnonymousScopes
(
root
->
parent
->
name
);
QCString
nscope
=
removeAnnonymousScopes
(
root
->
parent
->
name
);
if
(
!
nscope
.
isEmpty
())
if
(
!
nscope
.
isEmpty
())
{
{
nd
=
namespaceDict
[
nscope
]
;
nd
=
getResolvedNamespace
(
nscope
)
;
}
}
}
}
...
@@ -3197,7 +3199,7 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
...
@@ -3197,7 +3199,7 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
bool
ambig
;
bool
ambig
;
FileDef
*
fd
=
findFileDef
(
inputNameDict
,
root
->
fileName
,
ambig
);
FileDef
*
fd
=
findFileDef
(
inputNameDict
,
root
->
fileName
,
ambig
);
NamespaceDef
*
nd
=
0
;
NamespaceDef
*
nd
=
0
;
if
(
!
namespaceName
.
isEmpty
())
nd
=
namespaceDict
[
namespaceName
]
;
if
(
!
namespaceName
.
isEmpty
())
nd
=
getResolvedNamespace
(
namespaceName
)
;
tcd
=
findClassDefinition
(
fd
,
nd
,
scopeName
,
classTempList
);
tcd
=
findClassDefinition
(
fd
,
nd
,
scopeName
,
classTempList
);
if
(
cd
&&
tcd
==
cd
)
// member's classes match
if
(
cd
&&
tcd
==
cd
)
// member's classes match
...
@@ -3367,8 +3369,9 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
...
@@ -3367,8 +3369,9 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
if
(
unique
)
if
(
unique
)
{
{
MemberDef
::
MemberType
mtype
;
MemberDef
::
MemberType
mtype
;
if
(
root
->
sig
)
mtype
=
MemberDef
::
Signal
;
if
(
root
->
mtype
==
Signal
)
mtype
=
MemberDef
::
Signal
;
else
if
(
root
->
slot
)
mtype
=
MemberDef
::
Slot
;
else
if
(
root
->
mtype
==
Slot
)
mtype
=
MemberDef
::
Slot
;
else
if
(
root
->
mtype
==
DCOP
)
mtype
=
MemberDef
::
DCOP
;
else
mtype
=
MemberDef
::
Function
;
else
mtype
=
MemberDef
::
Function
;
// new overloaded member function
// new overloaded member function
...
@@ -3440,10 +3443,12 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
...
@@ -3440,10 +3443,12 @@ static void findMember(Entry *root,QCString funcDecl,QCString related,bool overl
if
(
newMember
)
// need to create a new member
if
(
newMember
)
// need to create a new member
{
{
MemberDef
::
MemberType
mtype
;
MemberDef
::
MemberType
mtype
;
if
(
root
->
sig
)
if
(
root
->
mtype
==
Signal
)
mtype
=
MemberDef
::
Signal
;
mtype
=
MemberDef
::
Signal
;
else
if
(
root
->
s
lot
)
else
if
(
root
->
mtype
==
S
lot
)
mtype
=
MemberDef
::
Slot
;
mtype
=
MemberDef
::
Slot
;
else
if
(
root
->
mtype
==
DCOP
)
mtype
=
MemberDef
::
DCOP
;
else
else
mtype
=
MemberDef
::
Function
;
mtype
=
MemberDef
::
Function
;
...
@@ -3679,7 +3684,7 @@ static void findEnums(Entry *root)
...
@@ -3679,7 +3684,7 @@ static void findEnums(Entry *root)
{
{
QCString
scope
=
root
->
name
.
left
(
i
);
// extract scope
QCString
scope
=
root
->
name
.
left
(
i
);
// extract scope
name
=
root
->
name
.
right
(
root
->
name
.
length
()
-
i
-
2
);
// extract name
name
=
root
->
name
.
right
(
root
->
name
.
length
()
-
i
-
2
);
// extract name
if
((
cd
=
getClass
(
scope
))
==
0
)
nd
=
namespaceDict
[
scope
]
;
if
((
cd
=
getClass
(
scope
))
==
0
)
nd
=
getResolvedNamespace
(
scope
)
;
}
}
else
// no scope, check the scope in which the docs where found
else
// no scope, check the scope in which the docs where found
{
{
...
@@ -3688,7 +3693,7 @@ static void findEnums(Entry *root)
...
@@ -3688,7 +3693,7 @@ static void findEnums(Entry *root)
)
// found enum docs inside a compound
)
// found enum docs inside a compound
{
{
QCString
scope
=
root
->
parent
->
name
;
QCString
scope
=
root
->
parent
->
name
;
if
((
cd
=
getClass
(
scope
))
==
0
)
nd
=
namespaceDict
[
scope
]
;
if
((
cd
=
getClass
(
scope
))
==
0
)
nd
=
getResolvedNamespace
(
scope
)
;
}
}
name
=
root
->
name
.
copy
();
name
=
root
->
name
.
copy
();
}
}
...
@@ -4103,7 +4108,9 @@ static void generateFileSources()
...
@@ -4103,7 +4108,9 @@ static void generateFileSources()
for
(;(
fd
=
fni
.
current
());
++
fni
)
for
(;(
fd
=
fni
.
current
());
++
fni
)
{
{
bool
src
=
!
fd
->
isReference
()
&&
bool
src
=
!
fd
->
isReference
()
&&
(
fd
->
generateSource
()
||
Config
::
sourceBrowseFlag
);
(
Config
::
verbatimHeaderFlag
//fd->generateSource()
||
Config
::
sourceBrowseFlag
);
if
(
src
)
if
(
src
)
{
{
msg
(
"Generating code for file %s...
\n
"
,
fd
->
name
().
data
());
msg
(
"Generating code for file %s...
\n
"
,
fd
->
name
().
data
());
...
@@ -5883,8 +5890,11 @@ int main(int argc,char **argv)
...
@@ -5883,8 +5890,11 @@ int main(int argc,char **argv)
msg
(
"Adding members to member groups.
\n
"
);
msg
(
"Adding members to member groups.
\n
"
);
addMembersToMemberGroup
();
addMembersToMemberGroup
();
msg
(
"Distributing member group documentation.
\n
"
);
if
(
Config
::
distributeDocFlag
)
distributeMemberGroupDocumentation
();
{
msg
(
"Distributing member group documentation.
\n
"
);
distributeMemberGroupDocumentation
();
}
msg
(
"Building full member lists recursively...
\n
"
);
msg
(
"Building full member lists recursively...
\n
"
);
buildCompleteMemberLists
();
buildCompleteMemberLists
();
...
...
src/doxygen.h
View file @
b91275de
...
@@ -91,6 +91,7 @@ extern QTextStream tagFile;
...
@@ -91,6 +91,7 @@ extern QTextStream tagFile;
extern
SectionDict
sectionDict
;
extern
SectionDict
sectionDict
;
extern
FileNameList
inputNameList
;
extern
FileNameList
inputNameList
;
extern
StringDict
typedefDict
;
extern
StringDict
typedefDict
;
extern
StringDict
namespaceAliasDict
;
extern
GroupList
groupList
;
extern
GroupList
groupList
;
extern
GroupDict
groupDict
;
extern
GroupDict
groupDict
;
extern
NamespaceList
namespaceList
;
extern
NamespaceList
namespaceList
;
...
...
src/doxygen.pro.in
View file @
b91275de
...
@@ -26,7 +26,7 @@ HEADERS = doxygen.h scanner.h doc.h classdef.h classlist.h memberdef.h \
...
@@ -26,7 +26,7 @@ HEADERS = doxygen.h scanner.h doc.h classdef.h classlist.h memberdef.h \
translator_nl.h translator_se.h translator_cz.h translator_fr.h \
translator_nl.h translator_se.h translator_cz.h translator_fr.h \
translator_it.h formula.h debug.h membergroup.h htmlhelp.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 \
translator_ru.h translator_pl.h dot.h rtfgen.h xml.h xml_dtd.h \
reflist.h page.h sortdict.h translator_hu.h
reflist.h page.h sortdict.h translator_hu.h
translator_kr.h
SOURCES = doxygen.cpp scanner.cpp doc.cpp classdef.cpp classlist.cpp \
SOURCES = doxygen.cpp scanner.cpp doc.cpp classdef.cpp classlist.cpp \
memberdef.cpp membername.cpp index.cpp memberlist.cpp \
memberdef.cpp membername.cpp index.cpp memberlist.cpp \
entry.cpp logos.cpp instdox.cpp message.cpp code.cpp \
entry.cpp logos.cpp instdox.cpp message.cpp code.cpp \
...
...
src/entry.cpp
View file @
b91275de
...
@@ -48,8 +48,7 @@ Entry::Entry(const Entry &e)
...
@@ -48,8 +48,7 @@ Entry::Entry(const Entry &e)
//printf("Copy New Entry %d\n",num);
//printf("Copy New Entry %d\n",num);
section
=
e
.
section
;
section
=
e
.
section
;
protection
=
e
.
protection
;
protection
=
e
.
protection
;
sig
=
e
.
sig
;
mtype
=
e
.
mtype
;
slot
=
e
.
slot
;
stat
=
e
.
stat
;
stat
=
e
.
stat
;
explicitExternal
=
e
.
explicitExternal
;
explicitExternal
=
e
.
explicitExternal
;
virt
=
e
.
virt
;
virt
=
e
.
virt
;
...
@@ -219,9 +218,8 @@ void Entry::reset()
...
@@ -219,9 +218,8 @@ void Entry::reset()
todoId
=
0
;
todoId
=
0
;
testId
=
0
;
testId
=
0
;
section
=
EMPTY_SEC
;
section
=
EMPTY_SEC
;
sig
=
FALSE
;
mtype
=
Method
;
virt
=
Normal
;
virt
=
Normal
;
slot
=
FALSE
;
stat
=
FALSE
;
stat
=
FALSE
;
proto
=
FALSE
;
proto
=
FALSE
;
explicitExternal
=
FALSE
;
explicitExternal
=
FALSE
;
...
...
src/entry.h
View file @
b91275de
...
@@ -23,6 +23,7 @@
...
@@ -23,6 +23,7 @@
enum
Protection
{
Public
,
Protected
,
Private
}
;
enum
Protection
{
Public
,
Protected
,
Private
}
;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
enum
MethodTypes
{
Method
,
Signal
,
Slot
,
DCOP
};
struct
BaseInfo
struct
BaseInfo
{
{
...
@@ -161,8 +162,9 @@ class Entry
...
@@ -161,8 +162,9 @@ class Entry
int
section
;
// entry type (see Sections);
int
section
;
// entry type (see Sections);
Protection
protection
;
// class protection
Protection
protection
;
// class protection
bool
sig
;
// a Qt signal ?
//bool sig; // a Qt signal ?
bool
slot
;
// a Qt slot ?
//bool slot; // a Qt slot ?
MethodTypes
mtype
;
// signal, slot or dcop method?
bool
stat
;
// static ?
bool
stat
;
// static ?
bool
explicitExternal
;
// explicitly defined as external?
bool
explicitExternal
;
// explicitly defined as external?
bool
proto
;
// prototype ?
bool
proto
;
// prototype ?
...
...
src/filedef.cpp
View file @
b91275de
...
@@ -164,9 +164,7 @@ void FileDef::writeDocumentation(OutputList &ol)
...
@@ -164,9 +164,7 @@ void FileDef::writeDocumentation(OutputList &ol)
ol
.
docify
(
ii
->
includeName
);
ol
.
docify
(
ii
->
includeName
);
ol
.
enableAll
();
ol
.
enableAll
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
if
(
fd
&&
fd
->
isLinkable
()
&&
if
(
fd
&&
fd
->
isLinkable
()
&&
fd
->
generateSourceFile
())
(
fd
->
generateSource
()
||
Config
::
sourceBrowseFlag
)
)
{
{
ol
.
writeObjectLink
(
fd
->
getReference
(),
fd
->
includeName
(),
0
,
ii
->
includeName
);
ol
.
writeObjectLink
(
fd
->
getReference
(),
fd
->
includeName
(),
0
,
ii
->
includeName
);
}
}
...
@@ -222,7 +220,7 @@ void FileDef::writeDocumentation(OutputList &ol)
...
@@ -222,7 +220,7 @@ void FileDef::writeDocumentation(OutputList &ol)
//incDepGraph.writeGraph(Config::htmlOutputDir,fd->getOutputFileBase());
//incDepGraph.writeGraph(Config::htmlOutputDir,fd->getOutputFileBase());
}
}
if
(
generateSource
()
||
(
!
isReference
()
&&
Config
::
sourceBrowseFlag
))
if
(
generateSource
File
(
))
{
{
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
ol
.
newParagraph
();
ol
.
newParagraph
();
...
...
src/filedef.h
View file @
b91275de
...
@@ -120,8 +120,11 @@ class FileDef : public Definition
...
@@ -120,8 +120,11 @@ class FileDef : public Definition
void
addUsingDeclaration
(
ClassDef
*
cd
);
void
addUsingDeclaration
(
ClassDef
*
cd
);
ClassList
*
getUsedClasses
()
const
{
return
usingDeclList
;
}
ClassList
*
getUsedClasses
()
const
{
return
usingDeclList
;
}
void
setGenerateSource
(
bool
b
)
{
isSource
=
b
;
}
//void setGenerateSource(bool b) { isSource=b; }
bool
generateSource
()
const
{
return
isSource
;
}
bool
generateSourceFile
()
const
{
return
!
isReference
()
&&
(
Config
::
sourceBrowseFlag
||
Config
::
verbatimHeaderFlag
);
}
void
addIncludeDependency
(
FileDef
*
fd
,
const
char
*
incName
,
bool
local
);
void
addIncludeDependency
(
FileDef
*
fd
,
const
char
*
incName
,
bool
local
);
void
addIncludedByDependency
(
FileDef
*
fd
,
const
char
*
incName
,
bool
local
);
void
addIncludedByDependency
(
FileDef
*
fd
,
const
char
*
incName
,
bool
local
);
...
...
src/index.cpp
View file @
b91275de
...
@@ -333,7 +333,7 @@ void countFiles(int &htmlFiles,int &files)
...
@@ -333,7 +333,7 @@ void countFiles(int &htmlFiles,int &files)
for
(;(
fd
=
fni
.
current
());
++
fni
)
for
(;(
fd
=
fni
.
current
());
++
fni
)
{
{
bool
doc
=
fd
->
isLinkableInProject
();
bool
doc
=
fd
->
isLinkableInProject
();
bool
src
=
fd
->
generateSource
()
||
Config
::
sourceBrowseFlag
;
bool
src
=
fd
->
generateSource
File
()
;
if
(
doc
||
src
)
if
(
doc
||
src
)
{
{
htmlFiles
++
;
htmlFiles
++
;
...
@@ -415,7 +415,7 @@ void writeFileIndex(OutputList &ol)
...
@@ -415,7 +415,7 @@ void writeFileIndex(OutputList &ol)
{
{
//printf("Found filedef %s\n",fd->name().data());
//printf("Found filedef %s\n",fd->name().data());
bool
doc
=
fd
->
isLinkableInProject
();
bool
doc
=
fd
->
isLinkableInProject
();
bool
src
=
fd
->
generateSource
()
||
Config
::
sourceBrowseFlag
;
bool
src
=
fd
->
generateSource
File
()
;
if
((
doc
||
src
)
&&
!
fd
->
isReference
())
if
((
doc
||
src
)
&&
!
fd
->
isReference
())
{
{
QCString
path
;
QCString
path
;
...
@@ -849,7 +849,7 @@ void writeAlphabeticalClassList(OutputList &ol)
...
@@ -849,7 +849,7 @@ void writeAlphabeticalClassList(OutputList &ol)
if
(
!
namesp
.
isEmpty
())
if
(
!
namesp
.
isEmpty
())
{
{
ol
.
docify
(
" ("
);
ol
.
docify
(
" ("
);
NamespaceDef
*
nd
=
namespaceDict
[
namesp
]
;
NamespaceDef
*
nd
=
getResolvedNamespace
(
namesp
)
;
if
(
nd
&&
nd
->
isLinkable
())
if
(
nd
&&
nd
->
isLinkable
())
{
{
ol
.
writeObjectLink
(
nd
->
getReference
(),
ol
.
writeObjectLink
(
nd
->
getReference
(),
...
...
src/language.cpp
View file @
b91275de
...
@@ -32,6 +32,7 @@
...
@@ -32,6 +32,7 @@
#include "translator_pl.h"
#include "translator_pl.h"
#include "translator_pt.h"
#include "translator_pt.h"
#include "translator_hu.h"
#include "translator_hu.h"
#include "translator_kr.h"
#endif
#endif
#define L_EQUAL(a) !stricmp(langName,a)
#define L_EQUAL(a) !stricmp(langName,a)
...
@@ -105,6 +106,10 @@ bool setTranslator(const char *langName)
...
@@ -105,6 +106,10 @@ bool setTranslator(const char *langName)
{
{
theTranslator
=
new
TranslatorHungarian
;
theTranslator
=
new
TranslatorHungarian
;
}
}
else
if
(
L_EQUAL
(
"korean"
))
{
theTranslator
=
new
TranslatorKorean
;
}
#endif
#endif
else
// use the default language (i.e. english)
else
// use the default language (i.e. english)
{
{
...
...
src/latexgen.cpp
View file @
b91275de
...
@@ -1134,6 +1134,7 @@ void LatexGenerator::docify(const char *str)
...
@@ -1134,6 +1134,7 @@ void LatexGenerator::docify(const char *str)
{
{
static
bool
isCzech
=
theTranslator
->
idLanguage
()
==
"czech"
;
static
bool
isCzech
=
theTranslator
->
idLanguage
()
==
"czech"
;
static
bool
isJapanese
=
theTranslator
->
idLanguage
()
==
"japanese"
;
static
bool
isJapanese
=
theTranslator
->
idLanguage
()
==
"japanese"
;
static
bool
isKorean
=
theTranslator
->
idLanguage
()
==
"korean"
;
static
bool
isRussian
=
theTranslator
->
idLanguage
()
==
"russian"
;
static
bool
isRussian
=
theTranslator
->
idLanguage
()
==
"russian"
;
static
bool
isGerman
=
theTranslator
->
idLanguage
()
==
"german"
;
static
bool
isGerman
=
theTranslator
->
idLanguage
()
==
"german"
;
if
(
str
)
if
(
str
)
...
@@ -1192,7 +1193,7 @@ void LatexGenerator::docify(const char *str)
...
@@ -1192,7 +1193,7 @@ void LatexGenerator::docify(const char *str)
break
;
break
;
default
:
default
:
if
(
isJapanese
)
if
(
isJapanese
||
isKorean
)
{
// Japanese language uses wide characters
{
// Japanese language uses wide characters
if
(
c
>=
128
)
if
(
c
>=
128
)
{
{
...
...
src/memberdef.cpp
View file @
b91275de
...
@@ -1414,6 +1414,7 @@ void MemberDef::generateXML(QTextStream &t,Definition *def)
...
@@ -1414,6 +1414,7 @@ void MemberDef::generateXML(QTextStream &t,Definition *def)
case
Signal
:
// fall through
case
Signal
:
// fall through
case
Prototype
:
// fall through
case
Prototype
:
// fall through
case
Friend
:
// fall through
case
Friend
:
// fall through
case
DCOP
:
// fall through
case
Slot
:
t
<<
"functiondef"
;
xmlType
=
function_t
;
break
;
case
Slot
:
t
<<
"functiondef"
;
xmlType
=
function_t
;
break
;
}
}
t
<<
" id=
\"
"
;
t
<<
" id=
\"
"
;
...
@@ -1562,6 +1563,7 @@ void MemberDef::generateXML(QTextStream &t,Definition *def)
...
@@ -1562,6 +1563,7 @@ void MemberDef::generateXML(QTextStream &t,Definition *def)
case
Signal
:
// fall through
case
Signal
:
// fall through
case
Prototype
:
// fall through
case
Prototype
:
// fall through
case
Friend
:
// fall through
case
Friend
:
// fall through
case
DCOP
:
// fall through
case
Slot
:
t
<<
"functiondef"
;
break
;
case
Slot
:
t
<<
"functiondef"
;
break
;
}
}
t
<<
">"
<<
endl
;
t
<<
">"
<<
endl
;
...
...
src/memberdef.h
View file @
b91275de
...
@@ -57,7 +57,8 @@ class MemberDef : public Definition
...
@@ -57,7 +57,8 @@ class MemberDef : public Definition
Prototype
,
Prototype
,
Signal
,
Signal
,
Slot
,
Slot
,
Friend
Friend
,
DCOP
};
};
enum
enum
...
@@ -107,6 +108,7 @@ class MemberDef : public Definition
...
@@ -107,6 +108,7 @@ class MemberDef : public Definition
bool
isFunction
()
const
{
return
mtype
==
Function
;
}
bool
isFunction
()
const
{
return
mtype
==
Function
;
}
bool
isDefine
()
const
{
return
mtype
==
Define
;
}
bool
isDefine
()
const
{
return
mtype
==
Define
;
}
bool
isFriend
()
const
{
return
mtype
==
Friend
;
}
bool
isFriend
()
const
{
return
mtype
==
Friend
;
}
bool
isDCOP
()
const
{
return
mtype
==
DCOP
;
}
bool
isRelated
()
const
{
return
related
;
}
bool
isRelated
()
const
{
return
related
;
}
bool
isStatic
()
const
{
return
stat
;
}
bool
isStatic
()
const
{
return
stat
;
}
bool
isInline
()
const
{
return
(
memSpec
&
Entry
::
Inline
)
!=
0
;
}
bool
isInline
()
const
{
return
(
memSpec
&
Entry
::
Inline
)
!=
0
;
}
...
...
src/memberlist.cpp
View file @
b91275de
...
@@ -73,6 +73,7 @@ void MemberList::countDecMembers(bool inGroup,bool countSubGroups,bool sectionPe
...
@@ -73,6 +73,7 @@ void MemberList::countDecMembers(bool inGroup,bool countSubGroups,bool sectionPe
case
MemberDef
:
:
Variable
:
varCnt
++
,
m_count
++
;
break
;
case
MemberDef
:
:
Variable
:
varCnt
++
,
m_count
++
;
break
;
case
MemberDef
:
:
Function
:
// fall through
case
MemberDef
:
:
Function
:
// fall through
case
MemberDef
:
:
Signal
:
// fall through
case
MemberDef
:
:
Signal
:
// fall through
case
MemberDef
:
:
DCOP
:
// fall through
case
MemberDef
:
:
Slot
:
if
(
!
md
->
isRelated
()
||
md
->
getClassDef
())
case
MemberDef
:
:
Slot
:
if
(
!
md
->
isRelated
()
||
md
->
getClassDef
())
funcCnt
++
,
m_count
++
;
funcCnt
++
,
m_count
++
;
break
;
break
;
...
@@ -409,7 +410,7 @@ void MemberList::writePlainDeclarations(OutputList &ol,
...
@@ -409,7 +410,7 @@ void MemberList::writePlainDeclarations(OutputList &ol,
for
(
;
(
md
=
mli
.
current
())
;
++
mli
)
for
(
;
(
md
=
mli
.
current
())
;
++
mli
)
{
{
if
(
if
(
(
md
->
isFunction
()
||
md
->
isSignal
()
||
md
->
isSlot
())
&&
(
md
->
isFunction
()
||
md
->
isSignal
()
||
md
->
isSlot
()
||
md
->
isDCOP
()
)
&&
(
!
md
->
isRelated
()
||
md
->
getClassDef
()
)
&&
(
!
md
->
isRelated
()
||
md
->
getClassDef
()
)
&&
inGroup
==
md
->
visibleMemberGroup
(
sectionPerType
)
inGroup
==
md
->
visibleMemberGroup
(
sectionPerType
)
)
)
...
...
src/rtfgen.cpp
View file @
b91275de
...
@@ -326,19 +326,19 @@ static const struct
...
@@ -326,19 +326,19 @@ static const struct
{
"ListEnum4"
,
{
"ListEnum4"
,
"
\\
s94
\\
fi-360
\\
li1800
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s94
\\
fi-360
\\
li1800
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
"ListEnum
4
"
,
{
"ListEnum
5
"
,
"
\\
s95
\\
fi-360
\\
li2160
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s95
\\
fi-360
\\
li2160
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
"ListEnum
5
"
,
{
"ListEnum
6
"
,
"
\\
s96
\\
fi-360
\\
li2520
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s96
\\
fi-360
\\
li2520
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
"ListEnum
6
"
,
{
"ListEnum
7
"
,
"
\\
s97
\\
fi-360
\\
li2880
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s97
\\
fi-360
\\
li2880
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
"ListEnum
7
"
,
{
"ListEnum
8
"
,
"
\\
s98
\\
fi-360
\\
li3240
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s98
\\
fi-360
\\
li3240
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
"ListEnum
8
"
,
{
"ListEnum
9
"
,
"
\\
s99
\\
fi-360
\\
li3600
\\
widctlpar
\\
fs20
\\
cgrid "
"
\\
s99
\\
fi-360
\\
li3600
\\
widctlpar
\\
fs20
\\
cgrid "
},
},
{
0
,
{
0
,
...
...
src/scanner.l
View file @
b91275de
...
@@ -100,8 +100,7 @@ static int yyLineNr = 1 ;
...
@@ -100,8 +100,7 @@ static int yyLineNr = 1 ;
static int anonCount = 0 ;
static int anonCount = 0 ;
static char yyFileName[4096] ;
static char yyFileName[4096] ;
static int lastMemberGroupLine;
static int lastMemberGroupLine;
static bool sig;
static MethodTypes mtype;
static bool slot;
static bool gstat;
static bool gstat;
static bool removeSlashes;
static bool removeSlashes;
static Specifier virt;
static Specifier virt;
...
@@ -119,6 +118,7 @@ static SectionInfo::SectionType
...
@@ -119,6 +118,7 @@ static SectionInfo::SectionType
sectionType;
sectionType;
static QCString funcPtrType;
static QCString funcPtrType;
static QCString templateStr;
static QCString templateStr;
static QCString aliasName;
static QCString baseName;
static QCString baseName;
static QCString* specName;
static QCString* specName;
static QCString formulaText;
static QCString formulaText;
...
@@ -157,8 +157,7 @@ static void initParser()
...
@@ -157,8 +157,7 @@ static void initParser()
curlyCount = 0;
curlyCount = 0;
ifCount = 0;
ifCount = 0;
memberGroupId = NOGROUP;
memberGroupId = NOGROUP;
sig = FALSE;
mtype = Method;
slot = FALSE;
gstat = FALSE;
gstat = FALSE;
virt = Normal;
virt = Normal;
baseVirt = Normal;
baseVirt = Normal;
...
@@ -442,6 +441,8 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -442,6 +441,8 @@ TITLE [tT][iI][tT][lL][eE]
%x CopyRound
%x CopyRound
%x CopyCurly
%x CopyCurly
%x IDLUnionCase
%x IDLUnionCase
%x NSAliasName
%x NSAliasArg
%%
%%
...
@@ -512,8 +513,16 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -512,8 +513,16 @@ TITLE [tT][iI][tT][lL][eE]
unput(*yytext);
unput(*yytext);
BEGIN( FindMembers ) ;
BEGIN( FindMembers ) ;
}
}
<FindMembers>{B}*"signals"{BN}*":"{BN}* { current->sig = sig = TRUE;
<FindMembers>{B}*"k_dcop"{BN}*":"{BN}* { current->mtype = mtype = DCOP;
current->slot = slot = FALSE;
current->protection = protection = Public ;
current->type.resize(0);
current->name.resize(0);
current->args.resize(0);
current->argList->clear();
lineCount() ;
}
<FindMembers>{B}*"signals"{BN}*":"{BN}* { current->mtype = mtype = Signal;
current->protection = protection = Public ;
current->protection = protection = Public ;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
...
@@ -524,8 +533,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -524,8 +533,7 @@ TITLE [tT][iI][tT][lL][eE]
<FindMembers>{B}*"public"{BN}*"slots"{BN}*":"{BN}* {
<FindMembers>{B}*"public"{BN}*"slots"{BN}*":"{BN}* {
current->protection = protection = Public ;
current->protection = protection = Public ;
current->slot = slot = TRUE;
current->mtype = mtype = Slot;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -535,8 +543,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -535,8 +543,7 @@ TITLE [tT][iI][tT][lL][eE]
<FindMembers>{B}*"protected"{BN}*"slots"{BN}*":"{BN}* {
<FindMembers>{B}*"protected"{BN}*"slots"{BN}*":"{BN}* {
current->protection = protection = Protected ;
current->protection = protection = Protected ;
current->slot = slot = TRUE;
current->mtype = mtype = Slot;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -546,8 +553,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -546,8 +553,7 @@ TITLE [tT][iI][tT][lL][eE]
<FindMembers>{B}*"private"{BN}*"slots"{BN}*":"{BN}* {
<FindMembers>{B}*"private"{BN}*"slots"{BN}*":"{BN}* {
current->protection = protection = Private ;
current->protection = protection = Private ;
current->slot = slot = TRUE;
current->mtype = mtype = Slot;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -558,8 +564,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -558,8 +564,7 @@ TITLE [tT][iI][tT][lL][eE]
<FindMembers>{B}*"methods"{B}":" { /* M$-IDL only: ignored */ }
<FindMembers>{B}*"methods"{B}":" { /* M$-IDL only: ignored */ }
<FindMembers>{B}*"public"{BN}*":"{BN}* {
<FindMembers>{B}*"public"{BN}*":"{BN}* {
current->protection = protection = Public ;
current->protection = protection = Public ;
current->slot = slot = FALSE;
current->mtype = mtype = Method;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -568,8 +573,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -568,8 +573,7 @@ TITLE [tT][iI][tT][lL][eE]
}
}
<FindMembers>{B}*"protected"{BN}*":"{BN}* {
<FindMembers>{B}*"protected"{BN}*":"{BN}* {
current->protection = protection = Protected ;
current->protection = protection = Protected ;
current->slot = slot = FALSE;
current->mtype = mtype = Method;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -578,8 +582,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -578,8 +582,7 @@ TITLE [tT][iI][tT][lL][eE]
}
}
<FindMembers>{B}*"private"{BN}*":"{BN}* {
<FindMembers>{B}*"private"{BN}*":"{BN}* {
current->protection = protection = Private ;
current->protection = protection = Private ;
current->slot = slot = FALSE;
current->mtype = mtype = Method;
current->sig = sig = FALSE;
current->type.resize(0);
current->type.resize(0);
current->name.resize(0);
current->name.resize(0);
current->args.resize(0);
current->args.resize(0);
...
@@ -766,6 +769,20 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -766,6 +769,20 @@ TITLE [tT][iI][tT][lL][eE]
//printf("Start template list\n");
//printf("Start template list\n");
BEGIN( ReadTempArgs );
BEGIN( ReadTempArgs );
}
}
<FindMembers>"namespace"{BN}+/{ID}{BN}*"=" { // namespace alias
lineCount();
BEGIN( NSAliasName );
}
<NSAliasName>{ID} {
aliasName = yytext;
BEGIN( NSAliasArg );
}
<NSAliasArg>({ID}"::")*{ID} {
namespaceAliasDict.insert(aliasName,new QCString(yytext));
}
<NSAliasArg>";" {
BEGIN( FindMembers );
}
<FindMembers>"using"{BN}+ {
<FindMembers>"using"{BN}+ {
current->startLine=yyLineNr;
current->startLine=yyLineNr;
lineCount();
lineCount();
...
@@ -780,10 +797,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -780,10 +797,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->
sig = sig
;
current->
mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN(Using);
BEGIN(Using);
}
}
...
@@ -794,10 +810,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -794,10 +810,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->
sig = sig
;
current->
mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN(Using);
BEGIN(Using);
}
}
...
@@ -958,10 +973,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -958,10 +973,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->
sig = sig
;
current->
mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN(FindMembers);
BEGIN(FindMembers);
}
}
...
@@ -1258,8 +1272,7 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1258,8 +1272,7 @@ TITLE [tT][iI][tT][lL][eE]
// variable found
// variable found
current->section = Entry::EMPTY_SEC ;
current->section = Entry::EMPTY_SEC ;
current->protection = protection;
current->protection = protection;
current->slot = slot = FALSE;
current->mtype = Method;
current->sig = sig = FALSE;
current->virt = Normal;
current->virt = Normal;
current->stat = gstat;
current->stat = gstat;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
...
@@ -1355,10 +1368,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1355,10 +1368,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->parent->addSubEntry(current);
current_root->parent->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
}
}
else // probably a redundant ,
else // probably a redundant ,
...
@@ -1429,10 +1441,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1429,10 +1441,9 @@ TITLE [tT][iI][tT][lL][eE]
{ // namespaces and interfaces ends with a closing bracket without semicolon
{ // namespaces and interfaces ends with a closing bracket without semicolon
current->reset();
current->reset();
current->protection = protection ;
current->protection = protection ;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN( FindMembers ) ;
BEGIN( FindMembers ) ;
}
}
...
@@ -1457,10 +1468,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1457,10 +1468,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry( current ) ;
current_root->addSubEntry( current ) ;
current = new Entry;
current = new Entry;
current->protection = protection ;
current->protection = protection ;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN(MemberSpecSkip);
BEGIN(MemberSpecSkip);
}
}
...
@@ -1509,10 +1519,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1509,10 +1519,9 @@ TITLE [tT][iI][tT][lL][eE]
{
{
Entry *varEntry=new Entry;
Entry *varEntry=new Entry;
varEntry->protection = current->protection ;
varEntry->protection = current->protection ;
varEntry->sig = current->sig
;
varEntry->mtype = current->mtype
;
varEntry->virt = current->virt;
varEntry->virt = current->virt;
varEntry->stat = current->stat;
varEntry->stat = current->stat;
varEntry->slot = current->slot;
varEntry->section = Entry::VARIABLE_SEC;
varEntry->section = Entry::VARIABLE_SEC;
varEntry->name = msName.stripWhiteSpace();
varEntry->name = msName.stripWhiteSpace();
varEntry->type = current->type.simplifyWhiteSpace()+" ";
varEntry->type = current->type.simplifyWhiteSpace()+" ";
...
@@ -1548,10 +1557,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1548,10 +1557,9 @@ TITLE [tT][iI][tT][lL][eE]
isTypedef=FALSE;
isTypedef=FALSE;
current->reset();
current->reset();
current->protection = protection ;
current->protection = protection ;
current->
sig = sig
;
current->
mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN( FindMembers );
BEGIN( FindMembers );
}
}
...
@@ -1962,10 +1970,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -1962,10 +1970,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection;
current->protection = protection;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
lastCurlyContext = FindMembers;
lastCurlyContext = FindMembers;
if( *yytext == '{' )
if( *yytext == '{' )
...
@@ -2564,6 +2571,12 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -2564,6 +2571,12 @@ TITLE [tT][iI][tT][lL][eE]
}
}
<SkipHtmlComment>"--"[!]?">" { BEGIN(lastSkipHtmlCommentContext); }
<SkipHtmlComment>"--"[!]?">" { BEGIN(lastSkipHtmlCommentContext); }
<SkipHtmlComment>.
<SkipHtmlComment>.
<AfterDoc,Doc,ClassDoc,PageDoc>("\\\\"|"@@")("todo"|"test")/[^a-z_A-Z0-9] {
current->doc+=yytext;
}
<AfterDocLine,LineDoc,JavaDoc>("\\\\"|"@@")("todo"|"test")/[^a-z_A-Z0-9] {
current->brief+=yytext;
}
<AfterDoc,AfterDocLine,LineDoc,Doc,JavaDoc,ClassDoc,PageDoc>{CMD}"todo"/[^a-z_A-Z0-9] {
<AfterDoc,AfterDocLine,LineDoc,Doc,JavaDoc,ClassDoc,PageDoc>{CMD}"todo"/[^a-z_A-Z0-9] {
todoStartContext = YY_START;
todoStartContext = YY_START;
lastBriefContext = TodoParam; // this is where we will continue at the end of the argument
lastBriefContext = TodoParam; // this is where we will continue at the end of the argument
...
@@ -3019,10 +3032,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -3019,10 +3032,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN( FindMembers );
BEGIN( FindMembers );
}
}
...
@@ -3300,10 +3312,9 @@ TITLE [tT][iI][tT][lL][eE]
...
@@ -3300,10 +3312,9 @@ TITLE [tT][iI][tT][lL][eE]
current_root->addSubEntry(current);
current_root->addSubEntry(current);
current = new Entry ;
current = new Entry ;
current->protection = protection ;
current->protection = protection ;
current->sig = sig
;
current->mtype = mtype
;
current->virt = virt;
current->virt = virt;
current->stat = gstat;
current->stat = gstat;
current->slot = slot;
current->mGrpId = memberGroupId;
current->mGrpId = memberGroupId;
BEGIN( FindMembers );
BEGIN( FindMembers );
}
}
...
@@ -3399,8 +3410,7 @@ static void parseCompounds(Entry *rt)
...
@@ -3399,8 +3410,7 @@ static void parseCompounds(Entry *rt)
current->protection = protection = ce->protection;
current->protection = protection = ce->protection;
else // named struct, union, or interface
else // named struct, union, or interface
current->protection = protection = Public ;
current->protection = protection = Public ;
sig = FALSE;
mtype = Method;
slot = FALSE;
gstat = FALSE;
gstat = FALSE;
virt = Normal;
virt = Normal;
current->mGrpId = memberGroupId = ce->mGrpId;
current->mGrpId = memberGroupId = ce->mGrpId;
...
@@ -3419,8 +3429,7 @@ void parseMain(Entry *rt)
...
@@ -3419,8 +3429,7 @@ void parseMain(Entry *rt)
initParser();
initParser();
anonCount = 0;
anonCount = 0;
protection = Public;
protection = Public;
sig = FALSE;
mtype = Method;
slot = FALSE;
gstat = FALSE;
gstat = FALSE;
virt = Normal;
virt = Normal;
current_root = rt;
current_root = rt;
...
...
src/translator.h
View file @
b91275de
...
@@ -24,6 +24,89 @@
...
@@ -24,6 +24,89 @@
class
Translator
class
Translator
{
{
protected
:
/*! Returns the string converted from windows-1250 to iso-8859-2. */
/* The method was designed initially for translator_cz.h.
It is used for on-line encoding conversion related to conditional
compilation in Unix/MS Windows environments (both use different
encoding). Later, the translator_hr.h (by Boris Bralo) used and
improved the same style. As the method with the translation table
was the same, the decision to move it to this base class was made.
The same holds for ISO88592ToWin1250() method. It is recommended
for possibly other similar methods in future.
*/
QCString
Win1250ToISO88592
(
const
QCString
&
sInput
)
{
// The conversion table for characters >127
//
static
const
char
WinToISOTab
[]
=
{
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
'\x88'
,
'\x89'
,
'\xA9'
,
'\x8B'
,
'\xA6'
,
'\xAB'
,
'\xAE'
,
'\xAC'
,
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x2E'
,
'\x96'
,
'\x97'
,
'\x98'
,
'\x99'
,
'\xB9'
,
'\x9B'
,
'\xB6'
,
'\xBB'
,
'\xBE'
,
'\xBC'
,
'\xA0'
,
'\x20'
,
'\x20'
,
'\xA3'
,
'\xA4'
,
'\xA1'
,
'\xA6'
,
'\xA7'
,
'\x22'
,
'\xA9'
,
'\xAA'
,
'\x3C'
,
'\xAC'
,
'\x2D'
,
'\xAE'
,
'\xAF'
,
'\x2E'
,
'\x2B'
,
'\x20'
,
'\xB3'
,
'\x27'
,
'\x75'
,
'\xB6'
,
'\xB7'
,
'\x20'
,
'\xB1'
,
'\xBA'
,
'\x3E'
,
'\xA5'
,
'\x22'
,
'\xB5'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\x2D'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
WinToISOTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
/*! returns the string converted from iso-8859-2 to windows-1250 */
/* See the comments of the Win1250ToISO88592() method for details. */
QCString
ISO88592ToWin1250
(
const
QCString
&
sInput
)
{
// The conversion table for characters >127
//
static
const
char
ISOToWinTab
[]
=
{
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
'\x88'
,
'\x89'
,
'\x8A'
,
'\x8B'
,
'\x8C'
,
'\x8D'
,
'\x8E'
,
'\x8F'
,
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x95'
,
'\x96'
,
'\x97'
,
'\x98'
,
'\x99'
,
'\x9A'
,
'\x9B'
,
'\x9C'
,
'\x9D'
,
'\x9E'
,
'\x9F'
,
'\xA0'
,
'\xA5'
,
'\xA2'
,
'\xA3'
,
'\xA4'
,
'\xBC'
,
'\x8C'
,
'\xA7'
,
'\xA8'
,
'\x8A'
,
'\xAA'
,
'\x8D'
,
'\x8F'
,
'\xAD'
,
'\x8E'
,
'\xAF'
,
'\xB0'
,
'\xB9'
,
'\xB2'
,
'\xB3'
,
'\xB4'
,
'\xBE'
,
'\x9C'
,
'\xB7'
,
'\xB8'
,
'\x9A'
,
'\xBA'
,
'\x9D'
,
'\x9F'
,
'\xBD'
,
'\x9E'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\xF7'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
ISOToWinTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
public
:
public
:
// --- Language contol methods -------------------
// --- Language contol methods -------------------
...
@@ -993,6 +1076,16 @@ class Translator
...
@@ -993,6 +1076,16 @@ class Translator
return
"Test List"
;
return
"Test List"
;
}
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.1
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for KDE-2 IDL methods */
virtual
QCString
trDCOPMethods
()
{
return
"DCOP Methods"
;
}
};
};
#endif
#endif
src/translator_cz.h
View file @
b91275de
...
@@ -48,105 +48,48 @@
...
@@ -48,105 +48,48 @@
// 2000/08/02 (Petr Prikryl)
// 2000/08/02 (Petr Prikryl)
// - Updated for 1.2.0
// - Updated for 1.2.0
//
//
// 2000/08/24 (Petr Prikryl)
// - Changed trTodo() text from "Udelat" to "Planovane upravy"
// which seems more appropriate in the document context.
// - Typo corrected in trMemberTypedefDocumentation().
//
// 2000/08/30 (Petr Prikryl)
// - Macro DECODE replaced by the inline Decode() (proposed by
// Boris Bralo <boris.bralo@zg.tel.hr> in translator_hr.h).
//
// 2000/08/31 (Petr Prikryl)
// - Methods ISOToWin() and WinToISO() renamed and moved to the
// base class (in translator.h) to be shared with the Croatian
// translator.
//
// 2000/09/06 (Petr Prikryl)
// - Reimplementation of the method trInheritsList() which takes
// into account quantity of base classes.
//
// Notices:
// Notices:
// --------
// --------
// The conditional compilation ensures or the neutral functionality
// The conditional compilation ensures or the neutral functionality
// of the macro DECODE, or calling the WinToISO() method for
// of the private inline Decode(), or calling the WinToISO() method
// on-line encoding conversion. If you want to maintain the source
// for on-line encoding conversion. If you want to maintain the
// in the iso-8859-2, do convert the source, change the conditional
// source in the iso-8859-2, do convert the source encoding, change
// definition of the DECODE macro using the method ISOToWin() --
// the conditional definition of the inline Decode() using the
// for conversion of strings for the Windows version. The version
// method ISO88592ToWin1250() -- for conversion of strings for the
// which does not call the function is slightly faster.
// Windows version. The version which does not call the function is
//
// probably slightly faster (if the inline is well optimized).
// Only one of the private method WinToISO() and ISOToWin() is
// necessary depending on whether this source is maintained in
// windows-1250 or iso-8859-2 encoding. However, there is not a
// big loose of space when both methods with the conversion tables
// are supported. The other (not used now) may be handy in future.
// Do not erase it.
// Here the DECODE macro assumes the source written in Windows encoding.
//
#ifdef _WIN32
#define DECODE(sInput) sInput
#else
#define DECODE(sInput) WinToISO(sInput)
#endif
class
TranslatorCzech
:
public
Translator
class
TranslatorCzech
:
public
Translator
{
{
private
:
private
:
/*! returns the string converted from windows-1250 to iso-8859-2 */
/*! The Decode() inline assumes the source written in the
QCString
WinToISO
(
const
QCString
sInput
)
Windows encoding (maintainer dependent).
{
*/
// The conversion table for characters >127
inline
QCString
Decode
(
const
QCString
&
sInput
)
//
{
static
const
char
WinToISOTab
[]
=
{
#ifdef _WIN32
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
return
sInput
;
'\x88'
,
'\x89'
,
'\xA9'
,
'\x8B'
,
'\xA6'
,
'\xAB'
,
'\xAE'
,
'\xAC'
,
#else
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x2E'
,
'\x96'
,
'\x97'
,
return
Win1250ToISO88592
(
sInput
);
'\x98'
,
'\x99'
,
'\xB9'
,
'\x9B'
,
'\xB6'
,
'\xBB'
,
'\xBE'
,
'\xBC'
,
#endif
'\xA0'
,
'\x20'
,
'\x20'
,
'\xA3'
,
'\xA4'
,
'\xA1'
,
'\xA6'
,
'\xA7'
,
'\x22'
,
'\xA9'
,
'\xAA'
,
'\x3C'
,
'\xAC'
,
'\x2D'
,
'\xAE'
,
'\xAF'
,
'\x2E'
,
'\x2B'
,
'\x20'
,
'\xB3'
,
'\x27'
,
'\x75'
,
'\xB6'
,
'\xB7'
,
'\x20'
,
'\xB1'
,
'\xBA'
,
'\x3E'
,
'\xA5'
,
'\x22'
,
'\xB5'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\x2D'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
WinToISOTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
/*! returns the string converted from iso-8859-2 to windows-1250 */
QCString
ISOToWin
(
const
QCString
sInput
)
{
// The conversion table for characters >127
//
static
const
char
ISOToWinTab
[]
=
{
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
'\x88'
,
'\x89'
,
'\x8A'
,
'\x8B'
,
'\x8C'
,
'\x8D'
,
'\x8E'
,
'\x8F'
,
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x95'
,
'\x96'
,
'\x97'
,
'\x98'
,
'\x99'
,
'\x9A'
,
'\x9B'
,
'\x9C'
,
'\x9D'
,
'\x9E'
,
'\x9F'
,
'\xA0'
,
'\xA5'
,
'\xA2'
,
'\xA3'
,
'\xA4'
,
'\xBC'
,
'\x8C'
,
'\xA7'
,
'\xA8'
,
'\x8A'
,
'\xAA'
,
'\x8D'
,
'\x8F'
,
'\xAD'
,
'\x8E'
,
'\xAF'
,
'\xB0'
,
'\xB9'
,
'\xB2'
,
'\xB3'
,
'\xB4'
,
'\xBE'
,
'\x9C'
,
'\xB7'
,
'\xB8'
,
'\x9A'
,
'\xBA'
,
'\x9D'
,
'\x9F'
,
'\xBD'
,
'\x9E'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\xF7'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
ISOToWinTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
}
public
:
public
:
...
@@ -176,51 +119,51 @@ class TranslatorCzech : public Translator
...
@@ -176,51 +119,51 @@ class TranslatorCzech : public Translator
/*! used in the compound documentation before a list of related functions. */
/*! used in the compound documentation before a list of related functions. */
virtual
QCString
trRelatedFunctions
()
virtual
QCString
trRelatedFunctions
()
{
return
D
ECODE
(
"Související funkce"
);
}
{
return
D
ecode
(
"Související funkce"
);
}
/*! subscript for the related functions. */
/*! subscript for the related functions. */
virtual
QCString
trRelatedSubscript
()
virtual
QCString
trRelatedSubscript
()
{
return
D
ECODE
(
"(Uvedené funkce nejsou èlenskými funkcemi.)"
);
}
{
return
D
ecode
(
"(Uvedené funkce nejsou èlenskými funkcemi.)"
);
}
/*! header that is put before the detailed description of files, classes and namespaces. */
/*! header that is put before the detailed description of files, classes and namespaces. */
virtual
QCString
trDetailedDescription
()
virtual
QCString
trDetailedDescription
()
{
return
D
ECODE
(
"Detailní popis"
);
}
{
return
D
ecode
(
"Detailní popis"
);
}
/*! header that is put before the list of typedefs. */
/*! header that is put before the list of typedefs. */
virtual
QCString
trMemberTypedefDocumentation
()
virtual
QCString
trMemberTypedefDocumentation
()
{
return
D
ECODE
(
"Dokumentace k èlenských
typùm"
);
}
{
return
D
ecode
(
"Dokumentace k èlenským
typùm"
);
}
/*! header that is put before the list of enumerations. */
/*! header that is put before the list of enumerations. */
virtual
QCString
trMemberEnumerationDocumentation
()
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
D
ECODE
(
"Dokumentace k èlenským výètùm"
);
}
{
return
D
ecode
(
"Dokumentace k èlenským výètùm"
);
}
/*! header that is put before the list of member functions. */
/*! header that is put before the list of member functions. */
virtual
QCString
trMemberFunctionDocumentation
()
virtual
QCString
trMemberFunctionDocumentation
()
{
return
D
ECODE
(
"Dokumentace k metodám"
);
}
{
return
D
ecode
(
"Dokumentace k metodám"
);
}
/*! header that is put before the list of member attributes. */
/*! header that is put before the list of member attributes. */
virtual
QCString
trMemberDataDocumentation
()
virtual
QCString
trMemberDataDocumentation
()
{
return
D
ECODE
(
"Dokumentace k datovým èlenùm"
);
}
{
return
D
ecode
(
"Dokumentace k datovým èlenùm"
);
}
/*! this is the text of a link put after brief descriptions. */
/*! this is the text of a link put after brief descriptions. */
virtual
QCString
trMore
()
virtual
QCString
trMore
()
{
return
D
ECODE
(
"(...)"
);
}
{
return
D
ecode
(
"(...)"
);
}
/*! put in the class documentation */
/*! put in the class documentation */
virtual
QCString
trListOfAllMembers
()
virtual
QCString
trListOfAllMembers
()
{
return
D
ECODE
(
"Seznam vech èlenù."
);
}
{
return
D
ecode
(
"Seznam všech èlenù."
);
}
/*! used as the title of the "list of all members" page of a class */
/*! used as the title of the "list of all members" page of a class */
virtual
QCString
trMemberList
()
virtual
QCString
trMemberList
()
{
return
D
ECODE
(
"Seznam èlenù tøídy"
);
}
{
return
D
ecode
(
"Seznam èlenù tøídy"
);
}
/*! this is the first part of a sentence that is followed by a class name */
/*! this is the first part of a sentence that is followed by a class name */
virtual
QCString
trThisIsTheListOfAllMembers
()
virtual
QCString
trThisIsTheListOfAllMembers
()
{
return
D
ECODE
(
"Zde naleznete úplný seznam èlenù tøídy "
);
}
{
return
D
ecode
(
"Zde naleznete úplný seznam èlenù tøídy "
);
}
/*! this is the remainder of the sentence after the class name */
/*! this is the remainder of the sentence after the class name */
virtual
QCString
trIncludingInheritedMembers
()
virtual
QCString
trIncludingInheritedMembers
()
{
return
D
ECODE
(
", vèetnì vech zdìdìných èlenù."
);
}
{
return
D
ecode
(
", vèetnì všech zdìdìných èlenù."
);
}
/*! this is put at the author sections at the bottom of man pages.
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
* parameter s is name of the project name.
...
@@ -230,26 +173,26 @@ class TranslatorCzech : public Translator
...
@@ -230,26 +173,26 @@ class TranslatorCzech : public Translator
"ze zdrojových textù"
;
"ze zdrojových textù"
;
if
(
s
)
result
+=
(
QCString
)
" projektu "
+
s
;
if
(
s
)
result
+=
(
QCString
)
" projektu "
+
s
;
result
+=
"."
;
result
+=
"."
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! put after an enum name in the list of all members */
/*! put after an enum name in the list of all members */
virtual
QCString
trEnumName
()
virtual
QCString
trEnumName
()
{
return
D
ECODE
(
"jméno výètu"
);
}
{
return
D
ecode
(
"jméno výètu"
);
}
/*! put after an enum value in the list of all members */
/*! put after an enum value in the list of all members */
virtual
QCString
trEnumValue
()
virtual
QCString
trEnumValue
()
{
return
D
ECODE
(
"hodnota výètu"
);
}
{
return
D
ecode
(
"hodnota výètu"
);
}
/*! put after an undocumented member in the list of all members */
/*! put after an undocumented member in the list of all members */
virtual
QCString
trDefinedIn
()
virtual
QCString
trDefinedIn
()
{
return
D
ECODE
(
"definován v"
);
}
{
return
D
ecode
(
"definován v"
);
}
/*! put as in introduction in the verbatim header file of a class.
/*! put as in introduction in the verbatim header file of a class.
* parameter f is the name of the include file.
* parameter f is the name of the include file.
*/
*/
virtual
QCString
trVerbatimText
(
const
char
*
f
)
virtual
QCString
trVerbatimText
(
const
char
*
f
)
{
return
D
ECODE
((
QCString
)
"Úplný text vkládaného souboru "
+
f
+
"."
);
}
{
return
D
ecode
((
QCString
)
"Úplný text vkládaného souboru "
+
f
+
"."
);
}
// quick reference sections
// quick reference sections
...
@@ -257,47 +200,47 @@ class TranslatorCzech : public Translator
...
@@ -257,47 +200,47 @@ class TranslatorCzech : public Translator
* compounds or files (see the \group command).
* compounds or files (see the \group command).
*/
*/
virtual
QCString
trModules
()
virtual
QCString
trModules
()
{
return
D
ECODE
(
"Moduly"
);
}
{
return
D
ecode
(
"Moduly"
);
}
/*! This is put above each page as a link to the class hierarchy */
/*! This is put above each page as a link to the class hierarchy */
virtual
QCString
trClassHierarchy
()
virtual
QCString
trClassHierarchy
()
{
return
D
ECODE
(
"Hierarchie tøíd"
);
}
{
return
D
ecode
(
"Hierarchie tøíd"
);
}
/*! This is put above each page as a link to the list of annotated classes */
/*! This is put above each page as a link to the list of annotated classes */
virtual
QCString
trCompoundList
()
virtual
QCString
trCompoundList
()
{
return
D
ECODE
(
"Seznam tøíd"
);
}
{
return
D
ecode
(
"Seznam tøíd"
);
}
/*! This is put above each page as a link to the list of documented files */
/*! This is put above each page as a link to the list of documented files */
virtual
QCString
trFileList
()
virtual
QCString
trFileList
()
{
return
D
ECODE
(
"Seznam souborù"
);
}
{
return
D
ecode
(
"Seznam souborù"
);
}
/*! This is put above each page as a link to the list of all verbatim headers */
/*! This is put above each page as a link to the list of all verbatim headers */
virtual
QCString
trHeaderFiles
()
virtual
QCString
trHeaderFiles
()
{
return
D
ECODE
(
"Seznam hlavièkových souborù"
);
}
{
return
D
ecode
(
"Seznam hlavièkových souborù"
);
}
/*! This is put above each page as a link to all members of compounds. */
/*! This is put above each page as a link to all members of compounds. */
virtual
QCString
trCompoundMembers
()
virtual
QCString
trCompoundMembers
()
{
return
D
ECODE
(
"Seznam èlenù tøíd"
);
}
{
return
D
ecode
(
"Seznam èlenù tøíd"
);
}
/*! This is put above each page as a link to all members of files. */
/*! This is put above each page as a link to all members of files. */
virtual
QCString
trFileMembers
()
virtual
QCString
trFileMembers
()
{
return
D
ECODE
(
"Symboly v souborech"
);
}
{
return
D
ecode
(
"Symboly v souborech"
);
}
/*! This is put above each page as a link to all related pages. */
/*! This is put above each page as a link to all related pages. */
virtual
QCString
trRelatedPages
()
virtual
QCString
trRelatedPages
()
{
return
D
ECODE
(
"Související stránky"
);
}
{
return
D
ecode
(
"Související stránky"
);
}
/*! This is put above each page as a link to all examples. */
/*! This is put above each page as a link to all examples. */
virtual
QCString
trExamples
()
virtual
QCString
trExamples
()
{
return
D
ECODE
(
"Pøíklady"
);
}
{
return
D
ecode
(
"Pøíklady"
);
}
/*! This is put above each page as a link to the search engine. */
/*! This is put above each page as a link to the search engine. */
virtual
QCString
trSearch
()
virtual
QCString
trSearch
()
{
return
D
ECODE
(
"Hledat"
);
}
{
return
D
ecode
(
"Hledat"
);
}
/*! This is an introduction to the class hierarchy. */
/*! This is an introduction to the class hierarchy. */
virtual
QCString
trClassHierarchyDescription
()
virtual
QCString
trClassHierarchyDescription
()
{
return
D
ECODE
(
"Zde naleznete seznam, vyjadøující vztah dìdiènosti tøíd. "
{
return
D
ecode
(
"Zde naleznete seznam, vyjadøující vztah dìdiènosti tøíd. "
"Je seøazen pøibližnì (ale ne úplnì) podle abecedy:"
);
"Je seøazen pøibližnì (ale ne úplnì) podle abecedy:"
);
}
}
...
@@ -307,12 +250,12 @@ class TranslatorCzech : public Translator
...
@@ -307,12 +250,12 @@ class TranslatorCzech : public Translator
QCString
result
=
"Zde naleznete seznam všech "
;
QCString
result
=
"Zde naleznete seznam všech "
;
if
(
!
extractAll
)
result
+=
"dokumentovaných "
;
if
(
!
extractAll
)
result
+=
"dokumentovaných "
;
result
+=
"souborù se struènými popisy:"
;
result
+=
"souborù se struènými popisy:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is an introduction to the annotated compound list. */
/*! This is an introduction to the annotated compound list. */
virtual
QCString
trCompoundListDescription
()
virtual
QCString
trCompoundListDescription
()
{
return
D
ECODE
(
"Následující seznam obsahuje pøedevím identifikace tøíd, "
{
return
D
ecode
(
"Následující seznam obsahuje pøedevším identifikace tøíd, "
"ale nachází se zde i další netriviální prvky, jako jsou "
"ale nachází se zde i další netriviální prvky, jako jsou "
"struktury (struct), unie (union) a rozhraní (interface). "
"struktury (struct), unie (union) a rozhraní (interface). "
"V seznamu jsou uvedeny jejich struèné popisy:"
);
"V seznamu jsou uvedeny jejich struèné popisy:"
);
...
@@ -328,7 +271,7 @@ class TranslatorCzech : public Translator
...
@@ -328,7 +271,7 @@ class TranslatorCzech : public Translator
result
+=
"dokumentaci tøíd, ke kterým pøíslušejí:"
;
result
+=
"dokumentaci tøíd, ke kterým pøíslušejí:"
;
else
else
result
+=
"tøídy, ke kterým pøíslušejí:"
;
result
+=
"tøídy, ke kterým pøíslušejí:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is an introduction to the page with all file members. */
/*! This is an introduction to the page with all file members. */
...
@@ -349,197 +292,197 @@ class TranslatorCzech : public Translator
...
@@ -349,197 +292,197 @@ class TranslatorCzech : public Translator
"Symbol mùže oznaèovat makro, typ, instanci tøídy, "
"Symbol mùže oznaèovat makro, typ, instanci tøídy, "
"promìnnou, konstantu, funkci, výèet, hodnotu výètu a podobnì:"
;
"promìnnou, konstantu, funkci, výèet, hodnotu výètu a podobnì:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is an introduction to the page with the list of all header files. */
/*! This is an introduction to the page with the list of all header files. */
virtual
QCString
trHeaderFilesDescription
()
virtual
QCString
trHeaderFilesDescription
()
{
return
D
ECODE
(
"Zde naleznete hlavièkové soubory, které tvoøí "
{
return
D
ecode
(
"Zde naleznete hlavièkové soubory, které tvoøí "
"aplikaèní programátorské rozhraní (API):"
);
}
"aplikaèní programátorské rozhraní (API):"
);
}
/*! This is an introduction to the page with the list of all examples */
/*! This is an introduction to the page with the list of all examples */
virtual
QCString
trExamplesDescription
()
virtual
QCString
trExamplesDescription
()
{
return
D
ECODE
(
"Zde naleznete seznam vech pøíkladù:"
);
}
{
return
D
ecode
(
"Zde naleznete seznam všech pøíkladù:"
);
}
/*! This is an introduction to the page with the list of related pages */
/*! This is an introduction to the page with the list of related pages */
virtual
QCString
trRelatedPagesDescription
()
virtual
QCString
trRelatedPagesDescription
()
{
return
D
ECODE
(
"Zde naleznete seznam vech souvisejících stránek "
{
return
D
ecode
(
"Zde naleznete seznam všech souvisejících stránek "
"dokumentace:"
);
}
"dokumentace:"
);
}
/*! This is an introduction to the page with the list of class/file groups */
/*! This is an introduction to the page with the list of class/file groups */
virtual
QCString
trModulesDescription
()
virtual
QCString
trModulesDescription
()
{
return
D
ECODE
(
"Zde naleznete seznam vech modulù:"
);
}
{
return
D
ecode
(
"Zde naleznete seznam všech modulù:"
);
}
/*! This sentences is used in the annotated class/file lists if no brief
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
* description is given.
*/
*/
virtual
QCString
trNoDescriptionAvailable
()
virtual
QCString
trNoDescriptionAvailable
()
{
return
D
ECODE
(
"Popis není k dispozici"
);
}
{
return
D
ecode
(
"Popis není k dispozici"
);
}
// index titles (the project name is prepended for these)
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
/*! This is used in HTML as the title of index.html. */
virtual
QCString
trDocumentation
()
virtual
QCString
trDocumentation
()
{
return
D
ECODE
(
"Dokumentace"
);
}
{
return
D
ecode
(
"Dokumentace"
);
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
* index of all groups.
*/
*/
virtual
QCString
trModuleIndex
()
virtual
QCString
trModuleIndex
()
{
return
D
ECODE
(
"Rejstøík modulù"
);
}
{
return
D
ecode
(
"Rejstøík modulù"
);
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
* class hierarchy.
*/
*/
virtual
QCString
trHierarchicalIndex
()
virtual
QCString
trHierarchicalIndex
()
{
return
D
ECODE
(
"Rejstøík hierarchie tøíd"
);
}
{
return
D
ecode
(
"Rejstøík hierarchie tøíd"
);
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
* annotated compound index.
*/
*/
virtual
QCString
trCompoundIndex
()
virtual
QCString
trCompoundIndex
()
{
return
D
ECODE
(
"Rejstøík tøíd"
);
}
{
return
D
ecode
(
"Rejstøík tøíd"
);
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
* list of all files.
*/
*/
virtual
QCString
trFileIndex
()
virtual
QCString
trFileIndex
()
{
return
D
ECODE
(
"Rejstøík souborù"
);
}
{
return
D
ecode
(
"Rejstøík souborù"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
* the documentation of all groups.
*/
*/
virtual
QCString
trModuleDocumentation
()
virtual
QCString
trModuleDocumentation
()
{
return
D
ECODE
(
"Dokumentace modulù"
);
}
{
return
D
ecode
(
"Dokumentace modulù"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all classes, structs and unions.
* the documentation of all classes, structs and unions.
*/
*/
virtual
QCString
trClassDocumentation
()
virtual
QCString
trClassDocumentation
()
{
return
D
ECODE
(
"Dokumentace tøíd"
);
}
{
return
D
ecode
(
"Dokumentace tøíd"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all files.
* the documentation of all files.
*/
*/
virtual
QCString
trFileDocumentation
()
virtual
QCString
trFileDocumentation
()
{
return
D
ECODE
(
"Dokumentace souborù"
);
}
{
return
D
ecode
(
"Dokumentace souborù"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
* the documentation of all examples.
*/
*/
virtual
QCString
trExampleDocumentation
()
virtual
QCString
trExampleDocumentation
()
{
return
D
ECODE
(
"Dokumentace pøíkladù"
);
}
{
return
D
ecode
(
"Dokumentace pøíkladù"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
* the documentation of all related pages.
*/
*/
virtual
QCString
trPageDocumentation
()
virtual
QCString
trPageDocumentation
()
{
return
D
ECODE
(
"Dokumentace souvisejících stránek"
);
}
{
return
D
ecode
(
"Dokumentace souvisejících stránek"
);
}
/*! This is used in LaTeX as the title of the document */
/*! This is used in LaTeX as the title of the document */
virtual
QCString
trReferenceManual
()
virtual
QCString
trReferenceManual
()
{
return
D
ECODE
(
"Referenèní pøíruèka"
);
}
{
return
D
ecode
(
"Referenèní pøíruèka"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of defines
* list of defines
*/
*/
virtual
QCString
trDefines
()
virtual
QCString
trDefines
()
{
return
D
ECODE
(
"Definice maker"
);
}
{
return
D
ecode
(
"Definice maker"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
* list of function prototypes
*/
*/
virtual
QCString
trFuncProtos
()
virtual
QCString
trFuncProtos
()
{
return
D
ECODE
(
"Prototypy"
);
}
{
return
D
ecode
(
"Prototypy"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of typedefs
* list of typedefs
*/
*/
virtual
QCString
trTypedefs
()
virtual
QCString
trTypedefs
()
{
return
D
ECODE
(
"Definice typù"
);
}
{
return
D
ecode
(
"Definice typù"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of enumerations
* list of enumerations
*/
*/
virtual
QCString
trEnumerations
()
virtual
QCString
trEnumerations
()
{
return
D
ECODE
(
"Výèty"
);
}
{
return
D
ecode
(
"Výèty"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
* list of (global) functions
*/
*/
virtual
QCString
trFunctions
()
virtual
QCString
trFunctions
()
{
return
D
ECODE
(
"Funkce"
);
}
{
return
D
ecode
(
"Funkce"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
* list of (global) variables
*/
*/
virtual
QCString
trVariables
()
virtual
QCString
trVariables
()
{
return
D
ECODE
(
"Promìnné"
);
}
{
return
D
ecode
(
"Promìnné"
);
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
* list of (global) variables
*/
*/
virtual
QCString
trEnumerationValues
()
virtual
QCString
trEnumerationValues
()
{
return
D
ECODE
(
"Hodnoty výètù"
);
}
{
return
D
ecode
(
"Hodnoty výètù"
);
}
/*! This is used in man pages as the author section. */
/*! This is used in man pages as the author section. */
virtual
QCString
trAuthor
()
virtual
QCString
trAuthor
()
{
return
D
ECODE
(
"Autor"
);
}
{
return
D
ecode
(
"Autor"
);
}
/*! This is used in the documentation of a file before the list of
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
* documentation blocks for defines
*/
*/
virtual
QCString
trDefineDocumentation
()
virtual
QCString
trDefineDocumentation
()
{
return
D
ECODE
(
"Dokumentace k definicím maker"
);
}
{
return
D
ecode
(
"Dokumentace k definicím maker"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
* of documentation blocks for function prototypes
*/
*/
virtual
QCString
trFunctionPrototypeDocumentation
()
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
D
ECODE
(
"Dokumentace prototypù"
);
}
{
return
D
ecode
(
"Dokumentace prototypù"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
* of documentation blocks for typedefs
*/
*/
virtual
QCString
trTypedefDocumentation
()
virtual
QCString
trTypedefDocumentation
()
{
return
D
ECODE
(
"Dokumentace definic typù"
);
}
{
return
D
ecode
(
"Dokumentace definic typù"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
* of documentation blocks for enumeration types
*/
*/
virtual
QCString
trEnumerationTypeDocumentation
()
virtual
QCString
trEnumerationTypeDocumentation
()
{
return
D
ECODE
(
"Dokumentace výètových typù"
);
}
{
return
D
ecode
(
"Dokumentace výètových typù"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
* of documentation blocks for enumeration values
*/
*/
virtual
QCString
trEnumerationValueDocumentation
()
virtual
QCString
trEnumerationValueDocumentation
()
{
return
D
ECODE
(
"Dokumentace výètových hodnot"
);
}
{
return
D
ecode
(
"Dokumentace výètových hodnot"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
* of documentation blocks for functions
*/
*/
virtual
QCString
trFunctionDocumentation
()
virtual
QCString
trFunctionDocumentation
()
{
return
D
ECODE
(
"Dokumentace funkcí"
);
}
{
return
D
ecode
(
"Dokumentace funkcí"
);
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
* of documentation blocks for variables
*/
*/
virtual
QCString
trVariableDocumentation
()
virtual
QCString
trVariableDocumentation
()
{
return
D
ECODE
(
"Dokumentace promìnných"
);
}
{
return
D
ecode
(
"Dokumentace promìnných"
);
}
/*! This is used in the documentation of a file/namespace/group before
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
* the list of links to documented compounds
*/
*/
virtual
QCString
trCompounds
()
virtual
QCString
trCompounds
()
{
return
D
ECODE
(
"Tøídy"
);
}
{
return
D
ecode
(
"Tøídy"
);
}
/*! This is used in the documentation of a group before the list of
/*! This is used in the documentation of a group before the list of
* links to documented files
* links to documented files
*/
*/
virtual
QCString
trFiles
()
virtual
QCString
trFiles
()
{
return
D
ECODE
(
"Soubory"
);
}
{
return
D
ecode
(
"Soubory"
);
}
/*! This is used in the standard footer of each page and indicates when
/*! This is used in the standard footer of each page and indicates when
* the page was generated
* the page was generated
...
@@ -549,75 +492,75 @@ class TranslatorCzech : public Translator
...
@@ -549,75 +492,75 @@ class TranslatorCzech : public Translator
QCString
result
=
(
QCString
)
"Generováno "
+
date
;
QCString
result
=
(
QCString
)
"Generováno "
+
date
;
if
(
projName
)
result
+=
(
QCString
)
" pro projekt "
+
projName
;
if
(
projName
)
result
+=
(
QCString
)
" pro projekt "
+
projName
;
result
+=
(
QCString
)
" programem"
;
result
+=
(
QCString
)
" programem"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is part of the sentence used in the standard footer of each page.
/*! This is part of the sentence used in the standard footer of each page.
*/
*/
virtual
QCString
trWrittenBy
()
virtual
QCString
trWrittenBy
()
{
{
return
D
ECODE
(
" -- autor "
);
return
D
ecode
(
" -- autor "
);
}
}
/*! this text is put before a class diagram */
/*! this text is put before a class diagram */
virtual
QCString
trClassDiagram
(
const
char
*
clName
)
virtual
QCString
trClassDiagram
(
const
char
*
clName
)
{
{
return
D
ECODE
((
QCString
)
"Diagram dìdiènosti pro tøídu "
+
clName
);
return
D
ecode
((
QCString
)
"Diagram dìdiènosti pro tøídu "
+
clName
);
}
}
/*! this text is generated when the \internal command is used. */
/*! this text is generated when the \internal command is used. */
virtual
QCString
trForInternalUseOnly
()
virtual
QCString
trForInternalUseOnly
()
{
return
D
ECODE
(
"Pouze pro vnitøní pouití."
);
}
{
return
D
ecode
(
"Pouze pro vnitøní použití."
);
}
/*! this text is generated when the \reimp command is used. */
/*! this text is generated when the \reimp command is used. */
virtual
QCString
trReimplementedForInternalReasons
()
virtual
QCString
trReimplementedForInternalReasons
()
{
return
D
ECODE
(
"Reimplementováno z interních dùvodù; "
{
return
D
ecode
(
"Reimplementováno z interních dùvodù; "
"aplikaèní rozhraní zachováno."
);
}
"aplikaèní rozhraní zachováno."
);
}
/*! this text is generated when the \warning command is used. */
/*! this text is generated when the \warning command is used. */
virtual
QCString
trWarning
()
virtual
QCString
trWarning
()
{
return
D
ECODE
(
"Pozor"
);
}
{
return
D
ecode
(
"Pozor"
);
}
/*! this text is generated when the \bug command is used. */
/*! this text is generated when the \bug command is used. */
virtual
QCString
trBugsAndLimitations
()
virtual
QCString
trBugsAndLimitations
()
{
return
D
ECODE
(
"Chyby a omezení"
);
}
{
return
D
ecode
(
"Chyby a omezení"
);
}
/*! this text is generated when the \version command is used. */
/*! this text is generated when the \version command is used. */
virtual
QCString
trVersion
()
virtual
QCString
trVersion
()
{
return
D
ECODE
(
"Verze"
);
}
{
return
D
ecode
(
"Verze"
);
}
/*! this text is generated when the \date command is used. */
/*! this text is generated when the \date command is used. */
virtual
QCString
trDate
()
virtual
QCString
trDate
()
{
return
D
ECODE
(
"Datum"
);
}
{
return
D
ecode
(
"Datum"
);
}
/*! this text is generated when the \author command is used. */
/*! this text is generated when the \author command is used. */
virtual
QCString
trAuthors
()
virtual
QCString
trAuthors
()
{
return
D
ECODE
(
"Autor/autoøi"
);
}
{
return
D
ecode
(
"Autor/autoøi"
);
}
/*! this text is generated when the \return command is used. */
/*! this text is generated when the \return command is used. */
virtual
QCString
trReturns
()
virtual
QCString
trReturns
()
{
return
D
ECODE
(
"Návratová hodnota"
);
}
{
return
D
ecode
(
"Návratová hodnota"
);
}
/*! this text is generated when the \sa command is used. */
/*! this text is generated when the \sa command is used. */
virtual
QCString
trSeeAlso
()
virtual
QCString
trSeeAlso
()
{
return
D
ECODE
(
"Viz také"
);
}
{
return
D
ecode
(
"Viz také"
);
}
/*! this text is generated when the \param command is used. */
/*! this text is generated when the \param command is used. */
virtual
QCString
trParameters
()
virtual
QCString
trParameters
()
{
return
D
ECODE
(
"Parametry"
);
}
{
return
D
ecode
(
"Parametry"
);
}
/*! this text is generated when the \exception command is used. */
/*! this text is generated when the \exception command is used. */
virtual
QCString
trExceptions
()
virtual
QCString
trExceptions
()
{
return
D
ECODE
(
"Výjimky"
);
}
{
return
D
ecode
(
"Výjimky"
);
}
/*! this text is used in the title page of a LaTeX document. */
/*! this text is used in the title page of a LaTeX document. */
virtual
QCString
trGeneratedBy
()
virtual
QCString
trGeneratedBy
()
{
return
D
ECODE
(
"Generováno programem"
);
}
{
return
D
ecode
(
"Generováno programem"
);
}
// new since 0.49-990307
// new since 0.49-990307
/*! used as the title of page containing all the index of all namespaces. */
/*! used as the title of page containing all the index of all namespaces. */
virtual
QCString
trNamespaceList
()
virtual
QCString
trNamespaceList
()
{
return
D
ECODE
(
"Seznam prostorù jmen"
);
}
{
return
D
ecode
(
"Seznam prostorù jmen"
);
}
/*! used as an introduction to the namespace list */
/*! used as an introduction to the namespace list */
virtual
QCString
trNamespaceListDescription
(
bool
extractAll
)
virtual
QCString
trNamespaceListDescription
(
bool
extractAll
)
...
@@ -625,14 +568,14 @@ class TranslatorCzech : public Translator
...
@@ -625,14 +568,14 @@ class TranslatorCzech : public Translator
QCString
result
=
"Zde naleznete seznam všech "
;
QCString
result
=
"Zde naleznete seznam všech "
;
if
(
!
extractAll
)
result
+=
"dokumentovaných "
;
if
(
!
extractAll
)
result
+=
"dokumentovaných "
;
result
+=
"prostorù jmen se struèným popisem:"
;
result
+=
"prostorù jmen se struèným popisem:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used in the class documentation as a header before the list of all
/*! used in the class documentation as a header before the list of all
* friends of a class
* friends of a class
*/
*/
virtual
QCString
trFriends
()
virtual
QCString
trFriends
()
{
return
D
ECODE
(
"Friends"
);
}
{
return
D
ecode
(
"Friends"
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
// new since 0.49-990405
...
@@ -642,7 +585,7 @@ class TranslatorCzech : public Translator
...
@@ -642,7 +585,7 @@ class TranslatorCzech : public Translator
* related classes
* related classes
*/
*/
virtual
QCString
trRelatedFunctionDocumentation
()
virtual
QCString
trRelatedFunctionDocumentation
()
{
return
D
ECODE
(
"Dokumentace k friends"
);
}
{
return
D
ecode
(
"Dokumentace k friends"
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
// new since 0.49-990425
...
@@ -664,7 +607,7 @@ class TranslatorCzech : public Translator
...
@@ -664,7 +607,7 @@ class TranslatorCzech : public Translator
case
ClassDef
:
:
Exception
:
result
+=
"výjimky "
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"výjimky "
;
break
;
}
}
result
+=
clName
;
result
+=
clName
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used as the title of the HTML page of a file */
/*! used as the title of the HTML page of a file */
...
@@ -672,7 +615,7 @@ class TranslatorCzech : public Translator
...
@@ -672,7 +615,7 @@ class TranslatorCzech : public Translator
{
{
QCString
result
(
"Dokumentace souboru "
);
QCString
result
(
"Dokumentace souboru "
);
result
+=
fileName
;
result
+=
fileName
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used as the title of the HTML page of a namespace */
/*! used as the title of the HTML page of a namespace */
...
@@ -680,32 +623,32 @@ class TranslatorCzech : public Translator
...
@@ -680,32 +623,32 @@ class TranslatorCzech : public Translator
{
{
QCString
result
(
"Dokumentace prostoru jmen "
);
QCString
result
(
"Dokumentace prostoru jmen "
);
result
+=
namespaceName
;
result
+=
namespaceName
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! \mgroup Class sections
/*! \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
D
ECODE
(
"Veøejné metody"
);
}
{
return
D
ecode
(
"Veøejné metody"
);
}
virtual
QCString
trPublicSlots
()
virtual
QCString
trPublicSlots
()
{
return
D
ECODE
(
"Veøejné sloty"
);
}
{
return
D
ecode
(
"Veøejné sloty"
);
}
virtual
QCString
trSignals
()
virtual
QCString
trSignals
()
{
return
D
ECODE
(
"Signály"
);
}
{
return
D
ecode
(
"Signály"
);
}
virtual
QCString
trStaticPublicMembers
()
virtual
QCString
trStaticPublicMembers
()
{
return
D
ECODE
(
"Statické veøejné metody"
);
}
{
return
D
ecode
(
"Statické veøejné metody"
);
}
virtual
QCString
trProtectedMembers
()
virtual
QCString
trProtectedMembers
()
{
return
D
ECODE
(
"Chránìné metody"
);
}
{
return
D
ecode
(
"Chránìné metody"
);
}
virtual
QCString
trProtectedSlots
()
virtual
QCString
trProtectedSlots
()
{
return
D
ECODE
(
"Chránìné sloty"
);
}
{
return
D
ecode
(
"Chránìné sloty"
);
}
virtual
QCString
trStaticProtectedMembers
()
virtual
QCString
trStaticProtectedMembers
()
{
return
D
ECODE
(
"Statické chránìné metody"
);
}
{
return
D
ecode
(
"Statické chránìné metody"
);
}
virtual
QCString
trPrivateMembers
()
virtual
QCString
trPrivateMembers
()
{
return
D
ECODE
(
"Privátní metody"
);
}
{
return
D
ecode
(
"Privátní metody"
);
}
virtual
QCString
trPrivateSlots
()
virtual
QCString
trPrivateSlots
()
{
return
D
ECODE
(
"Privátní sloty"
);
}
{
return
D
ecode
(
"Privátní sloty"
);
}
virtual
QCString
trStaticPrivateMembers
()
virtual
QCString
trStaticPrivateMembers
()
{
return
D
ECODE
(
"Statické privátní metody"
);
}
{
return
D
ecode
(
"Statické privátní metody"
);
}
/*! \endmgroup */
/*! \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.
...
@@ -730,7 +673,7 @@ class TranslatorCzech : public Translator
...
@@ -730,7 +673,7 @@ class TranslatorCzech : public Translator
result
+=
" a "
;
result
+=
" a "
;
}
}
}
}
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used in class documentation to produce a list of base classes,
/*! used in class documentation to produce a list of base classes,
...
@@ -738,7 +681,10 @@ class TranslatorCzech : public Translator
...
@@ -738,7 +681,10 @@ class TranslatorCzech : public Translator
*/
*/
virtual
QCString
trInheritsList
(
int
numEntries
)
virtual
QCString
trInheritsList
(
int
numEntries
)
{
{
return
DECODE
(
"Dìdí "
+
trWriteList
(
numEntries
)
+
"."
);
QCString
result
(
"Dìdí z "
);
result
+=
(
numEntries
==
1
)
?
"bázové tøídy "
:
"bázových tøíd "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
Decode
(
result
);
}
}
/*! used in class documentation to produce a list of super classes,
/*! used in class documentation to produce a list of super classes,
...
@@ -749,7 +695,7 @@ class TranslatorCzech : public Translator
...
@@ -749,7 +695,7 @@ class TranslatorCzech : public Translator
QCString
result
(
"Zdìdìna "
);
QCString
result
(
"Zdìdìna "
);
result
+=
(
numEntries
==
1
)
?
"tøídou "
:
"tøídami "
;
result
+=
(
numEntries
==
1
)
?
"tøídou "
:
"tøídami "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used in member documentation blocks to produce a list of
/*! used in member documentation blocks to produce a list of
...
@@ -760,7 +706,7 @@ class TranslatorCzech : public Translator
...
@@ -760,7 +706,7 @@ class TranslatorCzech : public Translator
QCString
result
(
"Reimplementuje "
);
QCString
result
(
"Reimplementuje "
);
result
+=
(
numEntries
==
1
)
?
"metodu tøídy "
:
"metody tøíd "
;
result
+=
(
numEntries
==
1
)
?
"metodu tøídy "
:
"metody tøíd "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! used in member documentation blocks to produce a list of
/*! used in member documentation blocks to produce a list of
...
@@ -771,12 +717,12 @@ class TranslatorCzech : public Translator
...
@@ -771,12 +717,12 @@ class TranslatorCzech : public Translator
QCString
result
(
"Reimplementováno "
);
QCString
result
(
"Reimplementováno "
);
result
+=
(
numEntries
==
1
)
?
"tøídou "
:
"tøídami "
;
result
+=
(
numEntries
==
1
)
?
"tøídou "
:
"tøídami "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is put above each page as a link to all members of namespaces. */
/*! This is put above each page as a link to all members of namespaces. */
virtual
QCString
trNamespaceMembers
()
virtual
QCString
trNamespaceMembers
()
{
return
D
ECODE
(
"Symboly v prostorech jmen"
);
}
{
return
D
ecode
(
"Symboly v prostorech jmen"
);
}
/*! This is an introduction to the page with all namespace members */
/*! This is an introduction to the page with all namespace members */
virtual
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
virtual
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
...
@@ -789,19 +735,19 @@ class TranslatorCzech : public Translator
...
@@ -789,19 +735,19 @@ class TranslatorCzech : public Translator
result
+=
"dokumentaci pøíslušného prostoru jmen:"
;
result
+=
"dokumentaci pøíslušného prostoru jmen:"
;
else
else
result
+=
"pøíslušný prostor jmen:"
;
result
+=
"pøíslušný prostor jmen:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
* index of all namespaces.
*/
*/
virtual
QCString
trNamespaceIndex
()
virtual
QCString
trNamespaceIndex
()
{
return
D
ECODE
(
"Rejstøík prostorù jmen"
);
}
{
return
D
ecode
(
"Rejstøík prostorù jmen"
);
}
/*! This is used in LaTeX as the title of the chapter containing
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
* the documentation of all namespaces.
*/
*/
virtual
QCString
trNamespaceDocumentation
()
virtual
QCString
trNamespaceDocumentation
()
{
return
D
ECODE
(
"Dokumentace prostorù jmen"
);
}
{
return
D
ecode
(
"Dokumentace prostorù jmen"
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
// new since 0.49-990522
...
@@ -811,7 +757,7 @@ class TranslatorCzech : public Translator
...
@@ -811,7 +757,7 @@ class TranslatorCzech : public Translator
* namespaces in a file.
* namespaces in a file.
*/
*/
virtual
QCString
trNamespaces
()
virtual
QCString
trNamespaces
()
{
return
D
ECODE
(
"Prostory jmen"
);
}
{
return
D
ecode
(
"Prostory jmen"
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
// new since 0.49-990728
...
@@ -836,14 +782,14 @@ class TranslatorCzech : public Translator
...
@@ -836,14 +782,14 @@ class TranslatorCzech : public Translator
result
+=
" byla generována z "
;
result
+=
" byla generována z "
;
if
(
single
)
result
+=
"následujícího souboru:"
;
if
(
single
)
result
+=
"následujícího souboru:"
;
else
result
+=
"následujících souborù:"
;
else
result
+=
"následujících souborù:"
;
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! This is in the (quick) index as a link to the alphabetical compound
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
* list.
*/
*/
virtual
QCString
trAlphabeticalList
()
virtual
QCString
trAlphabeticalList
()
{
return
D
ECODE
(
"Rejstøík tøíd"
);
}
{
return
D
ecode
(
"Rejstøík tøíd"
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
// new since 0.49-990901
...
@@ -851,18 +797,18 @@ class TranslatorCzech : public Translator
...
@@ -851,18 +797,18 @@ class TranslatorCzech : public Translator
/*! This is used as the heading text for the retval command. */
/*! This is used as the heading text for the retval command. */
virtual
QCString
trReturnValues
()
virtual
QCString
trReturnValues
()
{
return
D
ECODE
(
"Vracené hodnoty"
);
}
{
return
D
ecode
(
"Vracené hodnoty"
);
}
/*! This is in the (quick) index as a link to the main page (index.html)
/*! This is in the (quick) index as a link to the main page (index.html)
*/
*/
virtual
QCString
trMainPage
()
virtual
QCString
trMainPage
()
{
return
D
ECODE
(
"Hlavní stránka"
);
}
{
return
D
ecode
(
"Hlavní stránka"
);
}
/*! This is used in references to page that are put in the LaTeX
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
* documentation. It should be an abbreviation of the word page.
*/
*/
virtual
QCString
trPageAbbreviation
()
virtual
QCString
trPageAbbreviation
()
{
return
D
ECODE
(
"s."
);
}
{
return
D
ecode
(
"s."
);
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991003
// new since 0.49-991003
...
@@ -870,15 +816,15 @@ class TranslatorCzech : public Translator
...
@@ -870,15 +816,15 @@ class TranslatorCzech : public Translator
virtual
QCString
trSources
()
virtual
QCString
trSources
()
{
{
return
D
ECODE
(
"Zdroje"
);
return
D
ecode
(
"Zdroje"
);
}
}
virtual
QCString
trDefinedAtLineInSourceFile
()
virtual
QCString
trDefinedAtLineInSourceFile
()
{
{
return
D
ECODE
(
"Definice je uvedena na øádku @0 v souboru @1."
);
return
D
ecode
(
"Definice je uvedena na øádku @0 v souboru @1."
);
}
}
virtual
QCString
trDefinedInSourceFile
()
virtual
QCString
trDefinedInSourceFile
()
{
{
return
D
ECODE
(
"Definice v souboru @0."
);
return
D
ecode
(
"Definice v souboru @0."
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -887,7 +833,7 @@ class TranslatorCzech : public Translator
...
@@ -887,7 +833,7 @@ class TranslatorCzech : public Translator
virtual
QCString
trDeprecated
()
virtual
QCString
trDeprecated
()
{
{
return
D
ECODE
(
"Zastaralé"
);
return
D
ecode
(
"Zastaralé"
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -897,69 +843,69 @@ class TranslatorCzech : public Translator
...
@@ -897,69 +843,69 @@ class TranslatorCzech : public Translator
/*! this text is put before a collaboration diagram */
/*! this text is put before a collaboration diagram */
virtual
QCString
trCollaborationDiagram
(
const
char
*
clName
)
virtual
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
{
return
D
ECODE
((
QCString
)
"Diagram tøíd pro "
+
clName
+
":"
);
return
D
ecode
((
QCString
)
"Diagram tøíd pro "
+
clName
+
":"
);
}
}
/*! this text is put before an include dependency graph */
/*! this text is put before an include dependency graph */
virtual
QCString
trInclDepGraph
(
const
char
*
fName
)
virtual
QCString
trInclDepGraph
(
const
char
*
fName
)
{
{
return
D
ECODE
((
QCString
)
"Graf závislostí na vkládaných souborech "
return
D
ecode
((
QCString
)
"Graf závislostí na vkládaných souborech "
"pro "
+
fName
+
":"
);
"pro "
+
fName
+
":"
);
}
}
/*! header that is put before the list of constructor/destructors. */
/*! header that is put before the list of constructor/destructors. */
virtual
QCString
trConstructorDocumentation
()
virtual
QCString
trConstructorDocumentation
()
{
{
return
D
ECODE
(
"Dokumentace konstruktoru a destruktoru"
);
return
D
ecode
(
"Dokumentace konstruktoru a destruktoru"
);
}
}
/*! Used in the file documentation to point to the corresponding sources. */
/*! Used in the file documentation to point to the corresponding sources. */
virtual
QCString
trGotoSourceCode
()
virtual
QCString
trGotoSourceCode
()
{
{
return
D
ECODE
(
"Zobrazit zdrojový text tohoto souboru."
);
return
D
ecode
(
"Zobrazit zdrojový text tohoto souboru."
);
}
}
/*! Used in the file sources to point to the corresponding documentation. */
/*! Used in the file sources to point to the corresponding documentation. */
virtual
QCString
trGotoDocumentation
()
virtual
QCString
trGotoDocumentation
()
{
{
return
D
ECODE
(
"Zobrazit dokumentaci tohoto souboru."
);
return
D
ecode
(
"Zobrazit dokumentaci tohoto souboru."
);
}
}
/*! Text for the \pre command */
/*! Text for the \pre command */
virtual
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
{
return
D
ECODE
(
"Precondition"
);
return
D
ecode
(
"Precondition"
);
}
}
/*! Text for the \post command */
/*! Text for the \post command */
virtual
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
{
return
D
ECODE
(
"Postcondition"
);
return
D
ecode
(
"Postcondition"
);
}
}
/*! Text for the \invariant command */
/*! Text for the \invariant command */
virtual
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
{
return
D
ECODE
(
"Invariant"
);
return
D
ecode
(
"Invariant"
);
}
}
/*! Text shown before a multi-line variable/enum initialization */
/*! Text shown before a multi-line variable/enum initialization */
virtual
QCString
trInitialValue
()
virtual
QCString
trInitialValue
()
{
{
return
D
ECODE
(
"Initializer:"
);
return
D
ecode
(
"Initializer:"
);
}
}
/*! Text used the source code in the file index */
/*! Text used the source code in the file index */
virtual
QCString
trCode
()
virtual
QCString
trCode
()
{
{
return
D
ECODE
(
"zdrojový text"
);
return
D
ecode
(
"zdrojový text"
);
}
}
virtual
QCString
trGraphicalHierarchy
()
virtual
QCString
trGraphicalHierarchy
()
{
{
return
D
ECODE
(
"Grafické zobrazení hierarchie tøíd"
);
return
D
ecode
(
"Grafické zobrazení hierarchie tøíd"
);
}
}
virtual
QCString
trGotoGraphicalHierarchy
()
virtual
QCString
trGotoGraphicalHierarchy
()
{
{
return
D
ECODE
(
"Zobrazit grafickou podobu hierarchie tøíd"
);
return
D
ecode
(
"Zobrazit grafickou podobu hierarchie tøíd"
);
}
}
virtual
QCString
trGotoTextualHierarchy
()
virtual
QCString
trGotoTextualHierarchy
()
{
{
return
D
ECODE
(
"Zobrazit textovou podobu hierarchie tøíd"
);
return
D
ecode
(
"Zobrazit textovou podobu hierarchie tøíd"
);
}
}
virtual
QCString
trPageIndex
()
virtual
QCString
trPageIndex
()
{
{
return
D
ECODE
(
"Rejstøík stránek"
);
return
D
ecode
(
"Rejstøík stránek"
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -968,43 +914,43 @@ class TranslatorCzech : public Translator
...
@@ -968,43 +914,43 @@ class TranslatorCzech : public Translator
virtual
QCString
trNote
()
virtual
QCString
trNote
()
{
{
return
D
ECODE
(
"Poznámka"
);
return
D
ecode
(
"Poznámka"
);
}
}
virtual
QCString
trPublicTypes
()
virtual
QCString
trPublicTypes
()
{
{
return
D
ECODE
(
"Veøejné typy"
);
return
D
ecode
(
"Veøejné typy"
);
}
}
virtual
QCString
trPublicAttribs
()
virtual
QCString
trPublicAttribs
()
{
{
return
D
ECODE
(
"Veøejné atributy"
);
return
D
ecode
(
"Veøejné atributy"
);
}
}
virtual
QCString
trStaticPublicAttribs
()
virtual
QCString
trStaticPublicAttribs
()
{
{
return
D
ECODE
(
"Statické veøejné atributy"
);
return
D
ecode
(
"Statické veøejné atributy"
);
}
}
virtual
QCString
trProtectedTypes
()
virtual
QCString
trProtectedTypes
()
{
{
return
D
ECODE
(
"Chránìné typy"
);
return
D
ecode
(
"Chránìné typy"
);
}
}
virtual
QCString
trProtectedAttribs
()
virtual
QCString
trProtectedAttribs
()
{
{
return
D
ECODE
(
"Chránìné atributy"
);
return
D
ecode
(
"Chránìné atributy"
);
}
}
virtual
QCString
trStaticProtectedAttribs
()
virtual
QCString
trStaticProtectedAttribs
()
{
{
return
D
ECODE
(
"Statické chránìné atributy"
);
return
D
ecode
(
"Statické chránìné atributy"
);
}
}
virtual
QCString
trPrivateTypes
()
virtual
QCString
trPrivateTypes
()
{
{
return
D
ECODE
(
"Privátní typy"
);
return
D
ecode
(
"Privátní typy"
);
}
}
virtual
QCString
trPrivateAttribs
()
virtual
QCString
trPrivateAttribs
()
{
{
return
D
ECODE
(
"Privátní atributy"
);
return
D
ecode
(
"Privátní atributy"
);
}
}
virtual
QCString
trStaticPrivateAttribs
()
virtual
QCString
trStaticPrivateAttribs
()
{
{
return
D
ECODE
(
"Statické privátní atributy"
);
return
D
ecode
(
"Statické privátní atributy"
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -1014,12 +960,12 @@ class TranslatorCzech : public Translator
...
@@ -1014,12 +960,12 @@ class TranslatorCzech : public Translator
/*! Used as a marker that is put before a todo item */
/*! Used as a marker that is put before a todo item */
virtual
QCString
trTodo
()
virtual
QCString
trTodo
()
{
{
return
D
ECODE
(
"Udìlat
"
);
return
D
ecode
(
"Plánované úpravy
"
);
}
}
/*! Used as the header of the todo list */
/*! Used as the header of the todo list */
virtual
QCString
trTodoList
()
virtual
QCString
trTodoList
()
{
{
return
D
ECODE
(
"Seznam plánovaných úprav"
);
return
D
ecode
(
"Seznam plánovaných úprav"
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -1028,24 +974,24 @@ class TranslatorCzech : public Translator
...
@@ -1028,24 +974,24 @@ class TranslatorCzech : public Translator
virtual
QCString
trReferencedBy
()
virtual
QCString
trReferencedBy
()
{
{
return
D
ECODE
(
"Pouívá se v"
);
return
D
ecode
(
"Používá se v"
);
}
}
virtual
QCString
trRemarks
()
virtual
QCString
trRemarks
()
{
{
return
D
ECODE
(
"Poznámky"
);
// ??? not checked in a context
return
D
ecode
(
"Poznámky"
);
// ??? not checked in a context
}
}
virtual
QCString
trAttention
()
virtual
QCString
trAttention
()
{
{
return
D
ECODE
(
"Upozornìní"
);
// ??? not checked in a context
return
D
ecode
(
"Upozornìní"
);
// ??? not checked in a context
}
}
virtual
QCString
trInclByDepGraph
()
virtual
QCString
trInclByDepGraph
()
{
{
return
D
ECODE
(
"Následující graf ukazuje, které soubory pøímo nebo "
return
D
ecode
(
"Následující graf ukazuje, které soubory pøímo nebo "
"nepøímo vkládají tento soubor:"
);
"nepøímo vkládají tento soubor:"
);
}
}
virtual
QCString
trSince
()
virtual
QCString
trSince
()
{
{
return
D
ECODE
(
"Od"
);
// ??? not checked in a context
return
D
ecode
(
"Od"
);
// ??? not checked in a context
}
}
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
...
@@ -1055,7 +1001,7 @@ class TranslatorCzech : public Translator
...
@@ -1055,7 +1001,7 @@ class TranslatorCzech : public Translator
/*! title of the graph legend page */
/*! title of the graph legend page */
virtual
QCString
trLegendTitle
()
virtual
QCString
trLegendTitle
()
{
{
return
D
ECODE
(
"Vysvìtlivky ke grafu"
);
return
D
ecode
(
"Vysvìtlivky ke grafu"
);
}
}
/*! page explaining how the dot graph's should be interpreted */
/*! page explaining how the dot graph's should be interpreted */
virtual
QCString
trLegendDocs
()
virtual
QCString
trLegendDocs
()
...
@@ -1124,12 +1070,12 @@ class TranslatorCzech : public Translator
...
@@ -1124,12 +1070,12 @@ class TranslatorCzech : public Translator
"je tøída nebo struktura zpøístupnìna.
\n
"
"je tøída nebo struktura zpøístupnìna.
\n
"
"</ul>
\n
"
);
"</ul>
\n
"
);
return
D
ECODE
(
result
);
return
D
ecode
(
result
);
}
}
/*! text for the link to the legend page */
/*! text for the link to the legend page */
virtual
QCString
trLegend
()
virtual
QCString
trLegend
()
{
{
return
D
ECODE
(
"vysvìtlivky"
);
return
D
ecode
(
"vysvìtlivky"
);
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -1139,13 +1085,13 @@ class TranslatorCzech : public Translator
...
@@ -1139,13 +1085,13 @@ class TranslatorCzech : public Translator
/*! Used as a marker that is put before a test item */
/*! Used as a marker that is put before a test item */
virtual
QCString
trTest
()
virtual
QCString
trTest
()
{
{
return
"Test"
;
return
Decode
(
"Test"
)
;
}
}
/*! Used as the header of the test list */
/*! Used as the header of the test list */
virtual
QCString
trTestList
()
virtual
QCString
trTestList
()
{
{
return
"Seznam testù"
;
return
Decode
(
"Seznam testù"
)
;
}
}
};
};
...
...
src/translator_hr.h
View file @
b91275de
...
@@ -31,96 +31,27 @@
...
@@ -31,96 +31,27 @@
class
TranslatorCroatian
:
public
Translator
class
TranslatorCroatian
:
public
Translator
{
{
private
:
private
:
/*! to avoid macro redefinition from translator_cz.h */
/*! to avoid macro redefinition from translator_cz.h */
/* Speed loss is actualy less than in Czech version due to
/* Speed loss is actualy less than in Czech version due to
fewer QCString copying.
fewer QCString copying.
*/
*/
inline
QCString
&
decode
(
const
QCString
&
sInput
)
inline
QCString
decode
(
const
QCString
&
sInput
)
{
{
#ifdef _WIN32
#ifdef _WIN32
return
ISOToWin
(
sInput
);
return
ISO88592ToWin1250
(
sInput
);
#else
#else
return
const_cast
<
QCString
&>
(
sInput
)
;
return
sInput
;
#endif
#endif
}
}
/*! returns the string converted from windows-1250 to iso-8859-2 */
QCString
WinToISO
(
const
QCString
&
sInput
)
{
// The conversion table for characters >127
//
static
const
char
WinToISOTab
[]
=
{
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
'\x88'
,
'\x89'
,
'\xA9'
,
'\x8B'
,
'\xA6'
,
'\xAB'
,
'\xAE'
,
'\xAC'
,
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x2E'
,
'\x96'
,
'\x97'
,
'\x98'
,
'\x99'
,
'\xB9'
,
'\x9B'
,
'\xB6'
,
'\xBB'
,
'\xBE'
,
'\xBC'
,
'\xA0'
,
'\x20'
,
'\x20'
,
'\xA3'
,
'\xA4'
,
'\xA1'
,
'\xA6'
,
'\xA7'
,
'\x22'
,
'\xA9'
,
'\xAA'
,
'\x3C'
,
'\xAC'
,
'\x2D'
,
'\xAE'
,
'\xAF'
,
'\x2E'
,
'\x2B'
,
'\x20'
,
'\xB3'
,
'\x27'
,
'\x75'
,
'\xB6'
,
'\xB7'
,
'\x20'
,
'\xB1'
,
'\xBA'
,
'\x3E'
,
'\xA5'
,
'\x22'
,
'\xB5'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\x2D'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
WinToISOTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
/*! returns the string converted from iso-8859-2 to windows-1250 */
QCString
ISOToWin
(
const
QCString
&
sInput
)
{
// The conversion table for characters >127
//
static
const
char
ISOToWinTab
[]
=
{
'\x80'
,
'\x81'
,
'\x82'
,
'\x83'
,
'\x84'
,
'\x85'
,
'\x86'
,
'\x87'
,
'\x88'
,
'\x89'
,
'\x8A'
,
'\x8B'
,
'\x8C'
,
'\x8D'
,
'\x8E'
,
'\x8F'
,
'\x90'
,
'\x91'
,
'\x92'
,
'\x93'
,
'\x94'
,
'\x95'
,
'\x96'
,
'\x97'
,
'\x98'
,
'\x99'
,
'\x9A'
,
'\x9B'
,
'\x9C'
,
'\x9D'
,
'\x9E'
,
'\x9F'
,
'\xA0'
,
'\xA5'
,
'\xA2'
,
'\xA3'
,
'\xA4'
,
'\xBC'
,
'\x8C'
,
'\xA7'
,
'\xA8'
,
'\x8A'
,
'\xAA'
,
'\x8D'
,
'\x8F'
,
'\xAD'
,
'\x8E'
,
'\xAF'
,
'\xB0'
,
'\xB9'
,
'\xB2'
,
'\xB3'
,
'\xB4'
,
'\xBE'
,
'\x9C'
,
'\xB7'
,
'\xB8'
,
'\x9A'
,
'\xBA'
,
'\x9D'
,
'\x9F'
,
'\xBD'
,
'\x9E'
,
'\xBF'
,
'\xC0'
,
'\xC1'
,
'\xC2'
,
'\xC3'
,
'\xC4'
,
'\xC5'
,
'\xC6'
,
'\xC7'
,
'\xC8'
,
'\xC9'
,
'\xCA'
,
'\xCB'
,
'\xCC'
,
'\xCD'
,
'\xCE'
,
'\xCF'
,
'\xD0'
,
'\xD1'
,
'\xD2'
,
'\xD3'
,
'\xD4'
,
'\xD5'
,
'\xD6'
,
'\xD7'
,
'\xD8'
,
'\xD9'
,
'\xDA'
,
'\xDB'
,
'\xDC'
,
'\xDD'
,
'\xDE'
,
'\xDF'
,
'\xE0'
,
'\xE1'
,
'\xE2'
,
'\xE3'
,
'\xE4'
,
'\xE5'
,
'\xE6'
,
'\xE7'
,
'\xE8'
,
'\xE9'
,
'\xEA'
,
'\xEB'
,
'\xEC'
,
'\xED'
,
'\xEE'
,
'\xEF'
,
'\xF0'
,
'\xF1'
,
'\xF2'
,
'\xF3'
,
'\xF4'
,
'\xF5'
,
'\xF6'
,
'\xF7'
,
'\xF8'
,
'\xF9'
,
'\xFA'
,
'\xFB'
,
'\xFC'
,
'\xFD'
,
'\xFE'
,
'\xFF'
,
'\0'
};
QCString
result
;
int
len
=
sInput
.
length
();
for
(
int
i
=
0
;
i
<
len
;
++
i
)
{
unsigned
int
c
=
sInput
[
i
];
result
+=
(
c
>
127
)
?
ISOToWinTab
[
c
&
0x7F
]
:
c
;
}
return
result
;
}
public
:
public
:
QCString
idLanguage
()
QCString
idLanguage
()
{
return
"croatian"
;
}
{
return
"croatian"
;
}
QCString
idLanguageCharset
()
QCString
idLanguageCharset
()
#ifdef _WIN32
#ifdef _WIN32
{
return
"windows-1250"
;
}
{
return
"windows-1250"
;
}
#else
#else
{
return
"iso-8859-2"
;
}
{
return
"iso-8859-2"
;
}
#endif
#endif
QCString
latexBabelPackage
()
QCString
latexBabelPackage
()
{
return
"croatian"
;
}
{
return
"croatian"
;
}
...
@@ -137,7 +68,7 @@ class TranslatorCroatian : public Translator
...
@@ -137,7 +68,7 @@ class TranslatorCroatian : public Translator
QCString
trEnumerationValueDocumentation
()
QCString
trEnumerationValueDocumentation
()
{
return
decode
(
"Dokumentacija enum vrijednosti"
);
}
{
return
decode
(
"Dokumentacija enum vrijednosti"
);
}
QCString
trMemberFunctionDocumentation
()
QCString
trMemberFunctionDocumentation
()
{
return
decode
(
"Dokumentacija funkcija"
);
}
{
return
decode
(
"Dokumentacija funkcija"
);
}
QCString
trMemberDataDocumentation
()
QCString
trMemberDataDocumentation
()
{
return
decode
(
"Documentacija varijabli"
);
}
{
return
decode
(
"Documentacija varijabli"
);
}
QCString
trGeneratedFrom
(
const
char
*
s
,
bool
single
)
QCString
trGeneratedFrom
(
const
char
*
s
,
bool
single
)
...
@@ -145,9 +76,9 @@ class TranslatorCroatian : public Translator
...
@@ -145,9 +76,9 @@ class TranslatorCroatian : public Translator
QCString
result
=
decode
(
"Dokumentacija za "
)
+
s
+
QCString
result
=
decode
(
"Dokumentacija za "
)
+
s
+
decode
(
"je generirana iz "
);
decode
(
"je generirana iz "
);
if
(
single
)
if
(
single
)
result
+=
decode
(
"datoteke :"
);
result
+=
decode
(
"datoteke :"
);
else
else
result
+=
decode
(
"slijedeih datoteka:"
);
result
+=
decode
(
"slijedeih datoteka:"
);
return
result
;
return
result
;
}
}
QCString
trMore
()
QCString
trMore
()
...
@@ -196,7 +127,7 @@ class TranslatorCroatian : public Translator
...
@@ -196,7 +127,7 @@ class TranslatorCroatian : public Translator
{
return
decode
(
"Trai"
);
}
{
return
decode
(
"Trai"
);
}
QCString
trClassHierarchyDescription
()
QCString
trClassHierarchyDescription
()
{
return
decode
(
"Stablo naslijeivanja je posloeno "
{
return
decode
(
"Stablo naslijeivanja je posloeno "
"priblino po abecedi:"
);
"priblino po abecedi:"
);
}
}
QCString
trFileListDescription
(
bool
extractAll
)
QCString
trFileListDescription
(
bool
extractAll
)
{
{
...
@@ -207,7 +138,7 @@ class TranslatorCroatian : public Translator
...
@@ -207,7 +138,7 @@ class TranslatorCroatian : public Translator
}
}
QCString
trCompoundListDescription
()
QCString
trCompoundListDescription
()
{
return
decode
(
"Popis svih klasa, unija i struktura "
{
return
decode
(
"Popis svih klasa, unija i struktura "
"s kratkim opisom :"
);
"s kratkim opisom :"
);
}
}
QCString
trCompoundMembersDescription
(
bool
extractAll
)
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
{
...
@@ -311,8 +242,8 @@ class TranslatorCroatian : public Translator
...
@@ -311,8 +242,8 @@ class TranslatorCroatian : public Translator
QCString
trForInternalUseOnly
()
QCString
trForInternalUseOnly
()
{
return
decode
(
"Iskljuivo za internu uporabu."
);
}
{
return
decode
(
"Iskljuivo za internu uporabu."
);
}
QCString
trReimplementedForInternalReasons
()
QCString
trReimplementedForInternalReasons
()
{
return
decode
(
"Reimplementirano zbog internih razloga; "
{
return
decode
(
"Reimplementirano zbog internih razloga; "
"Nema utjecaja na API."
);
"Nema utjecaja na API."
);
}
}
QCString
trWarning
()
QCString
trWarning
()
{
return
decode
(
"Upozorenje"
);
}
{
return
decode
(
"Upozorenje"
);
}
...
@@ -376,7 +307,7 @@ class TranslatorCroatian : public Translator
...
@@ -376,7 +307,7 @@ class TranslatorCroatian : public Translator
case
ClassDef
:
:
Interface
:
result
+=
decode
(
" suelja (interface) "
);
break
;
case
ClassDef
:
:
Interface
:
result
+=
decode
(
" suelja (interface) "
);
break
;
case
ClassDef
:
:
Exception
:
result
+=
decode
(
" iznimke (exception) "
);
break
;
case
ClassDef
:
:
Exception
:
result
+=
decode
(
" iznimke (exception) "
);
break
;
}
}
result
+=
(
QCString
)
clName
;
result
+=
(
QCString
)
clName
;
return
result
;
return
result
;
}
}
...
@@ -384,14 +315,14 @@ class TranslatorCroatian : public Translator
...
@@ -384,14 +315,14 @@ class TranslatorCroatian : public Translator
// used as the title of the HTML page of a file
// used as the title of the HTML page of a file
{
{
QCString
result
=
decode
(
"Opis datoteke "
);
QCString
result
=
decode
(
"Opis datoteke "
);
result
+=
fileName
;
result
+=
fileName
;
return
result
;
return
result
;
}
}
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
// used as the title of the HTML page of a namespace
// used as the title of the HTML page of a namespace
{
{
QCString
result
=
decode
(
"Opis namespace-a "
);
QCString
result
=
decode
(
"Opis namespace-a "
);
result
+=
namespaceName
;
result
+=
namespaceName
;
return
result
;
return
result
;
}
}
...
@@ -712,12 +643,12 @@ class TranslatorCroatian : public Translator
...
@@ -712,12 +643,12 @@ class TranslatorCroatian : public Translator
}
}
virtual
QCString
trAttention
()
virtual
QCString
trAttention
()
{
{
return
decode
(
"Panja"
);
return
decode
(
"Panja"
);
}
}
virtual
QCString
trInclByDepGraph
()
virtual
QCString
trInclByDepGraph
()
{
{
return
decode
(
"Ovaj graf pokazuje koje datoteke izravno "
return
decode
(
"Ovaj graf pokazuje koje datoteke izravno "
"ili neizravno ukljuuju ovu datoteku:"
);
"ili neizravno ukljuuju ovu datoteku:"
);
}
}
virtual
QCString
trSince
()
virtual
QCString
trSince
()
{
{
...
...
src/translator_kr.h
0 → 100644
View file @
b91275de
/******************************************************************************
*
*
*
* 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.
*
*/
#ifndef TRANSLATOR_KR_H
#define TRANSLATOR_KR_H
#include "translator.h"
class
TranslatorKorean
:
public
Translator
{
public
:
QCString
idLanguage
()
{
return
"korean"
;
}
/*! returns the name of the package that is included by LaTeX */
QCString
latexBabelPackage
()
{
return
""
;
}
// What is the correct value here?
/*! return the language charset. This will be used for the HTML output */
virtual
QCString
idLanguageCharset
()
{
return
"euc-kr"
;
}
/*! used in the compound documentation before a list of related functions. */
QCString
trRelatedFunctions
()
{
return
"관련된 함수들"
;
}
/*! subscript for the related functions. */
QCString
trRelatedSubscript
()
{
return
"관련주석"
;
}
/*! header that is put before the detailed description of files, classes and namespaces. */
QCString
trDetailedDescription
()
{
return
"상세한 내용"
;
}
/*! header that is put before the list of typedefs. */
QCString
trMemberTypedefDocumentation
()
{
return
"멤버 타입정의 문서화"
;
}
/*! header that is put before the list of enumerations. */
QCString
trMemberEnumerationDocumentation
()
{
return
"구성원(member) 열거 문서화"
;
}
/*! header that is put before the list of member functions. */
QCString
trMemberFunctionDocumentation
()
{
return
"멤버 함수 문서화"
;
}
/*! header that is put before the list of member attributes. */
QCString
trMemberDataDocumentation
()
{
return
"멤서 데이타 문서화"
;
}
/*! this is the text of a link put after brief descriptions. */
QCString
trMore
()
{
return
"More..."
;
}
/*! put in the class documentation */
QCString
trListOfAllMembers
()
{
return
"모든 구성원들(members)의 명단"
;
}
/*! used as the title of the "list of all members" page of a class */
QCString
trMemberList
()
{
return
"구성원(member) 명단"
;
}
/*! this is the first part of a sentence that is followed by a class name */
QCString
trThisIsTheListOfAllMembers
()
{
return
"완전한 구성원들(members)의 명단 "
;
}
// "This is the complete list of members for "
/*! this is the remainder of the sentence after the class name */
QCString
trIncludingInheritedMembers
()
{
return
", 상속받은 모든 구성원(members)들도 포함"
;
}
// ", including all inherited members."
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
*/
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
""
;
if
(
s
)
result
+=
(
QCString
)
s
+
"에 "
;
result
+=
"source 코드로 부터 Doxygen에 의해 자동적으로 생성"
;
return
result
;
}
/*! put after an enum name in the list of all members */
QCString
trEnumName
()
{
return
"열거체 이름"
;
}
/*! put after an enum value in the list of all members */
QCString
trEnumValue
()
{
return
"열거체 값"
;
}
/*! put after an undocumented member in the list of all members */
QCString
trDefinedIn
()
{
return
"에서 정의된"
;
}
/*! put as in introduction in the verbatim header file of a class.
* parameter f is the name of the include file.
*/
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"이것은 "
+
f
+
" 포함 파일의 축약적인 문서이다"
;
}
// quick reference sections
/*! This is put above each page as a link to the list of all groups of
* compounds or files (see the \group command).
*/
QCString
trModules
()
{
return
"모듈들"
;
}
/*! This is put above each page as a link to the class hierarchy */
QCString
trClassHierarchy
()
{
return
"클래스 계층(도)"
;
}
// "클래스 조직" or "클래스 분류체계"
/*! This is put above each page as a link to the list of annotated classes */
QCString
trCompoundList
()
{
return
"혼합 목록"
;
}
//"혼합 목록", "합성(집합) 명단(리스트)"
/*! This is put above each page as a link to the list of documented files */
QCString
trFileList
()
{
return
"파일 목록"
;
}
//"파일 목록", "파일 리스트"
/*! This is put above each page as a link to the list of all verbatim headers */
QCString
trHeaderFiles
()
{
return
"헤더 파일들"
;
}
/*! This is put above each page as a link to all members of compounds. */
QCString
trCompoundMembers
()
{
return
"혼합 멤버들"
;
}
// "합성(집합) 명단(멤버들)"
/*! This is put above each page as a link to all members of files. */
QCString
trFileMembers
()
{
return
"파일 멤버들"
;
}
/*! This is put above each page as a link to all related pages. */
QCString
trRelatedPages
()
{
return
"관련된 페이지들"
;
}
/*! This is put above each page as a link to all examples. */
QCString
trExamples
()
{
return
"예제들"
;
}
/*! This is put above each page as a link to the search engine. */
QCString
trSearch
()
{
return
"검색"
;
}
/*! This is an introduction to the class hierarchy. */
QCString
trClassHierarchyDescription
()
{
return
"이 상속 목록은 완전하지는 않지만 알파벳순으로 분류되었습니다."
;}
/*! This is an introduction to the list with all files. */
QCString
trFileListDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 간략한 설명을 가진 모든 "
;
// "Here is a list of all "
if
(
!
extractAll
)
result
+=
"문서화된 "
;
// "documented "
result
+=
"파일들에 대한 목록입니다."
;
// "files with brief descriptions:"
return
result
;
}
/*! This is an introduction to the annotated compound list. */
QCString
trCompoundListDescription
()
{
return
"이것은 간략한 설명을 가진 클래스들, "
"구조체들, 공용체들, 그리고 인터페이스들입니다."
;
}
/*! This is an introduction to the page with all class members. */
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"이곳에 모든 리스트가 있습니다"
;
//"Here is a list of all "
if
(
!
extractAll
)
result
+=
"문서화된 "
;
//"documented "
result
+=
"링크가 된 클래스 멤버들 "
;
//"class members with links to "
if
(
extractAll
)
result
+=
"각각의 멤버를 위한 클래스 문서:"
;
//"the class documentation for each member:"
else
result
+=
"이하로 속한 클래스들:"
;
//"the classes they belong to:"
return
result
;
}
/*! This is an introduction to the page with all file members. */
QCString
trFileMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"이곳에 모든 리스트가 있습니다"
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
result
+=
"링크가 된 파일 멤버들 "
;
if
(
extractAll
)
result
+=
"각 멤버들에 대한 파일 문서화"
;
// "the file documentation for each member:"
else
result
+=
"그것들이 속해있는 파일들"
;
// "the files they belong to:"
return
result
;
}
/*! This is an introduction to the page with the list of all header files. */
QCString
trHeaderFilesDescription
()
{
return
"이것은 API를 구성하는 헤더 파일들입니다."
;
}
// "Here are the header files that make up the API:"
/*! This is an introduction to the page with the list of all examples */
QCString
trExamplesDescription
()
{
return
"이것은 모든 예제들의 목록입니다."
;
}
// "Here is a list of all examples:"
/*! This is an introduction to the page with the list of related pages */
QCString
trRelatedPagesDescription
()
{
return
"이것은 모든 관련된 문서화 페이지들의 목록입니다."
;
}
// "Here is a list of all related documentation pages:"
/*! This is an introduction to the page with the list of class/file groups */
QCString
trModulesDescription
()
{
return
"이것은 모든 모듈들의 목록입니다."
;
}
// "Here is a list of all modules:"
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
*/
QCString
trNoDescriptionAvailable
()
{
return
"유용한 설명이 없습니다."
;
}
// "No description available"
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
QCString
trDocumentation
()
{
return
"문서화"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
QCString
trModuleIndex
()
{
return
"모듈 색인"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
QCString
trHierarchicalIndex
()
{
return
"분류체계 색인"
;
}
// "조직 색인", "계층적 인덱스"
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
*/
QCString
trCompoundIndex
()
{
return
"합성 인덱스"
;
}
// "혼합 색인"
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
*/
QCString
trFileIndex
()
{
return
"파일 색인"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
*/
QCString
trModuleDocumentation
()
{
return
"모듈 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all classes, structs and unions.
*/
QCString
trClassDocumentation
()
{
return
"클래스 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all files.
*/
QCString
trFileDocumentation
()
{
return
"파일 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
*/
QCString
trExampleDocumentation
()
{
return
"예제 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
*/
QCString
trPageDocumentation
()
{
return
"페이지 문서화"
;
}
/*! This is used in LaTeX as the title of the document */
QCString
trReferenceManual
()
{
return
"참고서"
;
}
// "참고서","참고 매뉴얼", "참조 메뉴얼"
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
QCString
trDefines
()
{
return
"정의들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
QCString
trFuncProtos
()
{
return
"함수 원형들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
QCString
trTypedefs
()
{
return
"타입 정의들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
QCString
trEnumerations
()
{
return
"Enumerations"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
QCString
trFunctions
()
{
return
"함수들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trVariables
()
{
return
"변수들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trEnumerationValues
()
{
return
"열거체 값들"
;
}
/*! This is used in man pages as the author section. */
QCString
trAuthor
()
{
return
"저자"
;
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
QCString
trDefineDocumentation
()
{
return
"정의 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
QCString
trFunctionPrototypeDocumentation
()
{
return
"함수 원형 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
QCString
trTypedefDocumentation
()
{
return
"타입 정의 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
QCString
trEnumerationTypeDocumentation
()
{
return
"열거체 타입 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
QCString
trEnumerationValueDocumentation
()
{
return
"열거체 값 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
QCString
trFunctionDocumentation
()
{
return
"함수 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
QCString
trVariableDocumentation
()
{
return
"변수 문서화"
;
}
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
*/
QCString
trCompounds
()
{
return
"혼합들"
;
}
/*! This is used in the documentation of a group before the list of
* links to documented files
*/
QCString
trFiles
()
{
return
"파일들"
;
}
/*! This is used in the standard footer of each page and indicates when
* the page was generated
*/
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
QCString
result
=
""
;
if
(
projName
)
result
+=
(
QCString
)
projName
+
"에 대해 "
;
result
+=
(
QCString
)
date
+
" 생성 by"
;
return
result
;
}
/*! This is part of the sentence used in the standard footer of each page.
*/
QCString
trWrittenBy
()
{
return
"written by"
;
// "에 의해 쓰여진?"
}
/*! this text is put before a class diagram */
QCString
trClassDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"에 대한 상속 도표"
;
// "Inheritance diagram for "+clName
}
/*! this text is generated when the \internal command is used. */
QCString
trForInternalUseOnly
()
{
return
"내부 사용만을 위해"
;
}
/*! this text is generated when the \reimp command is used. */
QCString
trReimplementedForInternalReasons
()
{
return
"내부적 이유를 위해 재구현된: API가 영향을 받지않았다."
;
}
// "Reimplemented for internal reasons; the API is not affected."
/*! this text is generated when the \warning command is used. */
QCString
trWarning
()
{
return
"경고"
;
}
/*! this text is generated when the \bug command is used. */
QCString
trBugsAndLimitations
()
{
return
"버그들과 한계들"
;
}
/*! this text is generated when the \version command is used. */
QCString
trVersion
()
{
return
"버전"
;
}
/*! this text is generated when the \date command is used. */
QCString
trDate
()
{
return
"날짜"
;
}
/*! this text is generated when the \author command is used. */
QCString
trAuthors
()
{
return
"저자(들)"
;
}
/*! this text is generated when the \return command is used. */
QCString
trReturns
()
{
return
"반환"
;
}
/*! this text is generated when the \sa command is used. */
QCString
trSeeAlso
()
{
return
"참조하시요"
;
}
/*! this text is generated when the \param command is used. */
QCString
trParameters
()
{
return
"매개변수들"
;
}
/*! this text is generated when the \exception command is used. */
QCString
trExceptions
()
{
return
"예외들"
;
}
/*! this text is used in the title page of a LaTeX document. */
QCString
trGeneratedBy
()
{
return
"에 의해 생성된"
;
}
// new since 0.49-990307
/*! used as the title of page containing all the index of all namespaces. */
QCString
trNamespaceList
()
{
return
"이름공간 목록"
;
}
/*! used as an introduction to the namespace list */
QCString
trNamespaceListDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 모든 간략한 설명을 가진 "
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
result
+=
"이름공간의 목록입니다:"
;
return
result
;
}
/*! used in the class documentation as a header before the list of all
* friends of a class
*/
QCString
trFriends
()
{
return
"프렌드"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
/*! used in the class documentation as a header before the list of all
* related classes
*/
virtual
QCString
trRelatedFunctionDocumentation
()
{
return
"프렌드, 그리고 관련된 함수 문서화"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////
/*! used as the title of the HTML page of a class/struct/union */
QCString
trCompoundReference
(
const
char
*
clName
,
ClassDef
::
CompoundType
compType
,
bool
isTemplate
)
{
QCString
result
=
(
QCString
)
clName
+
" "
;
if
(
isTemplate
)
result
+=
" 템플릿"
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
" 클래스"
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
" 구조체"
;
break
;
case
ClassDef
:
:
Union
:
result
+=
" 공용체"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
" 인터페이스"
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
" 예외"
;
break
;
}
result
+=
" 참조"
;
return
result
;
}
/*! used as the title of the HTML page of a file */
QCString
trFileReference
(
const
char
*
fileName
)
{
QCString
result
=
fileName
;
result
+=
" 파일 참조"
;
return
result
;
}
/*! used as the title of the HTML page of a namespace */
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
{
QCString
result
=
namespaceName
;
result
+=
" 이름 공간 참조"
;
return
result
;
}
/*! \mgroup Class sections
* these are for the member sections of a class, struct or union
*/
QCString
trPublicMembers
()
{
return
"공용 메소드"
;
}
QCString
trPublicSlots
()
{
return
"공용 Slots"
;
}
QCString
trSignals
()
{
return
"신호"
;
}
QCString
trStaticPublicMembers
()
{
return
"정적 공용 메소드"
;
}
QCString
trProtectedMembers
()
{
return
"프로텍티드 메소드"
;
}
QCString
trProtectedSlots
()
{
return
"Protected Slots"
;
}
QCString
trStaticProtectedMembers
()
{
return
"정적 프로텍티드 메소드"
;
}
QCString
trPrivateMembers
()
{
return
"프라이베이트 메소드"
;
}
QCString
trPrivateSlots
()
{
return
"Private Slots"
;
}
QCString
trStaticPrivateMembers
()
{
return
"정적 프라이베이트 메소드"
;
}
/*! \endmgroup */
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
*/
QCString
trWriteList
(
int
numEntries
)
{
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
+=
", and "
;
}
}
return
result
;
}
/*! used in class documentation to produce a list of base classes,
* if class diagrams are disabled.
*/
QCString
trInheritsList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
" 들을 상속하다."
;
}
/*! used in class documentation to produce a list of super classes,
* if class diagrams are disabled.
*/
QCString
trInheritedByList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"에 의해 상속된."
;
}
/*! used in member documentation blocks to produce a list of
* members that are hidden by this one.
*/
QCString
trReimplementedFromList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"으로부터 재구현된."
;
}
/*! used in member documentation blocks to produce a list of
* all member that overwrite the implementation of this member.
*/
QCString
trReimplementedInList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"에서 재구현된."
;
}
/*! This is put above each page as a link to all members of namespaces. */
QCString
trNamespaceMembers
()
{
return
"이름공간 멤버들"
;
}
/*! This is an introduction to the page with all namespace members */
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 모든 "
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
result
+=
"이름공간 멤버들의 목록입니다."
;
if
(
extractAll
)
result
+=
"각 멤버들에 대한 문서화에 "
;
else
result
+=
"속해있는 이름공간에 "
;
result
+=
"링크도있읍니다."
;
return
result
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
QCString
trNamespaceIndex
()
{
return
"이름공간 색인"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
*/
QCString
trNamespaceDocumentation
()
{
return
"이름공간 문서화"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
//////////////////////////////////////////////////////////////////////////
/*! This is used in the documentation before the list of all
* namespaces in a file.
*/
QCString
trNamespaces
()
{
return
"이름공간"
;
}
//////////////////////////////////////////////////////////////////////////
// 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
)
"이 "
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
"클래스"
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
"구조체"
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"공용체"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"인터페이스"
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"예외"
;
break
;
}
result
+=
"을 위한 문서화는 다음의 파일"
;
if
(
!
single
)
result
+=
"들"
;
result
+=
"로부터 생성되었습니다:"
;
return
result
;
}
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
*/
QCString
trAlphabeticalList
()
{
return
"알파벳순서의 목록"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
//////////////////////////////////////////////////////////////////////////
/*! This is used as the heading text for the retval command. */
QCString
trReturnValues
()
{
return
"반환값"
;
}
/*! This is in the (quick) index as a link to the main page (index.html)
*/
QCString
trMainPage
()
{
return
"주요 페이지"
;
}
/*! 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
"페이지"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991003
//////////////////////////////////////////////////////////////////////////
QCString
trSources
()
{
return
"출처"
;
}
QCString
trDefinedAtLineInSourceFile
()
{
return
"파일 @1. 의 @0 번째 라인에서 정의"
;
// "Definition at line @0 of file @1."
}
QCString
trDefinedInSourceFile
()
{
return
"파일 @0. 에서 정의"
;
// "Definition in file @0."
}
//////////////////////////////////////////////////////////////////////////
// new since 1.0.0
//////////////////////////////////////////////////////////////////////////
QCString
trDeprecated
()
{
return
"Deprecated"
;
// "비난받은(??)","반대하는"
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
/*! this text is put before a collaboration diagram */
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"에 대한 원조 도표:"
;
}
/*! this text is put before an include dependency graph */
QCString
trInclDepGraph
(
const
char
*
fName
)
{
return
(
QCString
)
fName
+
"에 대한 include 의존 그래프"
;
}
/*! header that is put before the list of constructor/destructors. */
QCString
trConstructorDocumentation
()
{
return
"생성자 & 소멸자 문서화"
;
}
/*! Used in the file documentation to point to the corresponding sources. */
QCString
trGotoSourceCode
()
{
return
"이 파일에 대한 소스 코드로 가시오"
;
}
/*! Used in the file sources to point to the corresponding documentation. */
QCString
trGotoDocumentation
()
{
return
"이 파일의 문서화로 가시오"
;
}
/*! Text for the \pre command */
QCString
trPrecondition
()
{
return
"전제 조건"
;
}
/*! Text for the \post command */
QCString
trPostcondition
()
{
return
"후미 조건"
;
// "후치조건"
}
/*! Text for the \invariant command */
QCString
trInvariant
()
{
return
"변하지 않는"
;
}
/*! Text shown before a multi-line variable/enum initialization */
QCString
trInitialValue
()
{
return
"초기화기"
;
}
/*! Text used the source code in the file index */
QCString
trCode
()
{
return
"코드"
;
}
QCString
trGraphicalHierarchy
()
{
return
"도표의 클래스 분류체계"
;
// "도표의 클래스 조직"
}
QCString
trGotoGraphicalHierarchy
()
{
return
"도표의 클래스 분류체계로 가시오"
;
// "도표의 클래스 조직으로 가시오"
}
QCString
trGotoTextualHierarchy
()
{
return
"문자의 클래스 분류체계로 가시오"
;
// "문자의 클래스 조직으로 가시오"
}
QCString
trPageIndex
()
{
return
"페이지 색인"
;
}
};
#endif
src/util.cpp
View file @
b91275de
...
@@ -314,6 +314,31 @@ ClassDef *getClass(const char *name)
...
@@ -314,6 +314,31 @@ ClassDef *getClass(const char *name)
return
classDict
[
name
];
return
classDict
[
name
];
}
}
NamespaceDef
*
getResolvedNamespace
(
const
char
*
name
)
{
if
(
name
==
0
||
name
[
0
]
==
'\0'
)
return
0
;
QCString
*
subst
=
namespaceAliasDict
[
name
];
if
(
subst
)
{
int
count
=
0
;
// recursion detection guard
QCString
*
newSubst
;
while
((
newSubst
=
namespaceAliasDict
[
*
subst
])
&&
count
<
10
)
{
subst
=
newSubst
;
count
++
;
}
if
(
count
==
10
)
{
warn_cont
(
"Warning: possible recursive namespace alias detected for %s!
\n
"
,
name
);
}
return
namespaceDict
[
subst
->
data
()];
}
else
{
return
namespaceDict
[
name
];
}
}
ClassDef
*
getResolvedClass
(
const
char
*
name
)
ClassDef
*
getResolvedClass
(
const
char
*
name
)
{
{
if
(
name
==
0
||
name
[
0
]
==
'\0'
)
return
0
;
if
(
name
==
0
||
name
[
0
]
==
'\0'
)
return
0
;
...
@@ -2434,9 +2459,10 @@ void extractNamespaceName(const QCString &scopeName,
...
@@ -2434,9 +2459,10 @@ void extractNamespaceName(const QCString &scopeName,
{
{
QCString
clName
=
scopeName
.
copy
();
QCString
clName
=
scopeName
.
copy
();
//QCString nsName;
//QCString nsName;
if
(
!
clName
.
isEmpty
()
&&
namespaceDict
[
clName
]
&&
getClass
(
clName
)
==
0
)
NamespaceDef
*
nd
;
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
=
clName
.
copy
();
namespaceName
=
nd
->
name
()
.
copy
();
className
.
resize
(
0
);
className
.
resize
(
0
);
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
// className.data(),namespaceName.data());
// className.data(),namespaceName.data());
...
@@ -2446,9 +2472,9 @@ void extractNamespaceName(const QCString &scopeName,
...
@@ -2446,9 +2472,9 @@ void extractNamespaceName(const QCString &scopeName,
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)
{
{
if
(
i
>
0
&&
namespaceDict
[
clName
.
left
(
i
)]
&&
getClass
(
clName
.
left
(
i
))
==
0
)
if
(
i
>
0
&&
(
nd
=
getResolvedNamespace
(
clName
.
left
(
i
)))
&&
getClass
(
clName
.
left
(
i
))
==
0
)
{
{
namespaceName
=
clName
.
left
(
i
);
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(),
//printf("extractNamespace `%s' => `%s|%s'\n",scopeName.data(),
// className.data(),namespaceName.data());
// className.data(),namespaceName.data());
...
...
src/util.h
View file @
b91275de
...
@@ -107,6 +107,7 @@ extern QCString substitute(const char *s,const char *src,const char *dst);
...
@@ -107,6 +107,7 @@ extern QCString substitute(const char *s,const char *src,const char *dst);
extern
QCString
resolveDefines
(
const
char
*
n
);
extern
QCString
resolveDefines
(
const
char
*
n
);
extern
ClassDef
*
getClass
(
const
char
*
key
);
extern
ClassDef
*
getClass
(
const
char
*
key
);
extern
ClassDef
*
getResolvedClass
(
const
char
*
key
);
extern
ClassDef
*
getResolvedClass
(
const
char
*
key
);
extern
NamespaceDef
*
getResolvedNamespace
(
const
char
*
key
);
extern
FileDef
*
findFileDef
(
const
FileNameDict
*
fnDict
,
const
char
*
n
,
extern
FileDef
*
findFileDef
(
const
FileNameDict
*
fnDict
,
const
char
*
n
,
bool
&
ambig
);
bool
&
ambig
);
extern
QCString
showFileDefMatches
(
const
FileNameDict
*
fnDict
,
const
char
*
n
);
extern
QCString
showFileDefMatches
(
const
FileNameDict
*
fnDict
,
const
char
*
n
);
...
...
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