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
79959c79
Commit
79959c79
authored
Nov 25, 2001
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.12-20011125
parent
b89fdced
Changes
43
Hide whitespace changes
Inline
Side-by-side
Showing
43 changed files
with
1515 additions
and
567 deletions
+1515
-567
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
doxmlintf.h
addon/xmlparse/doxmlintf.h
+10
-0
mainhandler.cpp
addon/xmlparse/mainhandler.cpp
+14
-0
memberhandler.cpp
addon/xmlparse/memberhandler.cpp
+21
-0
memberhandler.h
addon/xmlparse/memberhandler.h
+14
-4
maintainers.txt
doc/maintainers.txt
+1
-1
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+44
-35
classdef.h
src/classdef.h
+4
-5
code.l
src/code.l
+1
-1
constexp.l
src/constexp.l
+4
-2
cppvalue.cpp
src/cppvalue.cpp
+1
-0
definition.cpp
src/definition.cpp
+5
-2
doc.l
src/doc.l
+1
-1
dot.cpp
src/dot.cpp
+10
-0
dot.h
src/dot.h
+1
-0
doxygen.cpp
src/doxygen.cpp
+1
-0
doxysearch.cpp
src/doxysearch.cpp
+13
-0
filedef.cpp
src/filedef.cpp
+30
-20
filedef.h
src/filedef.h
+4
-5
groupdef.cpp
src/groupdef.cpp
+14
-16
groupdef.h
src/groupdef.h
+21
-21
memberdef.cpp
src/memberdef.cpp
+4
-4
membergroup.h
src/membergroup.h
+10
-2
namespacedef.cpp
src/namespacedef.cpp
+12
-49
namespacedef.h
src/namespacedef.h
+4
-5
outputlist.cpp
src/outputlist.cpp
+1
-1
outputlist.h
src/outputlist.h
+1
-1
pre.l
src/pre.l
+2
-2
scanner.l
src/scanner.l
+1
-1
sortdict.h
src/sortdict.h
+208
-0
translator_br.h
src/translator_br.h
+44
-29
translator_fr.h
src/translator_fr.h
+25
-26
translator_it.h
src/translator_it.h
+15
-2
translator_kr.h
src/translator_kr.h
+704
-189
translator_nl.h
src/translator_nl.h
+12
-1
translator_pt.h
src/translator_pt.h
+17
-3
translator_si.h
src/translator_si.h
+10
-1
util.cpp
src/util.cpp
+8
-21
util.h
src/util.h
+2
-4
xmlgen.cpp
src/xmlgen.cpp
+215
-107
No files found.
INSTALL
View file @
79959c79
DOXYGEN Version 1.2.12
DOXYGEN Version 1.2.12
-20011125
Please read the installation section of the manual for instructions.
--------
Dimitri van Heesch (
18
November 2001)
Dimitri van Heesch (
25
November 2001)
README
View file @
79959c79
DOXYGEN Version 1.2.12
DOXYGEN Version 1.2.12
_20011125
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) (
18
November 2001)
Dimitri van Heesch (dimitri@stack.nl) (
25
November 2001)
VERSION
View file @
79959c79
1.2.12
1.2.12
-20011125
addon/xmlparse/doxmlintf.h
View file @
79959c79
...
...
@@ -4,6 +4,8 @@
#include <qlist.h>
#include <qstring.h>
class
IMember
;
class
IParam
{
public
:
...
...
@@ -15,6 +17,14 @@ class IParam
virtual
QString
defaultValue
()
const
=
0
;
};
class
IMemberReference
{
public
:
virtual
IMember
*
getMember
()
const
=
0
;
virtual
QString
getMemberName
()
const
=
0
;
virtual
int
getLineNumber
()
const
=
0
;
};
class
IMember
{
public
:
...
...
addon/xmlparse/mainhandler.cpp
View file @
79959c79
...
...
@@ -67,6 +67,20 @@ void MainHandler::initialize()
m_compoundNameDict
.
insert
(
compHandler
->
name
(),
compHandler
);
m_compoundDict
.
insert
(
compHandler
->
id
(),
compHandler
);
}
// for each member
QDictIterator
<
QList
<
IMember
>
>
mndi
(
m_memberNameDict
);
QList
<
IMember
>
*
ml
;
for
(;(
ml
=
mndi
.
current
());
++
mndi
)
{
QListIterator
<
IMember
>
mli
(
*
ml
);
IMember
*
mem
;
for
(;(
mem
=
mli
.
current
());
++
mli
)
{
((
MemberHandler
*
)
mem
)
->
initialize
(
this
);
}
}
}
class
ErrorHandler
:
public
QXmlErrorHandler
...
...
addon/xmlparse/memberhandler.cpp
View file @
79959c79
...
...
@@ -16,6 +16,7 @@
#include "memberhandler.h"
#include "sectionhandler.h"
#include "dochandler.h"
#include "mainhandler.h"
MemberHandler
::
MemberHandler
(
IBaseHandler
*
parent
)
:
m_parent
(
parent
),
m_brief
(
0
),
m_detailed
(
0
)
...
...
@@ -90,6 +91,7 @@ void MemberHandler::startReferences(const QXmlAttributes& attrib)
{
MemberReference
*
mr
=
new
MemberReference
;
mr
->
m_memId
=
attrib
.
value
(
"id"
);
mr
->
m_line
=
attrib
.
value
(
"line"
).
toInt
();
m_references
.
append
(
mr
);
m_curString
=
""
;
}
...
...
@@ -103,6 +105,7 @@ void MemberHandler::startReferencedBy(const QXmlAttributes& attrib)
{
MemberReference
*
mr
=
new
MemberReference
;
mr
->
m_memId
=
attrib
.
value
(
"id"
);
mr
->
m_line
=
attrib
.
value
(
"line"
).
toInt
();
m_referencedBy
.
append
(
mr
);
m_curString
=
""
;
}
...
...
@@ -136,4 +139,22 @@ void MemberHandler::startParam(const QXmlAttributes& attrib)
m_params
.
append
(
paramHandler
);
}
void
MemberHandler
::
initialize
(
MainHandler
*
mh
)
{
QListIterator
<
MemberReference
>
mli
(
m_references
);
MemberReference
*
mr
;
for
(;(
mr
=
mli
.
current
());
++
mli
)
{
mr
->
initialize
(
mh
);
}
}
void
MemberHandler
::
MemberReference
::
initialize
(
MainHandler
*
mh
)
{
m_mainHandler
=
mh
;
}
IMember
*
MemberHandler
::
MemberReference
::
getMember
()
const
{
return
m_mainHandler
->
getMemberById
(
m_memId
);
}
addon/xmlparse/memberhandler.h
View file @
79959c79
...
...
@@ -25,6 +25,7 @@
#include "doxmlintf.h"
class
DocHandler
;
class
MainHandler
;
class
MemberHandler
:
public
IMember
,
public
BaseHandler
<
MemberHandler
>
{
...
...
@@ -54,12 +55,21 @@ class MemberHandler : public IMember, public BaseHandler<MemberHandler>
virtual
QString
name
()
const
{
return
m_name
;
}
virtual
QListIterator
<
IParam
>
getParamIterator
()
const
{
return
m_params
;
}
void
initialize
(
MainHandler
*
m
);
private
:
struct
MemberReference
struct
MemberReference
:
public
IMemberReference
{
QString
m_memId
;
QString
m_name
;
int
line
;
virtual
~
MemberReference
()
{}
virtual
IMember
*
getMember
()
const
;
virtual
QString
getMemberName
()
const
{
return
m_name
;
}
virtual
int
getLineNumber
()
const
{
return
m_line
;
}
void
initialize
(
MainHandler
*
m
);
QString
m_memId
;
QString
m_name
;
int
m_line
;
MainHandler
*
m_mainHandler
;
};
IBaseHandler
*
m_parent
;
...
...
doc/maintainers.txt
View file @
79959c79
...
...
@@ -2,7 +2,7 @@
% xml entities like ä are used for special characters
Brazilian
Fabio "FJTC" Jun Takada Chino: chino@
grad.
icmc.sc.usp.br
Fabio "FJTC" Jun Takada Chino: chino@icmc.sc.usp.br
Chinese
Wei Liu: liuwei@asiainfo.com
...
...
packages/rpm/doxygen.spec
View file @
79959c79
Name: doxygen
Version: 1.2.12
Version: 1.2.12
_20011125
Summary: documentation system for C, C++ and IDL
Release: 4
Source: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
79959c79
...
...
@@ -84,9 +84,8 @@ ClassDef::ClassDef(
m_fileDef
=
0
;
m_usesImplClassDict
=
0
;
m_usesIntfClassDict
=
0
;
m_memberGroupList
=
new
MemberGroupList
;
m_memberGroupList
->
setAutoDelete
(
TRUE
);
m_memberGroupDict
=
new
MemberGroupDict
(
17
);
memberGroupSDict
=
new
MemberGroupSDict
;
memberGroupSDict
->
setAutoDelete
(
TRUE
);
m_innerClasses
=
new
ClassSDict
(
17
);
//int i=name().findRev("::"); // TODO: broken if A<N::C> is the class name
//if (i==-1)
...
...
@@ -117,8 +116,7 @@ ClassDef::~ClassDef()
delete
m_usesImplClassDict
;
delete
m_usesIntfClassDict
;
delete
m_incInfo
;
delete
m_memberGroupList
;
delete
m_memberGroupDict
;
delete
memberGroupSDict
;
delete
m_innerClasses
;
delete
m_templateInstances
;
delete
m_templBaseClassNames
;
...
...
@@ -157,29 +155,29 @@ void ClassDef::insertSubClass(ClassDef *cd,Protection p,
void
ClassDef
::
addMembersToMemberGroup
()
{
::
addMembersToMemberGroup
(
&
pubTypes
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubSlots
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
signals
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proTypes
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proSlots
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priTypes
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priSlots
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
friends
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
related
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
properties
,
m
_memberGroupDict
,
m_memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
pubTypes
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
pubMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
pubSlots
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
signals
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proTypes
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proSlots
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priTypes
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priSlots
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
friends
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
related
,
m
emberGroupSDic
t
);
::
addMembersToMemberGroup
(
&
properties
,
m
emberGroupSDic
t
);
}
// adds new member definition to the class
...
...
@@ -527,7 +525,7 @@ void ClassDef::computeAnchors()
void
ClassDef
::
distributeMemberGroupDocumentation
()
{
MemberGroup
ListIterator
mgli
(
*
m_memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -737,8 +735,17 @@ void ClassDef::writeDocumentation(OutputList &ol)
if
(
!
nm
.
isEmpty
())
{
ol
.
startTypewriter
();
ol
.
docify
(
"#include "
);
if
(
m_incInfo
->
local
)
bool
isIDLorJava
=
nm
.
right
(
4
)
==
".idl"
||
nm
.
right
(
5
)
==
".java"
;
if
(
isIDLorJava
)
{
ol
.
docify
(
"import "
);
}
else
{
ol
.
docify
(
"#include "
);
}
if
(
m_incInfo
->
local
||
isIDLorJava
)
ol
.
docify
(
"
\"
"
);
else
ol
.
docify
(
"<"
);
...
...
@@ -756,10 +763,12 @@ void ClassDef::writeDocumentation(OutputList &ol)
ol
.
docify
(
nm
);
}
ol
.
popGeneratorState
();
if
(
m_incInfo
->
local
)
if
(
m_incInfo
->
local
||
isIDLorJava
)
ol
.
docify
(
"
\"
"
);
else
ol
.
docify
(
">"
);
if
(
isIDLorJava
)
ol
.
docify
(
";"
);
ol
.
endTypewriter
();
ol
.
newParagraph
();
}
...
...
@@ -973,7 +982,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
ol
.
startMemberSections
();
// write user defined member groups
MemberGroup
ListIterator
mgli
(
*
m_memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -1485,7 +1494,7 @@ void ClassDef::writeDeclaration(OutputList &ol,MemberDef *md,bool inGroup)
ol
.
endMemberItem
(
FALSE
);
// write user defined member groups
MemberGroup
ListIterator
mgli
(
*
m_memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -2361,7 +2370,7 @@ void ClassDef::addListReferences()
theTranslator
->
trClass
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
MemberGroup
ListIterator
mgli
(
*
m_memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
src/classdef.h
View file @
79959c79
...
...
@@ -39,8 +39,7 @@ class MemberDef;
class
ExampleSDict
;
class
MemberNameInfoSDict
;
class
UsesClassDict
;
class
MemberGroupList
;
class
MemberGroupDict
;
class
MemberGroupSDict
;
class
QTextStream
;
class
PackageDef
;
class
GroupDef
;
...
...
@@ -235,6 +234,9 @@ class ClassDef : public Definition
MemberList
variableMembers
;
MemberList
propertyMembers
;
/* user defined member groups */
MemberGroupSDict
*
memberGroupSDict
;
/*! \} Public API */
/*! \name Doxygen internal API
...
...
@@ -377,9 +379,6 @@ class ClassDef : public Definition
*/
ClassSDict
*
m_innerClasses
;
/* user defined member groups */
MemberGroupList
*
m_memberGroupList
;
MemberGroupDict
*
m_memberGroupDict
;
/* classes for the collaboration diagram */
UsesClassDict
*
m_usesImplClassDict
;
...
...
src/code.l
View file @
79959c79
...
...
@@ -1967,9 +1967,9 @@ void parseCode(OutputDocInterface &od,const char *className,const QCString &s,
codeYYrestart( codeYYin );
BEGIN( Body );
codeYYlex();
endFontClass();
if (g_inputLines==1)
{
endFontClass();
g_code->endCodeLine();
}
od.append(g_code);
...
...
src/constexp.l
View file @
79959c79
...
...
@@ -85,7 +85,9 @@ static int yyread(char *buf,int max_size)
[1-9][0-9]*[uUlL]* { g_strToken=yytext;
return TOK_DECIMALINT;
}
(0x|0X)[0-9a-fA-F]+[uUlL]* { g_strToken=yytext; return TOK_HEXADECIMALINT; }
(0x|0X)[0-9a-fA-F]+[uUlL]* { g_strToken=yytext+2;
return TOK_HEXADECIMALINT;
}
(([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+))([eE]([\-\+])?[0-9]+)?([fFlL])? {
g_strToken=yytext; return TOK_FLOAT;
}
...
...
@@ -106,7 +108,7 @@ bool parseCppExpression(const char *fileName,int lineNr,const QCString &s)
g_inputPosition = 0;
cppExpYYrestart( cppExpYYin );
cppExpYYparse();
//printf("Result: %ld\n",(long)resultValue);
//printf("Result: %ld\n",(long)
g_
resultValue);
return (long)g_resultValue!=0;
}
...
...
src/cppvalue.cpp
View file @
79959c79
...
...
@@ -50,6 +50,7 @@ CPPValue parseHexadecimal()
else
if
(
*
p
>=
'a'
&&
*
p
<=
'f'
)
val
=
val
*
16
+
*
p
-
'a'
+
10
;
else
if
(
*
p
>=
'A'
&&
*
p
<=
'F'
)
val
=
val
*
16
+
*
p
-
'A'
+
10
;
}
//printf("parseHexadecimal %s->%x\n",g_strToken.data(),val);
return
CPPValue
(
val
);
}
...
...
src/definition.cpp
View file @
79959c79
...
...
@@ -377,13 +377,17 @@ void Definition::writeSourceRefList(OutputList &ol,const char *scopeName,
{
name
.
prepend
(
scope
+
"::"
);
}
Definition
*
d
=
md
->
getOuterScope
();
if
(
d
==
Doxygen
::
globalScope
)
d
=
md
->
getBodyDef
();
if
(
md
->
getStartBodyLine
()
!=-
1
&&
md
->
getBodyDef
())
{
//printf("md->getBodyDef()=%p global=%p\n",md->getBodyDef(),Doxygen::globalScope);
// for HTML write a real link
ol
.
pushGeneratorState
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
QCString
lineStr
,
anchorStr
;
anchorStr
.
sprintf
(
"l%05d"
,
md
->
getStartBodyLine
());
//printf("Write object link to %s\n",md->getBodyDef()->getSourceFileBase().data());
ol
.
writeObjectLink
(
0
,
md
->
getBodyDef
()
->
getSourceFileBase
(),
anchorStr
,
name
);
ol
.
popGeneratorState
();
...
...
@@ -393,9 +397,8 @@ void Definition::writeSourceRefList(OutputList &ol,const char *scopeName,
ol
.
docify
(
name
);
ol
.
popGeneratorState
();
}
else
if
(
md
->
isLinkable
()
&&
md
->
getOuterScop
e
())
else
if
(
md
->
isLinkable
()
&&
d
&&
d
->
isLinkabl
e
())
{
Definition
*
d
=
md
->
getOuterScope
();
// for HTML write a real link
ol
.
pushGeneratorState
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
...
...
src/doc.l
View file @
79959c79
...
...
@@ -913,7 +913,7 @@ TT [tT][tT]
UL [uU][lL]
VAR [vV][aA][rR]
BLOCKQUOTE [bB][lL][oO][cC][kK][qQ][uU][oO][tT][eE]
DOCPARAM ("#")?([a-z_A-Z0-9:\
<\>
\=\.\-]+)|("\"".*"\"")
DOCPARAM ("#")?([a-z_A-Z0-9:\
!\<\~\>\^\&
\=\.\-]+)|("\"".*"\"")
OPNEW {B}+"new"({B}*"[]")?
OPDEL {B}+"delete"({B}*"[]")?
OPARG "("[a-z_A-Z0-9,\<\> \t\*\&]*")"
...
...
src/dot.cpp
View file @
79959c79
...
...
@@ -1520,6 +1520,16 @@ bool DotInclDepGraph::isTrivial() const
return
m_startNode
->
m_children
==
0
;
}
void
DotInclDepGraph
::
writeXML
(
QTextStream
&
t
)
{
QDictIterator
<
DotNode
>
dni
(
*
m_usedNodes
);
DotNode
*
node
;
for
(;(
node
=
dni
.
current
());
++
dni
)
{
node
->
writeXML
(
t
);
}
}
//-------------------------------------------------------------
void
generateGraphLegend
(
const
char
*
path
)
...
...
src/dot.h
View file @
79959c79
...
...
@@ -151,6 +151,7 @@ class DotInclDepGraph
bool
writeImageMap
=
TRUE
);
bool
isTrivial
()
const
;
QCString
diskName
()
const
;
void
writeXML
(
QTextStream
&
t
);
private
:
void
buildGraph
(
DotNode
*
n
,
FileDef
*
fd
,
int
distance
);
...
...
src/doxygen.cpp
View file @
79959c79
...
...
@@ -7102,6 +7102,7 @@ void generateOutput()
exit
(
1
);
}
Doxygen
::
tagFile
.
setDevice
(
tag
);
Doxygen
::
tagFile
<<
"<?xml version='1.0' encoding='ISO-8859-1' standalone='yes'?>"
<<
endl
;
Doxygen
::
tagFile
<<
"<tagfile>"
<<
endl
;
}
...
...
src/doxysearch.cpp
View file @
79959c79
...
...
@@ -17,6 +17,11 @@
// includes
#ifdef _WIN32
#include <windows.h> // for AllocConsole
#endif
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
...
...
@@ -805,7 +810,11 @@ void getConfig(const char *s)
int
l
;
char
configFile
[
MAXSTRLEN
];
strcpy
(
configFile
,
s
);
#if defined(_WIN32)
strcat
(
configFile
,
"
\\
search.cfg"
);
#else
strcat
(
configFile
,
"/search.cfg"
);
#endif
FILE
*
f
;
if
((
f
=
fopen
(
configFile
,
"r"
))
==
NULL
)
...
...
@@ -860,6 +869,10 @@ void strlowercpy(char *d,const char *s)
int
main
(
int
argc
,
char
**
argv
)
{
#ifdef _WIN32
AllocConsole
();
#endif
#ifdef PROFILING
struct
timeval
tv_start
,
tv_end
;
gettimeofday
(
&
tv_start
,
0
);
...
...
src/filedef.cpp
View file @
79959c79
...
...
@@ -64,9 +64,8 @@ FileDef::FileDef(const char *p,const char *nm,const char *lref)
{
docname
.
prepend
(
stripFromPath
(
path
.
copy
()));
}
memberGroupList
=
new
MemberGroupList
;
memberGroupList
->
setAutoDelete
(
TRUE
);
memberGroupDict
=
new
MemberGroupDict
(
1009
);
memberGroupSDict
=
new
MemberGroupSDict
;
memberGroupSDict
->
setAutoDelete
(
TRUE
);
}
/*! destroy the file definition */
...
...
@@ -81,8 +80,7 @@ FileDef::~FileDef()
delete
srcMemberDict
;
delete
usingDirList
;
delete
usingDeclList
;
delete
memberGroupList
;
delete
memberGroupDict
;
delete
memberGroupSDict
;
}
/*! Compute the HTML anchor names for all members in the class */
...
...
@@ -93,7 +91,7 @@ void FileDef::computeAnchors()
void
FileDef
::
distributeMemberGroupDocumentation
()
{
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -161,9 +159,22 @@ void FileDef::writeDocumentation(OutputList &ol)
for
(;(
ii
=
ili
.
current
());
++
ili
)
{
FileDef
*
fd
=
ii
->
fileDef
;
bool
isIDLorJava
=
FALSE
;
if
(
fd
)
{
isIDLorJava
=
fd
->
name
().
right
(
4
)
==
".idl"
||
fd
->
name
().
right
(
5
)
==
".java"
;
}
ol
.
startTypewriter
();
ol
.
docify
(
"#include "
);
if
(
ii
->
local
)
if
(
isIDLorJava
)
{
ol
.
docify
(
"import "
);
}
else
{
ol
.
docify
(
"#include "
);
}
if
(
ii
->
local
||
isIDLorJava
)
ol
.
docify
(
"
\"
"
);
else
ol
.
docify
(
"<"
);
...
...
@@ -185,10 +196,12 @@ void FileDef::writeDocumentation(OutputList &ol)
}
ol
.
enableAll
();
if
(
ii
->
local
)
if
(
ii
->
local
||
isIDLorJava
)
ol
.
docify
(
"
\"
"
);
else
ol
.
docify
(
">"
);
if
(
isIDLorJava
)
ol
.
docify
(
";"
);
ol
.
endTypewriter
();
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
lineBreak
();
...
...
@@ -301,7 +314,7 @@ void FileDef::writeDocumentation(OutputList &ol)
classSDict
->
writeDeclaration
(
ol
);
/* write user defined member groups */
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -425,13 +438,10 @@ void FileDef::writeSource(OutputList &ol)
initParseCodeContext
();
ol
.
startCodeFragment
();
//if (name().left(9)=="memory.c")
//{
parseCode
(
ol
,
0
,
fileToString
(
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)),
FALSE
,
0
,
this
);
//}
ol
.
endCodeFragment
();
endFile
(
ol
);
ol
.
enableAll
();
...
...
@@ -440,12 +450,12 @@ void FileDef::writeSource(OutputList &ol)
void
FileDef
::
addMembersToMemberGroup
()
{
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
SDic
t
);
}
/*! Adds member definition \a md to the list of all members of this file */
...
...
@@ -631,7 +641,7 @@ void FileDef::addListReferences()
theTranslator
->
trFile
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
src/filedef.h
View file @
79959c79
...
...
@@ -37,8 +37,7 @@ class OutputList;
class
NamespaceDef
;
class
NamespaceList
;
class
NamespaceDict
;
class
MemberGroupList
;
class
MemberGroupDict
;
class
MemberGroupSDict
;
class
PackageDef
;
struct
IncludeInfo
...
...
@@ -169,6 +168,9 @@ class FileDef : public Definition
MemberList
docFuncMembers
;
MemberList
docVarMembers
;
/* user defined member groups */
MemberGroupSDict
*
memberGroupSDict
;
private
:
ClassSDict
*
classSDict
;
...
...
@@ -191,9 +193,6 @@ class FileDef : public Definition
QIntDict
<
MemberDef
>
*
srcMemberDict
;
bool
isSource
;
/* user defined member groups */
MemberGroupList
*
memberGroupList
;
MemberGroupDict
*
memberGroupDict
;
PackageDef
*
package
;
};
...
...
src/groupdef.cpp
View file @
79959c79
...
...
@@ -46,9 +46,8 @@ GroupDef::GroupDef(const char *df,int dl,const char *na,const char *t) :
allMemberNameInfoSDict
=
new
MemberNameInfoSDict
(
17
);
fileName
=
(
QCString
)
"group_"
+
na
;
setGroupTitle
(
t
);
memberGroupList
=
new
MemberGroupList
;
memberGroupList
->
setAutoDelete
(
TRUE
);
memberGroupDict
=
new
MemberGroupDict
(
1009
);
memberGroupSDict
=
new
MemberGroupSDict
;
memberGroupSDict
->
setAutoDelete
(
TRUE
);
decDefineMembers
.
setInGroup
(
TRUE
);
decProtoMembers
.
setInGroup
(
TRUE
);
...
...
@@ -79,8 +78,7 @@ GroupDef::~GroupDef()
delete
exampleDict
;
delete
allMemberList
;
delete
allMemberNameInfoSDict
;
delete
memberGroupList
;
delete
memberGroupDict
;
delete
memberGroupSDict
;
}
void
GroupDef
::
setGroupTitle
(
const
char
*
t
)
...
...
@@ -101,7 +99,7 @@ void GroupDef::setGroupTitle( const char *t )
void
GroupDef
::
distributeMemberGroupDocumentation
()
{
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -147,16 +145,16 @@ void GroupDef::addExample(const PageInfo *def)
void
GroupDef
::
addMembersToMemberGroup
()
{
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decEnumValMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decEnumValMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
SDic
t
);
//printf("GroupDef::addMembersToMemberGroup() memberGroupList=%d\n",memberGroupList->count());
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -476,7 +474,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
if
(
allMemberList
->
count
()
>
0
)
{
/* write user defined member groups */
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -740,7 +738,7 @@ void GroupDef::addListReferences()
theTranslator
->
trGroup
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
src/groupdef.h
View file @
79959c79
...
...
@@ -33,8 +33,7 @@ class NamespaceDef;
class
GroupList
;
class
OutputList
;
class
NamespaceList
;
class
MemberGroupList
;
class
MemberGroupDict
;
class
MemberGroupSDict
;
class
MemberNameInfoSDict
;
class
PageSDict
;
class
PageInfo
;
...
...
@@ -82,6 +81,26 @@ class GroupDef : public Definition
friend
void
writeGroupTreeNode
(
OutputList
&
,
GroupDef
*
,
bool
);
// make accessible for writing tree view of group in index.cpp - KPW
// members in the declaration part of the documentation
MemberList
decDefineMembers
;
MemberList
decProtoMembers
;
MemberList
decTypedefMembers
;
MemberList
decEnumMembers
;
MemberList
decEnumValMembers
;
MemberList
decFuncMembers
;
MemberList
decVarMembers
;
// members in the documentation part of the documentation
MemberList
docDefineMembers
;
MemberList
docProtoMembers
;
MemberList
docTypedefMembers
;
MemberList
docEnumMembers
;
MemberList
docFuncMembers
;
MemberList
docVarMembers
;
/* user defined member groups */
MemberGroupSDict
*
memberGroupSDict
;
protected
:
void
addMemberListToGroup
(
MemberList
*
,
bool
(
MemberDef
::*
)()
const
);
...
...
@@ -100,26 +119,7 @@ class GroupDef : public Definition
MemberList
*
allMemberList
;
MemberNameInfoSDict
*
allMemberNameInfoSDict
;
// members in the declaration part of the documentation
MemberList
decDefineMembers
;
MemberList
decProtoMembers
;
MemberList
decTypedefMembers
;
MemberList
decEnumMembers
;
MemberList
decEnumValMembers
;
MemberList
decFuncMembers
;
MemberList
decVarMembers
;
// members in the documentation part of the documentation
MemberList
docDefineMembers
;
MemberList
docProtoMembers
;
MemberList
docTypedefMembers
;
MemberList
docEnumMembers
;
MemberList
docFuncMembers
;
MemberList
docVarMembers
;
/* user defined member groups */
MemberGroupList
*
memberGroupList
;
// list of member groups in this group
MemberGroupDict
*
memberGroupDict
;
};
class
GroupSDict
:
public
SDict
<
GroupDef
>
...
...
src/memberdef.cpp
View file @
79959c79
...
...
@@ -427,14 +427,14 @@ QCString MemberDef::getOutputFileBase() const
{
return
classDef
->
getOutputFileBase
();
}
else
if
(
fileDef
)
{
return
fileDef
->
getOutputFileBase
();
}
else
if
(
nspace
)
{
return
nspace
->
getOutputFileBase
();
}
else
if
(
fileDef
)
{
return
fileDef
->
getOutputFileBase
();
}
warn
(
m_defFileName
,
m_defLine
,
"Warning: Internal inconsistency: member %s does not belong to any"
" container!"
,
name
().
data
()
...
...
src/membergroup.h
View file @
79959c79
...
...
@@ -20,7 +20,7 @@
#include "qtbc.h"
#include <qlist.h>
#include
<qintdict.h>
#include
"sortdict.h"
#define NOGROUP -1
...
...
@@ -33,7 +33,7 @@ class GroupDef;
class
OutputList
;
class
Definition
;
class
MemberGroup
/* : public Definition */
class
MemberGroup
{
public
:
MemberGroup
(
int
id
,
const
char
*
header
,
const
char
*
docs
);
...
...
@@ -66,6 +66,7 @@ class MemberGroup /* : public Definition */
int
numDocMembers
()
const
;
void
setInGroup
(
bool
b
);
void
addListReferences
(
Definition
*
d
);
MemberList
*
members
()
const
{
return
memberList
;
}
private
:
MemberList
*
memberList
;
// list of all members in the group
...
...
@@ -97,6 +98,13 @@ class MemberGroupDict : public QIntDict<MemberGroup>
~
MemberGroupDict
()
{}
};
class
MemberGroupSDict
:
public
SIntDict
<
MemberGroup
>
{
public
:
MemberGroupSDict
(
int
size
=
17
)
:
SIntDict
<
MemberGroup
>
(
size
)
{}
~
MemberGroupSDict
()
{}
};
class
MemberGroupDictIterator
:
public
QIntDictIterator
<
MemberGroup
>
{
public
:
...
...
src/namespacedef.cpp
View file @
79959c79
...
...
@@ -38,9 +38,8 @@ NamespaceDef::NamespaceDef(const char *df,int dl,
usingDirList
=
0
;
usingDeclList
=
0
;
setReference
(
lref
);
memberGroupList
=
new
MemberGroupList
;
memberGroupList
->
setAutoDelete
(
TRUE
);
memberGroupDict
=
new
MemberGroupDict
(
1009
);
memberGroupSDict
=
new
MemberGroupSDict
;
memberGroupSDict
->
setAutoDelete
(
TRUE
);
}
NamespaceDef
::~
NamespaceDef
()
...
...
@@ -50,13 +49,12 @@ NamespaceDef::~NamespaceDef()
delete
m_innerCompounds
;
delete
usingDirList
;
delete
usingDeclList
;
delete
memberGroupList
;
delete
memberGroupDict
;
delete
memberGroupSDict
;
}
void
NamespaceDef
::
distributeMemberGroupDocumentation
()
{
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -96,44 +94,15 @@ void NamespaceDef::insertNamespace(NamespaceDef *nd)
}
}
#if 0
void NamespaceDef::addMemberListToGroup(MemberList *ml,
bool (MemberDef::*func)() const)
{
MemberListIterator mli(*ml);
MemberDef *md;
for (;(md=mli.current());++mli)
{
int groupId=md->getMemberGroupId();
if ((md->*func)() && groupId!=-1)
{
QCString *pGrpHeader = Doxygen::memberHeaderDict[groupId];
QCString *pDocs = Doxygen::memberDocDict[groupId];
if (pGrpHeader)
{
MemberGroup *mg = memberGroupDict->find(groupId);
if (mg==0)
{
mg = new MemberGroup(groupId,*pGrpHeader,pDocs ? pDocs->data() : 0);
memberGroupDict->insert(groupId,mg);
memberGroupList->append(mg);
}
mg->insertMember(md);
md->setMemberGroup(mg);
}
}
}
}
#endif
void
NamespaceDef
::
addMembersToMemberGroup
()
{
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
Dict
,
memberGroupLis
t
);
::
addMembersToMemberGroup
(
&
decDefineMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decProtoMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decTypedefMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decEnumMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decFuncMembers
,
memberGroup
SDic
t
);
::
addMembersToMemberGroup
(
&
decVarMembers
,
memberGroup
SDic
t
);
}
void
NamespaceDef
::
insertMember
(
MemberDef
*
md
)
...
...
@@ -199,12 +168,6 @@ void NamespaceDef::insertMember(MemberDef *md)
void
NamespaceDef
::
computeAnchors
()
{
setAnchors
(
'a'
,
&
allMemberList
);
//MemberGroupListIterator mgli(*memberGroupList);
//MemberGroup *mg;
//for (;(mg=mgli.current());++mgli)
//{
// mg->setAnchors();
//}
}
void
NamespaceDef
::
writeDocumentation
(
OutputList
&
ol
)
...
...
@@ -249,7 +212,7 @@ void NamespaceDef::writeDocumentation(OutputList &ol)
classSDict
->
writeDeclaration
(
ol
);
/* write user defined member groups */
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
@@ -380,7 +343,7 @@ void NamespaceDef::addListReferences()
theTranslator
->
trNamespace
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
MemberGroup
ListIterator
mgli
(
*
memberGroupLis
t
);
MemberGroup
SDict
::
Iterator
mgli
(
*
memberGroupSDic
t
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
...
...
src/namespacedef.h
View file @
79959c79
...
...
@@ -31,8 +31,7 @@ class OutputList;
class
ClassSDict
;
class
MemberDef
;
class
NamespaceList
;
class
MemberGroupDict
;
class
MemberGroupList
;
class
MemberGroupSDict
;
class
NamespaceSDict
;
class
NamespaceDef
:
public
Definition
...
...
@@ -97,6 +96,9 @@ class NamespaceDef : public Definition
MemberList
docFuncMembers
;
MemberList
docVarMembers
;
/* user defined member groups */
MemberGroupSDict
*
memberGroupSDict
;
/*! Classes inside this namespace */
ClassSDict
*
classSDict
;
/*! Namespaces inside this namespace */
...
...
@@ -114,9 +116,6 @@ class NamespaceDef : public Definition
MemberList
allMemberList
;
/* user defined member groups */
MemberGroupList
*
memberGroupList
;
MemberGroupDict
*
memberGroupDict
;
};
class
NamespaceList
:
public
QList
<
NamespaceDef
>
...
...
src/outputlist.cpp
View file @
79959c79
...
...
@@ -267,6 +267,7 @@ FORALL1(SectionTypes a1,a1)
FORALL1
(
bool
a1
,
a1
)
FORALL2
(
bool
a1
,
int
a2
,
a1
,
a2
)
FORALL2
(
bool
a1
,
bool
a2
,
a1
,
a2
)
FORALL4
(
const
char
*
a1
,
const
char
*
a2
,
const
char
*
a3
,
bool
a4
,
a1
,
a2
,
a3
,
a4
)
#endif
FORALL2
(
int
a1
,
bool
a2
,
a1
,
a2
)
FORALL1
(
IndexSections
a1
,
a1
)
...
...
@@ -277,7 +278,6 @@ FORALL3(const char *a1,const char *a2,const char *a3,a1,a2,a3)
FORALL3
(
const
char
*
a1
,
const
char
*
a2
,
bool
a3
,
a1
,
a2
,
a3
)
FORALL3
(
uchar
a1
,
uchar
a2
,
uchar
a3
,
a1
,
a2
,
a3
)
FORALL4
(
const
char
*
a1
,
const
char
*
a2
,
const
char
*
a3
,
const
char
*
a4
,
a1
,
a2
,
a3
,
a4
)
FORALL4
(
const
char
*
a1
,
const
char
*
a2
,
const
char
*
a3
,
bool
a4
,
a1
,
a2
,
a3
,
a4
)
FORALL4
(
const
char
*
a1
,
const
char
*
a2
,
const
char
*
a3
,
int
a4
,
a1
,
a2
,
a3
,
a4
)
...
...
src/outputlist.h
View file @
79959c79
...
...
@@ -478,6 +478,7 @@ class OutputList : public OutputDocInterface
FORALLPROTO1
(
bool
);
FORALLPROTO2
(
bool
,
int
);
FORALLPROTO2
(
bool
,
bool
);
FORALLPROTO4
(
const
char
*
,
const
char
*
,
const
char
*
,
int
);
#endif
FORALLPROTO2
(
int
,
bool
);
FORALLPROTO2
(
const
char
*
,
const
char
*
);
...
...
@@ -488,7 +489,6 @@ class OutputList : public OutputDocInterface
FORALLPROTO3
(
ClassDiagram
&
,
const
char
*
,
const
char
*
);
FORALLPROTO4
(
const
char
*
,
const
char
*
,
const
char
*
,
const
char
*
);
FORALLPROTO4
(
const
char
*
,
const
char
*
,
const
char
*
,
bool
);
FORALLPROTO4
(
const
char
*
,
const
char
*
,
const
char
*
,
int
);
OutputList
(
const
OutputList
&
ol
);
QList
<
OutputGenerator
>
*
outputs
;
...
...
src/pre.l
View file @
79959c79
...
...
@@ -721,7 +721,7 @@ QCString removeIdsAndMarkers(const char *s)
p++;
inNum=TRUE;
}
else if (c=='d') // identifier starting with a `d'
else if (c=='d'
&& !inNum
) // identifier starting with a `d'
{
if (strncmp(p,"defined ",8)==0 || strncmp(p,"defined(",8)==0)
// defined keyword
...
...
@@ -745,7 +745,7 @@ QCString removeIdsAndMarkers(const char *s)
{
result+=c;
char lc=tolower(c);
if (
lc!='l' && lc!='u
') inNum=FALSE;
if (
!isId(lc) && lc!='.' && lc!='-' && lc!='+
') inNum=FALSE;
p++;
}
}
...
...
src/scanner.l
View file @
79959c79
...
...
@@ -177,7 +177,6 @@ static void initParser()
isTypedef = FALSE;
autoGroupStack.clear();
insideTryBlock = FALSE;
insideIDL = FALSE;
autoGroupStack.setAutoDelete(TRUE);
lastDefGroup.groupname.resize(0);
}
...
...
@@ -379,6 +378,7 @@ static void setContext()
QCString fileName = yyFileName;
insideIDL = fileName.right(4)==".idl";
insideJava = fileName.right(5)==".java";
//printf("setContext(%s) insideIDL=%d\n",yyFileName,insideIDL);
}
static void prependScope()
...
...
src/sortdict.h
View file @
79959c79
...
...
@@ -22,6 +22,7 @@
#include "qtbc.h"
#include <qlist.h>
#include <qdict.h>
#include <qintdict.h>
#define AUTORESIZE 1
...
...
@@ -63,6 +64,7 @@ const uint SDict_primes[] =
#endif
template
<
class
T
>
class
SDict
;
template
<
class
T
>
class
SIntDict
;
/*! internal wrapper class that redirects compareItems() to the
* dictionary
...
...
@@ -270,4 +272,210 @@ class SDict
};
/*! internal wrapper class that redirects compareItems() to the
* dictionary
*/
template
<
class
T
>
class
SIntList
:
public
QList
<
T
>
{
public
:
SIntList
(
SIntDict
<
T
>
*
owner
)
:
m_owner
(
owner
)
{}
~
SIntList
()
{}
int
compareItems
(
GCI
item1
,
GCI
item2
)
{
return
m_owner
->
compareItems
(
item1
,
item2
);
}
private
:
SIntDict
<
T
>
*
m_owner
;
};
/*! Ordered dictionary of elements of type T.
* Internally uses a QList<T> and a QIntDict<T>.
*/
template
<
class
T
>
class
SIntDict
{
private
:
SIntList
<
T
>
*
m_list
;
QIntDict
<
T
>
*
m_dict
;
int
m_sizeIndex
;
public
:
/*! Create an ordered dictionary.
* \param size The size of the dictionary. Should be a prime number for
* best distribution of elements.
*/
SIntDict
(
int
size
)
:
m_sizeIndex
(
0
)
{
m_list
=
new
SIntList
<
T
>
(
this
);
#if AUTORESIZE
while
((
uint
)
size
>
SDict_primes
[
m_sizeIndex
])
m_sizeIndex
++
;
m_dict
=
new
QIntDict
<
T
>
(
SDict_primes
[
m_sizeIndex
]);
#else
m_dict
=
new
QIntDict
<
T
>
(
size
);
#endif
}
/*! Destroys the dictionary */
virtual
~
SIntDict
()
{
delete
m_list
;
delete
m_dict
;
}
/*! Appends a compound to the dictionary. The element is owned by the
* dictionary.
* \param key The unique key to use to quicky find the item later on.
* \param d The compound to add.
* \sa find()
*/
void
append
(
int
key
,
const
T
*
d
)
{
m_list
->
append
(
d
);
m_dict
->
insert
(
key
,
d
);
#if AUTORESIZE
if
(
m_dict
->
size
()
>
SDict_primes
[
m_sizeIndex
])
{
m_dict
->
resize
(
SDict_primes
[
++
m_sizeIndex
]);
}
#endif
}
/*! Remove an item from the dictionary */
bool
remove
(
int
key
)
{
T
*
item
=
m_dict
->
take
(
key
);
return
item
?
m_list
->
remove
(
item
)
:
FALSE
;
}
/*! Sorts the members of the dictionary. First appending a number
* of members and then sorting them is faster (O(NlogN) than using
* inSort() for each member (O(N^2)).
*/
void
sort
()
{
m_list
->
sort
();
}
/*! Inserts a compound into the dictionary in a sorted way.
* \param key The unique key to use to quicky find the item later on.
* \param d The compound to add.
* \sa find()
*/
void
inSort
(
int
key
,
const
T
*
d
)
{
m_list
->
inSort
(
d
);
m_dict
->
insert
(
key
,
d
);
#if AUTORESIZE
if
(
m_dict
->
size
()
>
SDict_primes
[
m_sizeIndex
])
{
m_dict
->
resize
(
SDict_primes
[
++
m_sizeIndex
]);
}
#endif
}
/*! Indicates whether or not the dictionary owns its elements */
void
setAutoDelete
(
bool
val
)
{
m_list
->
setAutoDelete
(
val
);
}
/*! Looks up a compound given its key.
* \param key The key to identify this element.
* \return The requested compound or zero if it cannot be found.
* \sa append()
*/
T
*
find
(
int
key
)
{
return
m_dict
->
find
(
key
);
}
/*! Equavalent to find(). */
T
*
operator
[](
int
key
)
const
{
return
m_dict
->
find
(
key
);
}
/*! Returns the item at position \a i in the sorted dictionary */
T
*
at
(
uint
i
)
{
return
m_list
->
at
(
i
);
}
/*! Function that is used to compare two items when sorting.
* Overload this to properly sort items.
* \sa inSort()
*/
virtual
int
compareItems
(
GCI
item1
,
GCI
item2
)
{
return
item1
!=
item2
;
}
/*! Clears the dictionary. Will delete items if setAutoDelete() was
* set to \c TRUE.
* \sa setAutoDelete
*/
void
clear
()
{
m_list
->
clear
();
m_dict
->
clear
();
}
/*! Returns the number of items stored in the dictionary
*/
int
count
()
{
return
m_list
->
count
();
}
class
Iterator
;
// first forward declare
friend
class
Iterator
;
// then make it a friend
/*! Simple iterator for SDict. It iterates in the order in which the
* elements are stored.
*/
class
Iterator
{
public
:
/*! Create an iterator given the dictionary. */
Iterator
(
const
SIntDict
<
T
>
&
dict
)
{
m_li
=
new
QListIterator
<
T
>
(
*
dict
.
m_list
);
}
/*! Destroys the dictionary */
virtual
~
Iterator
()
{
delete
m_li
;
}
/*! Set the iterator to the first element in the list.
* \return The first compound, or zero if the list was empty.
*/
T
*
toFirst
()
const
{
return
m_li
->
toFirst
();
}
/*! Set the iterator to the last element in the list.
* \return The first compound, or zero if the list was empty.
*/
T
*
toLast
()
const
{
return
m_li
->
toLast
();
}
/*! Returns the current compound */
T
*
current
()
const
{
return
m_li
->
current
();
}
/*! Moves the iterator to the next element.
* \return the new "current" element, or zero if the iterator was
* already pointing at the last element.
*/
T
*
operator
++
()
{
return
m_li
->
operator
++
();
}
/*! Moves the iterator to the previous element.
* \return the new "current" element, or zero if the iterator was
* already pointing at the first element.
*/
T
*
operator
--
()
{
return
m_li
->
operator
--
();
}
private
:
QListIterator
<
T
>
*
m_li
;
};
};
#endif
src/translator_br.h
View file @
79959c79
...
...
@@ -11,13 +11,17 @@
* input used in their production; they are not affected by this license.
*
* Brazilian Portuguese version by
* Fabio "FJTC" Jun Takada Chino <chino@grad.icmc.sc.usp.br>
* Version: 1.2.8.2 (2001/07/24)
* Fabio "FJTC" Jun Takada Chino <chino@icmc.sc.usp.br>
* http://www.icmc.sc.usp.br/~chino
* Version: 1.2.11 (2001/11/23)
*
* News:
* - Everything was revised.
*/
#ifndef TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
class
TranslatorBrazilian
:
public
Translator
Adapter_1_2_11
class
TranslatorBrazilian
:
public
Translator
{
public
:
...
...
@@ -61,7 +65,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! subscript for the related functions. */
virtual
QCString
trRelatedSubscript
()
{
return
"(Note que est
e
s não são funções membros.)"
;
}
{
return
"(Note que est
a
s não são funções membros.)"
;
}
/*! header that is put before the detailed description of files, classes and namespaces. */
virtual
QCString
trDetailedDescription
()
...
...
@@ -102,15 +106,15 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! used as the title of the "list of all members" page of a class */
virtual
QCString
trMemberList
()
{
return
"Lista d
e
Membros"
;
}
{
return
"Lista d
os
Membros"
;
}
/*! this is the first part of a sentence that is followed by a class name */
virtual
QCString
trThisIsTheListOfAllMembers
()
{
return
"Esta é a lista
completa
dos membros da "
;
}
{
return
"Esta é a lista
de todos
os membros da "
;
}
/*! this is the remainder of the sentence after the class name */
virtual
QCString
trIncludingInheritedMembers
()
{
return
", incluindo
todos
os membros herdados."
;
}
{
return
", incluindo os membros herdados."
;
}
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
...
...
@@ -118,7 +122,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
virtual
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
"Gerado automaticamente por Doxygen"
;
if
(
s
)
result
+=
(
QCString
)
" para "
+
s
;
result
+=
" a partir d
o
código-fonte."
;
result
+=
" a partir d
e seu
código-fonte."
;
return
result
;
}
...
...
@@ -207,7 +211,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! This is an introduction to the class hierarchy. */
virtual
QCString
trClassHierarchyDescription
()
{
return
"Esta lista de hierarquia é parcialmente ordenada em ordem alfabética:"
;
}
{
return
"Esta lista de hierarquia
est
á parcialmente ordenada em ordem alfabética:"
;
}
/*! This is an introduction to the list with all files. */
virtual
QCString
trFileListDescription
(
bool
extractAll
)
...
...
@@ -235,7 +239,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! This is an introduction to the page with all class members. */
virtual
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"
Aqui está a lista de todos os membros d
e classes "
;
QCString
result
=
"
Esta é lista de todos os membros da
s classes "
;
if
(
!
extractAll
)
result
+=
"documentados "
;
result
+=
"com links para "
;
if
(
extractAll
)
...
...
@@ -248,7 +252,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! This is an introduction to the page with all file members. */
virtual
QCString
trFileMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"
Aqui esta
a lista de "
;
QCString
result
=
"
Esta
é a lista de "
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"tadas as funções, variáveis, definições, enumerações e definições de tipos "
;
...
...
@@ -271,25 +275,25 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! This is an introduction to the page with the list of all header files. */
virtual
QCString
trHeaderFilesDescription
()
{
return
"
Aqui est
ão os arquivos de cabeçalho que compõe a API:"
;
}
{
return
"
Estes s
ão os arquivos de cabeçalho que compõe a API:"
;
}
/*! This is an introduction to the page with the list of all examples */
virtual
QCString
trExamplesDescription
()
{
return
"
Aqui est
á a lista de todos os exemplos:"
;
}
{
return
"
Esta
é a lista de todos os exemplos:"
;
}
/*! This is an introduction to the page with the list of related pages */
virtual
QCString
trRelatedPagesDescription
()
{
return
"
Aqui est
á a lista de toda a documentação relacionadas:"
;
}
{
return
"
Esta
é a lista de toda a documentação relacionadas:"
;
}
/*! This is an introduction to the page with the list of class/file groups */
virtual
QCString
trModulesDescription
()
{
return
"
Aqui est
á a lista de todos os médulos:"
;
}
{
return
"
Esta
é a lista de todos os médulos:"
;
}
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
*/
virtual
QCString
trNoDescriptionAvailable
()
{
return
"Sem descriçãodisponível"
;
}
{
return
"Sem descriç
ã
o disponível"
;
}
// index titles (the project name is prepended for these)
...
...
@@ -302,7 +306,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
* index of all groups.
*/
virtual
QCString
trModuleIndex
()
{
return
"Índice
d
e Módulos"
;
}
{
return
"Índice
do
s Módulos"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
...
...
@@ -363,7 +367,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! This is used in LaTeX as the title of the document */
virtual
QCString
trReferenceManual
()
{
return
"
Manual
de Referência"
;
}
{
return
"
Guia
de Referência"
;
}
/*! This is used in the documentation of a file as a header before the
* list of defines
...
...
@@ -417,13 +421,13 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
* of documentation blocks for function prototypes
*/
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
"Protótipos
d
e funções"
;
}
{
return
"Protótipos
da
s funções"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
virtual
QCString
trTypedefDocumentation
()
{
return
"Definições
de tipos"
;
}
{
return
"Definições
d
os tipos"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
...
...
@@ -552,7 +556,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
* friends of a class
*/
virtual
QCString
trFriends
()
{
return
"Amig
o
s"
;
}
{
return
"Amig
a
s"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
...
...
@@ -562,7 +566,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
* related classes
*/
virtual
QCString
trRelatedFunctionDocumentation
()
{
return
"Amig
o
s e Funções Relacionadas"
;
}
{
return
"Amig
a
s e Funções Relacionadas"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
...
...
@@ -777,7 +781,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
virtual
QCString
trSources
()
{
return
"
Fontes
"
;
return
"
Códigos-Font
e"
;
}
virtual
QCString
trDefinedAtLineInSourceFile
()
{
...
...
@@ -794,8 +798,9 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
virtual
QCString
trDeprecated
()
{
/* This note is for brazilians.
Esta é uma boa tradução para "deprecated"?
/*
* This note is for brazilians only.
* Esta é uma boa tradução para "deprecated"?
*/
return
"Descontinuada"
;
}
...
...
@@ -935,7 +940,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! Used as the header of the todo list */
virtual
QCString
trTodoList
()
{
return
"Lista de
tarefas f
uturas"
;
return
"Lista de
Tarefas F
uturas"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1049,7 +1054,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! Used as the header of the test list */
virtual
QCString
trTestList
()
{
return
"Lista de Teste"
;
return
"Lista de Teste
s
"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1150,8 +1155,7 @@ class TranslatorBrazilian: public TranslatorAdapter_1_2_11
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value
and
* The following table shows the correlation of Charset name, Charset Value and
* <pre>
* Codepage number:
* Charset Name Charset Value(hex) Codepage number
...
...
@@ -1298,5 +1302,16 @@ and
if
(
!
singular
)
result
+=
"es"
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Referências"
;
}
};
#endif
src/translator_fr.h
View file @
79959c79
...
...
@@ -20,10 +20,24 @@
* d2set@d2set.org).
*/
/******************************************************************************
* History of content
*
* Date | Description
* ============+=============================================================
* 2001-11-22 | Removed obsolet methods:
* | QCString latexBabelPackage()
* | QCString trAuthor()
* | QCString trAuthors()
* | QCString trFiles()
* | QCString trIncludeFile()
* | QCString trVerbatimText(const char *f)
* -------------+------------------------------------------------------------
*/
#ifndef TRANSLATOR_FR_H
#define TRANSLATOR_FR_H
class
TranslatorFrench
:
public
Translator
Adapter_1_2_11
class
TranslatorFrench
:
public
Translator
{
public
:
QCString
idLanguage
()
...
...
@@ -46,9 +60,6 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
{
return
"
\\
usepackage[french]{babel}
\n
"
;
}
/*! returns the name of the package that is included by LaTeX */
QCString
latexBabelPackage
()
{
return
"french"
;
}
/*! return the language charset. This will be used for the HTML output */
virtual
QCString
idLanguageCharset
()
...
...
@@ -126,14 +137,6 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
QCString
trDefinedIn
()
{
return
"défini dans"
;
}
/*! put as in introduction in the verbatim header file of a class.
* parameter f is the name of the include file.
*/
QCString
trIncludeFile
()
{
return
"Fichier inclu"
;
}
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"Ce texte provient du fichier inclu "
+
f
+
"."
;
}
// quick reference sections
/*! This is put above each page as a link to the list of all groups of
...
...
@@ -351,10 +354,6 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
QCString
trEnumerationValues
()
{
return
"Éléments énumérés"
;
}
/*! This is used in man pages as the author section. */
QCString
trAuthor
()
{
return
"Auteur"
;
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
...
...
@@ -403,12 +402,6 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
QCString
trCompounds
()
{
return
"Composants"
;
}
/*! This is used in the documentation of a group before the list of
* links to documented files
*/
QCString
trFiles
()
{
return
"Fichiers"
;
}
/*! This is used in the standard footer of each page and indicates when
* the page was generated
*/
...
...
@@ -458,10 +451,6 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
QCString
trDate
()
{
return
"Date"
;
}
/*! this text is generated when the \\author command is used. */
QCString
trAuthors
()
{
return
"Auteur(s)"
;
}
/*! this text is generated when the \\return command is used. */
QCString
trReturns
()
{
return
"Renvoie"
;
}
...
...
@@ -1233,5 +1222,15 @@ class TranslatorFrench : public TranslatorAdapter_1_2_11
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Références"
;
}
};
#endif
src/translator_it.h
View file @
79959c79
...
...
@@ -22,6 +22,8 @@
* Initial Italian Translation by Ahmed Aldo Faisal
* Revised and completed by Alessandro Falappa (since June 1999)
* Updates:
* 2001/11: corrected the translation fixing the issues reported by the translator.pl script
* translated new items used since version 1.2.11
* 2001/08: corrected the translation fixing the issues reported by the translator.pl script
* translated new items used since version 1.2.7
* 2001/05: adopted new translation mechanism (trough adapters),
...
...
@@ -53,13 +55,13 @@
* tecnica (ad es "lista dei file" e non "lista dei files")
*
* Se avete suggerimenti sulla traduzione di alcuni termini o volete segnalare
* eventuali sviste potete scrivermi all'indirizzo: a
.falappa@flashnet
.it
* eventuali sviste potete scrivermi all'indirizzo: a
falappa@interfree
.it
*/
#ifndef TRANSLATOR_IT_H
#define TRANSLATOR_IT_H
class
TranslatorItalian
:
public
Translator
Adapter_1_2_11
class
TranslatorItalian
:
public
Translator
{
public
:
...
...
@@ -1308,6 +1310,17 @@ class TranslatorItalian : public TranslatorAdapter_1_2_11
result
+=
(
singular
?
"e"
:
"i"
);
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Riferimenti"
;
}
};
#endif
src/translator_kr.h
View file @
79959c79
...
...
@@ -20,14 +20,41 @@
#include "translator_adapter.h"
class
TranslatorKorean
:
public
Translator
Adapter_1_1_0
class
TranslatorKorean
:
public
Translator
{
public
:
QCString
idLanguage
()
// --- Language control methods -------------------
/*! Used for identification of the language. The identification
* should not be translated. It should be replaced by the name
* of the language in English using lower-case characters only
* (e.g. "czech", "japanese", "russian", etc.). It should be equal to
* the identification used in language.cpp.
*/
virtual
QCString
idLanguage
()
{
return
"korean"
;
}
/*! returns the name of the package that is included by LaTeX */
QCString
latexBabelPackage
()
{
return
""
;
}
// What is the correct value here?
/*! Used to get the LaTeX command(s) for the language support.
* This method should return string with commands that switch
* LaTeX to the desired language. For example
* <pre>"\\usepackage[german]{babel}\n"
* </pre>
* or
* <pre>"\\usepackage{polski}\n"
* "\\usepackage[latin2]{inputenc}\n"
* "\\usepackage[T1]{fontenc}\n"
* </pre>
*
* The English LaTeX does not use such commands. Because of this
* the empty string is returned in this implementation.
*/
virtual
QCString
latexLanguageSupportCommand
()
{
// I'm not sure what this should be.
// When I figure it out, I'll update this.
return
""
;
}
/*! return the language charset. This will be used for the HTML output */
virtual
QCString
idLanguageCharset
()
...
...
@@ -35,363 +62,411 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
return
"euc-kr"
;
}
// --- Language translation methods -------------------
/*! used in the compound documentation before a list of related functions. */
QCString
trRelatedFunctions
()
virtual
QCString
trRelatedFunctions
()
{
return
"관련된 함수들"
;
}
/*! subscript for the related functions. */
QCString
trRelatedSubscript
()
virtual
QCString
trRelatedSubscript
()
{
return
"관련주석"
;
}
/*! header that is put before the detailed description of files, classes and namespaces. */
QCString
trDetailedDescription
()
virtual
QCString
trDetailedDescription
()
{
return
"상세한 내용"
;
}
/*! header that is put before the list of typedefs. */
QCString
trMemberTypedefDocumentation
()
virtual
QCString
trMemberTypedefDocumentation
()
{
return
"멤버 타입정의 문서화"
;
}
/*! header that is put before the list of enumerations. */
QCString
trMemberEnumerationDocumentation
()
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
"구성원(member) 열거 문서화"
;
}
/*! header that is put before the list of member functions. */
QCString
trMemberFunctionDocumentation
()
virtual
QCString
trMemberFunctionDocumentation
()
{
return
"멤버 함수 문서화"
;
}
/*! header that is put before the list of member attributes. */
QCString
trMemberDataDocumentation
()
{
return
"멤서 데이타 문서화"
;
}
virtual
QCString
trMemberDataDocumentation
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
// TODO: This need to be translated. -ryk11/22/01.
return
"멤서 데이타 문서화"
;
}
else
{
return
"멤서 데이타 문서화"
;
}
}
/*! this is the text of a link put after brief descriptions. */
QCString
trMore
()
virtual
QCString
trMore
()
{
return
"More..."
;
}
/*! put in the class documentation */
QCString
trListOfAllMembers
()
virtual
QCString
trListOfAllMembers
()
{
return
"모든 구성원들(members)의 명단"
;
}
/*! used as the title of the "list of all members" page of a class */
QCString
trMemberList
()
virtual
QCString
trMemberList
()
{
return
"구성원(member) 명단"
;
}
/*! this is the first part of a sentence that is followed by a class name */
QCString
trThisIsTheListOfAllMembers
()
{
return
"완전한 구성원들(members)의 명단 "
;
}
// "This is the complete list of members for "
virtual
QCString
trThisIsTheListOfAllMembers
()
{
return
"완전한 구성원들(members)의 명단 "
;
}
/*! this is the remainder of the sentence after the class name */
QCString
trIncludingInheritedMembers
()
{
return
", 상속받은 모든 구성원(members)들도 포함"
;
}
// ", including all inherited members."
virtual
QCString
trIncludingInheritedMembers
()
{
return
", 상속받은 모든 구성원(members)들도 포함"
;
}
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
*/
QCString
trGeneratedAutomatically
(
const
char
*
s
)
virtual
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
""
;
if
(
s
)
result
+=
(
QCString
)
s
+
"에 "
;
result
+=
"source 코드로 부터 Doxygen에 의해 자동적으로 생성"
;
return
result
;
if
(
s
)
result
+=
(
QCString
)
s
+
"에 "
;
result
+=
"source 코드로 부터 Doxygen에 의해 자동적으로 생성"
;
return
result
;
}
/*! put after an enum name in the list of all members */
QCString
trEnumName
()
virtual
QCString
trEnumName
()
{
return
"열거체 이름"
;
}
/*! put after an enum value in the list of all members */
QCString
trEnumValue
()
virtual
QCString
trEnumValue
()
{
return
"열거체 값"
;
}
/*! put after an undocumented member in the list of all members */
QCString
trDefinedIn
()
virtual
QCString
trDefinedIn
()
{
return
"에서 정의된"
;
}
/*! put as in introduction in the verbatim header file of a class.
* parameter f is the name of the include file.
*/
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"이것은 "
+
f
+
" 포함 파일의 축약적인 문서이다"
;
}
// quick reference sections
/*! This is put above each page as a link to the list of all groups of
* compounds or files (see the \group command).
* compounds or files (see the \
\
group command).
*/
QCString
trModules
()
virtual
QCString
trModules
()
{
return
"모듈들"
;
}
/*! This is put above each page as a link to the class hierarchy */
QCString
trClassHierarchy
()
virtual
QCString
trClassHierarchy
()
{
return
"클래스 계층(도)"
;
}
// "클래스 조직" or "클래스 분류체계"
/*! This is put above each page as a link to the list of annotated classes */
QCString
trCompoundList
()
{
return
"혼합 목록"
;
}
//"혼합 목록", "합성(집합) 명단(리스트)"
virtual
QCString
trCompoundList
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
//Alternate text: "혼합 목록", "합성(집합) 명단(리스트)"
return
"혼합 목록"
;
}
else
{
//TODO: This needs to be translated. -ryk11/22/01.
return
"혼합 목록"
;
}
}
/*! This is put above each page as a link to the list of documented files */
QCString
trFileList
()
virtual
QCString
trFileList
()
{
return
"파일 목록"
;
}
//"파일 목록", "파일 리스트"
/*! This is put above each page as a link to the list of all verbatim headers */
QCString
trHeaderFiles
()
virtual
QCString
trHeaderFiles
()
{
return
"헤더 파일들"
;
}
/*! This is put above each page as a link to all members of compounds. */
QCString
trCompoundMembers
()
{
return
"혼합 멤버들"
;
}
// "합성(집합) 명단(멤버들)"
virtual
QCString
trCompoundMembers
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
// TODO: This need to be translated. -ryk11/22/01.
return
"혼합 멤버들"
;
}
else
{
// Alternate text: "합성(집합) 명단(멤버들)"
return
"혼합 멤버들"
;
}
}
/*! This is put above each page as a link to all members of files. */
QCString
trFileMembers
()
{
return
"파일 멤버들"
;
}
virtual
QCString
trFileMembers
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
// TODO: This needs to be translated. -ryk11/22/01.
return
"파일 멤버들"
;
}
else
{
return
"파일 멤버들"
;
}
}
/*! This is put above each page as a link to all related pages. */
QCString
trRelatedPages
()
virtual
QCString
trRelatedPages
()
{
return
"관련된 페이지들"
;
}
/*! This is put above each page as a link to all examples. */
QCString
trExamples
()
virtual
QCString
trExamples
()
{
return
"예제들"
;
}
/*! This is put above each page as a link to the search engine. */
QCString
trSearch
()
virtual
QCString
trSearch
()
{
return
"검색"
;
}
/*! This is an introduction to the class hierarchy. */
QCString
trClassHierarchyDescription
()
virtual
QCString
trClassHierarchyDescription
()
{
return
"이 상속 목록은 완전하지는 않지만 알파벳순으로 분류되었습니다."
;}
/*! This is an introduction to the list with all files. */
QCString
trFileListDescription
(
bool
extractAll
)
virtual
QCString
trFileListDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 간략한 설명을 가진 모든 "
;
// "Here is a list of all "
if
(
!
extractAll
)
result
+=
"문서화된 "
;
// "documented "
result
+=
"파일들에 대한 목록입니다."
;
// "files with brief descriptions:"
QCString
result
=
"이것은 간략한 설명을 가진 모든 "
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
result
+=
"파일들에 대한 목록입니다."
;
return
result
;
}
/*! This is an introduction to the annotated compound list. */
QCString
trCompoundListDescription
()
{
return
"이것은 간략한 설명을 가진 클래스들, "
"구조체들, 공용체들, 그리고 인터페이스들입니다."
;
virtual
QCString
trCompoundListDescription
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
// TODO: This needs to be translated. -ryk11/22/01.
return
"이것은 간략한 설명을 가진 클래스들, "
"구조체들, 공용체들, 그리고 인터페이스들입니다."
;
}
else
{
return
"이것은 간략한 설명을 가진 클래스들, "
"구조체들, 공용체들, 그리고 인터페이스들입니다."
;
}
}
/*! This is an introduction to the page with all class members. */
QCString
trCompoundMembersDescription
(
bool
extractAll
)
virtual
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"이곳에 모든 리스트가 있습니다"
;
//"Here is a list of all "
if
(
!
extractAll
)
result
+=
"문서화된 "
;
//"documented "
result
+=
"링크가 된 클래스 멤버들 "
;
//"class members with links to "
QCString
result
=
"이곳에 모든 리스트가 있습니다"
;
if
(
!
extractAll
)
{
result
+=
"문서화된 "
;
}
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
// TODO: This need to be translated. -ryk11/22/01.
result
+=
"링크가 된 클래스 멤버들 "
;
}
else
{
result
+=
"링크가 된 클래스 멤버들 "
;
}
if
(
extractAll
)
result
+=
"각각의 멤버를 위한 클래스 문서:"
;
//"the class documentation for each member:"
result
+=
"각각의 멤버를 위한 클래스 문서:"
;
else
result
+=
"이하로 속한 클래스들:"
;
//"the classes they belong to:"
result
+=
"이하로 속한 클래스들:"
;
return
result
;
}
/*! This is an introduction to the page with all file members. */
QCString
trFileMembersDescription
(
bool
extractAll
)
virtual
QCString
trFileMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"이곳에 모든 리스트가 있습니다"
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
result
+=
"링크가 된 파일 멤버들 "
;
if
(
extractAll
)
result
+=
"각 멤버들에 대한 파일 문서화"
;
// "the file documentation for each member:"
result
+=
"각 멤버들에 대한 파일 문서화"
;
else
result
+=
"그것들이 속해있는 파일들"
;
// "the files they belong to:"
result
+=
"그것들이 속해있는 파일들"
;
return
result
;
}
/*! This is an introduction to the page with the list of all header files. */
QCString
trHeaderFilesDescription
()
{
return
"이것은 API를 구성하는 헤더 파일들입니다."
;
}
// "Here are the header files that make up the API:"
virtual
QCString
trHeaderFilesDescription
()
{
return
"이것은 API를 구성하는 헤더 파일들입니다."
;
}
/*! This is an introduction to the page with the list of all examples */
QCString
trExamplesDescription
()
{
return
"이것은 모든 예제들의 목록입니다."
;
}
// "Here is a list of all examples:"
virtual
QCString
trExamplesDescription
()
{
return
"이것은 모든 예제들의 목록입니다."
;
}
/*! This is an introduction to the page with the list of related pages */
QCString
trRelatedPagesDescription
()
virtual
QCString
trRelatedPagesDescription
()
{
return
"이것은 모든 관련된 문서화 페이지들의 목록입니다."
;
}
// "Here is a list of all related documentation pages:"
/*! This is an introduction to the page with the list of class/file groups */
QCString
trModulesDescription
()
{
return
"이것은 모든 모듈들의 목록입니다."
;
}
// "Here is a list of all modules:"
virtual
QCString
trModulesDescription
()
{
return
"이것은 모든 모듈들의 목록입니다."
;
}
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
*/
QCString
trNoDescriptionAvailable
()
{
return
"유용한 설명이 없습니다."
;
}
// "No description available"
virtual
QCString
trNoDescriptionAvailable
()
{
return
"유용한 설명이 없습니다."
;
}
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
QCString
trDocumentation
()
virtual
QCString
trDocumentation
()
{
return
"문서화"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
QCString
trModuleIndex
()
virtual
QCString
trModuleIndex
()
{
return
"모듈 색인"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
QCString
trHierarchicalIndex
()
{
return
"분류체계 색인"
;
}
// "조직 색인", "계층적 인덱스"
virtual
QCString
trHierarchicalIndex
()
{
return
"분류체계 색인"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
*/
QCString
trCompoundIndex
()
{
return
"합성 인덱스"
;
}
// "혼합 색인"
virtual
QCString
trCompoundIndex
()
{
return
"합성 인덱스"
;
}
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
*/
QCString
trFileIndex
()
virtual
QCString
trFileIndex
()
{
return
"파일 색인"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
*/
QCString
trModuleDocumentation
()
virtual
QCString
trModuleDocumentation
()
{
return
"모듈 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all classes, structs and unions.
*/
QCString
trClassDocumentation
()
virtual
QCString
trClassDocumentation
()
{
return
"클래스 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all files.
*/
QCString
trFileDocumentation
()
virtual
QCString
trFileDocumentation
()
{
return
"파일 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
*/
QCString
trExampleDocumentation
()
virtual
QCString
trExampleDocumentation
()
{
return
"예제 문서화"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
*/
QCString
trPageDocumentation
()
virtual
QCString
trPageDocumentation
()
{
return
"페이지 문서화"
;
}
/*! This is used in LaTeX as the title of the document */
QCString
trReferenceManual
()
{
return
"참고서"
;
}
// "참고서","참고 매뉴얼", "참조 메뉴얼"
virtual
QCString
trReferenceManual
()
{
return
"참고서"
;
}
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
QCString
trDefines
()
virtual
QCString
trDefines
()
{
return
"정의들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
QCString
trFuncProtos
()
virtual
QCString
trFuncProtos
()
{
return
"함수 원형들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
QCString
trTypedefs
()
virtual
QCString
trTypedefs
()
{
return
"타입 정의들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
QCString
trEnumerations
()
virtual
QCString
trEnumerations
()
{
return
"Enumerations"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
QCString
trFunctions
()
virtual
QCString
trFunctions
()
{
return
"함수들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trVariables
()
virtual
QCString
trVariables
()
{
return
"변수들"
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trEnumerationValues
()
virtual
QCString
trEnumerationValues
()
{
return
"열거체 값들"
;
}
/*! This is used in man pages as the author section. */
QCString
trAuthor
()
{
return
"저자"
;
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
QCString
trDefineDocumentation
()
virtual
QCString
trDefineDocumentation
()
{
return
"정의 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
QCString
trFunctionPrototypeDocumentation
()
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
"함수 원형 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
QCString
trTypedefDocumentation
()
virtual
QCString
trTypedefDocumentation
()
{
return
"타입 정의 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
QCString
trEnumerationTypeDocumentation
()
virtual
QCString
trEnumerationTypeDocumentation
()
{
return
"열거체 타입 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
QCString
trEnumerationValueDocumentation
()
virtual
QCString
trEnumerationValueDocumentation
()
{
return
"열거체 값 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
QCString
trFunctionDocumentation
()
virtual
QCString
trFunctionDocumentation
()
{
return
"함수 문서화"
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
QCString
trVariableDocumentation
()
virtual
QCString
trVariableDocumentation
()
{
return
"변수 문서화"
;
}
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
*/
QCString
trCompounds
()
virtual
QCString
trCompounds
()
{
return
"혼합들"
;
}
/*! This is used in the documentation of a group before the list of
* links to documented files
*/
QCString
trFiles
()
{
return
"파일들"
;
}
/*! This is used in the standard footer of each page and indicates when
* the page was generated
*/
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
virtual
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
QCString
result
=
""
;
if
(
projName
)
result
+=
(
QCString
)
projName
+
"에 대해 "
;
...
...
@@ -400,74 +475,71 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
}
/*! This is part of the sentence used in the standard footer of each page.
*/
QCString
trWrittenBy
()
virtual
QCString
trWrittenBy
()
{
return
"written by"
;
// "에 의해 쓰여진?"
return
"written by"
;
}
/*! this text is put before a class diagram */
QCString
trClassDiagram
(
const
char
*
clName
)
virtual
QCString
trClassDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"에 대한 상속 도표"
;
// "Inheritance diagram for "+clName
return
(
QCString
)
clName
+
"에 대한 상속 도표"
;
}
/*! this text is generated when the \\internal command is used. */
QCString
trForInternalUseOnly
()
virtual
QCString
trForInternalUseOnly
()
{
return
"내부 사용만을 위해"
;
}
/*! this text is generated when the \\reimp command is used. */
QCString
trReimplementedForInternalReasons
()
virtual
QCString
trReimplementedForInternalReasons
()
{
return
"내부적 이유를 위해 재구현된: API가 영향을 받지않았다."
;
}
// "Reimplemented for internal reasons; the API is not affected."
/*! this text is generated when the \\warning command is used. */
QCString
trWarning
()
virtual
QCString
trWarning
()
{
return
"경고"
;
}
/*! this text is generated when the \\bug command is used. */
QCString
trBugsAndLimitations
()
virtual
QCString
trBugsAndLimitations
()
{
return
"버그들과 한계들"
;
}
/*! this text is generated when the \\version command is used. */
QCString
trVersion
()
virtual
QCString
trVersion
()
{
return
"버전"
;
}
/*! this text is generated when the \\date command is used. */
QCString
trDate
()
virtual
QCString
trDate
()
{
return
"날짜"
;
}
/*! this text is generated when the \\author command is used. */
QCString
trAuthors
()
{
return
"저자(들)"
;
}
/*! this text is generated when the \\return command is used. */
QCString
trReturns
()
virtual
QCString
trReturns
()
{
return
"반환"
;
}
/*! this text is generated when the \\sa command is used. */
QCString
trSeeAlso
()
virtual
QCString
trSeeAlso
()
{
return
"참조하시요"
;
}
/*! this text is generated when the \\param command is used. */
QCString
trParameters
()
virtual
QCString
trParameters
()
{
return
"매개변수들"
;
}
/*! this text is generated when the \\exception command is used. */
QCString
trExceptions
()
virtual
QCString
trExceptions
()
{
return
"예외들"
;
}
/*! this text is used in the title page of a LaTeX document. */
QCString
trGeneratedBy
()
virtual
QCString
trGeneratedBy
()
{
return
"에 의해 생성된"
;
}
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
/*! used as the title of page containing all the index of all namespaces. */
QCString
trNamespaceList
()
virtual
QCString
trNamespaceList
()
{
return
"이름공간 목록"
;
}
/*! used as an introduction to the namespace list */
QCString
trNamespaceListDescription
(
bool
extractAll
)
virtual
QCString
trNamespaceListDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 모든 간략한 설명을 가진 "
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
...
...
@@ -478,7 +550,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! used in the class documentation as a header before the list of all
* friends of a class
*/
QCString
trFriends
()
virtual
QCString
trFriends
()
{
return
"프렌드"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -496,7 +568,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
//////////////////////////////////////////////////////////////////////////
/*! used as the title of the HTML page of a class/struct/union */
QCString
trCompoundReference
(
const
char
*
clName
,
virtual
QCString
trCompoundReference
(
const
char
*
clName
,
ClassDef
::
CompoundType
compType
,
bool
isTemplate
)
{
...
...
@@ -515,7 +587,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
}
/*! used as the title of the HTML page of a file */
QCString
trFileReference
(
const
char
*
fileName
)
virtual
QCString
trFileReference
(
const
char
*
fileName
)
{
QCString
result
=
fileName
;
result
+=
" 파일 참조"
;
...
...
@@ -523,39 +595,38 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
}
/*! used as the title of the HTML page of a namespace */
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
virtual
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
{
QCString
result
=
namespaceName
;
result
+=
" 이름 공간 참조"
;
return
result
;
}
/* these are for the member sections of a class, struct or union */
QCString
trPublicMembers
()
virtual
QCString
trPublicMembers
()
{
return
"공용 메소드"
;
}
QCString
trPublicSlots
()
virtual
QCString
trPublicSlots
()
{
return
"공용 Slots"
;
}
QCString
trSignals
()
virtual
QCString
trSignals
()
{
return
"신호"
;
}
QCString
trStaticPublicMembers
()
virtual
QCString
trStaticPublicMembers
()
{
return
"정적 공용 메소드"
;
}
QCString
trProtectedMembers
()
virtual
QCString
trProtectedMembers
()
{
return
"프로텍티드 메소드"
;
}
QCString
trProtectedSlots
()
virtual
QCString
trProtectedSlots
()
{
return
"Protected Slots"
;
}
QCString
trStaticProtectedMembers
()
virtual
QCString
trStaticProtectedMembers
()
{
return
"정적 프로텍티드 메소드"
;
}
QCString
trPrivateMembers
()
virtual
QCString
trPrivateMembers
()
{
return
"프라이베이트 메소드"
;
}
QCString
trPrivateSlots
()
virtual
QCString
trPrivateSlots
()
{
return
"Private Slots"
;
}
QCString
trStaticPrivateMembers
()
virtual
QCString
trStaticPrivateMembers
()
{
return
"정적 프라이베이트 메소드"
;
}
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
*/
QCString
trWriteList
(
int
numEntries
)
virtual
QCString
trWriteList
(
int
numEntries
)
{
QCString
result
;
int
i
;
...
...
@@ -580,7 +651,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! used in class documentation to produce a list of base classes,
* if class diagrams are disabled.
*/
QCString
trInheritsList
(
int
numEntries
)
virtual
QCString
trInheritsList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
" 들을 상속하다."
;
}
...
...
@@ -588,7 +659,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! used in class documentation to produce a list of super classes,
* if class diagrams are disabled.
*/
QCString
trInheritedByList
(
int
numEntries
)
virtual
QCString
trInheritedByList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"에 의해 상속된."
;
}
...
...
@@ -596,7 +667,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! used in member documentation blocks to produce a list of
* members that are hidden by this one.
*/
QCString
trReimplementedFromList
(
int
numEntries
)
virtual
QCString
trReimplementedFromList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"으로부터 재구현된."
;
}
...
...
@@ -604,17 +675,17 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! used in member documentation blocks to produce a list of
* all member that overwrite the implementation of this member.
*/
QCString
trReimplementedInList
(
int
numEntries
)
virtual
QCString
trReimplementedInList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"에서 재구현된."
;
}
/*! This is put above each page as a link to all members of namespaces. */
QCString
trNamespaceMembers
()
virtual
QCString
trNamespaceMembers
()
{
return
"이름공간 멤버들"
;
}
/*! This is an introduction to the page with all namespace members */
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
virtual
QCString
trNamespaceMemberDescription
(
bool
extractAll
)
{
QCString
result
=
"이것은 모든 "
;
if
(
!
extractAll
)
result
+=
"문서화된 "
;
...
...
@@ -629,13 +700,13 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
QCString
trNamespaceIndex
()
virtual
QCString
trNamespaceIndex
()
{
return
"이름공간 색인"
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
*/
QCString
trNamespaceDocumentation
()
virtual
QCString
trNamespaceDocumentation
()
{
return
"이름공간 문서화"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -645,7 +716,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! This is used in the documentation before the list of all
* namespaces in a file.
*/
QCString
trNamespaces
()
virtual
QCString
trNamespaces
()
{
return
"이름공간"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -655,7 +726,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! This is put at the bottom of a class documentation page and is
* followed by a list of files that were used to generate the page.
*/
QCString
trGeneratedFromFiles
(
ClassDef
::
CompoundType
compType
,
virtual
QCString
trGeneratedFromFiles
(
ClassDef
::
CompoundType
compType
,
bool
single
)
{
// here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
...
...
@@ -677,7 +748,7 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
*/
QCString
trAlphabeticalList
()
virtual
QCString
trAlphabeticalList
()
{
return
"알파벳순서의 목록"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -685,44 +756,44 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
//////////////////////////////////////////////////////////////////////////
/*! This is used as the heading text for the retval command. */
QCString
trReturnValues
()
virtual
QCString
trReturnValues
()
{
return
"반환값"
;
}
/*! This is in the (quick) index as a link to the main page (index.html)
*/
QCString
trMainPage
()
virtual
QCString
trMainPage
()
{
return
"주요 페이지"
;
}
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
*/
QCString
trPageAbbreviation
()
virtual
QCString
trPageAbbreviation
()
{
return
"페이지"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991003
//////////////////////////////////////////////////////////////////////////
QCString
trSources
()
virtual
QCString
trSources
()
{
return
"출처"
;
}
QCString
trDefinedAtLineInSourceFile
()
virtual
QCString
trDefinedAtLineInSourceFile
()
{
return
"파일 @1. 의 @0 번째 라인에서 정의"
;
// "Definition at line @0 of file @1."
return
"파일 @1. 의 @0 번째 라인에서 정의"
;
}
QCString
trDefinedInSourceFile
()
virtual
QCString
trDefinedInSourceFile
()
{
return
"파일 @0. 에서 정의"
;
// "Definition in file @0."
return
"파일 @0. 에서 정의"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991205
//////////////////////////////////////////////////////////////////////////
QCString
trDeprecated
()
virtual
QCString
trDeprecated
()
{
return
"Deprecated"
;
// "비난받은(??)","반대하는"
return
"Deprecated"
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -730,71 +801,515 @@ class TranslatorKorean : public TranslatorAdapter_1_1_0
//////////////////////////////////////////////////////////////////////////
/*! this text is put before a collaboration diagram */
QCString
trCollaborationDiagram
(
const
char
*
clName
)
virtual
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"에 대한 원조 도표:"
;
}
/*! this text is put before an include dependency graph */
QCString
trInclDepGraph
(
const
char
*
fName
)
virtual
QCString
trInclDepGraph
(
const
char
*
fName
)
{
return
(
QCString
)
fName
+
"에 대한 include 의존 그래프"
;
}
/*! header that is put before the list of constructor/destructors. */
QCString
trConstructorDocumentation
()
virtual
QCString
trConstructorDocumentation
()
{
return
"생성자 & 소멸자 문서화"
;
}
/*! Used in the file documentation to point to the corresponding sources. */
QCString
trGotoSourceCode
()
virtual
QCString
trGotoSourceCode
()
{
return
"이 파일에 대한 소스 코드로 가시오"
;
}
/*! Used in the file sources to point to the corresponding documentation. */
QCString
trGotoDocumentation
()
virtual
QCString
trGotoDocumentation
()
{
return
"이 파일의 문서화로 가시오"
;
}
/*! Text for the \\pre command */
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
return
"전제 조건"
;
}
/*! Text for the \\post command */
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
return
"후미 조건"
;
// "후치조건"
return
"후미 조건"
;
//
Alternate:
"후치조건"
}
/*! Text for the \\invariant command */
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
return
"변하지 않는"
;
}
/*! Text shown before a multi-line variable/enum initialization */
QCString
trInitialValue
()
virtual
QCString
trInitialValue
()
{
return
"초기화기"
;
}
/*! Text used the source code in the file index */
QCString
trCode
()
virtual
QCString
trCode
()
{
return
"코드"
;
}
QCString
trGraphicalHierarchy
()
virtual
QCString
trGraphicalHierarchy
()
{
return
"도표의 클래스 분류체계"
;
// "도표의 클래스 조직"
}
QCString
trGotoGraphicalHierarchy
()
virtual
QCString
trGotoGraphicalHierarchy
()
{
return
"도표의 클래스 분류체계로 가시오"
;
// "도표의 클래스 조직으로 가시오"
}
QCString
trGotoTextualHierarchy
()
virtual
QCString
trGotoTextualHierarchy
()
{
return
"문자의 클래스 분류체계로 가시오"
;
// "문자의 클래스 조직으로 가시오"
}
QCString
trPageIndex
()
virtual
QCString
trPageIndex
()
{
return
"페이지 색인"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
virtual
QCString
trNote
()
{
return
"Note"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trPublicTypes
()
{
return
"Public Types"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trPublicAttribs
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"Data Fields"
;
// TODO: Need to be translated. -ryk11/22/01.
}
else
{
return
"Public Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
}
virtual
QCString
trStaticPublicAttribs
()
{
return
"Static Public Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trProtectedTypes
()
{
return
"Protected Types"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trProtectedAttribs
()
{
return
"Protected Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trStaticProtectedAttribs
()
{
return
"Static Protected Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trPrivateTypes
()
{
return
"Private Types"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trPrivateAttribs
()
{
return
"Private Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trStaticPrivateAttribs
()
{
return
"Static Private Attributes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.3
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a \\todo item */
virtual
QCString
trTodo
()
{
return
"Todo"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used as the header of the todo list */
virtual
QCString
trTodoList
()
{
return
"Todo List"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.4
//////////////////////////////////////////////////////////////////////////
virtual
QCString
trReferencedBy
()
{
return
"Referenced by"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trRemarks
()
{
return
"Remarks"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trAttention
()
{
return
"Attention"
;
// TODO: Need to be translated. -ryk11/22/01.
}
virtual
QCString
trInclByDepGraph
()
{
// TODO: Need to be translated. -ryk11/22/01.
return
"This graph shows which files directly or "
"indirectly include this file:"
;
}
virtual
QCString
trSince
()
{
return
"Since"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.5
//////////////////////////////////////////////////////////////////////////
/*! title of the graph legend page */
virtual
QCString
trLegendTitle
()
{
return
"Graph Legend"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! page explaining how the dot graph's should be interpreted
* The %A in the text below are to prevent link to classes called "A".
*/
virtual
QCString
trLegendDocs
()
{
// TODO: Need to be translated. -ryk11/22/01.
return
"This page explains how to interpret the graphs that are generated "
"by doxygen.<p>
\n
"
"Consider the following example:
\n
"
"
\\
code
\n
"
"/*! Invisible class because of truncation */
\n
"
"class Invisible { };
\n\n
"
"/*! Truncated class, inheritance relation is hidden */
\n
"
"class Truncated : public Invisible { };
\n\n
"
"/* Class not documented with doxygen comments */
\n
"
"class Undocumented { };
\n\n
"
"/*! Class that is inherited using public inheritance */
\n
"
"class PublicBase : public Truncated { };
\n\n
"
"/*! A template class */
\n
"
"template<class T> class Templ { };
\n\n
"
"/*! Class that is inherited using protected inheritance */
\n
"
"class ProtectedBase { };
\n\n
"
"/*! Class that is inherited using private inheritance */
\n
"
"class PrivateBase { };
\n\n
"
"/*! Class that is used by the Inherited class */
\n
"
"class Used { };
\n\n
"
"/*! Super class that inherits a number of other classes */
\n
"
"class Inherited : public PublicBase,
\n
"
" protected ProtectedBase,
\n
"
" private PrivateBase,
\n
"
" public Undocumented
\n
"
" public Templ<int>
\n
"
"{
\n
"
" private:
\n
"
" Used *m_usedClass;
\n
"
"};
\n
"
"
\\
endcode
\n
"
"If the
\\
c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 240 this will result in the following graph:"
"<p><center><img src=
\"
graph_legend.gif
\"
></center>
\n
"
"<p>
\n
"
"The boxes in the above graph have the following meaning:
\n
"
"<ul>
\n
"
"<li>%A filled black box represents the struct or class for which the "
"graph is generated.
\n
"
"<li>%A box with a black border denotes a documented struct or class.
\n
"
"<li>%A box with a grey border denotes an undocumented struct or class.
\n
"
"<li>%A box with a red border denotes a documented struct or class for"
"which not all inheritance/containment relations are shown. %A graph is "
"truncated if it does not fit within the specified boundaries.
\n
"
"</ul>
\n
"
"The arrows have the following meaning:
\n
"
"<ul>
\n
"
"<li>%A dark blue arrow is used to visualize a public inheritance "
"relation between two classes.
\n
"
"<li>%A dark green arrow is used for protected inheritance.
\n
"
"<li>%A dark red arrow is used for private inheritance.
\n
"
"<li>%A purple dashed arrow is used if a class is contained or used "
"by another class. The arrow is labeled with the variable(s) "
"through which the pointed class or struct is accessible.
\n
"
"<li>%A yellow dashed arrow denotes a relation between a template instance and "
"the template class it was instantiated from. The arrow is labeled with "
"the template parameters of the instance.
\n
"
"</ul>
\n
"
;
}
/*! text for the link to the legend page */
virtual
QCString
trLegend
()
{
return
"legend"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.0
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a test item */
virtual
QCString
trTest
()
{
return
"Test"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used as the header of the test list */
virtual
QCString
trTestList
()
{
return
"Test List"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.1
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for KDE-2 IDL methods */
virtual
QCString
trDCOPMethods
()
{
return
"DCOP Methods"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.2
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for IDL properties */
virtual
QCString
trProperties
()
{
return
"Properties"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used as a section header for IDL property documentation */
virtual
QCString
trPropertyDocumentation
()
{
return
"Property Documentation"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.4
//////////////////////////////////////////////////////////////////////////
/*! Used for Java interfaces in the summary section of Java packages */
virtual
QCString
trInterfaces
()
{
return
"Interfaces"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used for Java classes in the summary section of Java packages */
virtual
QCString
trClasses
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"Data Structures"
;
// TODO: Need to be translated. -ryk11/22/01.
}
else
{
return
"Classes"
;
// TODO: Need to be translated. -ryk11/22/01.
}
}
/*! Used as the title of a Java package */
virtual
QCString
trPackage
(
const
char
*
name
)
{
return
(
QCString
)
"Package "
+
name
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Title of the package index page */
virtual
QCString
trPackageList
()
{
return
"Package List"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! The description of the package index page */
virtual
QCString
trPackageListDescription
()
{
return
"Here are the packages with brief descriptions (if available):"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! The link name in the Quick links header for each page */
virtual
QCString
trPackages
()
{
return
"Packages"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used as a chapter title for Latex & RTF output */
virtual
QCString
trPackageDocumentation
()
{
return
"Package Documentation"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Text shown before a multi-line define */
virtual
QCString
trDefineValue
()
{
return
"Value:"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.5
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a \\bug item */
virtual
QCString
trBug
()
{
return
"Bug"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! Used as the header of the bug list */
virtual
QCString
trBugList
()
{
return
"Bug List"
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.6
//////////////////////////////////////////////////////////////////////////
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value and
* <pre>
* Codepage number:
* Charset Name Charset Value(hex) Codepage number
* ------------------------------------------------------
* DEFAULT_CHARSET 1 (x01)
* SYMBOL_CHARSET 2 (x02)
* OEM_CHARSET 255 (xFF)
* ANSI_CHARSET 0 (x00) 1252
* RUSSIAN_CHARSET 204 (xCC) 1251
* EE_CHARSET 238 (xEE) 1250
* GREEK_CHARSET 161 (xA1) 1253
* TURKISH_CHARSET 162 (xA2) 1254
* BALTIC_CHARSET 186 (xBA) 1257
* HEBREW_CHARSET 177 (xB1) 1255
* ARABIC _CHARSET 178 (xB2) 1256
* SHIFTJIS_CHARSET 128 (x80) 932
* HANGEUL_CHARSET 129 (x81) 949
* GB2313_CHARSET 134 (x86) 936
* CHINESEBIG5_CHARSET 136 (x88) 950
* </pre>
*
*/
virtual
QCString
trRTFansicp
()
{
return
"1252"
;
}
/*! Used as ansicpg for RTF fcharset
* \see trRTFansicp() for a table of possible values.
*/
virtual
QCString
trRTFCharSet
()
{
return
"0"
;
}
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
"Index"
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trClass
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Class"
:
"class"
));
if
(
!
singular
)
result
+=
"es"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trFile
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"File"
:
"file"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trNamespace
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Namespace"
:
"namespace"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGroup
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Group"
:
"group"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trPage
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Page"
:
"page"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trMember
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Member"
:
"member"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Field"
:
"field"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGlobal
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Global"
:
"global"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.7
//////////////////////////////////////////////////////////////////////////
/*! This text is generated when the \\author command is used and
* for the author section in man pages. */
virtual
QCString
trAuthor
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Author"
:
"author"
));
if
(
!
singular
)
result
+=
"s"
;
return
result
;
// TODO: Need to be translated. -ryk11/22/01.
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"References"
;
// TODO: Need to be translated. -ryk11/22/01.
}
};
#endif
src/translator_nl.h
View file @
79959c79
...
...
@@ -18,7 +18,7 @@
#ifndef TRANSLATOR_NL_H
#define TRANSLATOR_NL_H
class
TranslatorDutch
:
public
Translator
Adapter_1_2_11
class
TranslatorDutch
:
public
Translator
{
public
:
QCString
idLanguage
()
...
...
@@ -964,6 +964,17 @@ class TranslatorDutch : public TranslatorAdapter_1_2_11
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Gebruikt"
;
}
};
#endif
src/translator_pt.h
View file @
79959c79
...
...
@@ -18,16 +18,18 @@
*
* VERSION HISTORY
* ---------------
* 002 19 november 2001
* ! Updated for doxygen v1.2.12
* 001 20 july 2001
*
-
Updated for doxygen v1.2.8.1
*
!
Updated for doxygen v1.2.8.1
* 000 ?
*
-
Initial translation for doxygen v1.1.5
*
+
Initial translation for doxygen v1.1.5
*/
#ifndef TRANSLATOR_PT_H
#define TRANSLATOR_PT_H
class
TranslatorPortuguese
:
public
Translator
Adapter_1_2_11
class
TranslatorPortuguese
:
public
Translator
{
public
:
...
...
@@ -1348,5 +1350,17 @@ class TranslatorPortuguese : public TranslatorAdapter_1_2_11
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Referências"
;
}
};
#endif
src/translator_si.h
View file @
79959c79
...
...
@@ -21,7 +21,7 @@
#define TRANSLATOR_SI_H
class
TranslatorSlovene
:
public
Translator
Adapter_1_2_11
class
TranslatorSlovene
:
public
Translator
{
public
:
QCString
idLanguage
()
...
...
@@ -981,7 +981,16 @@ class TranslatorSlovene : public TranslatorAdapter_1_2_11
if
(
!
singular
)
result
+=
"ji"
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
"Reference"
;
}
};
#endif
...
...
src/util.cpp
View file @
79959c79
...
...
@@ -1275,6 +1275,8 @@ void stripIrrelevantConstVolatile(QCString &s)
int
i
;
if
(
s
==
"const"
)
{
s
.
resize
(
0
);
return
;
}
if
(
s
==
"volatile"
)
{
s
.
resize
(
0
);
return
;
}
// strip occurrences of const
i
=
s
.
find
(
"const "
);
if
(
i
!=-
1
)
{
...
...
@@ -1284,6 +1286,8 @@ void stripIrrelevantConstVolatile(QCString &s)
s
=
s
.
left
(
i
)
+
s
.
right
(
s
.
length
()
-
i
-
6
);
}
}
// strip occurrences of volatile
i
=
s
.
find
(
"volatile "
);
if
(
i
!=-
1
)
{
...
...
@@ -1295,22 +1299,6 @@ void stripIrrelevantConstVolatile(QCString &s)
}
}
#if 0 // should be done differently
static QCString resolveTypeDefs(const QCString &s)
{
QCString result;
static QRegExp re("[a-z_A-Z][a-z_A-Z0-9]*");
int p=0,l,i;
while ((i=re.match(s,p,&l))!=-1)
{
result += s.mid(p,i-p);
result += resolveTypeDef(s.mid(i,l));
p=i+l;
}
result+=s.right(s.length()-p);
return result;
}
#endif
// a bit of debug support for matchArguments
#define MATCH
...
...
@@ -1485,6 +1473,7 @@ static bool matchArgument(const Argument *srcA,const Argument *dstA,
// otherwise we assume that a name starts at the current position.
while
(
srcPos
<
srcAType
.
length
()
&&
isId
(
srcAType
.
at
(
srcPos
)))
srcPos
++
;
while
(
dstPos
<
dstAType
.
length
()
&&
isId
(
dstAType
.
at
(
dstPos
)))
dstPos
++
;
// if nothing more follows for both types then we assume we have
// found a match. Note that now `signed int' and `signed' match, but
// seeing that int is not a name can only be done by looking at the
...
...
@@ -3108,8 +3097,7 @@ const char *getOverloadDocs()
"function only in what argument(s) it accepts."
;
}
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupDict
*
memberGroupDict
,
MemberGroupList
*
memberGroupList
)
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupSDict
*
memberGroupSDict
)
{
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
...
...
@@ -3123,12 +3111,11 @@ void addMembersToMemberGroup(MemberList *ml,MemberGroupDict *memberGroupDict,
QCString
*
pDocs
=
Doxygen
::
memberDocDict
[
groupId
];
if
(
pGrpHeader
)
{
MemberGroup
*
mg
=
memberGroupDict
->
find
(
groupId
);
MemberGroup
*
mg
=
memberGroup
S
Dict
->
find
(
groupId
);
if
(
mg
==
0
)
{
mg
=
new
MemberGroup
(
groupId
,
*
pGrpHeader
,
pDocs
?
pDocs
->
data
()
:
0
);
memberGroupDict
->
insert
(
groupId
,
mg
);
memberGroupList
->
append
(
mg
);
memberGroupSDict
->
append
(
groupId
,
mg
);
}
md
=
ml
->
take
(
index
);
mg
->
insertMember
(
md
);
...
...
src/util.h
View file @
79959c79
...
...
@@ -39,8 +39,7 @@ class BaseClassList;
class
GroupDef
;
class
NamespaceList
;
class
ClassList
;
class
MemberGroupList
;
class
MemberGroupDict
;
class
MemberGroupSDict
;
class
Definition
;
struct
TagInfo
;
...
...
@@ -149,8 +148,7 @@ int iSystem(const char *command,const char *args,bool isBatchFile=FALSE);
QCString
convertToHtml
(
const
char
*
s
);
QCString
convertToXML
(
const
char
*
s
);
const
char
*
getOverloadDocs
();
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupDict
*
memberGroupDict
,
MemberGroupList
*
memberGroupList
);
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupSDict
*
memberGroupSDict
);
bool
extractClassNameFromType
(
const
QCString
&
type
,
int
&
pos
,
QCString
&
name
,
QCString
&
templSpec
);
QCString
substituteTemplateArgumentsInString
(
...
...
src/xmlgen.cpp
View file @
79959c79
...
...
@@ -771,7 +771,7 @@ class XMLGenerator : public OutputDocInterface
friend
void
writeXMLCodeBlock
(
QTextStream
&
t
,
FileDef
*
fd
);
};
void
writeXMLDocBlock
(
QTextStream
&
t
,
static
void
writeXMLDocBlock
(
QTextStream
&
t
,
const
QCString
&
fileName
,
int
lineNr
,
const
QCString
&
scope
,
...
...
@@ -810,19 +810,19 @@ void writeXMLCodeBlock(QTextStream &t,FileDef *fd)
void
generateXMLForMember
(
MemberDef
*
md
,
QTextStream
&
t
,
Definition
*
def
)
static
void
generateXMLForMember
(
MemberDef
*
md
,
QTextStream
&
t
,
Definition
*
def
)
{
// + declaration
//
-
reimplements
//
-
reimplementedBy
//
-
exceptions
//
-
const/volatile specifiers
// + declaration
/definition arg lists
//
+
reimplements
//
+
reimplementedBy
//
+
exceptions
//
+
const/volatile specifiers
// - examples
// + source definition
//
-
source references
//
-
source referenced by
// -
include
code
//
+
source references
//
+
source referenced by
// -
body
code
if
(
md
->
memberType
()
==
MemberDef
::
EnumValue
)
return
;
...
...
@@ -852,7 +852,7 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
case
MemberDef
:
:
Slot
:
memType
=
"slot"
;
isFunc
=
TRUE
;
break
;
}
t
<<
memType
<<
"
\"
id=
\"
"
;
t
<<
def
->
getOutputFileBase
()
t
<<
md
->
getOutputFileBase
()
<<
"_1"
// encoded `:' character (see util.cpp:convertNameToFile)
<<
md
->
anchor
();
t
<<
"
\"
"
;
...
...
@@ -871,8 +871,19 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
case
Protected
:
t
<<
"protected"
;
break
;
case
Private
:
t
<<
"private"
;
break
;
}
t
<<
"
\"
>"
<<
endl
;
t
<<
"
\"
"
;
if
(
isFunc
)
{
ArgumentList
*
al
=
md
->
argumentList
();
t
<<
" const=
\"
"
;
if
(
al
&&
al
->
constSpecifier
)
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"
\"
volatile=
\"
"
;
if
(
al
&&
al
->
volatileSpecifier
)
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"
\"
"
;
}
t
<<
">"
<<
endl
;
if
(
md
->
memberType
()
!=
MemberDef
::
Define
&&
md
->
memberType
()
!=
MemberDef
::
Enumeration
)
...
...
@@ -885,7 +896,27 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
t
<<
" <name>"
;
writeXMLString
(
t
,
md
->
name
());
t
<<
"</name>"
<<
endl
;
MemberDef
*
rmd
=
md
->
reimplements
();
if
(
rmd
)
{
t
<<
" <reimplements id=
\"
"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
rmd
->
name
()
<<
"</reimplements>"
;
}
MemberList
*
rbml
=
md
->
reimplementedBy
();
if
(
rbml
)
{
MemberListIterator
mli
(
*
rbml
);
for
(
mli
.
toFirst
();(
rmd
=
mli
.
current
());
++
mli
)
{
t
<<
" <reimplementedby id=
\"
"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
rmd
->
name
()
<<
"</reimplementedby>"
;
}
}
if
(
isFunc
)
//function
{
ArgumentList
*
declAl
=
new
ArgumentList
;
...
...
@@ -958,7 +989,14 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
linkifyText
(
TextGeneratorXMLImpl
(
t
),
scopeName
,
md
->
name
(),
md
->
initializer
());
t
<<
"</initializer>"
<<
endl
;
}
// TODO: exceptions, const volatile
if
(
md
->
excpString
())
{
t
<<
" <exceptions>"
;
linkifyText
(
TextGeneratorXMLImpl
(
t
),
scopeName
,
md
->
name
(),
md
->
excpString
());
t
<<
"</exception>"
<<
endl
;
}
if
(
md
->
memberType
()
==
MemberDef
::
Enumeration
)
// enum
{
if
(
md
->
enumFieldList
())
...
...
@@ -994,7 +1032,7 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
<<
md
->
getDefLine
()
<<
"
\"
/>"
<<
endl
;
}
printf
(
"md->getReferencesMembers()=%p
\n
"
,
md
->
getReferencesMembers
());
//
printf("md->getReferencesMembers()=%p\n",md->getReferencesMembers());
if
(
md
->
getReferencesMembers
())
{
MemberSDict
::
Iterator
mdi
(
*
md
->
getReferencesMembers
());
...
...
@@ -1051,43 +1089,48 @@ void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
t
<<
" </memberdef>"
<<
endl
;
}
void
generateXMLClassSection
(
ClassDef
*
cd
,
QTextStream
&
t
,
MemberList
*
ml
,
const
char
*
kind
)
static
void
generateXMLSection
(
Definition
*
d
,
QTextStream
&
t
,
MemberList
*
ml
,
const
char
*
kind
,
const
char
*
header
=
0
)
{
if
(
ml
->
count
()
>
0
)
if
(
ml
->
count
()
==
0
)
return
;
// empty list
t
<<
" <sectiondef kind=
\"
"
<<
kind
<<
"
\"
>"
<<
endl
;
if
(
header
)
{
t
<<
" <sectiondef kind=
\"
"
<<
kind
<<
"
\"
>"
<<
endl
;
//t << " <memberlist>" << endl;
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
for
(
mli
.
toFirst
();(
md
=
mli
.
current
());
++
mli
)
{
generateXMLForMember
(
md
,
t
,
cd
);
}
//t << " </memberlist>" << endl;
t
<<
" </sectiondef>"
<<
endl
;
t
<<
" <header>"
<<
convertToXML
(
header
)
<<
"</header>"
<<
endl
;
}
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
for
(
mli
.
toFirst
();(
md
=
mli
.
current
());
++
mli
)
{
generateXMLForMember
(
md
,
t
,
d
);
}
t
<<
" </sectiondef>"
<<
endl
;
}
void
generateXMLForClass
(
ClassDef
*
cd
,
QTextStream
&
t
)
static
void
generateXMLForClass
(
ClassDef
*
cd
,
QTextStream
&
t
)
{
// + brief description
// + detailed description
// - template arguments
// - include files
// - include file
// - member groups
// + inheritance diagram
// + list of direct super classes
// + list of direct sub classes
// - list of inner classes
// + collaboration diagram
// - list of all members
// + user defined member sections
// + standard member sections
// + detailed member documentation
// - examples
// - examples
using the class
if
(
cd
->
isReference
())
return
;
// skip external references.
if
(
cd
->
isReference
())
return
;
// skip external references.
if
(
cd
->
name
().
find
(
'@'
)
!=-
1
)
return
;
// skip anonymous compounds.
if
(
cd
->
templateMaster
()
!=
0
)
return
;
// skip generated template instances.
if
(
cd
->
templateMaster
()
!=
0
)
return
;
// skip generated template instances.
t
<<
" <compounddef id=
\"
"
<<
cd
->
getOutputFileBase
()
<<
"
\"
kind=
\"
"
<<
cd
->
compoundTypeString
()
<<
"
\"
>"
<<
endl
;
...
...
@@ -1144,43 +1187,38 @@ void generateXMLForClass(ClassDef *cd,QTextStream &t)
t
<<
"
\"
/>"
<<
endl
;
}
}
int
numMembers
=
cd
->
pubTypes
.
count
()
+
cd
->
pubMembers
.
count
()
+
cd
->
pubAttribs
.
count
()
+
cd
->
pubSlots
.
count
()
+
cd
->
signals
.
count
()
+
cd
->
dcopMethods
.
count
()
+
cd
->
pubStaticMembers
.
count
()
+
cd
->
pubStaticAttribs
.
count
()
+
cd
->
proTypes
.
count
()
+
cd
->
proMembers
.
count
()
+
cd
->
proAttribs
.
count
()
+
cd
->
proSlots
.
count
()
+
cd
->
proStaticMembers
.
count
()
+
cd
->
proStaticAttribs
.
count
()
+
cd
->
priTypes
.
count
()
+
cd
->
priMembers
.
count
()
+
cd
->
priAttribs
.
count
()
+
cd
->
priSlots
.
count
()
+
cd
->
priStaticMembers
.
count
()
+
cd
->
priStaticAttribs
.
count
()
+
cd
->
friends
.
count
()
+
cd
->
related
.
count
();
if
(
numMembers
>
0
)
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
//t << " <sectionlist>" << endl;
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubTypes
,
"public-type"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubMembers
,
"public-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubAttribs
,
"public-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubSlots
,
"public-slot"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
signals
,
"signal"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
dcopMethods
,
"dcop-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
properties
,
"property"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubStaticMembers
,
"public-static-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
pubStaticAttribs
,
"public-static-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proTypes
,
"protected-type"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proMembers
,
"protected-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proAttribs
,
"protected-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proSlots
,
"protected-slot"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proStaticMembers
,
"protected-static-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
proStaticAttribs
,
"protected-static-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priTypes
,
"private-type"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priMembers
,
"private-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priAttribs
,
"private-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priSlots
,
"private-slot"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priStaticMembers
,
"private-static-func"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
priStaticAttribs
,
"private-static-attrib"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
friends
,
"signal"
);
generateXMLClassSection
(
cd
,
t
,
&
cd
->
related
,
"related"
);
//t << " </sectionlist>" << endl;
generateXMLSection
(
cd
,
t
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
}
generateXMLSection
(
cd
,
t
,
&
cd
->
pubTypes
,
"public-type"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
pubMembers
,
"public-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
pubAttribs
,
"public-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
pubSlots
,
"public-slot"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
signals
,
"signal"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
dcopMethods
,
"dcop-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
properties
,
"property"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
pubStaticMembers
,
"public-static-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
pubStaticAttribs
,
"public-static-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proTypes
,
"protected-type"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proMembers
,
"protected-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proAttribs
,
"protected-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proSlots
,
"protected-slot"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proStaticMembers
,
"protected-static-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
proStaticAttribs
,
"protected-static-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priTypes
,
"private-type"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priMembers
,
"private-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priAttribs
,
"private-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priSlots
,
"private-slot"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priStaticMembers
,
"private-static-func"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
priStaticAttribs
,
"private-static-attrib"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
friends
,
"signal"
);
generateXMLSection
(
cd
,
t
,
&
cd
->
related
,
"related"
);
t
<<
" <briefdescription>"
<<
endl
;
writeXMLDocBlock
(
t
,
cd
->
getDefFileName
(),
cd
->
getDefLine
(),
cd
->
name
(),
0
,
cd
->
briefDescription
());
t
<<
" </briefdescription>"
<<
endl
;
...
...
@@ -1207,41 +1245,38 @@ void generateXMLForClass(ClassDef *cd,QTextStream &t)
t
<<
" </compounddef>"
<<
endl
;
}
void
generateXMLSection
(
Definition
*
d
,
QTextStream
&
t
,
MemberList
*
ml
,
const
char
*
kind
)
static
void
generateXMLForNamespace
(
NamespaceDef
*
nd
,
QTextStream
&
t
)
{
if
(
ml
->
count
()
>
0
)
{
t
<<
" <sectiondef kind=
\"
"
<<
kind
<<
"
\"
>"
<<
endl
;
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
for
(
mli
.
toFirst
();(
md
=
mli
.
current
());
++
mli
)
{
generateXMLForMember
(
md
,
t
,
d
);
}
t
<<
" </sectiondef>"
<<
endl
;
}
}
// - contained class definitions
// - contained namespace definitions
// - member groups
// + normal members
// + brief desc
// + detailed desc
// + location
// - files containing (parts of) the namespace definition
void
generateXMLForNamespace
(
NamespaceDef
*
nd
,
QTextStream
&
t
)
{
if
(
nd
->
isReference
())
return
;
// skip external references
t
<<
" <compounddef id=
\"
"
<<
nd
->
getOutputFileBase
()
<<
"
\"
kind=
\"
namespace
\"
>"
<<
endl
;
t
<<
" <compoundname>"
;
writeXMLString
(
t
,
nd
->
name
());
t
<<
"</compoundname>"
<<
endl
;
int
numMembers
=
nd
->
decDefineMembers
.
count
()
+
nd
->
decProtoMembers
.
count
()
+
nd
->
decTypedefMembers
.
count
()
+
nd
->
decEnumMembers
.
count
()
+
nd
->
decFuncMembers
.
count
()
+
nd
->
decVarMembers
.
count
()
;
if
(
numMembers
>
0
)
MemberGroupSDict
::
Iterator
mgli
(
*
nd
->
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
generateXMLSection
(
nd
,
t
,
&
nd
->
decDefineMembers
,
"define"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decProtoMembers
,
"prototype"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decTypedefMembers
,
"typedef"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decEnumMembers
,
"enum"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decFuncMembers
,
"func"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decVarMembers
,
"var"
);
generateXMLSection
(
nd
,
t
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
}
generateXMLSection
(
nd
,
t
,
&
nd
->
decDefineMembers
,
"define"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decProtoMembers
,
"prototype"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decTypedefMembers
,
"typedef"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decEnumMembers
,
"enum"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decFuncMembers
,
"func"
);
generateXMLSection
(
nd
,
t
,
&
nd
->
decVarMembers
,
"var"
);
t
<<
" <briefdescription>"
<<
endl
;
writeXMLDocBlock
(
t
,
nd
->
getDefFileName
(),
nd
->
getDefLine
(),
0
,
0
,
nd
->
briefDescription
());
t
<<
" </briefdescription>"
<<
endl
;
...
...
@@ -1254,26 +1289,87 @@ void generateXMLForNamespace(NamespaceDef *nd,QTextStream &t)
t
<<
" </compounddef>"
<<
endl
;
}
void
generateXMLForFile
(
FileDef
*
fd
,
QTextStream
&
t
)
static
void
generateXMLForFile
(
FileDef
*
fd
,
QTextStream
&
t
)
{
// + includes files
// + includedby files
// + include graph
// + included by graph
// - contained class definitions
// - contained namespace definitions
// - member groups
// + normal members
// + brief desc
// + detailed desc
// + source code
// + location
// - number of lines
if
(
fd
->
isReference
())
return
;
// skip external references
t
<<
" <compounddef id=
\"
"
<<
fd
->
getOutputFileBase
()
<<
"
\"
kind=
\"
file
\"
>"
<<
endl
;
t
<<
" <compoundname>"
;
writeXMLString
(
t
,
fd
->
name
());
t
<<
"</compoundname>"
<<
endl
;
int
numMembers
=
fd
->
decDefineMembers
.
count
()
+
fd
->
decProtoMembers
.
count
()
+
fd
->
decTypedefMembers
.
count
()
+
fd
->
decEnumMembers
.
count
()
+
fd
->
decFuncMembers
.
count
()
+
fd
->
decVarMembers
.
count
();
if
(
numMembers
>
0
)
QListIterator
<
IncludeInfo
>
ili1
(
*
fd
->
includeFileList
());
IncludeInfo
*
inc
;
for
(
ili1
.
toFirst
();(
inc
=
ili1
.
current
());
++
ili1
)
{
t
<<
" <includes"
;
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
{
t
<<
" id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
}
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
inc
->
includeName
;
t
<<
"</includes>"
<<
endl
;
}
QListIterator
<
IncludeInfo
>
ili2
(
*
fd
->
includedByFileList
());
for
(
ili2
.
toFirst
();(
inc
=
ili2
.
current
());
++
ili2
)
{
t
<<
" <includedby"
;
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
{
t
<<
" id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
}
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
inc
->
includeName
;
t
<<
"</includedby>"
<<
endl
;
}
DotInclDepGraph
incDepGraph
(
fd
,
FALSE
);
if
(
!
incDepGraph
.
isTrivial
())
{
t
<<
" <incdepgraph>"
<<
endl
;
incDepGraph
.
writeXML
(
t
);
t
<<
" </incdepgraph>"
<<
endl
;
}
DotInclDepGraph
invIncDepGraph
(
fd
,
TRUE
);
if
(
!
invIncDepGraph
.
isTrivial
())
{
t
<<
" <invincdepgraph>"
<<
endl
;
invIncDepGraph
.
writeXML
(
t
);
t
<<
" </invincdepgraph>"
<<
endl
;
}
MemberGroupSDict
::
Iterator
mgli
(
*
fd
->
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
generateXMLSection
(
fd
,
t
,
&
fd
->
decDefineMembers
,
"define"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decProtoMembers
,
"prototype"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decTypedefMembers
,
"typedef"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decEnumMembers
,
"enum"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decFuncMembers
,
"func"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decVarMembers
,
"var"
);
generateXMLSection
(
fd
,
t
,
mg
->
members
(),
"user-defined"
,
mg
->
header
());
}
generateXMLSection
(
fd
,
t
,
&
fd
->
decDefineMembers
,
"define"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decProtoMembers
,
"prototype"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decTypedefMembers
,
"typedef"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decEnumMembers
,
"enum"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decFuncMembers
,
"func"
);
generateXMLSection
(
fd
,
t
,
&
fd
->
decVarMembers
,
"var"
);
t
<<
" <briefdescription>"
<<
endl
;
writeXMLDocBlock
(
t
,
fd
->
getDefFileName
(),
fd
->
getDefLine
(),
0
,
0
,
fd
->
briefDescription
());
t
<<
" </briefdescription>"
<<
endl
;
...
...
@@ -1283,15 +1379,21 @@ void generateXMLForFile(FileDef *fd,QTextStream &t)
t
<<
" <programlisting>"
<<
endl
;
writeXMLCodeBlock
(
t
,
fd
);
t
<<
" </programlisting>"
<<
endl
;
t
<<
" <location file=
\"
"
<<
fd
->
getDefFileName
()
<<
"
\"
line=
\"
"
<<
fd
->
getDefLine
()
<<
"
\"
/>"
<<
endl
;
t
<<
" <location file=
\"
"
<<
fd
->
getDefFileName
()
<<
"
\"
/>"
<<
endl
;
t
<<
" </compounddef>"
<<
endl
;
}
void
generateXML
()
{
// + classes
// + namespaces
// + files
// - packages
// - groups
// - related pages
QCString
outputDirectory
=
Config_getString
(
"OUTPUT_DIRECTORY"
);
if
(
outputDirectory
.
isEmpty
())
{
...
...
@@ -1356,6 +1458,12 @@ void generateXML()
{
generateXMLForClass
(
cd
,
t
);
}
NamespaceSDict
::
Iterator
nli
(
Doxygen
::
namespaceSDict
);
NamespaceDef
*
nd
;
for
(
nli
.
toFirst
();(
nd
=
nli
.
current
());
++
nli
)
{
generateXMLForNamespace
(
nd
,
t
);
}
FileNameListIterator
fnli
(
Doxygen
::
inputNameList
);
FileName
*
fn
;
for
(;(
fn
=
fnli
.
current
());
++
fnli
)
...
...
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