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
0b087b99
Commit
0b087b99
authored
May 06, 2007
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.5.2-20070506
parent
80f45b62
Changes
35
Hide whitespace changes
Inline
Side-by-side
Showing
35 changed files
with
1023 additions
and
585 deletions
+1023
-585
INSTALL
INSTALL
+2
-2
README
README
+2
-2
doxyapp.cpp
addon/doxyapp/doxyapp.cpp
+0
-1
configure
configure
+1
-1
autolink.doc
doc/autolink.doc
+3
-3
commands.doc
doc/commands.doc
+9
-0
config.doc
doc/config.doc
+25
-2
docblocks.doc
doc/docblocks.doc
+4
-0
language.doc
doc/language.doc
+1
-1
translator.py
doc/translator.py
+25
-9
translator_report.txt
doc/translator_report.txt
+51
-9
classdef.cpp
src/classdef.cpp
+1
-0
commentcnv.l
src/commentcnv.l
+2
-2
commentscan.l
src/commentscan.l
+5
-5
config.l
src/config.l
+14
-5
docparser.cpp
src/docparser.cpp
+35
-6
docparser.h
src/docparser.h
+1
-1
dot.cpp
src/dot.cpp
+19
-1
doxygen.cpp
src/doxygen.cpp
+10
-8
doxygen.h
src/doxygen.h
+30
-0
doxygen.pro.in
src/doxygen.pro.in
+3
-3
entry.cpp
src/entry.cpp
+147
-139
entry.h
src/entry.h
+3
-0
language.cpp
src/language.cpp
+1
-1
marshal.cpp
src/marshal.cpp
+139
-1
marshal.h
src/marshal.h
+48
-0
memberdef.cpp
src/memberdef.cpp
+5
-2
msc.cpp
src/msc.cpp
+1
-1
perlmodgen.cpp
src/perlmodgen.cpp
+21
-12
portable.cpp
src/portable.cpp
+3
-3
pre.l
src/pre.l
+2
-1
pyscanner.l
src/pyscanner.l
+12
-1
scanner.l
src/scanner.l
+60
-15
translator_cz.h
src/translator_cz.h
+332
-344
util.cpp
src/util.cpp
+6
-4
No files found.
INSTALL
View file @
0b087b99
DOXYGEN Version 1.5.2
DOXYGEN Version 1.5.2
-20070506
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (0
4 April
2007)
Dimitri van Heesch (0
6 May
2007)
README
View file @
0b087b99
DOXYGEN Version 1.5.2
DOXYGEN Version 1.5.2
_20070506
Please read INSTALL for compilation instructions.
...
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (0
4 April
2007)
Dimitri van Heesch (dimitri@stack.nl) (0
6 May
2007)
addon/doxyapp/doxyapp.cpp
View file @
0b087b99
...
...
@@ -25,7 +25,6 @@
* show some information about it.
*/
#include </usr/include/unistd.h> // ugly hack to get the right unistd.h (doxygen has one too)
#include <stdlib.h>
#include "doxygen.h"
#include "outputgen.h"
...
...
configure
View file @
0b087b99
...
...
@@ -20,7 +20,7 @@ doxygen_version_minor=5
doxygen_version_revision
=
2
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn
=
NO
doxygen_version_mmn
=
20070506
bin_dirs
=
`
echo
$PATH
|
sed
-e
"s/:/ /g"
`
...
...
doc/autolink.doc
View file @
0b087b99
...
...
@@ -84,10 +84,10 @@
For non overloaded members the argument list may be omitted.
If a function is overloaded and no matching argument list is specified
(i.e. pattern 2 or
5
is used), a link will be created to the
(i.e. pattern 2 or
6
is used), a link will be created to the
documentation of one of the overloaded members.
For member functions the class scope (as used in patterns 4 to
6
) may
For member functions the class scope (as used in patterns 4 to
7
) may
be omitted, if:
<ol>
<li>The pattern points to a documented member that belongs to the same class
...
...
@@ -101,7 +101,7 @@
All of these entities can be linked to in the same way as described in the
previous section. For sake of clarity it is advised to only use
patterns 3 and
6
in this case.
patterns 3 and
7
in this case.
\par Example:
\verbinclude autolink.cpp
...
...
doc/commands.doc
View file @
0b087b99
...
...
@@ -58,6 +58,7 @@ documentation:
\refitem cmddef \\def
\refitem cmddefgroup \\defgroup
\refitem cmddeprecated \\deprecated
\refitem cmddetails \\details
\refitem cmddir \\dir
\refitem cmddontinclude \\dontinclude
\refitem cmddot \\dot
...
...
@@ -863,6 +864,14 @@ is empty, \c TEST, \c DEV, or \c DEV \c TEST.
a deprecated entity. Can be used to describe alternatives,
expected life span, etc.
<hr>
\section cmddetails \\details {detailed decription}
\addindex \\details
Just like \ref cmdbrief "\\brief" starts a brief description, \\details
starts the detailed description. You can also start a new paragraph (blank line)
then the \\details command is not needed.
<hr>
\section cmdelse \\else
...
...
doc/config.doc
View file @
0b087b99
...
...
@@ -85,6 +85,7 @@ followed by the descriptions of the tags grouped by category.
\
refitem
cfg_dot_path
DOT_PATH
\
refitem
cfg_dot_transparent
DOT_TRANSPARENT
\
refitem
cfg_dotfile_dirs
DOTFILE_DIRS
\
refitem
cfg_doxyfile_encoding
DOXYFILE_ENCODING
\
refitem
cfg_enable_preprocessing
ENABLE_PREPROCESSING
\
refitem
cfg_enum_values_per_line
ENUM_VALUES_PER_LINE
\
refitem
cfg_enabled_sections
ENABLED_SECTIONS
...
...
@@ -178,6 +179,7 @@ followed by the descriptions of the tags grouped by category.
\
refitem
cfg_predefined
PREDEFINED
\
refitem
cfg_project_name
PROJECT_NAME
\
refitem
cfg_project_number
PROJECT_NUMBER
\
refitem
cfg_qt_autobrief
QT_AUTOBRIEF
\
refitem
cfg_quiet
QUIET
\
refitem
cfg_recursive
RECURSIVE
\
refitem
cfg_referenced_by_relation
REFERENCED_BY_RELATION
...
...
@@ -226,9 +228,18 @@ followed by the descriptions of the tags grouped by category.
\
endsecreflist
\
section
config_project
Project
related
options
\
anchor
cfg_
project_name
\
anchor
cfg_
doxyfile_encoding
<
dl
>
<
dt
>\
c
DOXYFILE_ENCODING
<
dd
>
\
addindex
DOXYFILE_ENCODING
This
tag
specifies
the
encoding
used
for
all
characters
in
the
config
file
that
follow
.
The
default
is
UTF
-
8
which
is
also
the
encoding
used
for
all
text
before
the
first
occurrence
of
this
tag
.
Doxygen
uses
libiconv
(
or
the
iconv
built
into
libc
)
for
the
transcoding
.
See
http
://
www
.
gnu
.
org
/
software
/
libiconv
for
the
list
of
possible
encodings
.
\
anchor
cfg_project_name
<
dt
>\
c
PROJECT_NAME
<
dd
>
\
addindex
PROJECT_NAME
The
\
c
PROJECT_NAME
tag
is
a
single
word
(
or
a
sequence
of
words
...
...
@@ -382,7 +393,17 @@ followed by the descriptions of the tags grouped by category.
If the \c JAVADOC_AUTOBRIEF is set to \c YES then doxygen
will interpret the first line (until the first dot) of a JavaDoc-style
comment as the brief description. If set to NO (the default), the
Javadoc-style will behave just like the Qt-style comments.
Javadoc-style will behave just like regular Qt-style comments
(thus requiring an explicit \@brief command for a brief description.)
\anchor cfg_qt_autobrief
<dt>\c QT_AUTOBRIEF <dd>
\addindex QT_AUTOBRIEF
If the \c QT_AUTOBRIEF is set to \c YES then doxygen
will interpret the first line (until the first dot) of a Qt-style
comment as the brief description. If set to NO (the default), the
Qt-style will behave just like regular Qt-style comments (thus
requiring an explicit \\brief command for a brief description.)
\anchor cfg_builtin_stl_support
<dt>\c BUILTIN_STL_SUPPORT <dd>
...
...
@@ -753,6 +774,8 @@ function's detailed documentation block.
If this tag is empty the current directory is searched.
\anchor cfg_input_encoding
<dt>\c INPUT_ENCODING <dd>
\addindex INPUT_ENCODING
This tag can be used to specify the character encoding of the source files that
doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default
input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding.
...
...
doc/docblocks.doc
View file @
0b087b99
...
...
@@ -209,6 +209,10 @@ JavaDoc style and \ref cfg_javadoc_autobrief "JAVADOC_AUTOBRIEF" set to YES:
for the corresponding HTML documentation that is generated by doxygen.
\endhtmlonly
Similarly, if one wishes the first sentence of a Qt style documentation
block to automatically be treated as a brief description, one may set
\ref cfg_qt_autobrief "QT_AUTOBRIEF" to YES in the configuration file.
Unlike most other documentation systems, doxygen also allows you to put
the documentation of members (including global functions) in front of
the \e definition. This way the documentation can be placed in the source
...
...
doc/language.doc
View file @
0b087b99
...
...
@@ -23,7 +23,7 @@ text fragments, generated by doxygen, can be produced in languages other
than English (the default). The output language is chosen through the
configuration file (with default name and known as Doxyfile).
Currently (version 1.5.
1-20070219
), 33 languages
Currently (version 1.5.
2
), 33 languages
are supported (sorted alphabetically):
Afrikaans, Arabic, Brazilian Portuguese, Catalan, Chinese, Chinese
Traditional, Croatian, Czech, Danish, Dutch, English, Finnish, French,
...
...
doc/translator.py
View file @
0b087b99
...
...
@@ -48,6 +48,7 @@
2005/02/28 - Slight modification to generate "mailto.txt" auxiliary file.
2005/08/15 - Doxygen's root directory determined primarily from DOXYGEN
environment variable. When not found, then relatively to the script.
2007/03/20 - The "translate me!" searched in comments and reported if found.
"""
from
__future__
import
generators
...
...
@@ -156,17 +157,20 @@ class Transl:
# Initialize the other collected information.
self
.
classId
=
None
self
.
baseClassId
=
None
self
.
readableStatus
=
None
# 'up-to-date', '1.2.3', '1.3', etc.
self
.
status
=
None
# '', '1.2.03', '1.3.00', etc.
self
.
lang
=
None
# like 'Brasilian'
self
.
langReadable
=
None
# like 'Brasilian Portuguese'
self
.
note
=
None
# like 'should be cleaned up'
self
.
prototypeDic
=
{}
# uniPrototype -> prototype
self
.
obsoleteMethods
=
None
# list of prototypes to be removed
self
.
missingMethods
=
None
# list of prototypes to be implemented
self
.
readableStatus
=
None
# 'up-to-date', '1.2.3', '1.3', etc.
self
.
status
=
None
# '', '1.2.03', '1.3.00', etc.
self
.
lang
=
None
# like 'Brasilian'
self
.
langReadable
=
None
# like 'Brasilian Portuguese'
self
.
note
=
None
# like 'should be cleaned up'
self
.
prototypeDic
=
{}
# uniPrototype -> prototype
self
.
translateMeText
=
'translate me!'
self
.
translateMeFlag
=
False
# comments with "translate me!" found
self
.
obsoleteMethods
=
None
# list of prototypes to be removed
self
.
missingMethods
=
None
# list of prototypes to be implemented
self
.
implementedMethods
=
None
# list of implemented required methods
self
.
adaptMinClass
=
None
# The newest adapter class that can be used
self
.
adaptMinClass
=
None
# The newest adapter class that can be used
def
__tokenGenerator
(
self
):
"""Generator that reads the file and yields tokens as 4-tuples.
...
...
@@ -265,6 +269,12 @@ class Transl:
sys
.
stderr
.
write
(
msg
)
yield
(
tokenId
,
tokenStr
,
tokenLineNo
)
# If it is a comment that contains the self.translateMeText
# string, set the flag -- the situation will be reported.
if
tokenId
==
'comment'
and
tokenStr
.
find
(
self
.
translateMeText
)
>=
0
:
self
.
translateMeFlag
=
True
tokenId
=
None
tokenStr
=
''
tokenLineNo
=
0
...
...
@@ -1103,11 +1113,17 @@ class Transl:
self
.
adaptMinClass
=
adaptMinClass
self
.
readableStatus
=
adaptMinVersion
# simplified
# If everything seems OK, but the explicit mark self.translateMeText
# in comments was found, something must be translated.
if
not
self
.
note
and
self
.
status
==
''
and
self
.
translateMeFlag
:
self
.
note
=
'The "
%
s" found in a comment.'
%
self
.
translateMeText
# If everything seems OK, but there are obsolete methods, set
# the note to clean-up source. This note will be used only when
# the previous code did not set another note (priority).
if
not
self
.
note
and
self
.
status
==
''
and
self
.
obsoleteMethods
:
self
.
note
=
'Remove the obsolete methods (never used).'
def
report
(
self
,
fout
):
"""Returns the report part for the source as a multiline string.
...
...
doc/translator_report.txt
View file @
0b087b99
(1.5.
1-20070219
)
(1.5.
2
)
Doxygen supports the following 33 languages (sorted alphabetically):
...
...
@@ -17,20 +17,20 @@ alphabetically). This means that they derive from the Translator class
and they implement all 194 of the required methods. Anyway, there
still may be some details listed even for them:
TranslatorBrazilian
TranslatorBrazilian
-- The "translate me!" found in a comment.
TranslatorCatalan
TranslatorChinese
TranslatorCroatian
TranslatorChinese
-- The "translate me!" found in a comment.
TranslatorCroatian
-- The "translate me!" found in a comment.
TranslatorCzech
TranslatorDanish
TranslatorDanish
-- The "translate me!" found in a comment.
TranslatorDutch
TranslatorEnglish
TranslatorFrench
TranslatorGerman
TranslatorGreek --
Remove the obsolete methods (never used)
.
TranslatorItalian
TranslatorGerman
-- The "translate me!" found in a comment.
TranslatorGreek --
The "translate me!" found in a comment
.
TranslatorItalian
-- The "translate me!" found in a comment.
TranslatorJapanese -- Remove the obsolete methods (never used).
TranslatorRussian
TranslatorRussian
-- The "translate me!" found in a comment.
TranslatorSpanish
----------------------------------------------------------------------
...
...
@@ -105,6 +105,18 @@ TranslatorArabic (TranslatorAdapter_1_4_6) 1 method to implement
virtual QCString trNoDescriptionAvailable()
TranslatorBrazilian (Translator)
-------------------
Implements 194 of the required methods.
TranslatorChinese (Translator)
-----------------
Implements 194 of the required methods.
TranslatorChinesetraditional (TranslatorAdapter_1_4_6) 1 method to implement
----------------------------
...
...
@@ -127,6 +139,18 @@ TranslatorChinesetraditional (TranslatorAdapter_1_4_6) 1 method to implement
virtual QCString trNoDescriptionAvailable()
TranslatorCroatian (Translator)
------------------
Implements 194 of the required methods.
TranslatorDanish (Translator)
----------------
Implements 194 of the required methods.
TranslatorFinnish (TranslatorEnglish) 96 methods to implement
-----------------
...
...
@@ -243,6 +267,12 @@ TranslatorFinnish (TranslatorEnglish) 96 methods to implement
QCString trNoDescriptionAvailable()
TranslatorGerman (Translator)
----------------
Implements 194 of the required methods.
TranslatorGreek (Translator)
---------------
...
...
@@ -294,6 +324,12 @@ TranslatorIndonesian (TranslatorAdapter_1_4_6) 1 method to implement
virtual QCString trNoDescriptionAvailable()
TranslatorItalian (Translator)
-----------------
Implements 194 of the required methods.
TranslatorJapanese (Translator)
------------------
...
...
@@ -485,6 +521,12 @@ TranslatorRomanian (TranslatorAdapter_1_4_1) 2 methods to implement
virtual QCString trNoDescriptionAvailable()
TranslatorRussian (Translator)
-----------------
Implements 194 of the required methods.
TranslatorSerbian (TranslatorAdapter_1_4_1) 2 methods to implement
-----------------
...
...
src/classdef.cpp
View file @
0b087b99
...
...
@@ -2849,6 +2849,7 @@ void ClassDef::addMembersToTemplateInstance(ClassDef *cd,const char *templSpec)
imd
->
setBriefDescription
(
md
->
briefDescription
(),
md
->
briefFile
(),
md
->
briefLine
());
imd
->
setInbodyDocumentation
(
md
->
inbodyDocumentation
(),
md
->
inbodyFile
(),
md
->
inbodyLine
());
imd
->
setMemberSpecifiers
(
md
->
getMemberSpecifiers
());
imd
->
setMemberGroupId
(
md
->
getMemberGroupId
());
insertMember
(
imd
);
//printf("Adding member=%s %s%s to class %s templSpec %s\n",
// imd->typeString(),imd->name().data(),imd->argsString(),
...
...
src/commentcnv.l
View file @
0b087b99
...
...
@@ -164,7 +164,7 @@ static void endCondSection()
}
}
/** remove and executes
\\cond and \\
endcond commands in \a s */
/** remove and executes
cond and
endcond commands in \a s */
static QCString handleCondCmdInAliases(const QCString &s)
{
QCString result;
...
...
@@ -566,7 +566,7 @@ void replaceComment(int offset)
* -# It converts multi-line C++ style comment blocks (that are aligned)
* to C style comment blocks (if MULTILINE_CPP_IS_BRIEF is set to NO).
* -# It replaces aliases with their definition (see ALIASES)
* -# It handles conditional sections (
\cond...\
endcond blocks)
* -# It handles conditional sections (
cond...
endcond blocks)
*/
void convertCppComments(BufStr *inBuf,BufStr *outBuf,const char *fileName)
{
...
...
src/commentscan.l
View file @
0b087b99
...
...
@@ -2281,15 +2281,15 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
/* in */ const QCString &fileName,
/* in */ int lineNr,
/* in */ bool isBrief,
/* in */ bool is
JavaDocStyle
,
/* in */ bool is
AutoBriefOn
,
/* in */ bool isInbody,
/* in,out */ Protection &prot,
/* in,out */ int &position,
/* out */ bool &newEntryNeeded
)
{
//printf("parseCommentBlock() isBrief=%d is
JavaDocStyle
=%d lineNr=%d\n",
// isBrief,is
JavaDocStyle
,lineNr);
//printf("parseCommentBlock() isBrief=%d is
AutoBriefOn
=%d lineNr=%d\n",
// isBrief,is
AutoBriefOn
,lineNr);
initParser();
guards.setAutoDelete(TRUE);
...
...
@@ -2310,8 +2310,8 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
parseMore = FALSE;
inBody = isInbody;
outputXRef.resize(0);
setOutput( isBrief || is
JavaDocStyle
? OutputBrief : OutputDoc );
briefEndsAtDot = is
JavaDocStyle
;
setOutput( isBrief || is
AutoBriefOn
? OutputBrief : OutputDoc );
briefEndsAtDot = is
AutoBriefOn
;
if (!current->inbodyDocs.isEmpty() && isInbody) // separate in body fragments
{
...
...
src/config.l
View file @
0b087b99
...
...
@@ -502,7 +502,6 @@ static void readIncludeFile(const char *incName)
<Start>[a-z_A-Z][a-z_A-Z0-9]*[ \t]*"=" { QCString cmd=yytext;
cmd=cmd.left(cmd.length()-1).stripWhiteSpace();
ConfigOption *option = config->get(cmd);
option->setEncoding(encoding);
if (option==0) // oops not known
{
config_err("Warning: ignoring unsupported tag `%s' at line %d, file %s\n",
...
...
@@ -511,6 +510,7 @@ static void readIncludeFile(const char *incName)
}
else // known tag
{
option->setEncoding(encoding);
switch(option->kind())
{
case ConfigOption::O_Info:
...
...
@@ -1574,8 +1574,17 @@ void Config::create()
"If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen \n"
"will interpret the first line (until the first dot) of a JavaDoc-style \n"
"comment as the brief description. If set to NO, the JavaDoc \n"
"comments will behave just like the Qt-style comments (thus requiring an \n"
"explicit @brief command for a brief description. \n",
"comments will behave just like regular Qt-style comments \n"
"(thus requiring an explicit @brief command for a brief description.) \n",
FALSE
);
cb = addBool(
"QT_AUTOBRIEF",
"If the QT_AUTOBRIEF tag is set to YES then Doxygen will \n"
"interpret the first line (until the first dot) of a Qt-style \n"
"comment as the brief description. If set to NO, the comments \n"
"will behave just like regular Qt-style comments (thus requiring \n"
"an explicit \\brief command for a brief description.) \n",
FALSE
);
cb = addBool(
...
...
@@ -2821,7 +2830,7 @@ void Config::create()
cb->addDependency("HAVE_DOT");
cb = addBool(
"CALL_GRAPH",
"If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will \n"
"If the CALL_GRAPH
, SOURCE_BROWSER
and HAVE_DOT tags are set to YES then doxygen will \n"
"generate a call dependency graph for every global function or class method. \n"
"Note that enabling this option will significantly increase the time of a run. \n"
"So in most cases it will be better to enable call graphs for selected \n"
...
...
@@ -2831,7 +2840,7 @@ void Config::create()
cb->addDependency("HAVE_DOT");
cb = addBool(
"CALLER_GRAPH",
"If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will \n"
"If the CALLER_GRAPH
, SOURCE_BROWSER
and HAVE_DOT tags are set to YES then doxygen will \n"
"generate a caller dependency graph for every global function or class method. \n"
"Note that enabling this option will significantly increase the time of a run. \n"
"So in most cases it will be better to enable caller graphs for selected \n"
...
...
src/docparser.cpp
View file @
0b087b99
...
...
@@ -1422,7 +1422,7 @@ static void readTextFileByName(const QString &file,QString &text)
FileDef
*
fd
;
if
((
fd
=
findFileDef
(
Doxygen
::
exampleNameDict
,
file
,
ambig
)))
{
text
=
fileToString
(
fd
->
absFilePath
(),
FALSE
);
text
=
fileToString
(
fd
->
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)
);
}
else
if
(
ambig
)
{
...
...
@@ -2092,6 +2092,8 @@ void DocRef::parse()
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Unsupported symbol %s found"
,
g_token
->
name
.
data
());
break
;
case
TK_HTMLTAG
:
break
;
default
:
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Unexpected token %s"
,
tokToString
(
tok
));
...
...
@@ -2111,7 +2113,7 @@ void DocRef::parse()
}
handlePendingStyleCommands
(
this
,
m_children
);
DBG
((
"DocRef::parse() end
\n
"
));
DocNode
*
n
=
g_nodeStack
.
pop
();
ASSERT
(
n
==
this
);
}
...
...
@@ -2155,7 +2157,7 @@ DocLink::DocLink(DocNode *parent,const QString &target) :
}
QString
DocLink
::
parse
(
bool
isJavaLink
)
QString
DocLink
::
parse
(
bool
isJavaLink
,
bool
isXmlLink
)
{
QString
result
;
g_nodeStack
.
push
(
this
);
...
...
@@ -2187,6 +2189,13 @@ QString DocLink::parse(bool isJavaLink)
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Unsupported symbol %s found"
,
g_token
->
name
.
data
());
break
;
case
TK_HTMLTAG
:
if
(
g_token
->
name
!=
"see"
||
!
isXmlLink
)
{
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Unexpected xml/html command %s found"
,
g_token
->
name
.
data
());
}
goto
endlink
;
case
TK_LNKWORD
:
case
TK_WORD
:
if
(
isJavaLink
)
// special case to detect closing }
...
...
@@ -4847,11 +4856,31 @@ int DocPara::handleHtmlStartTag(const QString &tagName,const HtmlAttribList &tag
// can we expect from Microsoft...)
{
QString
cref
;
//printf("XML_SEE: empty tag=%d\n",g_token->emptyTag);
if
(
findAttribute
(
tagHtmlAttribs
,
"cref"
,
&
cref
))
{
DocRef
*
ref
=
new
DocRef
(
this
,
cref
);
m_children
.
append
(
ref
);
ref
->
parse
();
if
(
g_token
->
emptyTag
)
// <see cref="..."/> style
{
bool
inSeeBlock
=
g_inSeeBlock
;
g_token
->
name
=
cref
;
g_inSeeBlock
=
TRUE
;
handleLinkedWord
(
this
,
m_children
);
g_inSeeBlock
=
inSeeBlock
;
}
else
// <see cref="...">...</see> style
{
//DocRef *ref = new DocRef(this,cref);
//m_children.append(ref);
//ref->parse();
doctokenizerYYsetStatePara
();
DocLink
*
lnk
=
new
DocLink
(
this
,
cref
);
m_children
.
append
(
lnk
);
QString
leftOver
=
lnk
->
parse
(
FALSE
,
TRUE
);
if
(
!
leftOver
.
isEmpty
())
{
m_children
.
append
(
new
DocWord
(
this
,
leftOver
));
}
}
}
else
{
...
...
src/docparser.h
View file @
0b087b99
...
...
@@ -639,7 +639,7 @@ class DocLink : public CompAccept<DocLink>, public DocNode
{
public
:
DocLink
(
DocNode
*
parent
,
const
QString
&
target
);
QString
parse
(
bool
);
QString
parse
(
bool
,
bool
isXmlLink
=
FALSE
);
Kind
kind
()
const
{
return
Kind_Link
;
}
QString
file
()
const
{
return
m_file
;
}
QString
relPath
()
const
{
return
m_relPath
;
}
...
...
src/dot.cpp
View file @
0b087b99
...
...
@@ -694,6 +694,24 @@ static QCString convertLabel(const QCString &l)
return
result
;
}
static
QCString
escapeTooltip
(
const
QCString
&
tooltip
)
{
QCString
result
;
const
char
*
p
=
tooltip
.
data
();
if
(
p
==
0
)
return
result
;
char
c
;
while
((
c
=*
p
++
))
{
switch
(
c
)
{
case
'\\'
:
result
+=
"
\\\\
"
;
break
;
case
'"'
:
result
+=
"
\\\"
"
;
break
;
default
:
result
+=
c
;
break
;
}
}
return
result
;
}
static
void
writeBoxMemberList
(
QTextStream
&
t
,
char
prot
,
MemberList
*
ml
,
ClassDef
*
scope
)
{
if
(
ml
)
...
...
@@ -812,7 +830,7 @@ void DotNode::writeBox(QTextStream &t,
}
if
(
!
m_tooltip
.
isEmpty
())
{
t
<<
",tooltip=
\"
"
<<
m_tooltip
<<
"
\"
"
;
t
<<
",tooltip=
\"
"
<<
escapeTooltip
(
m_tooltip
)
<<
"
\"
"
;
}
}
t
<<
"];"
<<
endl
;
...
...
src/doxygen.cpp
View file @
0b087b99
...
...
@@ -132,6 +132,7 @@ ObjCache *Doxygen::symbolCache = 0;
Store
*
Doxygen
::
symbolStorage
;
QCString
Doxygen
::
objDBFileName
;
QCString
Doxygen
::
entryDBFileName
;
bool
Doxygen
::
gatherDefines
=
TRUE
;
// locally accessible globals
static
QDict
<
EntryNav
>
classEntries
(
1009
);
...
...
@@ -4687,8 +4688,9 @@ static void addMemberDocs(EntryNav *rootNav,
{
//printf("setInitializer\n");
md
->
setInitializer
(
root
->
initializer
);
md
->
setMaxInitLines
(
root
->
initLines
);
}
md
->
setMaxInitLines
(
root
->
initLines
);
if
(
rfd
)
{
...
...
@@ -8178,7 +8180,7 @@ static int transcodeCharacterBuffer(BufStr &srcBuf,int size,
// reads a file into an array and filters out any 0x00 and 0x06 bytes,
// because these are special for the parser.
static
void
copyAndFilterFile
(
const
char
*
fileName
,
BufStr
&
dest
)
void
copyAndFilterFile
(
const
char
*
fileName
,
BufStr
&
dest
)
{
// try to open file
int
size
=
0
;
...
...
@@ -8349,7 +8351,7 @@ static void parseFiles(Entry *root,EntryNav *rootNav)
// The directory is read iff the recusiveFlag is set.
// The contents of all files is append to the input string
static
int
readDir
(
QFileInfo
*
fi
,
int
readDir
(
QFileInfo
*
fi
,
FileNameList
*
fnList
,
FileNameDict
*
fnDict
,
StringDict
*
exclDict
,
...
...
@@ -8441,7 +8443,7 @@ static int readDir(QFileInfo *fi,
// read a file or all files in a directory and append their contents to the
// input string. The names of the files are appended to the `fiList' list.
static
int
readFileOrDirectory
(
const
char
*
s
,
int
readFileOrDirectory
(
const
char
*
s
,
FileNameList
*
fnList
,
FileNameDict
*
fnDict
,
StringDict
*
exclDict
,
...
...
@@ -8450,8 +8452,8 @@ static int readFileOrDirectory(const char *s,
StringList
*
resultList
,
StringDict
*
resultDict
,
bool
recursive
,
bool
errorIfNotExist
=
TRUE
,
QDict
<
void
>
*
killDict
=
0
bool
errorIfNotExist
,
QDict
<
void
>
*
killDict
)
{
//printf("killDict=%p count=%d\n",killDict,killDict->count());
...
...
@@ -8526,7 +8528,7 @@ static int readFileOrDirectory(const char *s,
//----------------------------------------------------------------------------
static
void
readFormulaRepository
()
void
readFormulaRepository
()
{
QFile
f
(
Config_getString
(
"HTML_OUTPUT"
)
+
"/formula.repository"
);
if
(
f
.
open
(
IO_ReadOnly
))
// open repository
...
...
@@ -8641,7 +8643,7 @@ static void escapeAliases()
//----------------------------------------------------------------------------
static
void
readAliases
()
void
readAliases
()
{
// add aliases to a dictionary
Doxygen
::
aliasDict
.
setAutoDelete
(
TRUE
);
...
...
src/doxygen.h
View file @
0b087b99
...
...
@@ -45,6 +45,8 @@ class DirDef;
class
ParserManager
;
class
ObjCache
;
class
Store
;
class
QFileInfo
;
class
BufStr
;
typedef
QList
<
QCString
>
StringList
;
typedef
QDict
<
FileDef
>
FileDict
;
...
...
@@ -123,6 +125,7 @@ class Doxygen
static
Store
*
symbolStorage
;
static
QCString
objDBFileName
;
static
QCString
entryDBFileName
;
static
bool
gatherDefines
;
};
void
initDoxygen
();
...
...
@@ -130,6 +133,33 @@ void readConfiguration(int argc, char **argv);
void
checkConfiguration
();
void
parseInput
();
void
generateOutput
();
void
readAliases
();
void
readFormulaRepository
();
int
readFileOrDirectory
(
const
char
*
s
,
FileNameList
*
fnList
,
FileNameDict
*
fnDict
,
StringDict
*
exclDict
,
QStrList
*
patList
,
QStrList
*
exclPatList
,
StringList
*
resultList
,
StringDict
*
resultDict
,
bool
recursive
,
bool
errorIfNotExist
=
TRUE
,
QDict
<
void
>
*
killDict
=
0
);
int
readDir
(
QFileInfo
*
fi
,
FileNameList
*
fnList
,
FileNameDict
*
fnDict
,
StringDict
*
exclDict
,
QStrList
*
patList
,
QStrList
*
exclPatList
,
StringList
*
resultList
,
StringDict
*
resultDict
,
bool
errorIfNotExist
,
bool
recursive
,
QDict
<
void
>
*
killDict
);
void
copyAndFilterFile
(
const
char
*
fileName
,
BufStr
&
dest
);
#define NEWMATCH
...
...
src/doxygen.pro.in
View file @
0b087b99
...
...
@@ -21,12 +21,12 @@ SOURCES = main.cpp
unix:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
win32:INCLUDEPATH += .
win32-mingw:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
win32-msvc:LIBS += qtools.lib png.lib md5.lib doxygen.lib doxycfg.lib shell32.lib
win32-msvc:LIBS += qtools.lib png.lib md5.lib doxygen.lib doxycfg.lib shell32.lib
iconv.lib
win32-msvc:TMAKE_LFLAGS += /LIBPATH:..\lib
win32-borland:LIBS += qtools.lib png.lib md5.lib doxygen.lib doxycfg.lib shell32.lib
win32-borland:LIBS += qtools.lib png.lib md5.lib doxygen.lib doxycfg.lib shell32.lib
iconv.lib
win32-borland:TMAKE_LFLAGS += -L..\lib -L$(BCB)\lib\psdk
win32:TMAKE_CXXFLAGS += -DQT_NODLL
win32-g++:LIBS = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
win32-g++:LIBS = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5
-liconv
win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti
INCLUDEPATH += ../qtools ../libpng ../libmd5 .
#win32-g++:INCLUDEPATH -= ../libpng
...
...
src/entry.cpp
View file @
0b087b99
...
...
@@ -23,6 +23,145 @@
#include "section.h"
#include "doxygen.h"
//------------------------------------------------------------------
#define HEADER ('D'<<24)+('O'<<16)+('X'<<8)+'!'
#if 0
static bool saveEntry(Entry *e,StorageIntf *f)
{
marshalUInt(f,HEADER);
marshalInt(f,(int)e->protection);
marshalInt(f,(int)e->mtype);
marshalInt(f,e->spec);
marshalInt(f,e->initLines);
marshalBool(f,e->stat);
marshalBool(f,e->explicitExternal);
marshalBool(f,e->proto);
marshalBool(f,e->subGrouping);
marshalBool(f,e->callGraph);
marshalBool(f,e->callerGraph);
marshalInt(f,(int)e->virt);
marshalQCString(f,e->args);
marshalQCString(f,e->bitfields);
marshalArgumentList(f,e->argList);
marshalArgumentLists(f,e->tArgLists);
marshalQGString(f,e->program);
marshalQGString(f,e->initializer);
marshalQCString(f,e->includeFile);
marshalQCString(f,e->includeName);
marshalQCString(f,e->doc);
marshalInt(f,e->docLine);
marshalQCString(f,e->docFile);
marshalQCString(f,e->brief);
marshalInt(f,e->briefLine);
marshalQCString(f,e->briefFile);
marshalQCString(f,e->inbodyDocs);
marshalInt(f,e->inbodyLine);
marshalQCString(f,e->inbodyFile);
marshalQCString(f,e->relates);
marshalBool(f,e->relatesDup);
marshalQCString(f,e->read);
marshalQCString(f,e->write);
marshalQCString(f,e->inside);
marshalQCString(f,e->exception);
marshalInt(f,e->bodyLine);
marshalInt(f,e->endBodyLine);
marshalInt(f,e->mGrpId);
marshalBaseInfoList(f,e->extends);
marshalGroupingList(f,e->groups);
marshalSectionInfoList(f,e->anchors);
marshalQCString(f,e->fileName);
marshalInt(f,e->startLine);
marshalItemInfoList(f,e->sli);
marshalBool(f,e->objc);
marshalBool(f,e->hidden);
marshalInt(f,(int)e->groupDocType);
return TRUE;
}
static bool loadEntry(Entry *e,StorageIntf *f)
{
uint header=unmarshalUInt(f);
if (header!=HEADER)
{
printf("Internal error: Invalid header %x for entry in storage file %s\n",
header,Doxygen::entryDBFileName.data());
exit(1);
}
e->protection = (Protection)unmarshalInt(f);
e->mtype = (MethodTypes)unmarshalInt(f);
e->spec = unmarshalInt(f);
e->initLines = unmarshalInt(f);
e->stat = unmarshalBool(f);
e->explicitExternal = unmarshalBool(f);
e->proto = unmarshalBool(f);
e->subGrouping = unmarshalBool(f);
e->callGraph = unmarshalBool(f);
e->callerGraph = unmarshalBool(f);
e->virt = (Specifier)unmarshalInt(f);
e->args = unmarshalQCString(f);
e->bitfields = unmarshalQCString(f);
delete e->argList;
e->argList = unmarshalArgumentList(f);
e->tArgLists = unmarshalArgumentLists(f);
e->program = unmarshalQGString(f);
e->initializer = unmarshalQGString(f);
e->includeFile = unmarshalQCString(f);
e->includeName = unmarshalQCString(f);
e->doc = unmarshalQCString(f);
e->docLine = unmarshalInt(f);
e->docFile = unmarshalQCString(f);
e->brief = unmarshalQCString(f);
e->briefLine = unmarshalInt(f);
e->briefFile = unmarshalQCString(f);
e->inbodyDocs = unmarshalQCString(f);
e->inbodyLine = unmarshalInt(f);
e->inbodyFile = unmarshalQCString(f);
e->relates = unmarshalQCString(f);
e->relatesDup = unmarshalBool(f);
e->read = unmarshalQCString(f);
e->write = unmarshalQCString(f);
e->inside = unmarshalQCString(f);
e->exception = unmarshalQCString(f);
e->bodyLine = unmarshalInt(f);
e->endBodyLine = unmarshalInt(f);
e->mGrpId = unmarshalInt(f);
delete e->extends;
e->extends = unmarshalBaseInfoList(f);
delete e->groups;
e->groups = unmarshalGroupingList(f);
delete e->anchors;
e->anchors = unmarshalSectionInfoList(f);
e->fileName = unmarshalQCString(f);
e->startLine = unmarshalInt(f);
e->sli = unmarshalItemInfoList(f);
e->objc = unmarshalBool(f);
e->hidden = unmarshalBool(f);
e->groupDocType = (Entry::GroupDocType)unmarshalInt(f);
return TRUE;
}
#endif
//------------------------------------------------------------------
/*! the argument list is documented if one of its
* arguments is documented
*/
bool
ArgumentList
::
hasDocumentation
()
const
{
bool
hasDocs
=
FALSE
;
ArgumentListIterator
ali
(
*
this
);
Argument
*
a
;
for
(
ali
.
toFirst
();
!
hasDocs
&&
(
a
=
ali
.
current
());
++
ali
)
{
hasDocs
=
hasDocs
||
a
->
hasDocumentation
();
}
return
hasDocs
;
}
//------------------------------------------------------------------
int
Entry
::
num
=
0
;
Entry
::
Entry
()
...
...
@@ -303,24 +442,6 @@ void Entry::createNavigationIndex(EntryNav *rootNav,FileStorage *storage,FileDef
}
}
/*! the argument list is documented if one of its
* arguments is documented
*/
bool
ArgumentList
::
hasDocumentation
()
const
{
bool
hasDocs
=
FALSE
;
ArgumentListIterator
ali
(
*
this
);
Argument
*
a
;
for
(
ali
.
toFirst
();
!
hasDocs
&&
(
a
=
ali
.
current
());
++
ali
)
{
hasDocs
=
hasDocs
||
a
->
hasDocumentation
();
}
return
hasDocs
;
}
void
Entry
::
addSpecialListItem
(
const
char
*
listName
,
int
itemId
)
{
if
(
sli
==
0
)
...
...
@@ -336,121 +457,6 @@ void Entry::addSpecialListItem(const char *listName,int itemId)
//------------------------------------------------------------------
#define HEADER ('D'<<24)+('O'<<16)+('X'<<8)+'!'
static
bool
saveEntry
(
Entry
*
e
,
FileStorage
*
f
)
{
marshalUInt
(
f
,
HEADER
);
marshalInt
(
f
,(
int
)
e
->
protection
);
marshalInt
(
f
,(
int
)
e
->
mtype
);
marshalInt
(
f
,
e
->
spec
);
marshalInt
(
f
,
e
->
initLines
);
marshalBool
(
f
,
e
->
stat
);
marshalBool
(
f
,
e
->
explicitExternal
);
marshalBool
(
f
,
e
->
proto
);
marshalBool
(
f
,
e
->
subGrouping
);
marshalBool
(
f
,
e
->
callGraph
);
marshalBool
(
f
,
e
->
callerGraph
);
marshalInt
(
f
,(
int
)
e
->
virt
);
marshalQCString
(
f
,
e
->
args
);
marshalQCString
(
f
,
e
->
bitfields
);
marshalArgumentList
(
f
,
e
->
argList
);
marshalArgumentLists
(
f
,
e
->
tArgLists
);
marshalQGString
(
f
,
e
->
program
);
marshalQGString
(
f
,
e
->
initializer
);
marshalQCString
(
f
,
e
->
includeFile
);
marshalQCString
(
f
,
e
->
includeName
);
marshalQCString
(
f
,
e
->
doc
);
marshalInt
(
f
,
e
->
docLine
);
marshalQCString
(
f
,
e
->
docFile
);
marshalQCString
(
f
,
e
->
brief
);
marshalInt
(
f
,
e
->
briefLine
);
marshalQCString
(
f
,
e
->
briefFile
);
marshalQCString
(
f
,
e
->
inbodyDocs
);
marshalInt
(
f
,
e
->
inbodyLine
);
marshalQCString
(
f
,
e
->
inbodyFile
);
marshalQCString
(
f
,
e
->
relates
);
marshalBool
(
f
,
e
->
relatesDup
);
marshalQCString
(
f
,
e
->
read
);
marshalQCString
(
f
,
e
->
write
);
marshalQCString
(
f
,
e
->
inside
);
marshalQCString
(
f
,
e
->
exception
);
marshalInt
(
f
,
e
->
bodyLine
);
marshalInt
(
f
,
e
->
endBodyLine
);
marshalInt
(
f
,
e
->
mGrpId
);
marshalBaseInfoList
(
f
,
e
->
extends
);
marshalGroupingList
(
f
,
e
->
groups
);
marshalSectionInfoList
(
f
,
e
->
anchors
);
marshalQCString
(
f
,
e
->
fileName
);
marshalInt
(
f
,
e
->
startLine
);
marshalItemInfoList
(
f
,
e
->
sli
);
marshalBool
(
f
,
e
->
objc
);
marshalBool
(
f
,
e
->
hidden
);
marshalInt
(
f
,(
int
)
e
->
groupDocType
);
return
TRUE
;
}
static
bool
loadEntry
(
Entry
*
e
,
FileStorage
*
f
)
{
uint
header
=
unmarshalUInt
(
f
);
if
(
header
!=
HEADER
)
{
printf
(
"Internal error: Invalid header %x for entry in storage file %s
\n
"
,
header
,
Doxygen
::
entryDBFileName
.
data
());
exit
(
1
);
}
e
->
protection
=
(
Protection
)
unmarshalInt
(
f
);
e
->
mtype
=
(
MethodTypes
)
unmarshalInt
(
f
);
e
->
spec
=
unmarshalInt
(
f
);
e
->
initLines
=
unmarshalInt
(
f
);
e
->
stat
=
unmarshalBool
(
f
);
e
->
explicitExternal
=
unmarshalBool
(
f
);
e
->
proto
=
unmarshalBool
(
f
);
e
->
subGrouping
=
unmarshalBool
(
f
);
e
->
callGraph
=
unmarshalBool
(
f
);
e
->
callerGraph
=
unmarshalBool
(
f
);
e
->
virt
=
(
Specifier
)
unmarshalInt
(
f
);
e
->
args
=
unmarshalQCString
(
f
);
e
->
bitfields
=
unmarshalQCString
(
f
);
delete
e
->
argList
;
e
->
argList
=
unmarshalArgumentList
(
f
);
e
->
tArgLists
=
unmarshalArgumentLists
(
f
);
e
->
program
=
unmarshalQGString
(
f
);
e
->
initializer
=
unmarshalQGString
(
f
);
e
->
includeFile
=
unmarshalQCString
(
f
);
e
->
includeName
=
unmarshalQCString
(
f
);
e
->
doc
=
unmarshalQCString
(
f
);
e
->
docLine
=
unmarshalInt
(
f
);
e
->
docFile
=
unmarshalQCString
(
f
);
e
->
brief
=
unmarshalQCString
(
f
);
e
->
briefLine
=
unmarshalInt
(
f
);
e
->
briefFile
=
unmarshalQCString
(
f
);
e
->
inbodyDocs
=
unmarshalQCString
(
f
);
e
->
inbodyLine
=
unmarshalInt
(
f
);
e
->
inbodyFile
=
unmarshalQCString
(
f
);
e
->
relates
=
unmarshalQCString
(
f
);
e
->
relatesDup
=
unmarshalBool
(
f
);
e
->
read
=
unmarshalQCString
(
f
);
e
->
write
=
unmarshalQCString
(
f
);
e
->
inside
=
unmarshalQCString
(
f
);
e
->
exception
=
unmarshalQCString
(
f
);
e
->
bodyLine
=
unmarshalInt
(
f
);
e
->
endBodyLine
=
unmarshalInt
(
f
);
e
->
mGrpId
=
unmarshalInt
(
f
);
delete
e
->
extends
;
e
->
extends
=
unmarshalBaseInfoList
(
f
);
delete
e
->
groups
;
e
->
groups
=
unmarshalGroupingList
(
f
);
delete
e
->
anchors
;
e
->
anchors
=
unmarshalSectionInfoList
(
f
);
e
->
fileName
=
unmarshalQCString
(
f
);
e
->
startLine
=
unmarshalInt
(
f
);
e
->
sli
=
unmarshalItemInfoList
(
f
);
e
->
objc
=
unmarshalBool
(
f
);
e
->
hidden
=
unmarshalBool
(
f
);
e
->
groupDocType
=
(
Entry
::
GroupDocType
)
unmarshalInt
(
f
);
return
TRUE
;
}
EntryNav
::
EntryNav
(
EntryNav
*
parent
,
Entry
*
e
)
:
m_parent
(
parent
),
m_subList
(
0
),
m_section
(
e
->
section
),
m_type
(
e
->
type
),
...
...
@@ -507,11 +513,7 @@ bool EntryNav::loadEntry(FileStorage *storage)
return
FALSE
;
}
//delete m_info;
if
(
m_info
==
0
)
m_info
=
new
Entry
;
//printf("EntryNav::loadEntry: new entry %p: %s\n",m_info,m_name.data());
m_info
->
name
=
m_name
;
m_info
->
type
=
m_type
;
m_info
->
section
=
m_section
;
//m_info->tagInfo = m_tagInfo;
//if (m_parent)
//{
...
...
@@ -524,14 +526,20 @@ bool EntryNav::loadEntry(FileStorage *storage)
//printf("seek failed!\n");
return
FALSE
;
}
return
::
loadEntry
(
m_info
,
storage
);
if
(
m_info
)
delete
m_info
;
m_info
=
unmarshalEntry
(
storage
);
m_info
->
name
=
m_name
;
m_info
->
type
=
m_type
;
m_info
->
section
=
m_section
;
return
TRUE
;
}
bool
EntryNav
::
saveEntry
(
Entry
*
e
,
FileStorage
*
storage
)
{
m_offset
=
storage
->
pos
();
//printf("EntryNav::saveEntry offset=%llx\n",m_offset);
return
::
saveEntry
(
e
,
storage
);
marshalEntry
(
storage
,
e
);
return
TRUE
;
}
void
EntryNav
::
releaseEntry
()
...
...
src/entry.h
View file @
0b087b99
...
...
@@ -28,6 +28,7 @@ class QFile;
class
EntryNav
;
class
FileDef
;
class
FileStorage
;
class
StorageIntf
;
enum
Protection
{
Public
,
Protected
,
Private
,
Package
}
;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
...
...
@@ -302,6 +303,8 @@ class Entry
* at construction time.
*/
void
reset
();
void
marshall
(
StorageIntf
*
);
void
unmarshall
(
StorageIntf
*
);
public
:
...
...
src/language.cpp
View file @
0b087b99
...
...
@@ -166,7 +166,7 @@ bool setTranslator(const char *langName)
#ifdef LANG_CZ
else
if
(
L_EQUAL
(
"czech"
))
{
theTranslator
=
new
Translator
Decoder
(
new
TranslatorCzech
)
;
theTranslator
=
new
Translator
Czech
;
}
#endif
#ifdef LANG_FR
...
...
src/marshal.cpp
View file @
0b087b99
...
...
@@ -10,6 +10,7 @@
#include "groupdef.h"
#include "example.h"
#define HEADER ('D'<<24)+('O'<<16)+('X'<<8)+'!'
void
marshalInt
(
StorageIntf
*
s
,
int
v
)
{
...
...
@@ -349,6 +350,72 @@ void marshalMemberLists(StorageIntf *s,SDict<MemberList> *mls)
}
}
void
marshalEntry
(
StorageIntf
*
s
,
Entry
*
e
)
{
marshalUInt
(
s
,
HEADER
);
marshalQCString
(
s
,
e
->
name
);
marshalQCString
(
s
,
e
->
type
);
marshalInt
(
s
,
e
->
section
);
marshalInt
(
s
,(
int
)
e
->
protection
);
marshalInt
(
s
,(
int
)
e
->
mtype
);
marshalInt
(
s
,
e
->
spec
);
marshalInt
(
s
,
e
->
initLines
);
marshalBool
(
s
,
e
->
stat
);
marshalBool
(
s
,
e
->
explicitExternal
);
marshalBool
(
s
,
e
->
proto
);
marshalBool
(
s
,
e
->
subGrouping
);
marshalBool
(
s
,
e
->
callGraph
);
marshalBool
(
s
,
e
->
callerGraph
);
marshalInt
(
s
,(
int
)
e
->
virt
);
marshalQCString
(
s
,
e
->
args
);
marshalQCString
(
s
,
e
->
bitfields
);
marshalArgumentList
(
s
,
e
->
argList
);
marshalArgumentLists
(
s
,
e
->
tArgLists
);
marshalQGString
(
s
,
e
->
program
);
marshalQGString
(
s
,
e
->
initializer
);
marshalQCString
(
s
,
e
->
includeFile
);
marshalQCString
(
s
,
e
->
includeName
);
marshalQCString
(
s
,
e
->
doc
);
marshalInt
(
s
,
e
->
docLine
);
marshalQCString
(
s
,
e
->
docFile
);
marshalQCString
(
s
,
e
->
brief
);
marshalInt
(
s
,
e
->
briefLine
);
marshalQCString
(
s
,
e
->
briefFile
);
marshalQCString
(
s
,
e
->
inbodyDocs
);
marshalInt
(
s
,
e
->
inbodyLine
);
marshalQCString
(
s
,
e
->
inbodyFile
);
marshalQCString
(
s
,
e
->
relates
);
marshalBool
(
s
,
e
->
relatesDup
);
marshalQCString
(
s
,
e
->
read
);
marshalQCString
(
s
,
e
->
write
);
marshalQCString
(
s
,
e
->
inside
);
marshalQCString
(
s
,
e
->
exception
);
marshalInt
(
s
,
e
->
bodyLine
);
marshalInt
(
s
,
e
->
endBodyLine
);
marshalInt
(
s
,
e
->
mGrpId
);
marshalBaseInfoList
(
s
,
e
->
extends
);
marshalGroupingList
(
s
,
e
->
groups
);
marshalSectionInfoList
(
s
,
e
->
anchors
);
marshalQCString
(
s
,
e
->
fileName
);
marshalInt
(
s
,
e
->
startLine
);
marshalItemInfoList
(
s
,
e
->
sli
);
marshalBool
(
s
,
e
->
objc
);
marshalBool
(
s
,
e
->
hidden
);
marshalInt
(
s
,(
int
)
e
->
groupDocType
);
}
void
marshalEntryTree
(
StorageIntf
*
s
,
Entry
*
e
)
{
marshalEntry
(
s
,
e
);
marshalUInt
(
s
,
e
->
children
()
->
count
());
QListIterator
<
Entry
>
eli
(
*
e
->
children
());
Entry
*
child
;
for
(
eli
.
toFirst
();(
child
=
eli
.
current
());
++
eli
)
{
marshalEntryTree
(
s
,
child
);
}
}
//------------------------------------------------------------------
int
unmarshalInt
(
StorageIntf
*
s
)
...
...
@@ -664,4 +731,75 @@ SDict<MemberList> *unmarshalMemberLists(StorageIntf *s)
return
result
;
}
Entry
*
unmarshalEntry
(
StorageIntf
*
s
)
{
Entry
*
e
=
new
Entry
;
uint
header
=
unmarshalUInt
(
s
);
ASSERT
(
header
==
HEADER
);
e
->
name
=
unmarshalQCString
(
s
);
e
->
type
=
unmarshalQCString
(
s
);
e
->
section
=
unmarshalInt
(
s
);
e
->
protection
=
(
Protection
)
unmarshalInt
(
s
);
e
->
mtype
=
(
MethodTypes
)
unmarshalInt
(
s
);
e
->
spec
=
unmarshalInt
(
s
);
e
->
initLines
=
unmarshalInt
(
s
);
e
->
stat
=
unmarshalBool
(
s
);
e
->
explicitExternal
=
unmarshalBool
(
s
);
e
->
proto
=
unmarshalBool
(
s
);
e
->
subGrouping
=
unmarshalBool
(
s
);
e
->
callGraph
=
unmarshalBool
(
s
);
e
->
callerGraph
=
unmarshalBool
(
s
);
e
->
virt
=
(
Specifier
)
unmarshalInt
(
s
);
e
->
args
=
unmarshalQCString
(
s
);
e
->
bitfields
=
unmarshalQCString
(
s
);
delete
e
->
argList
;
e
->
argList
=
unmarshalArgumentList
(
s
);
e
->
tArgLists
=
unmarshalArgumentLists
(
s
);
e
->
program
=
unmarshalQGString
(
s
);
e
->
initializer
=
unmarshalQGString
(
s
);
e
->
includeFile
=
unmarshalQCString
(
s
);
e
->
includeName
=
unmarshalQCString
(
s
);
e
->
doc
=
unmarshalQCString
(
s
);
e
->
docLine
=
unmarshalInt
(
s
);
e
->
docFile
=
unmarshalQCString
(
s
);
e
->
brief
=
unmarshalQCString
(
s
);
e
->
briefLine
=
unmarshalInt
(
s
);
e
->
briefFile
=
unmarshalQCString
(
s
);
e
->
inbodyDocs
=
unmarshalQCString
(
s
);
e
->
inbodyLine
=
unmarshalInt
(
s
);
e
->
inbodyFile
=
unmarshalQCString
(
s
);
e
->
relates
=
unmarshalQCString
(
s
);
e
->
relatesDup
=
unmarshalBool
(
s
);
e
->
read
=
unmarshalQCString
(
s
);
e
->
write
=
unmarshalQCString
(
s
);
e
->
inside
=
unmarshalQCString
(
s
);
e
->
exception
=
unmarshalQCString
(
s
);
e
->
bodyLine
=
unmarshalInt
(
s
);
e
->
endBodyLine
=
unmarshalInt
(
s
);
e
->
mGrpId
=
unmarshalInt
(
s
);
delete
e
->
extends
;
e
->
extends
=
unmarshalBaseInfoList
(
s
);
delete
e
->
groups
;
e
->
groups
=
unmarshalGroupingList
(
s
);
delete
e
->
anchors
;
e
->
anchors
=
unmarshalSectionInfoList
(
s
);
e
->
fileName
=
unmarshalQCString
(
s
);
e
->
startLine
=
unmarshalInt
(
s
);
e
->
sli
=
unmarshalItemInfoList
(
s
);
e
->
objc
=
unmarshalBool
(
s
);
e
->
hidden
=
unmarshalBool
(
s
);
e
->
groupDocType
=
(
Entry
::
GroupDocType
)
unmarshalInt
(
s
);
return
e
;
}
Entry
*
unmarshalEntryTree
(
StorageIntf
*
s
)
{
Entry
*
e
=
unmarshalEntry
(
s
);
uint
count
=
unmarshalUInt
(
s
);
uint
i
;
for
(
i
=
0
;
i
<
count
;
i
++
)
{
e
->
addSubEntry
(
unmarshalEntryTree
(
s
));
}
return
e
;
}
src/marshal.h
View file @
0b087b99
...
...
@@ -21,6 +21,7 @@ struct DocInfo;
struct
BriefInfo
;
class
MemberList
;
class
ExampleSDict
;
class
Entry
;
#define NULL_LIST 0xffffffff
...
...
@@ -33,6 +34,49 @@ class FileStorage : public QFile, public StorageIntf
int
write
(
const
char
*
buf
,
uint
size
)
{
return
QFile
::
writeBlock
(
buf
,
size
);
}
};
class
StreamStorage
:
public
StorageIntf
{
public
:
StreamStorage
()
{
m_data
=
0
;
m_offset
=
0
;
m_len
=
0
;
}
~
StreamStorage
()
{
delete
m_data
;
}
StreamStorage
(
char
*
data
,
uint
len
)
{
m_data
=
data
;
m_offset
=
0
;
m_len
=
len
;
}
int
read
(
char
*
buf
,
uint
size
)
{
int
bytesLeft
=
QMIN
((
int
)
size
,
m_len
-
m_offset
);
if
(
bytesLeft
>
0
)
memcpy
(
buf
,
m_data
,
bytesLeft
);
m_offset
+=
bytesLeft
;
return
bytesLeft
;
}
int
write
(
const
char
*
buf
,
uint
size
)
{
m_data
=
(
char
*
)
realloc
(
m_data
,
m_offset
+
size
);
memcpy
(
m_data
+
m_offset
,
buf
,
size
);
m_offset
+=
size
;
m_len
+=
size
;
return
size
;
}
void
rewind
()
{
m_offset
=
0
;
}
char
*
data
()
const
{
return
m_data
;
}
int
size
()
{
return
m_len
;
}
private
:
char
*
m_data
;
int
m_offset
;
int
m_len
;
};
//----- marshaling function: datatype -> byte stream --------------------
void
marshalInt
(
StorageIntf
*
s
,
int
v
);
...
...
@@ -56,6 +100,8 @@ void marshalGroupList(StorageIntf *s,GroupList *groupList);
void
marshalMemberList
(
StorageIntf
*
s
,
MemberList
*
ml
);
void
marshalExampleSDict
(
StorageIntf
*
s
,
ExampleSDict
*
ed
);
void
marshalMemberLists
(
StorageIntf
*
s
,
SDict
<
MemberList
>
*
mls
);
void
marshalEntry
(
StorageIntf
*
s
,
Entry
*
e
);
void
marshalEntryTree
(
StorageIntf
*
s
,
Entry
*
e
);
//----- unmarshaling function: byte stream -> datatype ------------------
...
...
@@ -80,5 +126,7 @@ GroupList * unmarshalGroupList(StorageIntf *s);
MemberList
*
unmarshalMemberList
(
StorageIntf
*
s
);
ExampleSDict
*
unmarshalExampleSDict
(
StorageIntf
*
s
);
SDict
<
MemberList
>
*
unmarshalMemberLists
(
StorageIntf
*
s
);
Entry
*
unmarshalEntry
(
StorageIntf
*
s
);
Entry
*
unmarshalEntryTree
(
StorageIntf
*
s
);
#endif
src/memberdef.cpp
View file @
0b087b99
...
...
@@ -3436,8 +3436,11 @@ void MemberDef::setBitfields(const char *s)
void
MemberDef
::
setMaxInitLines
(
int
lines
)
{
makeResident
();
m_impl
->
userInitLines
=
lines
;
if
(
lines
!=-
1
)
{
makeResident
();
m_impl
->
userInitLines
=
lines
;
}
}
void
MemberDef
::
setExplicitExternal
(
bool
b
)
...
...
src/msc.cpp
View file @
0b087b99
...
...
@@ -98,7 +98,7 @@ void writeMscGraphFromFile(const char *inFile,const char *outDir,
// go to the html output directory (i.e. path)
QDir
::
setCurrent
(
outDir
);
//printf("Going to dir %s\n",QDir::currentDirPath().data());
QCString
mscExe
=
/*Config_getString("MSC_PATH")+*/
"mscgen"
;
QCString
mscExe
=
Config_getString
(
"MSC_PATH"
)
+
"mscgen"
+
portable_commandExtension
()
;
QCString
mscArgs
;
QCString
extension
;
if
(
format
==
MSC_BITMAP
)
...
...
src/perlmodgen.cpp
View file @
0b087b99
...
...
@@ -1692,10 +1692,13 @@ void PerlModGenerator::generatePerlModForClass(ClassDef *cd)
addTemplateList
(
cd
,
m_output
);
addListOfAllMembers
(
cd
);
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
cd
,
mg
->
members
(),
"user_defined"
,
mg
->
header
());
if
(
cd
->
getMemberGroupSDict
())
{
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
cd
,
mg
->
members
(),
"user_defined"
,
mg
->
header
());
}
generatePerlModSection
(
cd
,
cd
->
getMemberList
(
MemberList
::
pubTypes
),
"public_typedefs"
);
generatePerlModSection
(
cd
,
cd
->
getMemberList
(
MemberList
::
pubMethods
),
"public_methods"
);
...
...
@@ -1795,10 +1798,13 @@ void PerlModGenerator::generatePerlModForNamespace(NamespaceDef *nd)
m_output
.
closeList
();
}
MemberGroupSDict
::
Iterator
mgli
(
*
nd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
nd
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
if
(
nd
->
getMemberGroupSDict
())
{
MemberGroupSDict
::
Iterator
mgli
(
*
nd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
nd
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
}
generatePerlModSection
(
nd
,
nd
->
getMemberList
(
MemberList
::
decDefineMembers
),
"defines"
);
generatePerlModSection
(
nd
,
nd
->
getMemberList
(
MemberList
::
decProtoMembers
),
"prototypes"
);
...
...
@@ -1967,10 +1973,13 @@ void PerlModGenerator::generatePerlModForGroup(GroupDef *gd)
m_output
.
closeList
();
}
MemberGroupSDict
::
Iterator
mgli
(
*
gd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
gd
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
if
(
gd
->
getMemberGroupSDict
())
{
MemberGroupSDict
::
Iterator
mgli
(
*
gd
->
getMemberGroupSDict
());
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
generatePerlModSection
(
gd
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
}
generatePerlModSection
(
gd
,
gd
->
getMemberList
(
MemberList
::
decDefineMembers
),
"defines"
);
generatePerlModSection
(
gd
,
gd
->
getMemberList
(
MemberList
::
decProtoMembers
),
"prototypes"
);
...
...
src/portable.cpp
View file @
0b087b99
...
...
@@ -373,16 +373,16 @@ void * portable_iconv_open(const char* tocode, const char* fromcode)
size_t
portable_iconv
(
void
*
cd
,
const
char
**
inbuf
,
size_t
*
inbytesleft
,
char
**
outbuf
,
size_t
*
outbytesleft
)
{
#if (
defined(_LIBICONV_VERSION) && (_LIBICONV_VERSION==0x0109
))
#if (
(defined(_LIBICONV_VERSION) && (_LIBICONV_VERSION>=0x0109)) || defined(_OS_SOLARIS_
))
#define CASTNEEDED(x) (x)
#else
#define CASTNEEDED(x) (char **)(x)
#endif
return
iconv
(
cd
,
CASTNEEDED
(
inbuf
),
inbytesleft
,
outbuf
,
outbytesleft
);
return
iconv
(
(
iconv_t
)
cd
,
CASTNEEDED
(
inbuf
),
inbytesleft
,
outbuf
,
outbytesleft
);
}
int
portable_iconv_close
(
void
*
cd
)
{
return
iconv_close
(
cd
);
return
iconv_close
(
(
iconv_t
)
cd
);
}
src/pre.l
View file @
0b087b99
...
...
@@ -1006,7 +1006,8 @@ Define *newDefine()
void addDefine()
{
if (g_skip) return; // do not add this define as it is inside a
// conditional section (@cond command) that is disabled.
// conditional section (cond command) that is disabled.
if (!Doxygen::gatherDefines) return;
//printf("addDefine %s %s\n",g_defName.data(),g_defArgsStr.data());
//ArgumentList *al = new ArgumentList;
...
...
src/pyscanner.l
View file @
0b087b99
...
...
@@ -829,6 +829,11 @@ STARTDOCSYMS ^{B}"##"/[^#]
current->name = current->name.stripWhiteSpace();
newFunction();
}
{B}":" { // function without arguments
g_specialBlock = TRUE; // expecting a docstring
bodyEntry = current;
BEGIN( FunctionBody );
}
{B}"(" {
BEGIN( FunctionParams );
...
...
@@ -1110,7 +1115,7 @@ STARTDOCSYMS ^{B}"##"/[^#]
g_stringContext=VariableEnd;
BEGIN(TripleString);
}
"(" { // t
y
ple
"(" { // t
u
ple
current->type = "tuple";
current->initializer+=*yytext;
g_atomStart='(';
...
...
@@ -1168,6 +1173,12 @@ STARTDOCSYMS ^{B}"##"/[^#]
BEGIN(VariableEnd);
}
}
"\"" {
g_stringContext=YY_START;
current->initializer+="\"";
g_copyString=¤t->initializer;
BEGIN( DoubleQuoteString );
}
{IDENTIFIER} {
current->initializer+=yytext;
}
...
...
src/scanner.l
View file @
0b087b99
...
...
@@ -160,7 +160,7 @@ static int docBlockContext;
static QCString docBlock;
static QCString docBlockName;
static bool docBlockInBody;
static bool docBlock
JavaStyle
;
static bool docBlock
AutoBrief
;
static char docBlockTerm;
static QCString idlAttr;
...
...
@@ -614,6 +614,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
%x SkipSharp
%x SkipRound
%x SkipSquare
%x SkipRemainder
%x TypedefName
%x TryFunctionBlock
%x TryFunctionBlockEnd
...
...
@@ -1992,7 +1993,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
docBlockContext = YY_START;
docBlockInBody = FALSE;
docBlockJavaStyle = yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlock.resize(0);
docBlockTerm = ';';
if (yytext[yyleng-3]=='/')
...
...
@@ -2010,7 +2012,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
lineCount();
docBlockContext = YY_START;
docBlockInBody = FALSE;
docBlockJavaStyle = yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlock.resize(0);
docBlockTerm = ',';
if (yytext[yyleng-3]=='/')
...
...
@@ -2032,7 +2035,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
docBlockContext = YY_START;
docBlockInBody = FALSE;
docBlockJavaStyle = yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlock.resize(0);
docBlockTerm = 0;
if (yytext[yyleng-3]=='/')
...
...
@@ -2072,7 +2076,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
{
docBlockContext = YY_START;
docBlockInBody = FALSE;
docBlock
JavaStyle
= FALSE;
docBlock
AutoBrief
= FALSE;
docBlock.resize(0);
docBlockTerm = 0;
startCommentBlock(TRUE);
...
...
@@ -2091,7 +2095,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
docBlockContext = YY_START;
docBlockInBody = FALSE;
docBlock.resize(0);
docBlockJavaStyle = yytext[2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlockTerm = 0;
startCommentBlock(FALSE);
BEGIN(DocBlock);
...
...
@@ -2701,6 +2706,31 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
initBracketCount=0;
BEGIN(ReadInitializer);
}
<FindFields>";" {
if (insideJava) // last enum field in Java class
{
current->fileName = yyFileName;
current->startLine = yyLineNr;
current->type = "@"; // enum marker
current->args = current->args.simplifyWhiteSpace();
current->name = current->name.stripWhiteSpace();
current->section = Entry::VARIABLE_SEC;
current_root->addSubEntry(current);
current = new Entry ;
initEntry();
// TODO: skip until the end of the scope
BEGIN( SkipRemainder );
}
else
{
REJECT;
}
}
<SkipRemainder>\n {
yyLineNr++;
}
<SkipRemainder>[^\n]*
<FindFields>"," {
//printf("adding `%s' `%s' `%s' to enum `%s' (mGrpId=%d)\n",
// current->type.data(), current->name.data(),
...
...
@@ -3884,7 +3914,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
docBlockContext = SkipCurlyEndDoc;
docBlockInBody = FALSE;
docBlockJavaStyle = yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlock.resize(0);
docBlockTerm = '}';
if (yytext[yyleng-3]=='/')
...
...
@@ -3902,7 +3933,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
<SkipCurlyEndDoc>"}"{BN}*("/*!"|"/**"|"//!"|"///")"<" { // desc is followed by another one
docBlockContext = SkipCurlyEndDoc;
docBlockInBody = FALSE;
docBlockJavaStyle = yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF");
docBlockAutoBrief = ( yytext[yyleng-2]=='*' && Config_getBool("JAVADOC_AUTOBRIEF") ) ||
( yytext[yyleng-2]=='!' && Config_getBool("QT_AUTOBRIEF") );
docBlock.resize(0);
docBlockTerm = '}';
if (yytext[yyleng-3]=='/')
...
...
@@ -4493,8 +4525,21 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
docBlockContext = YY_START;
docBlockInBody = YY_START==SkipCurly;
docBlock
JavaStyle = FALSE
;
docBlock
AutoBrief = Config_getBool("QT_AUTOBRIEF")
;
docBlock.resize(0);
if (docBlockAutoBrief)
{
current->briefLine = yyLineNr;
current->briefFile = yyFileName;
}
if (!docBlockInBody)
{
current->doc.resize(0);
if (docBlockAutoBrief)
{
current->brief.resize(0);
}
}
startCommentBlock(FALSE);
BEGIN( DocBlock );
}
...
...
@@ -4514,9 +4559,9 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
current->docFile = yyFileName;
docBlockContext = YY_START;
docBlockInBody = YY_START==SkipCurly;
docBlock
JavaStyle
= Config_getBool("JAVADOC_AUTOBRIEF");
docBlock
AutoBrief
= Config_getBool("JAVADOC_AUTOBRIEF");
docBlock.resize(0);
if (docBlock
JavaStyle
)
if (docBlock
AutoBrief
)
{
current->briefLine = yyLineNr;
current->briefFile = yyFileName;
...
...
@@ -4524,7 +4569,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
if (!docBlockInBody)
{
current->doc.resize(0);
if (docBlock
JavaStyle
)
if (docBlock
AutoBrief
)
{
current->brief.resize(0);
}
...
...
@@ -4551,7 +4596,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
docBlockContext = YY_START;
docBlockInBody = YY_START==SkipCurly;
docBlock
JavaStyle
= FALSE;
docBlock
AutoBrief
= FALSE;
docBlock.resize(0);
startCommentBlock(TRUE);
BEGIN( DocLine );
...
...
@@ -4575,7 +4620,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
docBlockContext = YY_START;
docBlockInBody = YY_START==SkipCurly;
docBlock
JavaStyle
= FALSE;
docBlock
AutoBrief
= FALSE;
docBlock.resize(0);
startCommentBlock(TRUE);
BEGIN( DocLine );
...
...
@@ -4932,7 +4977,7 @@ static void handleCommentBlock(const QCString &doc,bool brief)
yyFileName, // file
brief ? current->briefLine : current->docLine, // line of block start
docBlockInBody ? FALSE : brief,
docBlockInBody ? FALSE : docBlock
JavaStyle
,
docBlockInBody ? FALSE : docBlock
AutoBrief
,
docBlockInBody,
protection,
position,
...
...
src/translator_cz.h
View file @
0b087b99
...
...
@@ -46,7 +46,7 @@
// introducing TranslatorAdapter class and the abstract base
// class Translator. The English translator is now on the same
// level as other translators.
// 2001/05/02 -
Decode() inline changed to decode(
); cleaning.
// 2001/05/02 -
) inline changed to
); cleaning.
// 2001/05/18 - Updates, corrections.
// 2001/05/25 - Corrections.
// 2001/07/16 - trClassDocumentation() updated as in the English translator.
...
...
@@ -69,6 +69,7 @@
// modified trCallGraph() to make the meaning unambiguous
// and clear in the Czech language.
// 2006/06/13 - translation of the trEnumerationValueDocumentation().
// 2007/03/20 - removing ), conversion of literals to UTF-8.
// Todo
// ----
...
...
@@ -80,32 +81,16 @@
// Notices:
// --------
// The conditional compilation ensures or the neutral functionality
// of the private inline
decode(
), or calling the WinToISO() method
// of the private inline ), or calling the WinToISO() method
// for on-line encoding conversion. If you want to maintain the
// source in the iso-8859-2, do convert the encoding of the source,
// change the conditional definition of the inline
decode(
) using the
// change the conditional definition of the inline ) using the
// method ISO88592ToWin1250() -- for conversion of strings for the
// Windows version. The version which does not call the function is
// probably slightly faster.
class
TranslatorCzech
:
public
Translator
{
private
:
/*! The decode() inline assumes the source written in the
Windows encoding (maintainer only dependent).
*/
inline
QCString
decode
(
const
QCString
&
sInput
)
{
//if (Config_getBool("USE_WINDOWS_ENCODING"))
//{
return
sInput
;
//}
//else
//{
// return Win1250ToISO88592(sInput);
//}
}
public
:
// --- Language control methods -------------------
...
...
@@ -123,7 +108,7 @@ class TranslatorCzech : public Translator
{
//if (Config_getBool("USE_WINDOWS_ENCODING"))
//{
return
"
windows-1250
"
;
return
"
utf-8
"
;
//}
//else
//{
...
...
@@ -135,83 +120,83 @@ class TranslatorCzech : public Translator
/*! used in the compound documentation before a list of related functions. */
virtual
QCString
trRelatedFunctions
()
{
return
decode
(
"Související funkce"
)
;
}
{
return
"Související funkce"
;
}
/*! subscript for the related functions. */
virtual
QCString
trRelatedSubscript
()
{
return
decode
(
"(Uvedené funkce nejsou èlenskými funkcemi.)"
)
;
}
{
return
"(Uvedené funkce nejsou členskými funkcemi.)"
;
}
/*! header that is put before the detailed description of files, classes and namespaces. */
virtual
QCString
trDetailedDescription
()
{
return
decode
(
"Detailní popis"
)
;
}
{
return
"Detailní popis"
;
}
/*! header that is put before the list of typedefs. */
virtual
QCString
trMemberTypedefDocumentation
()
{
return
decode
(
"Dokumentace k èlenským typùm"
)
;
}
{
return
"Dokumentace k členským typům"
;
}
/*! header that is put before the list of enumerations. */
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
decode
(
"Dokumentace k èlenským výètùm"
)
;
}
{
return
"Dokumentace k členským výčtům"
;
}
/*! header that is put before the list of member functions. */
virtual
QCString
trMemberFunctionDocumentation
()
{
return
decode
(
"Dokumentace k metodám"
)
;
}
{
return
"Dokumentace k metodám"
;
}
/*! header that is put before the list of member attributes. */
virtual
QCString
trMemberDataDocumentation
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Dokumentace k položkám"
)
;
return
"Dokumentace k položkám"
;
}
else
{
return
decode
(
"Dokumentace k datovým èlenùm"
)
;
return
"Dokumentace k datovým členům"
;
}
}
/*! this is the text of a link put after brief descriptions. */
virtual
QCString
trMore
()
{
return
decode
(
"..."
)
;
}
{
return
"..."
;
}
/*! put in the class documentation */
virtual
QCString
trListOfAllMembers
()
{
return
decode
(
"Seznam všech èlenù."
)
;
}
{
return
"Seznam všech členů."
;
}
/*! used as the title of the "list of all members" page of a class */
virtual
QCString
trMemberList
()
{
return
decode
(
"Seznam èlenù tøídy"
)
;
}
{
return
"Seznam členů třídy"
;
}
/*! this is the first part of a sentence that is followed by a class name */
virtual
QCString
trThisIsTheListOfAllMembers
()
{
return
decode
(
"Zde naleznete úplný seznam èlenù tøídy "
)
;
}
{
return
"Zde naleznete úplný seznam členů třídy "
;
}
/*! this is the remainder of the sentence after the class name */
virtual
QCString
trIncludingInheritedMembers
()
{
return
decode
(
", vèetnì všech zdìdìných èlenù."
)
;
}
{
return
", včetně všech zděděných členů."
;
}
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
*/
virtual
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
"Generová
no automaticky programem Doxygen "
"ze zdrojov
ých textù"
;
if
(
s
)
result
+=
(
QCString
)
" projektu "
+
s
;
result
+=
"."
;
return
decode
(
result
)
;
{
QCString
result
(
"Generován
o automaticky programem Doxygen "
"ze zdrojov
ých textů"
);
if
(
s
)
result
+=
QCString
(
" projektu "
)
+
s
;
result
+=
"."
;
return
result
;
}
/*! put after an enum name in the list of all members */
virtual
QCString
trEnumName
()
{
return
decode
(
"jméno výètu"
)
;
}
{
return
"jméno výčtu"
;
}
/*! put after an enum value in the list of all members */
virtual
QCString
trEnumValue
()
{
return
decode
(
"hodnota výètu"
)
;
}
{
return
"hodnota výčtu"
;
}
/*! put after an undocumented member in the list of all members */
virtual
QCString
trDefinedIn
()
{
return
decode
(
"definován v"
)
;
}
{
return
"definován v"
;
}
// quick reference sections
...
...
@@ -219,39 +204,39 @@ class TranslatorCzech : public Translator
* compounds or files (see the \\group command).
*/
virtual
QCString
trModules
()
{
return
decode
(
"Moduly"
)
;
}
{
return
"Moduly"
;
}
/*! This is put above each page as a link to the class hierarchy */
virtual
QCString
trClassHierarchy
()
{
return
decode
(
"Hierarchie tøíd"
)
;
}
{
return
"Hierarchie tříd"
;
}
/*! This is put above each page as a link to the list of annotated classes */
virtual
QCString
trCompoundList
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Datové struktury"
)
;
return
"Datové struktury"
;
}
else
{
return
decode
(
"Seznam tøíd"
)
;
return
"Seznam tříd"
;
}
}
/*! This is put above each page as a link to the list of documented files */
virtual
QCString
trFileList
()
{
return
decode
(
"Seznam souborù"
)
;
}
{
return
"Seznam souborů"
;
}
/*! This is put above each page as a link to all members of compounds. */
virtual
QCString
trCompoundMembers
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Datové položky"
)
;
return
"Datové položky"
;
}
else
{
return
decode
(
"Seznam èlenù tøíd"
)
;
return
"Seznam členů tříd"
;
}
}
...
...
@@ -260,39 +245,39 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Globální symboly"
)
;
return
"Globální symboly"
;
}
else
{
return
decode
(
"Symboly v souborech"
)
;
return
"Symboly v souborech"
;
}
}
/*! This is put above each page as a link to all related pages. */
virtual
QCString
trRelatedPages
()
{
return
decode
(
"Ostatní stránky"
)
;
}
{
return
"Ostatní stránky"
;
}
/*! This is put above each page as a link to all examples. */
virtual
QCString
trExamples
()
{
return
decode
(
"Pøíklady"
)
;
}
{
return
"Příklady"
;
}
/*! This is put above each page as a link to the search engine. */
virtual
QCString
trSearch
()
{
return
decode
(
"Hledat"
)
;
}
{
return
"Hledat"
;
}
/*! This is an introduction to the class hierarchy. */
virtual
QCString
trClassHierarchyDescription
()
{
return
decode
(
"Zde naleznete seznam, vyjadøující vztah dìdiènosti tøí
d. "
"Je se
øazen pøibližnì (ale ne úplnì) podle abecedy:"
)
;
{
return
"Zde naleznete seznam, vyjadřující vztah dědičnosti tříd. "
"Je se
řazen přibližně (ale ne úplně) podle abecedy:"
;
}
/*! This is an introduction to the list with all files. */
virtual
QCString
trFileListDescription
(
bool
extractAll
)
{
QCString
result
=
"Zde naleznete seznam v
š
ech "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ý
ch "
;
result
+=
"soubor
ù se struèný
mi popisy:"
;
return
decode
(
result
)
;
QCString
result
=
"Zde naleznete seznam v
še
ch "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ýc
h "
;
result
+=
"soubor
ů se stručnými
popisy:"
;
return
result
;
}
/*! This is an introduction to the annotated compound list. */
...
...
@@ -300,35 +285,35 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Následující seznam obsahuje identifikace datový
ch "
"struktur a jejich stru
èné popisy:"
)
;
return
"Následující seznam obsahuje identifikace datových "
"struktur a jejich stru
čné popisy:"
;
}
else
{
return
decode
(
"Následující seznam obsahuje pøedevší
m identifikace "
"t
øíd, ale nacházejí se zde i další netriviální
prvky, "
"jako jsou struktury (struct), unie (union) a rozhran
í
"
"(interface). V seznamu jsou uvedeny jejich stru
èné
"
"popisy:"
)
;
return
"Následující seznam obsahuje především iden
tifikace "
"t
říd, ale nacházejí se zde i další netriviální prvky,
"
"jako jsou struktury (struct), unie (union) a rozhran
í
"
"(interface). V seznamu jsou uvedeny jejich stru
čné
"
"popisy:"
;
}
}
/*! This is an introduction to the page with all class members. */
virtual
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"Zde naleznete seznam v
š
ech "
;
QCString
result
=
"Zde naleznete seznam v
še
ch "
;
if
(
!
extractAll
)
{
result
+=
"dokumentovan
ý
ch "
;
result
+=
"dokumentovan
ýc
h "
;
}
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"polo
žek struktur (struct) a unií
(union) "
;
result
+=
"polo
žek struktur (struct) a unií (
union) "
;
}
else
{
result
+=
"
èlenù tøí
d "
;
result
+=
"
členů tříd "
;
}
result
+=
"s odkazy na "
;
...
...
@@ -337,83 +322,83 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"dokumentaci struktur/uni
í, ke kterým pøíslušejí
:"
;
result
+=
"dokumentaci struktur/uni
í, ke kterým příslušejí:"
;
}
else
{
result
+=
"dokumentaci t
øíd, ke kterým pøíslušejí
:"
;
result
+=
"dokumentaci t
říd, ke kterým příslušejí:"
;
}
}
else
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"struktury/unie, ke kter
ým pøíslušejí
:"
;
result
+=
"struktury/unie, ke kter
ým příslušejí:"
;
}
else
{
result
+=
"t
øídy, ke kterým pøíslušejí
:"
;
result
+=
"t
řídy, ke kterým příslušejí:"
;
}
}
return
decode
(
result
)
;
return
result
;
}
/*! This is an introduction to the page with all file members. */
virtual
QCString
trFileMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"Zde naleznete seznam v
š
ech "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ý
ch "
;
QCString
result
=
"Zde naleznete seznam v
še
ch "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ýc
h "
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"funkc
í, promìnných, maker, výètù a definic typù
(typedef) "
result
+=
"funkc
í, proměnných, maker, výčtů a definic typů (type
def) "
"s odkazy na "
;
}
else
{
result
+=
"symbol
ù, které jsou definovány na úrovni svých souborù
. "
"Pro ka
ždý
symbol je uveden odkaz na "
;
result
+=
"symbol
ů, které jsou definovány na úrovni svých souborů. "
"Pro ka
ždý s
ymbol je uveden odkaz na "
;
}
if
(
extractAll
)
result
+=
"soubory, ke kter
ým pøíslušejí
:"
;
result
+=
"soubory, ke kter
ým příslušejí:"
;
else
result
+=
"dokumentaci:"
;
return
decode
(
result
)
;
return
result
;
}
/*! This is an introduction to the page with the list of all examples */
virtual
QCString
trExamplesDescription
()
{
return
decode
(
"Zde naleznete seznam všech pøíkladù:"
)
;
}
{
return
"Zde naleznete seznam všech příkladů:"
;
}
/*! This is an introduction to the page with the list of related pages */
virtual
QCString
trRelatedPagesDescription
()
{
return
decode
(
"Následující seznam odkazuje na další stránky projektu:"
)
;
}
{
return
"Následující seznam odkazuje na další stránky projektu:"
;
}
/*! This is an introduction to the page with the list of class/file groups */
virtual
QCString
trModulesDescription
()
{
return
decode
(
"Zde naleznete seznam všech modulù:"
)
;
}
{
return
"Zde naleznete seznam všech modulů:"
;
}
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
virtual
QCString
trDocumentation
()
{
return
decode
(
"Dokumentace"
)
;
}
{
return
"Dokumentace"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
virtual
QCString
trModuleIndex
()
{
return
decode
(
"Rejstøík modulù"
)
;
}
{
return
"Rejstřík modulů"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
virtual
QCString
trHierarchicalIndex
()
{
return
decode
(
"Rejstøík hierarchie tøíd"
)
;
}
{
return
"Rejstřík hierarchie tříd"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
...
...
@@ -422,11 +407,11 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Rejstøík datových struktur"
)
;
return
"Rejstřík datových struktur"
;
}
else
{
return
decode
(
"Rejstøík tøíd"
)
;
return
"Rejstřík tříd"
;
}
}
...
...
@@ -434,13 +419,13 @@ class TranslatorCzech : public Translator
* list of all files.
*/
virtual
QCString
trFileIndex
()
{
return
decode
(
"Rejstøík souborù"
)
;
}
{
return
"Rejstřík souborů"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
*/
virtual
QCString
trModuleDocumentation
()
{
return
decode
(
"Dokumentace modulù"
)
;
}
{
return
"Dokumentace modulů"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all classes, structs and unions.
...
...
@@ -449,11 +434,11 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Dokumentace datových struktur"
)
;
return
"Dokumentace datových struktur"
;
}
else
{
return
decode
(
"Dokumentace tøíd"
)
;
return
"Dokumentace tříd"
;
}
}
...
...
@@ -461,101 +446,101 @@ class TranslatorCzech : public Translator
* the documentation of all files.
*/
virtual
QCString
trFileDocumentation
()
{
return
decode
(
"Dokumentace souborù"
)
;
}
{
return
"Dokumentace souborů"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
*/
virtual
QCString
trExampleDocumentation
()
{
return
decode
(
"Dokumentace pøíkladù"
)
;
}
{
return
"Dokumentace příkladů"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
*/
virtual
QCString
trPageDocumentation
()
{
return
decode
(
"Dokumentace souvisejících stránek"
)
;
}
{
return
"Dokumentace souvisejících stránek"
;
}
/*! This is used in LaTeX as the title of the document */
virtual
QCString
trReferenceManual
()
{
return
decode
(
"Referenèní pøíruèka"
)
;
}
{
return
"Referenční příručka"
;
}
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
virtual
QCString
trDefines
()
{
return
decode
(
"Definice maker"
)
;
}
{
return
"Definice maker"
;
}
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
virtual
QCString
trFuncProtos
()
{
return
decode
(
"Prototypy"
)
;
}
{
return
"Prototypy"
;
}
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
virtual
QCString
trTypedefs
()
{
return
decode
(
"Definice typù"
)
;
}
{
return
"Definice typů"
;
}
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
virtual
QCString
trEnumerations
()
{
return
decode
(
"Výèty"
)
;
}
{
return
"Výčty"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
virtual
QCString
trFunctions
()
{
return
decode
(
"Funkce"
)
;
}
{
return
"Funkce"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual
QCString
trVariables
()
{
return
decode
(
"Promìnné"
)
;
}
{
return
"Proměnné"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual
QCString
trEnumerationValues
()
{
return
decode
(
"Hodnoty výètu"
)
;
}
{
return
"Hodnoty výčtu"
;
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
virtual
QCString
trDefineDocumentation
()
{
return
decode
(
"Dokumentace k definicím maker"
)
;
}
{
return
"Dokumentace k definicím maker"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
decode
(
"Dokumentace prototypù"
)
;
}
{
return
"Dokumentace prototypů"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
virtual
QCString
trTypedefDocumentation
()
{
return
decode
(
"Dokumentace definic typù"
)
;
}
{
return
"Dokumentace definic typů"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
virtual
QCString
trEnumerationTypeDocumentation
()
{
return
decode
(
"Dokumentace výètových typù"
)
;
}
{
return
"Dokumentace výčtových typů"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
virtual
QCString
trFunctionDocumentation
()
{
return
decode
(
"Dokumentace funkcí"
)
;
}
{
return
"Dokumentace funkcí"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
virtual
QCString
trVariableDocumentation
()
{
return
decode
(
"Dokumentace promìnných"
)
;
}
{
return
"Dokumentace proměnných"
;
}
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
...
...
@@ -564,11 +549,11 @@ class TranslatorCzech : public Translator
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Datové struktry"
)
;
return
"Datové struktry"
;
}
else
{
return
decode
(
"Tøídy"
)
;
return
"Třídy"
;
}
}
...
...
@@ -577,80 +562,82 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
QCString
result
=
(
QCString
)
"Generováno "
+
date
;
if
(
projName
)
result
+=
(
QCString
)
" pro projekt "
+
projName
;
result
+=
(
QCString
)
" programem"
;
return
decode
(
result
);
QCString
result
(
"Generováno "
);
result
+=
date
;
if
(
projName
)
result
+=
QCString
(
" pro projekt "
)
+
projName
;
result
+=
" programem"
;
return
result
;
}
/*! This is part of the sentence used in the standard footer of each page.
*/
virtual
QCString
trWrittenBy
()
{
return
decode
(
" -- autor "
)
;
return
" -- autor "
;
}
/*! this text is put before a class diagram */
virtual
QCString
trClassDiagram
(
const
char
*
clName
)
{
return
decode
((
QCString
)
"Diagram dìdiènosti pro tøídu "
+
clName
)
;
return
QCString
(
"Diagram dědičnosti pro třídu "
)
+
clName
;
}
/*! this text is generated when the \\internal command is used. */
virtual
QCString
trForInternalUseOnly
()
{
return
decode
(
"Pouze pro vnitøní použití."
)
;
}
{
return
"Pouze pro vnitřní použití."
;
}
/*! this text is generated when the \\warning command is used. */
virtual
QCString
trWarning
()
{
return
decode
(
"Pozor"
)
;
}
{
return
"Pozor"
;
}
/*! this text is generated when the \\version command is used. */
virtual
QCString
trVersion
()
{
return
decode
(
"Verze"
)
;
}
{
return
"Verze"
;
}
/*! this text is generated when the \\date command is used. */
virtual
QCString
trDate
()
{
return
decode
(
"Datum"
)
;
}
{
return
"Datum"
;
}
/*! this text is generated when the \\return command is used. */
virtual
QCString
trReturns
()
{
return
decode
(
"Návratová hodnota"
)
;
}
{
return
"Návratová hodnota"
;
}
/*! this text is generated when the \\sa command is used. */
virtual
QCString
trSeeAlso
()
{
return
decode
(
"Viz také"
)
;
}
{
return
"Viz také"
;
}
/*! this text is generated when the \\param command is used. */
virtual
QCString
trParameters
()
{
return
decode
(
"Parametry"
)
;
}
{
return
"Parametry"
;
}
/*! this text is generated when the \\exception command is used. */
virtual
QCString
trExceptions
()
{
return
decode
(
"Výjimky"
)
;
}
{
return
"Výjimky"
;
}
/*! this text is used in the title page of a LaTeX document. */
virtual
QCString
trGeneratedBy
()
{
return
decode
(
"Generováno programem"
)
;
}
{
return
"Generováno programem"
;
}
// new since 0.49-990307
/*! used as the title of page containing all the index of all namespaces. */
virtual
QCString
trNamespaceList
()
{
return
decode
(
"Seznam prostorù jmen"
)
;
}
{
return
"Seznam prostorů jmen"
;
}
/*! used as an introduction to the namespace list */
virtual
QCString
trNamespaceListDescription
(
bool
extractAll
)
{
QCString
result
=
"Zde naleznete seznam v
š
ech "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ý
ch "
;
result
+=
"prostor
ù jmen se struèný
m popisem:"
;
return
decode
(
result
)
;
QCString
result
=
"Zde naleznete seznam v
še
ch "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ýc
h "
;
result
+=
"prostor
ů jmen se stručným
popisem:"
;
return
result
;
}
/*! used in the class documentation as a header before the list of all
* friends of a class
*/
virtual
QCString
trFriends
()
{
return
decode
(
"Friends"
)
;
}
{
return
"Friends"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
...
...
@@ -660,7 +647,7 @@ class TranslatorCzech : public Translator
* related classes
*/
virtual
QCString
trRelatedFunctionDocumentation
()
{
return
decode
(
"Dokumentace k friends"
)
;
}
{
return
"Dokumentace k friends"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
...
...
@@ -672,19 +659,19 @@ class TranslatorCzech : public Translator
bool
isTemplate
)
{
QCString
result
(
"Dokumentace "
);
if
(
isTemplate
)
result
+=
"š
ablony "
;
if
(
isTemplate
)
result
+=
"ša
blony "
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
"tøí
dy "
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
"struktury "
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"unie "
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"rozhraní
"
;
break
;
case
ClassDef
:
:
Protocol
:
result
+=
"protocol "
;
break
;
// translate me!
case
ClassDef
:
:
Category
:
result
+=
"category "
;
break
;
// translate me!
case
ClassDef
:
:
Exception
:
result
+=
"vý
jimky "
;
break
;
case
ClassDef
:
:
Class
:
result
+=
"třídy
"
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
"struktury "
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"unie "
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"rozhraní
"
;
break
;
case
ClassDef
:
:
Protocol
:
result
+=
"protokolu "
;
break
;
case
ClassDef
:
:
Category
:
result
+=
"kategorie "
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"výj
imky "
;
break
;
}
result
+=
clName
;
return
decode
(
result
)
;
result
+=
clName
;
return
result
;
}
/*! used as the title of the HTML page of a file */
...
...
@@ -692,7 +679,7 @@ class TranslatorCzech : public Translator
{
QCString
result
(
"Dokumentace souboru "
);
result
+=
fileName
;
return
decode
(
result
)
;
return
result
;
}
/*! used as the title of the HTML page of a namespace */
...
...
@@ -700,32 +687,32 @@ class TranslatorCzech : public Translator
{
QCString
result
(
"Dokumentace prostoru jmen "
);
result
+=
namespaceName
;
return
decode
(
result
)
;
return
result
;
}
/*
* these are for the member sections of a class, struct or union
*/
virtual
QCString
trPublicMembers
()
{
return
decode
(
"Veøejné metody"
)
;
}
{
return
"Veřejné metody"
;
}
virtual
QCString
trPublicSlots
()
{
return
decode
(
"Veøejné sloty"
)
;
}
{
return
"Veřejné sloty"
;
}
virtual
QCString
trSignals
()
{
return
decode
(
"Signály"
)
;
}
{
return
"Signály"
;
}
virtual
QCString
trStaticPublicMembers
()
{
return
decode
(
"Statické veøejné metody"
)
;
}
{
return
"Statické veřejné metody"
;
}
virtual
QCString
trProtectedMembers
()
{
return
decode
(
"Chránìné metody"
)
;
}
{
return
"Chráněné metody"
;
}
virtual
QCString
trProtectedSlots
()
{
return
decode
(
"Chránìné sloty"
)
;
}
{
return
"Chráněné sloty"
;
}
virtual
QCString
trStaticProtectedMembers
()
{
return
decode
(
"Statické chránìné metody"
)
;
}
{
return
"Statické chráněné metody"
;
}
virtual
QCString
trPrivateMembers
()
{
return
decode
(
"Privátní metody"
)
;
}
{
return
"Privátní metody"
;
}
virtual
QCString
trPrivateSlots
()
{
return
decode
(
"Privátní sloty"
)
;
}
{
return
"Privátní sloty"
;
}
virtual
QCString
trStaticPrivateMembers
()
{
return
decode
(
"Statické privátní metody"
)
;
}
{
return
"Statické privátní metody"
;
}
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
...
...
@@ -749,7 +736,7 @@ class TranslatorCzech : public Translator
result
+=
" a "
;
}
}
return
decode
(
result
)
;
return
result
;
}
/*! used in class documentation to produce a list of base classes,
...
...
@@ -757,10 +744,10 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trInheritsList
(
int
numEntries
)
{
QCString
result
(
"D
ìdí
z "
);
result
+=
(
numEntries
==
1
)
?
"b
ázové tøídy "
:
"bázových tøí
d "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
decode
(
result
)
;
QCString
result
(
"D
ědí z
"
);
result
+=
(
numEntries
==
1
)
?
"b
ázové třídy "
:
"bázových tříd "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
result
;
}
/*! used in class documentation to produce a list of super classes,
...
...
@@ -768,10 +755,10 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trInheritedByList
(
int
numEntries
)
{
QCString
result
(
"Zd
ìdì
na "
);
result
+=
(
numEntries
==
1
)
?
"t
øídou "
:
"tøí
dami "
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
decode
(
result
)
;
QCString
result
(
"Zd
ěděna
"
);
result
+=
(
numEntries
==
1
)
?
"t
řídou "
:
"třídami
"
;
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
result
;
}
/*! used in member documentation blocks to produce a list of
...
...
@@ -779,9 +766,9 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trReimplementedFromList
(
int
numEntries
)
{
QCString
result
(
"Reimplementuje stejnojmenn
ý
prvek z "
);
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
decode
(
result
)
;
QCString
result
(
"Reimplementuje stejnojmenn
ý
prvek z "
);
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
result
;
}
/*! used in member documentation blocks to produce a list of
...
...
@@ -789,39 +776,39 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trReimplementedInList
(
int
numEntries
)
{
QCString
result
(
"Reimplementov
á
no v "
);
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
decode
(
result
)
;
QCString
result
(
"Reimplementov
án
o v "
);
result
+=
trWriteList
(
numEntries
)
+
"."
;
return
result
;
}
/*! This is put above each page as a link to all members of namespaces. */
virtual
QCString
trNamespaceMembers
()
{
return
decode
(
"Symboly v prostorech jmen"
)
;
}
{
return
"Symboly v prostorech jmen"
;
}
/*! This is an introduction to the page with all namespace members */
virtual
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
{
QCString
result
=
"Zde naleznete seznam v
š
ech "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ý
ch "
;
result
+=
"symbol
ù, které jsou definovány ve svý
ch prostorech jmen. "
"U ka
ždé
ho je uveden odkaz na "
;
QCString
result
=
"Zde naleznete seznam v
še
ch "
;
if
(
!
extractAll
)
result
+=
"dokumentovan
ýc
h "
;
result
+=
"symbol
ů, které jsou definovány ve svých p
rostorech jmen. "
"U ka
ždého
je uveden odkaz na "
;
if
(
extractAll
)
result
+=
"dokumentaci p
øíslušné
ho prostoru jmen:"
;
result
+=
"dokumentaci p
říslušného p
rostoru jmen:"
;
else
result
+=
"p
øíslušný
prostor jmen:"
;
return
decode
(
result
)
;
result
+=
"p
říslušný pro
stor jmen:"
;
return
result
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
virtual
QCString
trNamespaceIndex
()
{
return
decode
(
"Rejstøík prostorù jmen"
)
;
}
{
return
"Rejstřík prostorů jmen"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
*/
virtual
QCString
trNamespaceDocumentation
()
{
return
decode
(
"Dokumentace prostorù jmen"
)
;
}
{
return
"Dokumentace prostorů jmen"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
...
...
@@ -831,7 +818,7 @@ class TranslatorCzech : public Translator
* namespaces in a file.
*/
virtual
QCString
trNamespaces
()
{
return
decode
(
"Prostory jmen"
)
;
}
{
return
"Prostory jmen"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
...
...
@@ -847,25 +834,25 @@ class TranslatorCzech : public Translator
QCString
result
=
(
QCString
)
"Dokumentace pro "
;
switch
(
compType
)
{
case
ClassDef
:
:
Class
:
result
+=
"tuto t
øí
du"
;
break
;
case
ClassDef
:
:
Class
:
result
+=
"tuto t
řídu
"
;
break
;
case
ClassDef
:
:
Struct
:
result
+=
"tuto strukturu (struct)"
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"tuto unii (union)"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"toto rozhran
í
"
;
break
;
case
ClassDef
:
:
Protocol
:
result
+=
"
protocol "
;
break
;
// translate me!
case
ClassDef
:
:
Category
:
result
+=
"
category "
;
break
;
// translate me!
case
ClassDef
:
:
Exception
:
result
+=
"tuto v
ý
jimku"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"toto rozhran
í"
;
break
;
case
ClassDef
:
:
Protocol
:
result
+=
"
tento protokol "
;
break
;
case
ClassDef
:
:
Category
:
result
+=
"
tuto kategorii "
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"tuto v
ýj
imku"
;
break
;
}
result
+=
" byla generov
á
na z "
;
if
(
single
)
result
+=
"n
ásledující
ho souboru:"
;
else
result
+=
"n
ásledujících souborù
:"
;
return
decode
(
result
)
;
result
+=
" byla generov
án
a z "
;
if
(
single
)
result
+=
"n
ásledujícího
souboru:"
;
else
result
+=
"n
ásledujících souborů:"
;
return
result
;
}
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
*/
virtual
QCString
trAlphabeticalList
()
{
return
decode
(
"Rejstøík tøíd"
)
;
}
{
return
"Rejstřík tříd"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
...
...
@@ -873,18 +860,18 @@ class TranslatorCzech : public Translator
/*! This is used as the heading text for the retval command. */
virtual
QCString
trReturnValues
()
{
return
decode
(
"Vracené hodnoty"
)
;
}
{
return
"Vracené hodnoty"
;
}
/*! This is in the (quick) index as a link to the main page (index.html)
*/
virtual
QCString
trMainPage
()
{
return
decode
(
"Hlavní stránka"
)
;
}
{
return
"Hlavní stránka"
;
}
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
*/
virtual
QCString
trPageAbbreviation
()
{
return
decode
(
"s."
)
;
}
{
return
"s."
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991003
...
...
@@ -892,11 +879,11 @@ class TranslatorCzech : public Translator
virtual
QCString
trDefinedAtLineInSourceFile
()
{
return
decode
(
"Definice je uvedena na øádku @0 v souboru @1."
)
;
return
"Definice je uvedena na řádku @0 v souboru @1."
;
}
virtual
QCString
trDefinedInSourceFile
()
{
return
decode
(
"Definice v souboru @0."
)
;
return
"Definice v souboru @0."
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -905,7 +892,7 @@ class TranslatorCzech : public Translator
virtual
QCString
trDeprecated
()
{
return
decode
(
"Zastaralé"
)
;
return
"Zastaralé"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -915,69 +902,69 @@ class TranslatorCzech : public Translator
/*! this text is put before a collaboration diagram */
virtual
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
return
decode
((
QCString
)
"Diagram tøíd pro "
+
clName
+
":"
)
;
return
(
QCString
)
"Diagram tříd pro "
+
clName
+
":"
;
}
/*! this text is put before an include dependency graph */
virtual
QCString
trInclDepGraph
(
const
char
*
fName
)
{
return
decode
((
QCString
)
"Graf závislostí na vkládaný
ch souborech "
"pro "
+
fName
+
":"
)
;
return
(
QCString
)
"Graf závislostí na vkládaných s
ouborech "
"pro "
+
fName
+
":"
;
}
/*! header that is put before the list of constructor/destructors. */
virtual
QCString
trConstructorDocumentation
()
{
return
decode
(
"Dokumentace konstruktoru a destruktoru"
)
;
return
"Dokumentace konstruktoru a destruktoru"
;
}
/*! Used in the file documentation to point to the corresponding sources. */
virtual
QCString
trGotoSourceCode
()
{
return
decode
(
"Zobrazit zdrojový text tohoto souboru."
)
;
return
"Zobrazit zdrojový text tohoto souboru."
;
}
/*! Used in the file sources to point to the corresponding documentation. */
virtual
QCString
trGotoDocumentation
()
{
return
decode
(
"Zobrazit dokumentaci tohoto souboru."
)
;
return
"Zobrazit dokumentaci tohoto souboru."
;
}
/*! Text for the \\pre command */
virtual
QCString
trPrecondition
()
{
return
decode
(
"Precondition"
)
;
return
"Precondition"
;
}
/*! Text for the \\post command */
virtual
QCString
trPostcondition
()
{
return
decode
(
"Postcondition"
)
;
return
"Postcondition"
;
}
/*! Text for the \\invariant command */
virtual
QCString
trInvariant
()
{
return
decode
(
"Invariant"
)
;
return
"Invariant"
;
}
/*! Text shown before a multi-line variable/enum initialization */
virtual
QCString
trInitialValue
()
{
return
decode
(
"Initializer:"
)
;
return
"Initializer:"
;
}
/*! Text used the source code in the file index */
virtual
QCString
trCode
()
{
return
decode
(
"zdrojový text"
)
;
return
"zdrojový text"
;
}
virtual
QCString
trGraphicalHierarchy
()
{
return
decode
(
"Grafické zobrazení hierarchie tøíd"
)
;
return
"Grafické zobrazení hierarchie tříd"
;
}
virtual
QCString
trGotoGraphicalHierarchy
()
{
return
decode
(
"Zobrazit grafickou podobu hierarchie tøíd"
)
;
return
"Zobrazit grafickou podobu hierarchie tříd"
;
}
virtual
QCString
trGotoTextualHierarchy
()
{
return
decode
(
"Zobrazit textovou podobu hierarchie tøíd"
)
;
return
"Zobrazit textovou podobu hierarchie tříd"
;
}
virtual
QCString
trPageIndex
()
{
return
decode
(
"Rejstøík stránek"
)
;
return
"Rejstřík stránek"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -986,50 +973,50 @@ class TranslatorCzech : public Translator
virtual
QCString
trNote
()
{
return
decode
(
"Poznámka"
)
;
return
"Poznámka"
;
}
virtual
QCString
trPublicTypes
()
{
return
decode
(
"Veøejné typy"
)
;
return
"Veřejné typy"
;
}
virtual
QCString
trPublicAttribs
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"Datové položky"
)
;
return
"Datové položky"
;
}
else
{
return
decode
(
"Veøejné atributy"
)
;
return
"Veřejné atributy"
;
}
}
virtual
QCString
trStaticPublicAttribs
()
{
return
decode
(
"Statické veøejné atributy"
)
;
return
"Statické veřejné atributy"
;
}
virtual
QCString
trProtectedTypes
()
{
return
decode
(
"Chránìné typy"
)
;
return
"Chráněné typy"
;
}
virtual
QCString
trProtectedAttribs
()
{
return
decode
(
"Chránìné atributy"
)
;
return
"Chráněné atributy"
;
}
virtual
QCString
trStaticProtectedAttribs
()
{
return
decode
(
"Statické chránìné atributy"
)
;
return
"Statické chráněné atributy"
;
}
virtual
QCString
trPrivateTypes
()
{
return
decode
(
"Privátní typy"
)
;
return
"Privátní typy"
;
}
virtual
QCString
trPrivateAttribs
()
{
return
decode
(
"Privátní atributy"
)
;
return
"Privátní atributy"
;
}
virtual
QCString
trStaticPrivateAttribs
()
{
return
decode
(
"Statické privátní atributy"
)
;
return
"Statické privátní atributy"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1039,12 +1026,12 @@ class TranslatorCzech : public Translator
/*! Used as a marker that is put before a todo item */
virtual
QCString
trTodo
()
{
return
decode
(
"Plánované úpravy"
)
;
return
"Plánované úpravy"
;
}
/*! Used as the header of the todo list */
virtual
QCString
trTodoList
()
{
return
decode
(
"Seznam plánovaných úprav"
)
;
return
"Seznam plánovaných úprav"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1053,24 +1040,24 @@ class TranslatorCzech : public Translator
virtual
QCString
trReferencedBy
()
{
return
decode
(
"Používá se v"
)
;
return
"Používá se v"
;
}
virtual
QCString
trRemarks
()
{
return
decode
(
"Poznámky"
)
;
// ??? not checked in a context
return
"Poznámky"
;
// ??? not checked in a context
}
virtual
QCString
trAttention
()
{
return
decode
(
"Upozornìní"
)
;
// ??? not checked in a context
return
"Upozornění"
;
// ??? not checked in a context
}
virtual
QCString
trInclByDepGraph
()
{
return
decode
(
"Následující graf ukazuje, které soubory pøí
mo nebo "
"nep
øímo vkládají tento soubor:"
)
;
return
"Následující graf ukazuje, které soubory přímo neb
o "
"nep
římo vkládají tento soubor:"
;
}
virtual
QCString
trSince
()
{
return
decode
(
"Od"
)
;
// ??? not checked in a context
return
"Od"
;
// ??? not checked in a context
}
////////////////////////////////////////////////////////////////////////////
...
...
@@ -1080,38 +1067,38 @@ class TranslatorCzech : public Translator
/*! title of the graph legend page */
virtual
QCString
trLegendTitle
()
{
return
decode
(
"Vysvìtlivky ke grafu"
)
;
return
"Vysvětlivky ke grafu"
;
}
/*! page explaining how the dot graph's should be interpreted */
virtual
QCString
trLegendDocs
()
{
QCString
result
(
"Zde naleznete vysv
ìtlení, jak mají být interpretová
ny grafy, "
"kter
é byly generová
ny programem doxygen.<p>
\n
"
"Uva
žujte následující pøí
klad:
\n
"
"Zde naleznete vysv
ětlení, jak mají být interpretovány gr
afy, "
"kter
é byly generovány
programem doxygen.<p>
\n
"
"Uva
žujte následující příklad:
\
n
"
"
\\
code
\n
"
"/*! Neviditeln
á tøída, která se v grafu nezobrazuje, protož
e "
"do
šlo k oøezání
grafu. */
\n
"
"/*! Neviditeln
á třída, která se v grafu nezobrazuje, protože "
"do
šlo k ořezání gra
fu. */
\n
"
"class Invisible { };
\n\n
"
"/*! T
øída, u které došlo k oøezání grafu. Vztah dìdiè
nosti "
"/*! T
řída, u které došlo k ořezání grafu. Vztah dědičnosti "
"je skryt. */
\n
"
"class Truncated : public Invisible { };
\n\n
"
"/*! B
ázová tøída dìdìná veøejnì
(public inheritance). */
\n
"
"/*! B
ázová třída děděná veřejně (public
inheritance). */
\n
"
"class PublicBase : public Truncated { };
\n\n
"
"/*! B
ázová tøída, použitá pro chránìné dìdìní
"
"/*! B
ázová třída, použitá pro chráněné dědění "
"(protected inheritance). */
\n
"
"class ProtectedBase { };
\n\n
"
"/*! B
ázová tøída, využitá pro privátní dìdìní
"
"/*! B
ázová třída, využitá pro privátní dědění "
"(private inheritance). */
\n
"
"class PrivateBase { };
\n\n
"
"/* T
øída, která není dokumentována komentáø
i programu doxygen. */
\n
"
"/* T
řída, která není dokumentována komentáři progr
amu doxygen. */
\n
"
"class Undocumented { };
\n\n
"
"/*!
Šablona tøí
dy. */
\n
"
"/*!
Šablona třídy.
*/
\n
"
"template<class T> class Templ { };
\n\n
"
"/*! T
øída, která je využívána tøí
dou Inherited. */
\n
"
"/*! T
řída, která je využívána třídou Inhe
rited. */
\n
"
"class Used { };
\n\n
"
"/*! Odvozen
á tøída, která rùzným zpùsobem dìdí z více bázový
ch "
"t
øí
d. */
\n
"
"/*! Odvozen
á třída, která různým způsobem dědí z více bázových "
"t
říd.
*/
\n
"
"class Inherited : public PublicBase,
\n
"
" protected ProtectedBase,
\n
"
" private PrivateBase,
\n
"
...
...
@@ -1122,49 +1109,49 @@ class TranslatorCzech : public Translator
" Used *m_usedClass;
\n
"
"};
\n
"
"
\\
endcode
\n
"
"Pokud je polo
žka
\\
c MAX_DOT_GRAPH_HEIGHT konfiguraèní
ho souboru "
"nastavena na hodnotu 200, bude vygenerov
án následující
graf:"
"Pokud je polo
žka
\\
c MAX_DOT_GRAPH_HEIGHT konfiguračního
souboru "
"nastavena na hodnotu 200, bude vygenerov
án následující gra
f:"
"<p><center><img src=
\"
graph_legend."
+
Config_getEnum
(
"DOT_IMAGE_FORMAT"
)
+
"
\"
></center>
\n
"
"<p>
\n
"
"Bloky (tj. uzly) v uveden
ém grafu mají následující vý
znam:
\n
"
"Bloky (tj. uzly) v uveden
ém grafu mají následující význam:
\
n
"
"<ul>
\n
"
"<li>
Èernì vyplnìný obdélník reprezentuje strukturu nebo tøí
du, "
"pro kterou byl graf generov
á
n.
\n
"
"<li>Obd
élník s èerným obrysem oznaè
uje dokumentovanou "
"strukturu nebo t
øí
du.
\n
"
"<li>Obd
élník s šedým obrysem oznaè
uje nedokumentovanou "
"strukturu nebo t
øí
du.
\n
"
"<li>Obd
élník s èerveným obrysem oznaè
uje dokumentovanou "
"strukturu nebo t
øí
du, pro kterou
\n
"
"nejsou zobrazeny v
šechny vztahy dìdiènosti nebo obsažení
. "
"Graf je o
øezán v pøípadì
, kdy jej
\n
"
"nen
í možné umístit do vymezené
ho prostoru.
\n
"
"<li>
Černě vyplněný obdélník reprezentuje strukturu nebo třídu, "
"pro kterou byl graf generov
án
.
\n
"
"<li>Obd
élník s černým obrysem označuje
dokumentovanou "
"strukturu nebo t
řídu
.
\n
"
"<li>Obd
élník s šedým obrysem označuje
nedokumentovanou "
"strukturu nebo t
řídu
.
\n
"
"<li>Obd
élník s červeným obrysem označuje
dokumentovanou "
"strukturu nebo t
řídu
, pro kterou
\n
"
"nejsou zobrazeny v
šechny vztahy dědičnosti nebo obsažení. "
"Graf je o
řezán v případě, kdy
jej
\n
"
"nen
í možné umístit do vymezeného pr
ostoru.
\n
"
"</ul>
\n
"
"
Šipky (tj. hrany grafu) mají následující vý
znam:
\n
"
"
Šipky (tj. hrany grafu) mají následující význam:
\
n
"
"<ul>
\n
"
"<li>Tmav
ì modrá šipka se používá pro oznaèení vztahu veøejné
"
"d
ìdiènosti (public) mezi dvìma tøí
dami.
\n
"
"<li>Tmav
ì zelená šipka oznaèuje vztah chránìné dìdiè
nosti "
"<li>Tmav
ě modrá šipka se používá pro označení vztahu veřejné "
"d
ědičnosti (public) mezi dvěma třídami
.
\n
"
"<li>Tmav
ě zelená šipka označuje vztah chráněné dědičnosti "
"(protected).
\n
"
"<li>Tmav
ì èervená šipka oznaèuje vztah privátní dìdiè
nosti "
"<li>Tmav
ě červená šipka označuje vztah privátní dědičnosti
"
"(private).
\n
"
"<li>Purpurov
á šipka kreslená èárkovanì se používá v pøípadì
, "
"kdy je t
øída obsažena v jiné tøídì
,
\n
"
"nebo kdy je pou
žívána jinou tøídou. Je oznaèena identifiká
torem "
"jedn
é nebo více promìných, pøes které
\n
"
"je t
øída nebo struktura zpøístupnì
na.
\n
"
"<li>
Žlutá šipka kreslená èárkovanì vyjadøuje vztah mezi instancí š
ablony "
"a
šablonou tøídy, na základì které
byla
\n
"
"instance
šablony vytvoøena. V popisu šipky jsou uvedeny pøíslušné
"
" parametry
š
ablony.
\n
"
"<li>Purpurov
á šipka kreslená čárkovaně se používá v případě, "
"kdy je t
řída obsažena v jiné třídě,
\n
"
"nebo kdy je pou
žívána jinou třídou. Je označena identifikátorem
"
"jedn
é nebo více proměných, přes které
\n
"
"je t
řída nebo struktura zpřístupněna.
\n
"
"<li>
Žlutá šipka kreslená čárkovaně vyjadřuje vztah mezi instancí šablony "
"a
šablonou třídy, na základě které byla
\
n
"
"instance
šablony vytvořena. V popisu šipky jsou uvedeny příslušné"
" parametry
ša
blony.
\n
"
"</ul>
\n
"
);
return
decode
(
result
)
;
return
result
;
}
/*! text for the link to the legend page */
virtual
QCString
trLegend
()
{
return
decode
(
"vysvìtlivky"
)
;
return
"vysvětlivky"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1174,13 +1161,13 @@ class TranslatorCzech : public Translator
/*! Used as a marker that is put before a test item */
virtual
QCString
trTest
()
{
return
decode
(
"Test"
)
;
return
"Test"
;
}
/*! Used as the header of the test list */
virtual
QCString
trTestList
()
{
return
decode
(
"Seznam testù"
)
;
return
"Seznam testů"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1190,7 +1177,7 @@ class TranslatorCzech : public Translator
/*! Used as a section header for KDE-2 IDL methods */
virtual
QCString
trDCOPMethods
()
{
return
decode
(
"Metody DCOP"
)
;
return
"Metody DCOP"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1200,12 +1187,12 @@ class TranslatorCzech : public Translator
/*! Used as a section header for IDL properties */
virtual
QCString
trProperties
()
{
return
decode
(
"Vlastnosti"
)
;
return
"Vlastnosti"
;
}
/*! Used as a section header for IDL property documentation */
virtual
QCString
trPropertyDocumentation
()
{
return
decode
(
"Dokumentace k vlastnosti"
)
;
return
"Dokumentace k vlastnosti"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.4
...
...
@@ -1214,33 +1201,33 @@ class TranslatorCzech : public Translator
/*! Used for Java classes in the summary section of Java packages */
virtual
QCString
trClasses
()
{
return
decode
(
"Tøídy"
)
;
return
"Třídy"
;
}
/*! Used as the title of a Java package */
virtual
QCString
trPackage
(
const
char
*
name
)
{
return
decode
((
QCString
)
"Balík "
+
name
)
;
return
QCString
(
"Balík "
)
+
name
;
}
/*! Title of the package index page */
virtual
QCString
trPackageList
()
{
return
decode
(
"Seznam balíkù"
)
;
return
"Seznam balíků"
;
}
/*! The description of the package index page */
virtual
QCString
trPackageListDescription
()
{
return
decode
(
"Zde naleznete seznam balíkù se struèný
m popisem "
"(pokud byl uveden):"
)
;
return
"Zde naleznete seznam balíků se stručným p
opisem "
"(pokud byl uveden):"
;
}
/*! The link name in the Quick links header for each page */
virtual
QCString
trPackages
()
{
return
decode
(
"Balíky"
)
;
return
"Balíky"
;
}
/*! Text shown before a multi-line define */
virtual
QCString
trDefineValue
()
{
return
decode
(
"Hodnota:"
)
;
return
"Hodnota:"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1250,12 +1237,12 @@ class TranslatorCzech : public Translator
/*! Used as a marker that is put before a \\bug item */
virtual
QCString
trBug
()
{
return
decode
(
"Chyba"
)
;
return
"Chyba"
;
}
/*! Used as the header of the bug list */
virtual
QCString
trBugList
()
{
return
decode
(
"Seznam chyb"
)
;
return
"Seznam chyb"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1277,7 +1264,7 @@ class TranslatorCzech : public Translator
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
decode
(
"Rejstøík"
)
;
return
"Rejstřík"
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1286,9 +1273,9 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trClass
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"T
øíd"
:
"tøí
d"
));
result
+=
(
singular
?
"a"
:
"y"
)
;
return
decode
(
result
)
;
QCString
result
((
first_capital
?
"T
říd"
:
"tříd"
))
;
result
+=
singular
?
"a"
:
"y"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1299,7 +1286,7 @@ class TranslatorCzech : public Translator
{
QCString
result
((
first_capital
?
"Soubor"
:
"soubor"
));
if
(
!
singular
)
result
+=
"y"
;
return
decode
(
result
)
;
return
result
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1311,7 +1298,7 @@ class TranslatorCzech : public Translator
QCString
result
((
first_capital
?
"Prostor"
:
"prostor"
));
if
(
!
singular
)
result
+=
"y"
;
result
+=
" jmen"
;
return
decode
(
result
)
;
return
result
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1321,8 +1308,8 @@ class TranslatorCzech : public Translator
virtual
QCString
trGroup
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Skupin"
:
"skupin"
));
result
+=
(
singular
?
"a"
:
"y"
)
;
return
decode
(
result
)
;
result
+=
singular
?
"a"
:
"y"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1331,9 +1318,9 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trPage
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Str
ánk"
:
"strá
nk"
));
result
+=
(
singular
?
"a"
:
"y"
)
;
return
decode
(
result
)
;
QCString
result
((
first_capital
?
"Str
ánk"
:
"stránk
"
));
result
+=
singular
?
"a"
:
"y"
;
return
result
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1342,9 +1329,10 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trMember
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Èlen"
:
"èlen"
));
if
(
!
singular
)
result
+=
"y"
;
return
decode
(
result
);
QCString
result
((
first_capital
?
"Člen"
:
"člen"
));
if
(
!
singular
)
result
+=
"y"
;
return
result
;
}
/*! ??? Jak to prelozit? Bylo by dobre, kdyby se ozval nekdo,
...
...
@@ -1366,8 +1354,8 @@ class TranslatorCzech : public Translator
virtual
QCString
trAuthor
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Auto"
:
"auto"
));
result
+=
(
singular
)
?
"r"
:
"
ø
i"
;
return
decode
(
result
)
;
result
+=
(
singular
)
?
"r"
:
"
ři
"
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1378,7 +1366,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trReferences
()
{
return
decode
(
"Odkazuje se na"
)
;
return
"Odkazuje se na"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1398,7 +1386,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trImplementedInList
(
int
numEntries
)
{
return
decode
(
"Implementováno v "
+
trWriteList
(
numEntries
)
+
"."
)
;
return
"Implementováno v "
+
trWriteList
(
numEntries
)
+
"."
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1410,7 +1398,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trRTFTableOfContents
()
{
return
decode
(
"Obsah"
)
;
return
"Obsah"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1422,7 +1410,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trDeprecatedList
()
{
return
decode
(
"Seznam zastaralých prvkù"
)
;
return
"Seznam zastaralých prvků"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1434,12 +1422,12 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trEvents
()
{
return
decode
(
"Události"
)
;
return
"Události"
;
}
/*! Header used for the documentation section of a class' events. */
virtual
QCString
trEventDocumentation
()
{
return
decode
(
"Dokumentace událostí"
)
;
return
"Dokumentace událostí"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1450,35 +1438,35 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trPackageTypes
()
{
return
decode
(
"Typy v balíku"
)
;
return
"Typy v balíku"
;
}
/*! Used as a heading for a list of Java class functions with package
* scope.
*/
virtual
QCString
trPackageMembers
()
{
return
decode
(
"Funkce v balíku"
)
;
return
"Funkce v balíku"
;
}
/*! Used as a heading for a list of static Java class functions with
* package scope.
*/
virtual
QCString
trStaticPackageMembers
()
{
return
decode
(
"Statické funkce v balíku"
)
;
return
"Statické funkce v balíku"
;
}
/*! Used as a heading for a list of Java class variables with package
* scope.
*/
virtual
QCString
trPackageAttribs
()
{
return
decode
(
"Atributy balíku"
)
;
return
"Atributy balíku"
;
}
/*! Used as a heading for a list of static Java class variables with
* package scope.
*/
virtual
QCString
trStaticPackageAttribs
()
{
return
decode
(
"Statické atributy balíku"
)
;
return
"Statické atributy balíku"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1490,12 +1478,12 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trAll
()
{
return
decode
(
"Vše"
)
;
return
"Vše"
;
}
/*! Put in front of the call graph for a function. */
virtual
QCString
trCallGraph
()
{
return
decode
(
"Tato funkce volá..."
)
;
return
"Tato funkce volá..."
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1507,14 +1495,14 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trSearchForIndex
()
{
return
decode
(
"Vyhledat"
)
;
return
"Vyhledat"
;
}
/*! This string is used as the title for the page listing the search
* results.
*/
virtual
QCString
trSearchResultsTitle
()
{
return
decode
(
"Výsledky vyhledávání"
)
;
return
"Výsledky vyhledávání"
;
}
/*! This string is put just before listing the search results. The
* text can be different depending on the number of documents found.
...
...
@@ -1528,17 +1516,17 @@ class TranslatorCzech : public Translator
{
if
(
numDocuments
==
0
)
{
return
decode
(
"Lituji. Vašemu dotazu neodpovídá žádný dokument."
)
;
return
"Lituji. Vašemu dotazu neodpovídá žádný dokument."
;
}
else
if
(
numDocuments
==
1
)
{
return
decode
(
"Nalezen jediný dokument, který vyhovuje vašemu dotazu."
)
;
return
"Nalezen jediný dokument, který vyhovuje vašemu dotazu."
;
}
else
{
return
decode
(
"Nalezeno <b>$num</b> dokumentù, které vyhovují vaš
emu "
"dotazu. Nejl
épe odpovídající
dokumenty jsou zobrazeny "
"jako prvn
í."
)
;
return
"Nalezeno <b>$num</b> dokumentů, které vyhovují vašemu
"
"dotazu. Nejl
épe odpovídající dok
umenty jsou zobrazeny "
"jako prvn
í."
;
}
}
/*! This string is put before the list of matched words, for each search
...
...
@@ -1546,7 +1534,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trSearchMatches
()
{
return
decode
(
"Nalezená slova:"
)
;
return
"Nalezená slova:"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1557,7 +1545,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trSourceFile
(
QCString
&
filename
)
{
return
decode
(
"Zdrojový
soubor "
)
+
filename
;
return
QCString
(
"Zdrojový
soubor "
)
+
filename
;
}
...
...
@@ -1570,27 +1558,27 @@ class TranslatorCzech : public Translator
* hierarchy.
*/
virtual
QCString
trDirIndex
()
{
return
decode
(
"Hierarchie adresáøù"
)
;
}
{
return
"Hierarchie adresářů"
;
}
/*! This is used as the name of the chapter containing the documentation
* of the directories.
*/
virtual
QCString
trDirDocumentation
()
{
return
decode
(
"Dokumentace k adresáøùm"
)
;
}
{
return
"Dokumentace k adresářům"
;
}
/*! This is used as the title of the directory index and also in the
* Quick links of a HTML page, to link to the directory hierarchy.
*/
virtual
QCString
trDirectories
()
{
return
decode
(
"Adresáøe"
)
;
}
{
return
"Adresáře"
;
}
/*! This returns a sentences that introduces the directory hierarchy.
* and the fact that it is sorted alphabetically per level
*/
virtual
QCString
trDirDescription
()
{
return
decode
(
"Následující hierarchie adresáøù
je zhruba, "
"ale ne
úplnì, øazena podle abecedy:"
)
;
return
"Následující hierarchie adresářů je zh
ruba, "
"ale ne
úplně, řazena podle abecedy:"
;
}
/*! This returns the title of a directory page. The name of the
...
...
@@ -1598,9 +1586,9 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trDirReference
(
const
char
*
dirName
)
{
QCString
result
=
"Reference k adres
áø
i "
;
QCString
result
=
"Reference k adres
áři
"
;
result
+=
dirName
;
return
decode
(
result
)
;
return
result
;
}
/*! This returns the word directory with or without starting capital
...
...
@@ -1608,10 +1596,10 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trDir
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Adres
áø"
:
"adresáø
"
));
QCString
result
((
first_capital
?
"Adres
ář"
:
"adresář"
));
if
(
!
singular
)
result
+=
"e"
;
return
decode
(
result
)
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1623,9 +1611,9 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trOverloadText
()
{
return
decode
(
"Jde o pøetíž
enou (overloaded) metodu, "
"kter
á má usnadnit používání. Od výše uvedené metody se liší
"
"pouze jinak zad
ávanými argumenty."
)
;
return
"Jde o přetíženo
u (overloaded) metodu, "
"kter
á má usnadnit používání. Od výše uvedené metody se liší "
"pouze jinak zad
ávanými argumenty."
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1634,7 +1622,7 @@ class TranslatorCzech : public Translator
virtual
QCString
trCallerGraph
()
{
return
decode
(
"Tuto funkci volají..."
)
;
return
"Tuto funkci volají..."
;
}
...
...
@@ -1643,7 +1631,7 @@ class TranslatorCzech : public Translator
*/
virtual
QCString
trEnumerationValueDocumentation
()
{
return
decode
(
"Dokumentace výètových hodnot"
)
;
return
"Dokumentace výčtových hodnot"
;
}
};
...
...
src/util.cpp
View file @
0b087b99
...
...
@@ -293,6 +293,7 @@ int guessSection(const char *name)
n
.
right
(
4
)
==
".hpp"
||
n
.
right
(
4
)
==
".h++"
||
n
.
right
(
4
)
==
".idl"
||
n
.
right
(
4
)
==
".ddl"
||
n
.
right
(
5
)
==
".pidl"
)
return
Entry
::
HEADER_SEC
;
return
0
;
...
...
@@ -1476,7 +1477,7 @@ nextChar:
result
+=
' '
;
result
+=
s
.
at
(
i
);
}
else
if
(
c
==
't'
&&
csp
==
5
&&
else
if
(
c
==
't'
&&
csp
==
5
&&
(
i
<
5
||
!
isId
(
s
.
at
(
i
-
5
)))
&&
!
(
isId
(
s
.
at
(
i
+
1
))
/*|| s.at(i+1)==' '*/
||
s
.
at
(
i
+
1
)
==
')'
||
s
.
at
(
i
+
1
)
==
','
||
s
.
at
(
i
+
1
)
==
'\0'
))
// prevent const ::A from being converted to const::A
...
...
@@ -1485,12 +1486,12 @@ nextChar:
if
(
s
.
at
(
i
+
1
)
==
' '
)
i
++
;
csp
=
0
;
}
else
if
(
c
==
':'
&&
csp
==
6
)
// replace const::A by const ::A
else
if
(
c
==
':'
&&
csp
==
6
&&
(
i
<
6
||
!
isId
(
s
.
at
(
i
-
6
)))
)
// replace const::A by const ::A
{
result
+=
" :"
;
csp
=
0
;
}
else
if
(
c
==
'l'
&&
vsp
==
7
&&
else
if
(
c
==
'l'
&&
vsp
==
7
&&
(
i
<
7
||
!
isId
(
s
.
at
(
i
-
7
)))
&&
!
(
isId
(
s
.
at
(
i
+
1
))
/*|| s.at(i+1)==' '*/
||
s
.
at
(
i
+
1
)
==
')'
||
s
.
at
(
i
+
1
)
==
','
||
s
.
at
(
i
+
1
)
==
'\0'
))
// prevent virtual ::A from being converted to virtual::A
...
...
@@ -1499,7 +1500,7 @@ nextChar:
if
(
s
.
at
(
i
+
1
)
==
' '
)
i
++
;
vsp
=
0
;
}
else
if
(
c
==
':'
&&
vsp
==
8
)
// replace virtual::A by virtual ::A
else
if
(
c
==
':'
&&
vsp
==
8
&&
(
i
<
8
||
!
isId
(
s
.
at
(
i
-
8
)))
)
// replace virtual::A by virtual ::A
{
result
+=
" :"
;
vsp
=
0
;
...
...
@@ -5949,6 +5950,7 @@ SrcLangExt getLanguageFromFileName(const QCString fileName)
if
(
!
init
)
// one time initialization
{
extLookup
.
insert
(
".idl"
,
new
int
(
SrcLangExt_IDL
));
extLookup
.
insert
(
".ddl"
,
new
int
(
SrcLangExt_IDL
));
extLookup
.
insert
(
".odl"
,
new
int
(
SrcLangExt_IDL
));
extLookup
.
insert
(
".java"
,
new
int
(
SrcLangExt_Java
));
extLookup
.
insert
(
".jsl"
,
new
int
(
SrcLangExt_Java
));
...
...
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