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
9d4d8095
Commit
9d4d8095
authored
Jan 05, 2002
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.13.1
parent
ad53b7be
Changes
51
Hide whitespace changes
Inline
Side-by-side
Showing
51 changed files
with
1901 additions
and
838 deletions
+1901
-838
Doxyfile
Doxyfile
+2
-2
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
doxygen.dtd
addon/doxmlparser/doxygen.dtd
+175
-50
doxmlintf.h
addon/doxmlparser/include/doxmlintf.h
+46
-6
compoundhandler.cpp
addon/doxmlparser/src/compoundhandler.cpp
+2
-2
dochandler.cpp
addon/doxmlparser/src/dochandler.cpp
+75
-20
dochandler.h
addon/doxmlparser/src/dochandler.h
+133
-74
doxmlintf.h
addon/doxmlparser/src/doxmlintf.h
+46
-6
linkedtexthandler.cpp
addon/doxmlparser/src/linkedtexthandler.cpp
+6
-1
main.cpp
addon/doxmlparser/test/main.cpp
+198
-0
Makefile.in
addon/doxywizard/Makefile.in
+9
-2
Makefile.win_nmake.in
addon/doxywizard/Makefile.win_nmake.in
+2
-1
doxywizard.cpp
addon/doxywizard/doxywizard.cpp
+3
-3
doxywizard.pro.in
addon/doxywizard/doxywizard.pro.in
+5
-7
configure
configure
+7
-1
htmlcmds.doc
doc/htmlcmds.doc
+2
-0
language.doc
doc/language.doc
+9
-8
lists.doc
doc/lists.doc
+29
-0
maintainers.txt
doc/maintainers.txt
+2
-1
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+53
-67
config.l
src/config.l
+1
-0
doc.l
src/doc.l
+111
-36
dot.cpp
src/dot.cpp
+25
-8
dot.h
src/dot.h
+4
-2
doxygen.cpp
src/doxygen.cpp
+3
-3
groupdef.cpp
src/groupdef.cpp
+5
-4
groupdef.h
src/groupdef.h
+1
-1
htmlgen.cpp
src/htmlgen.cpp
+1
-0
htmlgen.h
src/htmlgen.h
+8
-2
index.cpp
src/index.cpp
+43
-81
latexgen.h
src/latexgen.h
+19
-3
mangen.h
src/mangen.h
+4
-2
memberdef.cpp
src/memberdef.cpp
+13
-0
memberdef.h
src/memberdef.h
+4
-2
membergroup.cpp
src/membergroup.cpp
+5
-5
membergroup.h
src/membergroup.h
+2
-2
outputgen.h
src/outputgen.h
+4
-2
outputlist.h
src/outputlist.h
+8
-4
pre.l
src/pre.l
+10
-3
rtfgen.h
src/rtfgen.h
+8
-6
scanner.l
src/scanner.l
+13
-35
translator.cpp
src/translator.cpp
+78
-0
translator.h
src/translator.h
+3
-0
translator_jp.h
src/translator_jp.h
+648
-347
translator_sk.h
src/translator_sk.h
+14
-3
util.cpp
src/util.cpp
+23
-11
util.h
src/util.h
+4
-1
xmlgen.cpp
src/xmlgen.cpp
+29
-18
No files found.
Doxyfile
View file @
9d4d8095
...
...
@@ -140,7 +140,7 @@ MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML =
NO
GENERATE_XML =
YES
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
...
...
@@ -168,7 +168,7 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
HAVE_DOT =
NO
HAVE_DOT =
YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
TEMPLATE_RELATIONS = YES
...
...
INSTALL
View file @
9d4d8095
DOXYGEN Version 1.2.13
DOXYGEN Version 1.2.13
.1
Please read the installation section of the manual for instructions.
--------
Dimitri van Heesch (
29 December 2001
)
Dimitri van Heesch (
05 January 2002
)
README
View file @
9d4d8095
DOXYGEN Version 1.2.13
DOXYGEN Version 1.2.13
.1
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) (
29 December 2001
)
Dimitri van Heesch (dimitri@stack.nl) (
05 January 2002
)
VERSION
View file @
9d4d8095
1.2.13
1.2.13
.1
addon/doxmlparser/doxygen.dtd
View file @
9d4d8095
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- NOTE: THIS DTD IS NOT UP TO DATE!!! DO NOT DEPEND ON IT -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- DTD describing the grammar used in doxygen's XML output -->
<!-- Version 0.1 December 25, 2001 -->
<!-- Defined by Angelo Hulshout, based on works of Dimitri van Heesch -->
<!-- standard character entities -->
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!-- required attributes for compounds -->
<!ENTITY % compound-req.att
<!ENTITY lt "&#60;">
<!ENTITY gt ">">
<!ENTITY amp "&#38;">
<!ENTITY apos "'">
<!ENTITY quot """>
<!--
Document root
-->
<!ELEMENT doxygen (compounddef)*>
<!--
Compound related entities and elements
-->
<!ENTITY % compound-req.att
'id ID #REQUIRED
type
(group|file|namespace|
kind
(group|file|namespace|
class|struct|union|
interface|dispinterface|
valuetype|library) #REQUIRED'
>
<!-- required attributes for references -->
<!ENTITY % ref-req.att 'idref IDREF #REQUIRED'
>
<!-- required attributes for inheritance relations -->
<!ENTITY % inheritcompref-req.att
'%ref-req.att;
prot (public|protected|private) #REQUIRED
virt (non-virtual|virtual) #REQUIRED'
>
<!ELEMENT compounddef (compoundname,
basecompoundref*,
derivedcompoundref*,
sectiondef*,
briefdescription,
detaileddescription,
inheritancegraph?,
collaborationgraph?,
programlisting?,
sourcecode?,
location?
)
>
<!ATTLIST compounddef %compound-req.att;>
<!ELEMENT compoundname (#PCDATA)>
<!ELEMENT location (#PCDATA)>
<!ATTLIST location file CDATA #REQUIRED line CDATA #REQUIRED >
<!ELEMENT compoundref EMPTY>
<!ATTLIST compoundref %ref-req.att;>
<!ELEMENT basecompoundref EMPTY>
<!ATTLIST basecompoundref %inheritcompref-req.att;>
<!ELEMENT derivedcompoundref EMPTY>
<!ATTLIST derivedcompoundref %inheritcompref-req.att;>
<!ELEMENT memberdef (#PCDATA|type|name|briefdescription|detaileddescription|location|param|initializer|enumvalue)*>
<!ATTLIST memberdef kind (define|property|variable|typedef|enum|function|signal|prototype|friend|dcop|slot) #REQUIRED id CDATA #REQUIRED virt (normal|virtual|pure-virtual) #REQUIRED prot (public|protected|private) #REQUIRED>
<!ELEMENT briefdescription (#PCDATA|para)*>
<!ELEMENT detaileddescription (#PCDATA|para)*>
<!--
Compound attributes related entities and elements
-->
<!-- required attributes for member sections -->
<!ENTITY % sec-req.att '
type
(user
<!ENTITY % sec-req.att '
kind
(user
|public-type
|public-func
|public-attrib
...
...
@@ -59,65 +101,148 @@
) #REQUIRED
'
>
<!-- required attributes for members -->
<!ENTITY % mem-req.att 'id ID #REQUIRED'>
<!-- optional attributes for function -->
<!ENTITY % func-opt.att 'virt (virtual|pure-virtual) #IMPLIED'>
<!-- elements -->
<!ELEMENT doxygen (compounddef)*>
<!ELEMENT compounddef (compoundname,
basecompoundref*,
derivedcompoundref*,
sectiondef*,
briefdescription,
detaileddescription,
inheritancegraph?,
collaborationgraph?,
sourcecode?
)
>
<!ATTLIST compounddef %compound-req.att;>
<!ELEMENT compoundref (#PCDATA)>
<!ATTLIST compoundref %ref-req.att;>
<!ELEMENT memberref (#PCDATA)>
<!ATTLIST memberref %ref-req.att;>
<!ELEMENT basecompoundref EMPTY>
<!ATTLIST basecompoundref %inheritcompref-req.att;>
<!ELEMENT derivedcompoundref EMPTY>
<!ATTLIST derivedcompoundref %inheritcompref-req.att;>
<!ELEMENT sectionlist (sectiondef)+>
<!ELEMENT sectiondef (memberlist)>
<!ELEMENT sectiondef (memberdef|memberlist)*>
<!ATTLIST sectiondef %sec-req.att;>
<!ELEMENT memberlist (functiondef|variabledef|typedef|definedef|enumdef)+>
<!ELEMENT functiondef (type?,name,paramlist)>
<!ELEMENT functiondef (type?,name,parameterlist)>
<!ATTLIST functiondef %mem-req.att; %func-opt.att;>
<!ELEMENT variabledef (type,name,array?,initializer?)>
<!ATTLIST variabledef %mem-req.att;>
<!ELEMENT parameterlist (title|parametername|parameterdescription)*>
<!ATTLIST parameterlist kind (param|retval|exception) #REQUIRED>
<!ELEMENT param (attributes?,type?,declname?,defname?,array?,defval?)>
<!ELEMENT parametername (#PCDATA)>
<!ELEMENT parameterdescription (#PCDATA|para)*>
<!ELEMENT defparameterlist (defarg)*>
<!ELEMENT defarg (#PCDATA)>
<!--
Programming language declaration related entities and elements
-->
<!ELEMENT name (#PCDATA)>
<!ELEMENT typedef (type,name)>
<!ATTLIST typedef %mem-req.att;>
<!ELEMENT definedef (name,defparamlist?,initializer?)>
<!ELEMENT definedef (name,defparameterlist?,initializer?)>
<!ATTLIST definedef %mem-req.att;>
<!ELEMENT enumdef (name,enumvaluelist)>
<!ATTLIST enumdef %mem-req.att;>
<!ELEMENT slotdef (type,name,paramlist)>
<!ELEMENT slotdef (type,name,parameterlist)>
<!ATTLIST slotdef %mem-req.att;>
<!ELEMENT signaldef (type,name,paramlist)>
<!ELEMENT signaldef (type,name,parameterlist)>
<!ATTLIST signaldef %mem-req.att;>
<!ELEMENT paramlist (param)*>
<!ELEMENT param (attributes?,type,declname?,defname?,array?,defval?)>
<!ELEMENT defparamlist (defarg)*>
<!ELEMENT defarg (#PCDATA)>
<!ELEMENT enumvaluelist (enumvalue)*>
<!ELEMENT enumvalue (name,initializer?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT compoundname (#PCDATA)>
<!ELEMENT declname (#PCDATA)>
<!ELEMENT defname (#PCDATA)>
<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef)*>
<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef|ref)*>
<!ELEMENT defval (#PCDATA|memberref|compoundref)*>
<!ELEMENT initializer (#PCDATA|memberref|compoundref)*>
<!ELEMENT initializer (#PCDATA|memberref|compoundref|ref)*>
<!ELEMENT array (#PCDATA)>
<!ELEMENT attributes (#PCDATA)>
<!--
Graph related entities and elements
-->
<!ELEMENT collaborationgraph (node)*>
<!ELEMENT inheritancegraph (node)*>
<!ELEMENT node (label|link|childnode)*>
<!ATTLIST node id CDATA #REQUIRED>
<!ELEMENT childnode (edgelabel)*>
<!ATTLIST childnode id CDATA #REQUIRED relation CDATA #REQUIRED>
<!ELEMENT label (#PCDATA)>
<!ELEMENT link EMPTY>
<!ATTLIST link id CDATA #REQUIRED>
<!ELEMENT edgelabel (#PCDATA)>
<!--
Source code listing related entities and elements
-->
<!ELEMENT codeline (#PCDATA|highlight|ref)*>
<!ELEMENT linenumber (#PCDATA|anchor)*>
<!ATTLIST linenumber line CDATA #IMPLIED refid CDATA #IMPLIED>
<!ELEMENT sourcecode (linenumber|codeline|highlight|ref)*>
<!ELEMENT itemizedlist (listitem)*>
<!ELEMENT listitem (#PCDATA|para)*>
<!ELEMENT programlisting (#PCDATA|linenumber|codeline|linebreak|highlight)*>
<!--
Hypertext related entities and elements
-->
<!ELEMENT ulink (#PCDATA)>
<!ATTLIST ulink url CDATA #REQUIRED>
<!ELEMENT anchor (ref)>
<!ATTLIST anchor id CDATA #REQUIRED>
<!ELEMENT ref (#PCDATA)>
<!ATTLIST ref idref CDATA #REQUIRED anchor CDATA #IMPLIED>
<!--
Documentation layout entities and elements
-->
<!--ELEMENT highlight (#PCDATA|ref)*-->
<!ELEMENT highlight ANY>
<!ATTLIST highlight class (preprocessor|keyword|keywordtype|keywordflow|stringliteral|charliteral|comment) #REQUIRED>
<!ELEMENT linebreak EMPTY>
<!--ELEMENT simplesect (title|para)*-->
<!ELEMENT simplesect ANY>
<!ATTLIST simplesect kind (see|return|author|version|since|date|bug|note|warning|par|deprecated|pre|post|invariant|remark|attention|todo|test|rcs|enumvalues|examples) #REQUIRED>
<!--ELEMENT computeroutput (#PCDATA)-->
<!ELEMENT computeroutput ANY>
<!--ELEMENT emphasis (#PCDATA|ref)*-->
<!ELEMENT emphasis ANY>
<!--ELEMENT title (#PCDATA|ref)*-->
<!ELEMENT title ANY>
<!--ELEMENT para (#PCDATA|computeroutput|ref|emphasis|parameterlist|simplesect|ulink|programlisting|itemizedlist|linebreak)*-->
<!ELEMENT para ANY>
addon/doxmlparser/include/doxmlintf.h
View file @
9d4d8095
...
...
@@ -22,7 +22,9 @@ class ILT_Text : public ILinkedText
class
ILT_Ref
:
public
ILinkedText
{
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
...
...
@@ -104,8 +106,8 @@ class IDoc
Para
,
// 0 -> IDocPara
Text
,
// 1 -> IDocText
MarkupModifier
,
// 2 -> IDocMarkupModifier
ItemizedList
,
// 3 -> IDocList
OrderedList
,
// 4 -> IDocList
ItemizedList
,
// 3 -> IDoc
Itemized
List
OrderedList
,
// 4 -> IDoc
Ordered
List
ListItem
,
// 5 -> IDocListItem
ParameterList
,
// 6 -> IDocParameterList
Parameter
,
// 7 -> IDocParameter
...
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
class
IDocMarkupModifier
:
public
IDoc
{
public
:
virtual
bool
enabled
()
const
=
0
;
virtual
int
markup
()
const
=
0
;
};
class
IDocItemizedList
:
public
IDoc
{
public
:
virtual
IDocIterator
*
elements
()
const
=
0
;
};
class
IDocList
:
public
IDoc
class
IDoc
Ordered
List
:
public
IDoc
{
public
:
virtual
IDocIterator
*
elements
()
const
=
0
;
};
class
IDocListItem
:
public
IDoc
{
public
:
virtual
IDocIterator
*
contents
()
const
=
0
;
};
class
IDocParameterList
:
public
IDoc
{
public
:
enum
Types
{
Param
,
RetVal
,
Exception
};
virtual
Types
listType
()
const
=
0
;
virtual
IDocIterator
*
params
()
const
=
0
;
};
class
IDocParameter
:
public
IDoc
{
public
:
virtual
QString
name
()
const
=
0
;
virtual
IDocPara
*
description
()
const
=
0
;
};
class
IDoc
SimpleSect
:
public
IDoc
class
IDoc
Title
:
public
IDoc
{
public
:
virtual
IDocIterator
*
title
()
const
=
0
;
};
class
IDoc
Title
:
public
IDoc
class
IDoc
SimpleSect
:
public
IDoc
{
public
:
virtual
IDocIterator
*
title
()
const
=
0
;
enum
Types
{
Invalid
=
0
,
See
,
Return
,
Author
,
Version
,
Since
,
Date
,
Bug
,
Note
,
Warning
,
Par
,
Deprecated
,
Pre
,
Post
,
Invar
,
Remark
,
Attention
,
Todo
,
Test
,
RCS
,
EnumValues
,
Examples
};
virtual
Types
sectionType
()
const
=
0
;
virtual
IDocTitle
*
title
()
const
=
0
;
virtual
IDocPara
*
description
()
const
=
0
;
};
class
IDocRef
:
public
IDoc
{
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
class
IDocVariableList
:
public
IDoc
...
...
addon/doxmlparser/src/compoundhandler.cpp
View file @
9d4d8095
...
...
@@ -111,7 +111,7 @@ void CompoundHandler::endCompoundName()
void
CompoundHandler
::
addSuperClass
(
const
QXmlAttributes
&
attrib
)
{
SuperClass
*
sc
=
new
SuperClass
(
attrib
.
value
(
"
idref
"
),
attrib
.
value
(
"
refid
"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"virt"
)
);
...
...
@@ -125,7 +125,7 @@ void CompoundHandler::addSuperClass(const QXmlAttributes& attrib)
void
CompoundHandler
::
addSubClass
(
const
QXmlAttributes
&
attrib
)
{
SubClass
*
sc
=
new
SubClass
(
attrib
.
value
(
"
idref
"
),
attrib
.
value
(
"
refid
"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"virt"
)
);
...
...
addon/doxmlparser/src/dochandler.cpp
View file @
9d4d8095
...
...
@@ -232,47 +232,85 @@ void ListItemHandler::startParagraph(const QXmlAttributes& attrib)
m_children
.
append
(
parHandler
);
}
IDocIterator
*
ListItemHandler
::
contents
()
const
{
return
new
ListItemIterator
(
*
this
);
}
//----------------------------------------------------------------------
// ListHandler
//
Ordered
ListHandler
//----------------------------------------------------------------------
ListHandler
::
ListHandler
(
Kind
k
,
IBaseHandler
*
parent
)
:
m_parent
(
parent
),
m_kind
(
k
)
OrderedListHandler
::
OrderedListHandler
(
IBaseHandler
*
parent
)
:
m_parent
(
parent
)
{
m_children
.
setAutoDelete
(
TRUE
);
const
char
*
endListName
=
0
;
switch
(
k
)
{
case
ItemizedList
:
endListName
=
"itemizedlist"
;
break
;
case
OrderedList
:
endListName
=
"orderedlist"
;
break
;
default
:
ASSERT
(
0
);
}
addEndHandler
(
endListName
,
this
,
&
ListHandler
::
endList
);
addEndHandler
(
"orderedlist"
,
this
,
&
OrderedListHandler
::
endOrderedList
);
addStartHandler
(
"listitem"
,
this
,
&
OrderedListHandler
::
startOrderedListItem
);
}
addStartHandler
(
"listitem"
,
this
,
&
ListHandler
::
startListItem
);
OrderedListHandler
::~
OrderedListHandler
()
{
}
void
OrderedListHandler
::
startOrderedList
(
const
QXmlAttributes
&
/*attrib*/
)
{
m_parent
->
setDelegate
(
this
);
}
ListHandler
::~
ListHandler
()
void
OrderedListHandler
::
endOrderedList
()
{
m_parent
->
setDelegate
(
0
);
}
void
ListHandler
::
startList
(
const
QXmlAttributes
&
/*attrib*/
)
void
OrderedListHandler
::
startOrderedListItem
(
const
QXmlAttributes
&
attrib
)
{
ListItemHandler
*
liHandler
=
new
ListItemHandler
(
this
);
liHandler
->
startListItem
(
attrib
);
m_children
.
append
(
liHandler
);
}
IDocIterator
*
OrderedListHandler
::
elements
()
const
{
return
new
OrderedListIterator
(
*
this
);
}
//----------------------------------------------------------------------
// ItemizedListHandler
//----------------------------------------------------------------------
ItemizedListHandler
::
ItemizedListHandler
(
IBaseHandler
*
parent
)
:
m_parent
(
parent
)
{
m_children
.
setAutoDelete
(
TRUE
);
addEndHandler
(
"itemizedlist"
,
this
,
&
ItemizedListHandler
::
endItemizedList
);
addStartHandler
(
"listitem"
,
this
,
&
ItemizedListHandler
::
startItemizedListItem
);
}
ItemizedListHandler
::~
ItemizedListHandler
()
{
}
void
ItemizedListHandler
::
startItemizedList
(
const
QXmlAttributes
&
/*attrib*/
)
{
m_parent
->
setDelegate
(
this
);
}
void
ListHandler
::
en
dList
()
void
ItemizedListHandler
::
endItemize
dList
()
{
m_parent
->
setDelegate
(
0
);
}
void
ListHandler
::
start
ListItem
(
const
QXmlAttributes
&
attrib
)
void
ItemizedListHandler
::
startItemized
ListItem
(
const
QXmlAttributes
&
attrib
)
{
ListItemHandler
*
liHandler
=
new
ListItemHandler
(
this
);
liHandler
->
startListItem
(
attrib
);
m_children
.
append
(
liHandler
);
}
IDocIterator
*
ItemizedListHandler
::
elements
()
const
{
return
new
ItemizedListIterator
(
*
this
);
}
//----------------------------------------------------------------------
// ParameterHandler
//----------------------------------------------------------------------
...
...
@@ -372,6 +410,11 @@ void ParameterListHandler::startParameterDescription(const QXmlAttributes& attri
m_curParam
->
startParameterDescription
(
attrib
);
}
IDocIterator
*
ParameterListHandler
::
params
()
const
{
return
new
ParameterListIterator
(
*
this
);
}
//----------------------------------------------------------------------
// LinkHandler
//----------------------------------------------------------------------
...
...
@@ -1116,6 +1159,8 @@ TableHandler::TableHandler(IBaseHandler *parent)
m_children
.
setAutoDelete
(
TRUE
);
addEndHandler
(
"table"
,
this
,
&
TableHandler
::
endTable
);
addStartHandler
(
"row"
,
this
,
&
TableHandler
::
startRow
);
addStartHandler
(
"caption"
,
this
,
&
TableHandler
::
startCaption
);
addEndHandler
(
"caption"
,
this
,
&
TableHandler
::
endCaption
);
}
TableHandler
::~
TableHandler
()
...
...
@@ -1141,6 +1186,16 @@ void TableHandler::startRow(const QXmlAttributes& attrib)
m_children
.
append
(
rh
);
}
void
TableHandler
::
startCaption
(
const
QXmlAttributes
&
/*attrib*/
)
{
m_curString
=
""
;
}
void
TableHandler
::
endCaption
()
{
m_caption
=
m_curString
;
}
//----------------------------------------------------------------------
// ParagraphHandler
//----------------------------------------------------------------------
...
...
@@ -1195,16 +1250,16 @@ void ParagraphHandler::endParagraph()
void
ParagraphHandler
::
startItemizedList
(
const
QXmlAttributes
&
attrib
)
{
addTextNode
();
ListHandler
*
listHandler
=
new
ListHandler
(
ItemizedList
,
this
);
listHandler
->
startList
(
attrib
);
ItemizedListHandler
*
listHandler
=
new
ItemizedListHandler
(
this
);
listHandler
->
start
Itemized
List
(
attrib
);
m_children
.
append
(
listHandler
);
}
void
ParagraphHandler
::
startOrderedList
(
const
QXmlAttributes
&
attrib
)
{
addTextNode
();
ListHandler
*
listHandler
=
new
ListHandler
(
OrderedList
,
this
);
listHandler
->
startList
(
attrib
);
OrderedListHandler
*
listHandler
=
new
OrderedListHandler
(
this
);
listHandler
->
start
Ordered
List
(
attrib
);
m_children
.
append
(
listHandler
);
}
...
...
addon/doxmlparser/src/dochandler.h
View file @
9d4d8095
...
...
@@ -63,6 +63,8 @@ class MarkupModifierNode : public IDocMarkupModifier
// IDocMarkupModifier
virtual
Kind
kind
()
const
{
return
MarkupModifier
;
}
virtual
bool
enabled
()
const
{
return
m_enabled
;
}
virtual
int
markup
()
const
{
return
m_markup
;
}
private
:
int
m_markup
;
...
...
@@ -106,6 +108,59 @@ class MarkupHandler : public BaseFallBackHandler<MarkupHandler>
int
m_curMarkup
;
};
//-----------------------------------------------------------------------------
/*! \brief Node representing a paragraph of text and commands.
*
*/
// children: itemizedlist, orderedlist, parameterlist, simplesect, ref,
// variablelist, hruler, linebreak, ulink, email, link
// programlisting, formula, image, dotfile, indexentry,
// table
//
// children handled by MarkupHandler:
// bold, computeroutput, emphasis, center,
// small, subscript, superscript.
//
class
ParagraphHandler
:
public
IDocPara
,
public
BaseHandler
<
ParagraphHandler
>
{
friend
class
ParagraphIterator
;
public
:
virtual
void
startParagraph
(
const
QXmlAttributes
&
attrib
);
virtual
void
endParagraph
();
virtual
void
startItemizedList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startOrderedList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startParameterList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startSimpleSect
(
const
QXmlAttributes
&
attrib
);
virtual
void
startRef
(
const
QXmlAttributes
&
attrib
);
virtual
void
startVariableList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startHRuler
(
const
QXmlAttributes
&
attrib
);
virtual
void
startLineBreak
(
const
QXmlAttributes
&
attrib
);
virtual
void
startULink
(
const
QXmlAttributes
&
attrib
);
virtual
void
startEMail
(
const
QXmlAttributes
&
attrib
);
virtual
void
startLink
(
const
QXmlAttributes
&
attrib
);
virtual
void
startProgramListing
(
const
QXmlAttributes
&
attrib
);
virtual
void
startFormula
(
const
QXmlAttributes
&
attrib
);
virtual
void
startImage
(
const
QXmlAttributes
&
attrib
);
virtual
void
startDotFile
(
const
QXmlAttributes
&
attrib
);
virtual
void
startIndexEntry
(
const
QXmlAttributes
&
attrib
);
virtual
void
startTable
(
const
QXmlAttributes
&
attrib
);
ParagraphHandler
(
IBaseHandler
*
parent
);
virtual
~
ParagraphHandler
();
// IDocPara
virtual
Kind
kind
()
const
{
return
Para
;
}
virtual
IDocIterator
*
contents
()
const
;
private
:
void
addTextNode
();
IBaseHandler
*
m_parent
;
QList
<
IDoc
>
m_children
;
MarkupHandler
*
m_markupHandler
;
};
//-----------------------------------------------------------------------------
...
...
@@ -114,6 +169,7 @@ class MarkupHandler : public BaseFallBackHandler<MarkupHandler>
*/
class
ListItemHandler
:
public
IDocListItem
,
public
BaseHandler
<
ListItemHandler
>
{
friend
class
ListItemIterator
;
public
:
ListItemHandler
(
IBaseHandler
*
parent
);
virtual
~
ListItemHandler
();
...
...
@@ -123,39 +179,86 @@ class ListItemHandler : public IDocListItem, public BaseHandler<ListItemHandler>
// IDocItem
virtual
Kind
kind
()
const
{
return
ListItem
;
}
virtual
IDocIterator
*
contents
()
const
;
private
:
IBaseHandler
*
m_parent
;
QList
<
IDoc
>
m_children
;
};
class
ListItemIterator
:
public
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
{
public
:
ListItemIterator
(
const
ListItemHandler
&
handler
)
:
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
(
handler
.
m_children
)
{}
};
//-----------------------------------------------------------------------------
/*! \brief Node representing list of items.
*
*/
class
ListHandler
:
public
IDocList
,
public
BaseHandler
<
ListHandler
>
class
OrderedListHandler
:
public
IDocOrderedList
,
public
BaseHandler
<
Ordered
ListHandler
>
{
friend
class
OrderedListIterator
;
public
:
ListHandler
(
Kind
k
,
IBaseHandler
*
parent
);
virtual
~
ListHandler
();
virtual
void
startList
(
const
QXmlAttributes
&
attrib
);
virtual
void
endList
();
virtual
void
startListItem
(
const
QXmlAttributes
&
attrib
);
OrderedListHandler
(
IBaseHandler
*
parent
);
virtual
~
Ordered
ListHandler
();
virtual
void
start
Ordered
List
(
const
QXmlAttributes
&
attrib
);
virtual
void
end
Ordered
List
();
virtual
void
start
Ordered
ListItem
(
const
QXmlAttributes
&
attrib
);
// IDocList
virtual
Kind
kind
()
const
{
return
m_kind
;
}
// IDocOrderedList
virtual
Kind
kind
()
const
{
return
OrderedList
;
}
virtual
IDocIterator
*
elements
()
const
;
private
:
IBaseHandler
*
m_parent
;
QList
<
IDoc
>
m_children
;
Kind
m_kind
;
};
class
OrderedListIterator
:
public
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
{
public
:
OrderedListIterator
(
const
OrderedListHandler
&
handler
)
:
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
(
handler
.
m_children
)
{}
};
//-----------------------------------------------------------------------------
/*! \brief Node representing list of items.
*
*/
class
ItemizedListHandler
:
public
IDocItemizedList
,
public
BaseHandler
<
ItemizedListHandler
>
{
friend
class
ItemizedListIterator
;
public
:
ItemizedListHandler
(
IBaseHandler
*
parent
);
virtual
~
ItemizedListHandler
();
virtual
void
startItemizedList
(
const
QXmlAttributes
&
attrib
);
virtual
void
endItemizedList
();
virtual
void
startItemizedListItem
(
const
QXmlAttributes
&
attrib
);
// IDocItemizedList
virtual
Kind
kind
()
const
{
return
ItemizedList
;
}
virtual
IDocIterator
*
elements
()
const
;
private
:
IBaseHandler
*
m_parent
;
QList
<
IDoc
>
m_children
;
};
class
ItemizedListIterator
:
public
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
{
public
:
ItemizedListIterator
(
const
ItemizedListHandler
&
handler
)
:
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
(
handler
.
m_children
)
{}
};
//-----------------------------------------------------------------------------
/*! \brief Node representing a parameter.
*
*/
...
...
@@ -173,6 +276,8 @@ class ParameterHandler : public IDocParameter,
// IDocParameter
virtual
Kind
kind
()
const
{
return
Parameter
;
}
virtual
QString
name
()
const
{
return
m_name
;
}
virtual
IDocPara
*
description
()
const
{
return
m_description
;
}
private
:
IBaseHandler
*
m_parent
;
...
...
@@ -180,17 +285,16 @@ class ParameterHandler : public IDocParameter,
ParagraphHandler
*
m_description
;
};
//-----------------------------------------------------------------------------
/* \brief Node representing a parameter list.
*
*/
class
ParameterListHandler
:
public
IDocParameter
,
class
ParameterListHandler
:
public
IDocParameter
List
,
public
BaseHandler
<
ParameterListHandler
>
{
friend
class
ParameterListIterator
;
public
:
enum
Types
{
Param
,
RetVal
,
Exception
};
ParameterListHandler
(
IBaseHandler
*
parent
);
virtual
~
ParameterListHandler
();
virtual
void
startParameterList
(
const
QXmlAttributes
&
attrib
);
...
...
@@ -200,6 +304,8 @@ class ParameterListHandler : public IDocParameter,
// IDocParameterList
virtual
Kind
kind
()
const
{
return
ParameterList
;
}
virtual
Types
listType
()
const
{
return
m_type
;
}
virtual
IDocIterator
*
params
()
const
;
private
:
IBaseHandler
*
m_parent
;
...
...
@@ -208,6 +314,13 @@ class ParameterListHandler : public IDocParameter,
Types
m_type
;
};
class
ParameterListIterator
:
public
BaseIterator
<
IDocIterator
,
IDoc
,
ParameterHandler
>
{
public
:
ParameterListIterator
(
const
ParameterListHandler
&
handler
)
:
BaseIterator
<
IDocIterator
,
IDoc
,
ParameterHandler
>
(
handler
.
m_parameters
)
{}
};
//-----------------------------------------------------------------------------
/* \brief Node representing a horizontal ruler
...
...
@@ -335,11 +448,11 @@ class RefHandler : public IDocRef, public BaseHandler<RefHandler>
// IDocRef
virtual
Kind
kind
()
const
{
return
Ref
;
}
virtual
QString
refId
()
const
{
return
m_refId
;
}
private
:
IBaseHandler
*
m_parent
;
QString
m_refId
;
QString
m_anchor
;
QString
m_linkText
;
};
...
...
@@ -390,14 +503,6 @@ class SimpleSectHandler : public IDocSimpleSect,
public
BaseHandler
<
SimpleSectHandler
>
{
public
:
enum
Types
{
Invalid
=
0
,
See
,
Return
,
Author
,
Version
,
Since
,
Date
,
Bug
,
Note
,
Warning
,
Par
,
Deprecated
,
Pre
,
Post
,
Invar
,
Remark
,
Attention
,
Todo
,
Test
,
RCS
,
EnumValues
,
Examples
};
SimpleSectHandler
(
IBaseHandler
*
parent
);
virtual
~
SimpleSectHandler
();
virtual
void
startSimpleSect
(
const
QXmlAttributes
&
attrib
);
...
...
@@ -407,6 +512,9 @@ class SimpleSectHandler : public IDocSimpleSect,
// IDocSimpleSect
virtual
Kind
kind
()
const
{
return
SimpleSect
;
}
virtual
Types
sectionType
()
const
{
return
m_type
;
}
virtual
IDocTitle
*
title
()
const
{
return
m_title
;
}
virtual
IDocPara
*
description
()
const
{
return
m_paragraph
;
}
private
:
IBaseHandler
*
m_parent
;
...
...
@@ -697,7 +805,7 @@ class RowHandler : public IDocRow, public BaseHandler<RowHandler>
/*! \brief Node representing an entry in the table.
*
*/
// children: row
// children: row
, caption
class
TableHandler
:
public
IDocTable
,
public
BaseHandler
<
TableHandler
>
{
public
:
...
...
@@ -706,6 +814,8 @@ class TableHandler : public IDocTable, public BaseHandler<TableHandler>
void
startTable
(
const
QXmlAttributes
&
attrib
);
void
endTable
();
void
startRow
(
const
QXmlAttributes
&
attrib
);
void
startCaption
(
const
QXmlAttributes
&
attrib
);
void
endCaption
();
// IDocTable
virtual
Kind
kind
()
const
{
return
Table
;
}
...
...
@@ -714,62 +824,11 @@ class TableHandler : public IDocTable, public BaseHandler<TableHandler>
IBaseHandler
*
m_parent
;
QList
<
RowHandler
>
m_children
;
int
m_numColumns
;
QString
m_caption
;
};
//-----------------------------------------------------------------------------
/*! \brief Node representing a paragraph of text and commands.
*
*/
// children: itemizedlist, orderedlist, parameterlist, simplesect, ref,
// variablelist, hruler, linebreak, ulink, email, link
// programlisting, formula, image, dotfile, indexentry,
// table
//
// children handled by MarkupHandler:
// bold, computeroutput, emphasis, center,
// small, subscript, superscript.
//
class
ParagraphHandler
:
public
IDocPara
,
public
BaseHandler
<
ParagraphHandler
>
{
friend
class
ParagraphIterator
;
public
:
virtual
void
startParagraph
(
const
QXmlAttributes
&
attrib
);
virtual
void
endParagraph
();
virtual
void
startItemizedList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startOrderedList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startParameterList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startSimpleSect
(
const
QXmlAttributes
&
attrib
);
virtual
void
startRef
(
const
QXmlAttributes
&
attrib
);
virtual
void
startVariableList
(
const
QXmlAttributes
&
attrib
);
virtual
void
startHRuler
(
const
QXmlAttributes
&
attrib
);
virtual
void
startLineBreak
(
const
QXmlAttributes
&
attrib
);
virtual
void
startULink
(
const
QXmlAttributes
&
attrib
);
virtual
void
startEMail
(
const
QXmlAttributes
&
attrib
);
virtual
void
startLink
(
const
QXmlAttributes
&
attrib
);
virtual
void
startProgramListing
(
const
QXmlAttributes
&
attrib
);
virtual
void
startFormula
(
const
QXmlAttributes
&
attrib
);
virtual
void
startImage
(
const
QXmlAttributes
&
attrib
);
virtual
void
startDotFile
(
const
QXmlAttributes
&
attrib
);
virtual
void
startIndexEntry
(
const
QXmlAttributes
&
attrib
);
virtual
void
startTable
(
const
QXmlAttributes
&
attrib
);
ParagraphHandler
(
IBaseHandler
*
parent
);
virtual
~
ParagraphHandler
();
// IDocPara
virtual
Kind
kind
()
const
{
return
Para
;
}
virtual
IDocIterator
*
contents
()
const
;
private
:
void
addTextNode
();
IBaseHandler
*
m_parent
;
QList
<
IDoc
>
m_children
;
MarkupHandler
*
m_markupHandler
;
};
class
ParagraphIterator
:
public
BaseIterator
<
IDocIterator
,
IDoc
,
IDoc
>
{
public
:
...
...
addon/doxmlparser/src/doxmlintf.h
View file @
9d4d8095
...
...
@@ -22,7 +22,9 @@ class ILT_Text : public ILinkedText
class
ILT_Ref
:
public
ILinkedText
{
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
...
...
@@ -104,8 +106,8 @@ class IDoc
Para
,
// 0 -> IDocPara
Text
,
// 1 -> IDocText
MarkupModifier
,
// 2 -> IDocMarkupModifier
ItemizedList
,
// 3 -> IDocList
OrderedList
,
// 4 -> IDocList
ItemizedList
,
// 3 -> IDoc
Itemized
List
OrderedList
,
// 4 -> IDoc
Ordered
List
ListItem
,
// 5 -> IDocListItem
ParameterList
,
// 6 -> IDocParameterList
Parameter
,
// 7 -> IDocParameter
...
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
class
IDocMarkupModifier
:
public
IDoc
{
public
:
virtual
bool
enabled
()
const
=
0
;
virtual
int
markup
()
const
=
0
;
};
class
IDocItemizedList
:
public
IDoc
{
public
:
virtual
IDocIterator
*
elements
()
const
=
0
;
};
class
IDocList
:
public
IDoc
class
IDoc
Ordered
List
:
public
IDoc
{
public
:
virtual
IDocIterator
*
elements
()
const
=
0
;
};
class
IDocListItem
:
public
IDoc
{
public
:
virtual
IDocIterator
*
contents
()
const
=
0
;
};
class
IDocParameterList
:
public
IDoc
{
public
:
enum
Types
{
Param
,
RetVal
,
Exception
};
virtual
Types
listType
()
const
=
0
;
virtual
IDocIterator
*
params
()
const
=
0
;
};
class
IDocParameter
:
public
IDoc
{
public
:
virtual
QString
name
()
const
=
0
;
virtual
IDocPara
*
description
()
const
=
0
;
};
class
IDoc
SimpleSect
:
public
IDoc
class
IDoc
Title
:
public
IDoc
{
public
:
virtual
IDocIterator
*
title
()
const
=
0
;
};
class
IDoc
Title
:
public
IDoc
class
IDoc
SimpleSect
:
public
IDoc
{
public
:
virtual
IDocIterator
*
title
()
const
=
0
;
enum
Types
{
Invalid
=
0
,
See
,
Return
,
Author
,
Version
,
Since
,
Date
,
Bug
,
Note
,
Warning
,
Par
,
Deprecated
,
Pre
,
Post
,
Invar
,
Remark
,
Attention
,
Todo
,
Test
,
RCS
,
EnumValues
,
Examples
};
virtual
Types
sectionType
()
const
=
0
;
virtual
IDocTitle
*
title
()
const
=
0
;
virtual
IDocPara
*
description
()
const
=
0
;
};
class
IDocRef
:
public
IDoc
{
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
class
IDocVariableList
:
public
IDoc
...
...
addon/doxmlparser/src/linkedtexthandler.cpp
View file @
9d4d8095
...
...
@@ -36,10 +36,12 @@ class LT_Ref : public ILT_Ref
void
setRefId
(
const
QString
&
refId
)
{
m_refId
=
refId
;
}
void
setText
(
const
QString
&
text
)
{
m_text
=
text
;
}
void
setExtId
(
const
QString
&
extId
)
{
m_extId
=
extId
;
}
void
setTargetKind
(
TargetKind
k
)
{
m_targetKind
=
k
;
}
// ILT_Ref
virtual
QString
text
()
const
{
return
m_text
;
}
virtual
QString
id
()
const
{
return
m_refId
;
}
virtual
TargetKind
targetKind
()
const
{
return
m_targetKind
;
}
virtual
QString
external
()
const
{
return
m_extId
;
}
virtual
Kind
kind
()
const
{
return
Kind_Ref
;
}
...
...
@@ -47,6 +49,7 @@ class LT_Ref : public ILT_Ref
QString
m_refId
;
QString
m_extId
;
QString
m_text
;
TargetKind
m_targetKind
;
};
LinkedTextHandler
::
LinkedTextHandler
(
IBaseHandler
*
parent
,
...
...
@@ -92,8 +95,10 @@ void LinkedTextHandler::startRef(const QXmlAttributes& attrib)
}
ASSERT
(
m_ref
==
0
);
m_ref
=
new
LT_Ref
;
m_ref
->
setRefId
(
attrib
.
value
(
"
idref
"
));
m_ref
->
setRefId
(
attrib
.
value
(
"
refid
"
));
m_ref
->
setExtId
(
attrib
.
value
(
"external"
));
ASSERT
(
attrib
.
value
(
"kindref"
)
==
"compound"
||
attrib
.
value
(
"kindref"
)
==
"member"
);
m_ref
->
setTargetKind
(
attrib
.
value
(
"kindref"
)
==
"compound"
?
Compound
:
Member
);
}
void
LinkedTextHandler
::
endRef
()
...
...
addon/doxmlparser/test/main.cpp
View file @
9d4d8095
...
...
@@ -60,6 +60,90 @@ void DumpDoc(IDoc *doc)
printf
(
" --- text `%s' markup=%d ---
\n
"
,
txt
->
text
().
data
(),
txt
->
markup
());
}
break
;
case
IDoc
:
:
MarkupModifier
:
{
IDocMarkupModifier
*
md
=
dynamic_cast
<
IDocMarkupModifier
*>
(
doc
);
ASSERT
(
md
!=
0
);
printf
(
" --- markup modifier enabled=%d markup=%d
\n
"
,
md
->
enabled
(),
md
->
markup
());
}
break
;
case
IDoc
:
:
ItemizedList
:
{
printf
(
" --- itemized list ---
\n
"
);
IDocItemizedList
*
list
=
dynamic_cast
<
IDocItemizedList
*>
(
doc
);
ASSERT
(
list
!=
0
);
IDocIterator
*
di
=
list
->
elements
();
IDoc
*
pdoc
;
for
(
di
->
toFirst
();(
pdoc
=
di
->
current
());
di
->
toNext
())
{
DumpDoc
(
pdoc
);
}
di
->
release
();
printf
(
" --- end itemized list ---
\n
"
);
}
break
;
case
IDoc
:
:
OrderedList
:
{
printf
(
" --- ordered list ---
\n
"
);
IDocOrderedList
*
list
=
dynamic_cast
<
IDocOrderedList
*>
(
doc
);
ASSERT
(
list
!=
0
);
IDocIterator
*
di
=
list
->
elements
();
IDoc
*
pdoc
;
for
(
di
->
toFirst
();(
pdoc
=
di
->
current
());
di
->
toNext
())
{
DumpDoc
(
pdoc
);
}
di
->
release
();
printf
(
" --- end ordered list ---
\n
"
);
}
break
;
case
IDoc
:
:
ListItem
:
{
printf
(
" --- list item ---
\n
"
);
IDocListItem
*
li
=
dynamic_cast
<
IDocListItem
*>
(
doc
);
ASSERT
(
li
!=
0
);
IDocIterator
*
di
=
li
->
contents
();
IDoc
*
pdoc
;
for
(
di
->
toFirst
();(
pdoc
=
di
->
current
());
di
->
toNext
())
{
DumpDoc
(
pdoc
);
}
di
->
release
();
printf
(
" --- end list item ---
\n
"
);
}
break
;
case
IDoc
:
:
ParameterList
:
{
IDocParameterList
*
list
=
dynamic_cast
<
IDocParameterList
*>
(
doc
);
printf
(
" --- parameter list type=%d ---
\n
"
,
list
->
listType
());
IDocListItem
*
li
=
dynamic_cast
<
IDocListItem
*>
(
doc
);
ASSERT
(
li
!=
0
);
IDocIterator
*
di
=
li
->
contents
();
IDoc
*
pdoc
;
for
(
di
->
toFirst
();(
pdoc
=
di
->
current
());
di
->
toNext
())
{
DumpDoc
(
pdoc
);
}
di
->
release
();
printf
(
" --- parameter list item ---
\n
"
);
ASSERT
(
list
!=
0
);
}
break
;
case
IDoc
:
:
Parameter
:
{
IDocParameter
*
par
=
dynamic_cast
<
IDocParameter
*>
(
doc
);
ASSERT
(
par
!=
0
);
printf
(
" --- parameter name=%s ---
\n
"
,
par
->
name
().
data
());
DumpDoc
(
par
->
description
());
printf
(
" --- end parameter ---
\n
"
);
}
break
;
case
IDoc
:
:
SimpleSect
:
{
IDocSimpleSect
*
ss
=
dynamic_cast
<
IDocSimpleSect
*>
(
ss
);
ASSERT
(
ss
!=
0
);
}
break
;
case
IDoc
:
:
Title
:
{
printf
(
" --- title ---
\n
"
);
...
...
@@ -74,6 +158,120 @@ void DumpDoc(IDoc *doc)
printf
(
" --- end title ---
\n
"
);
}
break
;
case
IDoc
:
:
Ref
:
{
IDocRef
*
ref
=
dynamic_cast
<
IDocRef
*>
(
ref
);
ASSERT
(
ref
!=
0
);
}
break
;
case
IDoc
:
:
VariableList
:
{
IDocVariableList
*
vl
=
dynamic_cast
<
IDocVariableList
*>
(
vl
);
ASSERT
(
vl
!=
0
);
}
break
;
case
IDoc
:
:
VariableListEntry
:
{
IDocVariableListEntry
*
vle
=
dynamic_cast
<
IDocVariableListEntry
*>
(
vle
);
ASSERT
(
vle
!=
0
);
}
break
;
case
IDoc
:
:
HRuler
:
{
IDocHRuler
*
hr
=
dynamic_cast
<
IDocHRuler
*>
(
hr
);
ASSERT
(
hr
!=
0
);
}
break
;
case
IDoc
:
:
LineBreak
:
{
IDocLineBreak
*
lb
=
dynamic_cast
<
IDocLineBreak
*>
(
lb
);
ASSERT
(
lb
!=
0
);
}
break
;
case
IDoc
:
:
ULink
:
{
IDocULink
*
ul
=
dynamic_cast
<
IDocULink
*>
(
ul
);
ASSERT
(
ul
!=
0
);
}
break
;
case
IDoc
:
:
EMail
:
{
IDocEMail
*
em
=
dynamic_cast
<
IDocEMail
*>
(
em
);
ASSERT
(
em
!=
0
);
}
break
;
case
IDoc
:
:
Link
:
{
IDocLink
*
lk
=
dynamic_cast
<
IDocLink
*>
(
lk
);
ASSERT
(
lk
!=
0
);
}
break
;
case
IDoc
:
:
ProgramListing
:
{
IDocProgramListing
*
pl
=
dynamic_cast
<
IDocProgramListing
*>
(
pl
);
ASSERT
(
pl
!=
0
);
}
break
;
case
IDoc
:
:
CodeLine
:
{
IDocCodeLine
*
cl
=
dynamic_cast
<
IDocCodeLine
*>
(
cl
);
ASSERT
(
cl
!=
0
);
}
break
;
case
IDoc
:
:
Highlight
:
{
IDocHighlight
*
hl
=
dynamic_cast
<
IDocHighlight
*>
(
hl
);
ASSERT
(
hl
!=
0
);
}
break
;
case
IDoc
:
:
Anchor
:
{
IDocAnchor
*
anc
=
dynamic_cast
<
IDocAnchor
*>
(
anc
);
ASSERT
(
anc
!=
0
);
}
break
;
case
IDoc
:
:
Formula
:
{
IDocFormula
*
fm
=
dynamic_cast
<
IDocFormula
*>
(
fm
);
ASSERT
(
fm
!=
0
);
}
break
;
case
IDoc
:
:
Image
:
{
IDocImage
*
img
=
dynamic_cast
<
IDocImage
*>
(
img
);
ASSERT
(
img
!=
0
);
}
break
;
case
IDoc
:
:
DotFile
:
{
IDocDotFile
*
df
=
dynamic_cast
<
IDocDotFile
*>
(
df
);
ASSERT
(
df
!=
0
);
}
break
;
case
IDoc
:
:
IndexEntry
:
{
IDocIndexEntry
*
ie
=
dynamic_cast
<
IDocIndexEntry
*>
(
ie
);
ASSERT
(
ie
!=
0
);
}
break
;
case
IDoc
:
:
Table
:
{
IDocTable
*
tbl
=
dynamic_cast
<
IDocTable
*>
(
tbl
);
ASSERT
(
tbl
!=
0
);
}
break
;
case
IDoc
:
:
Row
:
{
IDocRow
*
row
=
dynamic_cast
<
IDocRow
*>
(
row
);
ASSERT
(
row
!=
0
);
}
break
;
case
IDoc
:
:
Entry
:
{
IDocEntry
*
ent
=
dynamic_cast
<
IDocEntry
*>
(
ent
);
ASSERT
(
ent
!=
0
);
}
break
;
case
IDoc
:
:
Section
:
{
IDocSection
*
sec
=
dynamic_cast
<
IDocSection
*>
(
doc
);
...
...
addon/doxywizard/Makefile.in
View file @
9d4d8095
...
...
@@ -10,9 +10,15 @@
# See the GNU General Public License for more details.
#
all
:
Makefile.doxywizard
all
:
config.h config.l
Makefile.doxywizard
$(MAKE)
-f
Makefile.doxywizard
$@
config.h
:
$(CP)
../../src/config.h config.h
config.l
:
$(CP)
../../src/config.l config.l
Makefile.doxywizard
:
doxywizard.pro
$(ENV)
$(PERL)
$(TMAKE)
doxywizard.pro
>
Makefile.doxywizard
...
...
@@ -21,9 +27,10 @@ tmake:
clean
:
Makefile.doxywizard
$(MAKE)
-f
Makefile.doxywizard clean
$(RM)
config.cpp
distclean
:
clean
$(RM)
Makefile.doxywizard
$(RM)
Makefile.doxywizard
config.l config.h
install
:
$(INSTTOOL)
-d
$(INSTALL)
/bin
...
...
addon/doxywizard/Makefile.win_nmake.in
View file @
9d4d8095
...
...
@@ -30,8 +30,9 @@ tmake:
clean
:
Makefile.doxywizard
$(MAKE)
-f
Makefile.doxywizard clean
$(RM)
config.cpp
distclean
:
clean
$(RM)
Makefile.doxywizard config.
cpp
$(RM)
Makefile.doxywizard config.
l config.h
FORCE
:
addon/doxywizard/doxywizard.cpp
View file @
9d4d8095
...
...
@@ -179,7 +179,7 @@ void Wizard::newFile()
if
(
hasChanged
)
{
switch
(
QMessageBox
::
warning
(
this
,
"DoxyWizard"
,
"Start a new file and lose changes?
\n
"
,
"Start a new file and lose changes?"
,
"Yes"
,
"No"
,
0
,
0
,
1
))
{
case
0
:
...
...
@@ -219,7 +219,7 @@ void Wizard::loadFile()
if
(
hasChanged
)
{
switch
(
QMessageBox
::
warning
(
this
,
"DoxyWizard"
,
"Load a new file and lose changes?
\n
"
,
this
,
"DoxyWizard"
,
"Load a new file and lose changes?"
,
"Yes"
,
"No"
,
0
,
0
,
1
))
{
case
0
:
...
...
@@ -278,7 +278,7 @@ void Wizard::quit()
{
if
(
hasChanged
)
{
switch
(
QMessageBox
::
warning
(
this
,
"DoxyWizard"
,
"Quit and lose changes?
\n
"
,
switch
(
QMessageBox
::
warning
(
this
,
"DoxyWizard"
,
"Quit and lose changes?"
,
"Yes"
,
"No"
,
0
,
0
,
1
))
{
case
0
:
...
...
addon/doxywizard/doxywizard.pro.in
View file @
9d4d8095
...
...
@@ -12,8 +12,7 @@
# project file for the doxywizard project
# special template configuration file because we use flex
unix:TEMPLATE = app.t
win32:TEMPLATE = doxywizard.t
TEMPLATE = doxywizard.t
# executable to generate
TARGET = ../../bin/doxywizard
...
...
@@ -29,8 +28,8 @@ HEADERS = doxywizard.h \
inputbool.h \
inputstrlist.h \
inputint.h \
pixmaps.h
win32:HEADERS +=
config.h
pixmaps.h
\
config.h
# source flle for the project
SOURCES = doxywizard.cpp \
...
...
@@ -40,8 +39,8 @@ SOURCES = doxywizard.cpp \
inputbool.cpp \
inputstrlist.cpp \
inputint.cpp \
pixmaps.cpp
win32:SOURCES +=
config.cpp
pixmaps.cpp
\
config.cpp
# where to put the objects
OBJECTS_DIR = obj
...
...
@@ -57,5 +56,4 @@ win32:INCLUDEPATH += .
# extra link options
win32:TMAKE_LIBS = $(QTDIR)\lib\qtmain.lib $(QTDIR)\lib\qt-mt230nc.lib user32.lib gdi32.lib comdlg32.lib imm32.lib ole32.lib uuid.lib wsock32.lib
win32:TMAKE_LIBS_QT =
unix:LIBS = -L../../lib -ldoxycfg
configure
View file @
9d4d8095
...
...
@@ -139,6 +139,9 @@ if test -z "$f_platform"; then
dgux:
*
)
f_platform
=
dgux-g++
;;
Darwin:
*
)
f_platform
=
macosx-c++
;;
FreeBSD:
*
)
f_platform
=
freebsd-g++
;;
...
...
@@ -290,10 +293,13 @@ fi
if
test
"
$f_insttool
"
=
NO
;
then
if
test
"
$install_found
"
=
YES
;
then
echo
"GNU version of install is required!"
echo
;
else
echo
"not found!"
;
echo
fi
echo
"GNU version of install is required: this is part of the fileutils package: "
echo
"see http://www.gnu.org/software/fileutils/fileutils.html"
echo
exit
2
fi
...
...
doc/htmlcmds.doc
View file @
9d4d8095
...
...
@@ -31,6 +31,8 @@ documentation. Note that all attributes of a HTML tag are ignored
<li>\c <BR> Forces a line break.
<li>\c <CENTER> starts a section of centered text.
<li>\c </CENTER> ends a section of centered text.
<li>\c <CAPTION> Starts a caption. Use within a table only.
<li>\c </CAPTION> Ends a caption. Use within a table only.
<li>\c <CODE> Starts a piece of text displayed in a typewriter font.
<li>\c </CODE> End a \c <CODE> section.
<li>\c <DD> Starts an item description.
...
...
doc/language.doc
View file @
9d4d8095
...
...
@@ -25,7 +25,7 @@ Doxygen has built-in support for multiple languages. This means
that the text fragments that doxygen generates can be produced in
languages other than English (the default) at configuration time.
Currently (version 1.2.13), 25 languages
Currently (version 1.2.13
.1
), 25 languages
are supported (sorted alphabetically):
Brazilian Portuguese, Chinese, Croatian, Czech, Danish,
Dutch, English, Finnish, French, German,
...
...
@@ -130,9 +130,9 @@ when the translator was updated.
</TR>
<TR BGCOLOR="#ffffff">
<TD>Japanese</TD>
<TD>Kenji Nagamatsu</TD>
<TD>naga@NOSPAM.joyful.club.ne.jp</TD>
<TD>
1.2.5
</TD>
<TD>
Ryunosuke Sato<br>
Kenji Nagamatsu</TD>
<TD>
puyo@NOSPAM.mint.freemail.ne.jp<br>
naga@NOSPAM.joyful.club.ne.jp</TD>
<TD>
up-to-date
</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Korean</TD>
...
...
@@ -173,8 +173,8 @@ when the translator was updated.
<TR BGCOLOR="#ffffff">
<TD>Slovak</TD>
<TD>Stanislav Kudláč</TD>
<TD>
qwerty1
@NOSPAM.pobox.sk</TD>
<TD>
1.2.11
</TD>
<TD>
skudlac
@NOSPAM.pobox.sk</TD>
<TD>
up-to-date
</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD>Slovene</TD>
...
...
@@ -240,7 +240,8 @@ when the translator was updated.
Italian & Alessandro Falappa & {\tt alessandro@falappa.net} & up-to-date \\
& Ahmed Aldo Faisal & {\tt aaf23@cam.ac.uk} & \\
\hline
Japanese & Kenji Nagamatsu & {\tt naga@joyful.club.ne.jp} & 1.2.5 \\
Japanese & Ryunosuke Sato & {\tt puyo@mint.freemail.ne.jp} & up-to-date \\
& Kenji Nagamatsu & {\tt naga@joyful.club.ne.jp} & \\
\hline
Korean & Richard Kim & {\tt ryk@dspwiz.com} & up-to-date \\
\hline
...
...
@@ -254,7 +255,7 @@ when the translator was updated.
\hline
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & up-to-date \\
\hline
Slovak & Stanislav Kudl\'{a}\v{c} & {\tt
qwerty1@pobox.sk} & 1.2.11
\\
Slovak & Stanislav Kudl\'{a}\v{c} & {\tt
skudlac@pobox.sk} & up-to-date
\\
\hline
Slovene & Matjaz Ostroversnik & {\tt matjaz.ostroversnik@zrs-tk.si} & up-to-date \\
\hline
...
...
doc/lists.doc
View file @
9d4d8095
...
...
@@ -41,6 +41,35 @@ Doxygen has a number of ways to create lists of items.
If you use tabs within lists, please make sure that \ref cfg_tab_size "TAB_SIZE" in the
configuration file is set to the correct tab size.
You can end a list by starting a new paragraph or
by putting a dot (.) on an empty line at the same indent level as the
list you would like to end.
Here is an example that speaks for itself:
\verbatim
/**
* Text before the list
* - list item 1
* - sub item 1
* - sub sub item 1
* - sub sub item 2
* .
* The dot above ends the sub sub item list.
* More text for the first sub item
* .
* The dot above ends the first sub item.
* More text for the first list item
* - sub item 2
* - sub item 3
* - list item 2
* .
* More text in the same paragraph.
*
* More text in a new paragraph.
*/
\endverbatim
<b>Using HTML commands</b>
If you like you can also use HTML commands inside the documentation
...
...
doc/maintainers.txt
View file @
9d4d8095
...
...
@@ -44,6 +44,7 @@ Alessandro Falappa: alessandro@falappa.net
Ahmed Aldo Faisal: aaf23@cam.ac.uk
Japanese
Ryunosuke Sato: puyo@mint.freemail.ne.jp
Kenji Nagamatsu: naga@joyful.club.ne.jp
Korean
...
...
@@ -65,7 +66,7 @@ Russian
Alexandr Chelpanov: cav@cryptopro.ru
Slovak
Stanislav Kudláč:
qwerty1
@pobox.sk
Stanislav Kudláč:
skudlac
@pobox.sk
Slovene
Matjaz Ostroversnik: matjaz.ostroversnik@zrs-tk.si
...
...
packages/rpm/doxygen.spec
View file @
9d4d8095
Name: doxygen
Version: 1.2.13
Version: 1.2.13
.1
Summary: documentation system for C, C++ and IDL
Release: 4
Source: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
9d4d8095
...
...
@@ -156,29 +156,29 @@ void ClassDef::insertSubClass(ClassDef *cd,Protection p,
void
ClassDef
::
addMembersToMemberGroup
()
{
::
addMembersToMemberGroup
(
&
pubTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
signals
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
friends
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
related
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
properties
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
signals
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
friends
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
related
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
properties
,
memberGroupSDict
,
this
);
}
// adds new member definition to the class
...
...
@@ -197,12 +197,12 @@ void ClassDef::internalInsertMember(MemberDef *md,
(
Config_getBool
(
"EXTRACT_PRIVATE"
)
||
prot
!=
Private
))
{
related
.
append
(
md
);
md
->
setSectionList
(
&
related
);
md
->
setSectionList
(
this
,
&
related
);
}
else
if
(
md
->
isFriend
())
{
friends
.
append
(
md
);
md
->
setSectionList
(
&
friends
);
md
->
setSectionList
(
this
,
&
friends
);
}
else
{
...
...
@@ -210,30 +210,30 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
MemberDef
:
:
Signal
:
// Qt specific
signals
.
append
(
md
);
md
->
setSectionList
(
&
signals
);
md
->
setSectionList
(
this
,
&
signals
);
break
;
case
MemberDef
:
:
DCOP
:
// KDE2 specific
dcopMethods
.
append
(
md
);
md
->
setSectionList
(
&
dcopMethods
);
md
->
setSectionList
(
this
,
&
dcopMethods
);
break
;
case
MemberDef
:
:
Property
:
properties
.
append
(
md
);
md
->
setSectionList
(
&
properties
);
md
->
setSectionList
(
this
,
&
properties
);
break
;
case
MemberDef
:
:
Slot
:
// Qt specific
switch
(
prot
)
{
case
Protected
:
proSlots
.
append
(
md
);
md
->
setSectionList
(
&
proSlots
);
md
->
setSectionList
(
this
,
&
proSlots
);
break
;
case
Public
:
pubSlots
.
append
(
md
);
md
->
setSectionList
(
&
pubSlots
);
md
->
setSectionList
(
this
,
&
pubSlots
);
break
;
case
Private
:
priSlots
.
append
(
md
);
md
->
setSectionList
(
&
priSlots
);
md
->
setSectionList
(
this
,
&
priSlots
);
break
;
}
break
;
...
...
@@ -246,15 +246,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
Protected
:
proStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
proStaticAttribs
);
md
->
setSectionList
(
this
,
&
proStaticAttribs
);
break
;
case
Public
:
pubStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
pubStaticAttribs
);
md
->
setSectionList
(
this
,
&
pubStaticAttribs
);
break
;
case
Private
:
priStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
priStaticAttribs
);
md
->
setSectionList
(
this
,
&
priStaticAttribs
);
break
;
}
}
...
...
@@ -264,15 +264,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
Protected
:
proStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
proStaticMembers
);
md
->
setSectionList
(
this
,
&
proStaticMembers
);
break
;
case
Public
:
pubStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
pubStaticMembers
);
md
->
setSectionList
(
this
,
&
pubStaticMembers
);
break
;
case
Private
:
priStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
priStaticMembers
);
md
->
setSectionList
(
this
,
&
priStaticMembers
);
break
;
}
}
...
...
@@ -285,15 +285,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
Protected
:
proAttribs
.
append
(
md
);
md
->
setSectionList
(
&
proAttribs
);
md
->
setSectionList
(
this
,
&
proAttribs
);
break
;
case
Public
:
pubAttribs
.
append
(
md
);
md
->
setSectionList
(
&
pubAttribs
);
md
->
setSectionList
(
this
,
&
pubAttribs
);
break
;
case
Private
:
priAttribs
.
append
(
md
);
md
->
setSectionList
(
&
priAttribs
);
md
->
setSectionList
(
this
,
&
priAttribs
);
break
;
}
}
...
...
@@ -303,15 +303,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
Protected
:
proTypes
.
append
(
md
);
md
->
setSectionList
(
&
proTypes
);
md
->
setSectionList
(
this
,
&
proTypes
);
break
;
case
Public
:
pubTypes
.
append
(
md
);
md
->
setSectionList
(
&
pubTypes
);
md
->
setSectionList
(
this
,
&
pubTypes
);
break
;
case
Private
:
priTypes
.
append
(
md
);
md
->
setSectionList
(
&
priTypes
);
md
->
setSectionList
(
this
,
&
priTypes
);
break
;
}
}
...
...
@@ -321,15 +321,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
case
Protected
:
proMembers
.
append
(
md
);
md
->
setSectionList
(
&
proMembers
);
md
->
setSectionList
(
this
,
&
proMembers
);
break
;
case
Public
:
pubMembers
.
append
(
md
);
md
->
setSectionList
(
&
pubMembers
);
md
->
setSectionList
(
this
,
&
pubMembers
);
break
;
case
Private
:
priMembers
.
append
(
md
);
md
->
setSectionList
(
&
priMembers
);
md
->
setSectionList
(
this
,
&
priMembers
);
break
;
}
}
...
...
@@ -485,27 +485,6 @@ void ClassDef::insertMember(MemberDef *md)
internalInsertMember
(
md
,
md
->
protection
(),
TRUE
);
}
//void ClassDef::computeMemberGroups()
//{
// MemberNameInfoListIterator mnili(*m_allMemberNameInfoList);
// MemberNameInfo *mni;
// for (;(mni=mnili.current());++mnili)
// {
// MemberNameInfoIterator mnii(*mni);
// MemberInfo *mi;
// for (mnii.toFirst();(mi=mnii.current());++mnii)
// {
// MemberDef *md=mi->memberDef;
// MemberGroup *mg = md->getMemberGroup();
// if (mg && m_memberGroupDict->find(mg->groupId())==0)
// {
// m_memberGroupDict->insert(mg->groupId(),mg);
// m_memberGroupList->append(mg);
// }
// }
// }
//}
// compute the anchors for all members
void
ClassDef
::
computeAnchors
()
{
...
...
@@ -533,6 +512,12 @@ void ClassDef::computeAnchors()
setAnchors
(
context
,
'u'
,
&
priTypes
);
setAnchors
(
context
,
'v'
,
&
dcopMethods
);
setAnchors
(
context
,
'w'
,
&
properties
);
MemberGroupSDict
::
Iterator
mgli
(
*
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
mg
->
setAnchors
(
context
);
}
}
void
ClassDef
::
distributeMemberGroupDocumentation
()
...
...
@@ -1006,6 +991,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
}
else
// add this group to the corresponding member section
{
//printf("addToDeclarationSection(%s)\n",mg->header().data());
mg
->
addToDeclarationSection
();
}
}
...
...
src/config.l
View file @
9d4d8095
...
...
@@ -31,6 +31,7 @@
#include <qstack.h>
#include "config.h"
#include "lang_cfg.h"
#include "version.h"
#undef Config_getString
...
...
src/doc.l
View file @
9d4d8095
...
...
@@ -99,6 +99,7 @@ static QCString curDotFileName;
static QCString curDotFileCaption;
static QCString internalRefFile;
static QCString internalRefAnchor;
static QCString caption;
static QStack<char> currentListIndent; // indent stack of all list items
static bool insideItemList = FALSE;
...
...
@@ -185,72 +186,85 @@ class Table
~Table();
void newRow();
void newElem();
void setCaption(const char *s);
private:
OutputDocInterface *parentDoc;
QList<TableElem> *elemList;
int curRow;
int curCol;
int rows;
int cols;
OutputDocInterface *m_parentDoc;
QList<TableElem> *m_elemList;
QCString m_caption;
int m_curRow;
int m_curCol;
int m_rows;
int m_cols;
};
Table::Table()
{
parentDoc=outDoc;
elemList=new QList<TableElem>;
elemList->setAutoDelete(TRUE);
curRow=curCol=rows=
cols=0;
m_
parentDoc=outDoc;
m_
elemList=new QList<TableElem>;
m_
elemList->setAutoDelete(TRUE);
m_curRow=m_curCol=m_rows=m_
cols=0;
}
Table::~Table()
{
//printf("Table::~Table()\n");
// use elemList & cols & rows
if (
cols>0 &&
rows>0)
if (
m_cols>0 && m_
rows>0)
{
parentDoc->startTable(
cols);
TableElem *e=elemList->first();
m_parentDoc->startTable(!m_caption.isEmpty(),m_
cols);
TableElem *e=
m_
elemList->first();
while (e)
{
if (e->getRow()>0)
{
if (e->getCol()==0)
{
if (e->getRow()>1) parentDoc->endTableRow();
parentDoc->nextTableRow();
if (e->getRow()>1)
m_
parentDoc->endTableRow();
m_
parentDoc->nextTableRow();
}
else
{
parentDoc->nextTableColumn();
m_
parentDoc->nextTableColumn();
}
parentDoc->append(e->outputDocInterface());
parentDoc->endTableColumn();
m_
parentDoc->append(e->outputDocInterface());
m_
parentDoc->endTableColumn();
}
e=elemList->next();
e=
m_
elemList->next();
}
parentDoc->endTable();
if (!m_caption.isEmpty())
{
m_parentDoc->startCaption();
m_parentDoc->docify(m_caption);
m_parentDoc->endCaption();
}
m_parentDoc->endTable(!m_caption.isEmpty());
}
delete elemList; elemList=0;
outDoc=parentDoc;
delete m_elemList; m_elemList=0;
outDoc=m_parentDoc;
}
void Table::setCaption(const char *s)
{
m_caption=s;
}
void Table::newRow()
{
//printf("Table::newRow()\n");
curRow++;
if (
curRow>rows) rows=
curRow;
curCol=0;
m_
curRow++;
if (
m_curRow>m_rows) m_rows=m_
curRow;
m_
curCol=0;
}
void Table::newElem()
{
//printf("Table::newElem(%d,%d)\n",curRow,curCol);
TableElem *te = new TableElem(
curRow,
curCol);
elemList->append(te);
TableElem *te = new TableElem(
m_curRow,m_
curCol);
m_
elemList->append(te);
curCol++;
if (
curCol>cols) cols=
curCol;
m_
curCol++;
if (
m_curCol>m_cols) m_cols=m_
curCol;
}
static QStack<Table> tableStack;
...
...
@@ -531,19 +545,19 @@ struct IndentInfo
static QStack<IndentInfo> listIndentStack; // indent stack of - items
static
void addListItemMarker(const char *marker,int dashPos,bool enumerated
)
static
int computeIndent(const char *str,int length
)
{
// find the actual position at which the bullet was found
int i;
int indent=0;
for (i=0;i<dashPos;i++)
int tabSize=Config_getInt("TAB_SIZE");
for (i=0;i<length;i++)
{
//printf("Parsed[%d]=%d\n",i,marker[i]);
if (
marke
r[i]=='\t')
if (
st
r[i]=='\t')
{
indent+=
Config_getInt("TAB_SIZE") - (indent%Config_getInt("TAB_SIZE")
);
indent+=
tabSize - (indent%tabSize
);
}
else if (
marke
r[i]=='\n')
else if (
st
r[i]=='\n')
{
indent=0;
}
...
...
@@ -552,9 +566,17 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
indent++;
}
}
return indent;
}
static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
{
// find the actual position at which the bullet was found
int indent=computeIndent(marker,dashPos);
//printf("list marker found at column %d enumerated %d\n",indent,enumerated);
if (!insideItemList)
{
//printf("startListMarker indent=%d\n",indent);
currentListIndent.push(enumerated ? "O" : "U");
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.top()->startList();
...
...
@@ -580,6 +602,7 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
}
else if (pPrevInfo->indent<indent) // start sub item list
{
//printf("startListMarker indent=%d\n",indent);
currentListIndent.push(enumerated ? "O" : "U");
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.top()->startList();
...
...
@@ -610,6 +633,32 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
}
}
static void endListMarker(const char *marker,int dotPos)
{
int indent=computeIndent(marker,dotPos);
//printf("endListMarker indent=%d "
// "insideItemList=%d listIndentStack.count()=%d\n",
// indent,insideItemList,listIndentStack.count());
if (insideItemList && !listIndentStack.isEmpty())
{
IndentInfo *ii = listIndentStack.top();
while (ii && indent<=ii->indent)
{
ii->endList();
listIndentStack.pop();
currentListIndent.pop();
delete ii;
ii = listIndentStack.top();
//printf("ending list new indent=%d\n",ii ? ii->indent : -1);
}
if (listIndentStack.isEmpty())
{
insideItemList=FALSE;
//printf("ending last list\n");
}
}
}
// end the current (nested) list regardless of the nesting level.
static void forceEndItemList()
{
...
...
@@ -626,7 +675,7 @@ static void forceEndItemList()
case 'O': outDoc->endEnumList(); break;
case 'U': outDoc->endItemList(); break;
case 'D': outDoc->endDescription(); break;
case 'P':
break; // do not end paragraphs
case 'P':
if (inBlock()) endBlock(); break;
default:
err("Unexpected list indent token `%c'\n",c);
}
...
...
@@ -899,6 +948,7 @@ SUB [sS][uU][bB]
SUP [sS][uU][pP]
SRC [sS][rR][cC]
TABLE [tT][aA][bB][lL][eE]
CAPTION [cC][aA][pP][tT][iI][oO][nN]
TITLE [tT][iI][tT][lL][eE]
TD [tT][dD]
TR [tT][rR]
...
...
@@ -955,6 +1005,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
%x DocInternalRef
%x DocInternalRefText
%x DocImage
%x DocCaption
%x DocHtmlImageName
%x DocHtmlImageOpt
%x DocLatexImageName
...
...
@@ -974,6 +1025,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
bool isEnumerated = text.at(dashPos+1)=='#';
addListItemMarker(yytext,dashPos+1,isEnumerated);
}
<DocScan>^{B}*(("//"{B}*)?)"*"*{B}*"."{B}*/\n { /* found end list marker */
QCString text=yytext;
int dotPos = text.findRev('.');
endListMarker(yytext,dotPos+1);
}
<DocScan>\n{B}*(("//"{B}*)?)"*"*{B}*"-"("#")?{B}+ { /* found list item marker */
QCString text=yytext;
int dashPos = text.findRev('-');
...
...
@@ -981,6 +1037,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
bool isEnumerated = text.at(dashPos+1)=='#';
addListItemMarker(yytext+1,dashPos,isEnumerated);
}
<DocScan>\n{B}*(("//"{B}*)?)"*"*{B}*"."{B}*/\n { /* found end list marker */
QCString text=yytext;
int dotPos = text.findRev('.');
endListMarker(yytext+1,dotPos);
}
<DocScan,Text>"©" { outDoc->writeCopyright(); }
<DocScan,Text>"<" { outDoc->docify("<"); }
<DocScan,Text>">" { outDoc->docify(">"); }
...
...
@@ -2024,6 +2085,20 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocScan>"</"{CENTER}{ATTR}">" { outDoc->endCenter(); }
<DocScan>"<"{TABLE}{ATTR}">" { startTable(); }
<DocScan>"</"{TABLE}{ATTR}">" { endTable(); }
<DocScan>"<"{CAPTION}{ATTR}">" { caption.resize(0);
BEGIN( DocCaption );
}
<DocCaption>[^\n\<\>\/]+ {
caption+=yytext;
}
<DocCaption>\n { caption+=" "; }
<DocCaption>. { caption+=*yytext; }
<DocCaption>"</"{CAPTION}{ATTR}">" { if (curTable)
{
curTable->setCaption(caption);
}
BEGIN( DocScan );
}
<DocScan>"<"{INPUT}{ATTR}">"
<DocScan>"<"{SMALL}{ATTR}">" { outDoc->startSmall(); }
<DocScan>"</"{SMALL}{ATTR}">" { outDoc->endSmall(); }
...
...
src/dot.cpp
View file @
9d4d8095
...
...
@@ -197,11 +197,12 @@ class DotNodeList : public QList<DotNode>
/*! helper function that deletes all nodes in a connected graph, given
* one of the graph's nodes
*/
static
void
deleteNodes
(
DotNode
*
node
)
static
void
deleteNodes
(
DotNode
*
node
,
SIntDict
<
DotNode
>
*
skipNodes
=
0
)
{
//printf("deleteNodes skipNodes=%p\n",skipNodes);
static
DotNodeList
deletedNodes
;
deletedNodes
.
setAutoDelete
(
TRUE
);
node
->
deleteNode
(
deletedNodes
);
// collect nodes to be deleted.
node
->
deleteNode
(
deletedNodes
,
skipNodes
);
// collect nodes to be deleted.
deletedNodes
.
clear
();
// actually remove the nodes.
}
...
...
@@ -220,6 +221,7 @@ DotNode::DotNode(int n,const char *lab,const char *url,int distance,bool isRoot)
DotNode
::~
DotNode
()
{
//printf("DotNode::~DotNode() %s\n",m_label.data());
delete
m_children
;
delete
m_parents
;
delete
m_edgeInfo
;
...
...
@@ -276,7 +278,7 @@ void DotNode::removeParent(DotNode *n)
if
(
m_parents
)
m_parents
->
remove
(
n
);
}
void
DotNode
::
deleteNode
(
DotNodeList
&
deletedList
)
void
DotNode
::
deleteNode
(
DotNodeList
&
deletedList
,
SIntDict
<
DotNode
>
*
skipNodes
)
{
if
(
m_deleted
)
return
;
// avoid recursive loops in case the graph has cycles
m_deleted
=
TRUE
;
...
...
@@ -287,7 +289,7 @@ void DotNode::deleteNode(DotNodeList &deletedList)
for
(
dnlip
.
toFirst
();(
pn
=
dnlip
.
current
());
++
dnlip
)
{
//pn->removeChild(this);
pn
->
deleteNode
(
deletedList
);
pn
->
deleteNode
(
deletedList
,
skipNodes
);
}
}
if
(
m_children
!=
0
)
// delete all child nodes of this node
...
...
@@ -297,11 +299,16 @@ void DotNode::deleteNode(DotNodeList &deletedList)
for
(
dnlic
.
toFirst
();(
cn
=
dnlic
.
current
());
++
dnlic
)
{
//cn->removeParent(this);
cn
->
deleteNode
(
deletedList
);
cn
->
deleteNode
(
deletedList
,
skipNodes
);
}
}
// add this node to the list of deleted nodes.
deletedList
.
append
(
this
);
//printf("skipNodes=%p find(%p)=%p\n",skipNodes,this,skipNodes ? skipNodes->find((int)this) : 0);
if
(
skipNodes
==
0
||
skipNodes
->
find
((
int
)
this
)
==
0
)
{
//printf("deleting\n");
deletedList
.
append
(
this
);
}
}
static
QCString
convertLabel
(
const
QCString
&
l
)
...
...
@@ -882,12 +889,22 @@ DotGfxHierarchyTable::DotGfxHierarchyTable()
DotGfxHierarchyTable
::~
DotGfxHierarchyTable
()
{
//printf("DotGfxHierarchyTable::~DotGfxHierarchyTable\n");
SIntDict
<
DotNode
>
skipNodes
(
17
);
skipNodes
.
setAutoDelete
(
TRUE
);
DotNode
*
n
=
m_rootNodes
->
first
();
while
(
n
)
{
DotNode
*
oldNode
=
n
;
//printf("adding %s %p\n",n->label().data(),n);
skipNodes
.
append
((
int
)
n
,
n
);
n
=
m_rootNodes
->
next
();
}
n
=
m_rootNodes
->
first
();
while
(
n
)
{
//printf("Deleting root node %s\n",n->label().data());
deleteNodes
(
n
,
&
skipNodes
);
n
=
m_rootNodes
->
next
();
deleteNodes
(
oldNode
);
}
delete
m_rootNodes
;
delete
m_usedNodes
;
...
...
src/dot.h
View file @
9d4d8095
...
...
@@ -19,6 +19,7 @@
#include "qtbc.h"
#include <qlist.h>
#include <qdict.h>
#include "sortdict.h"
class
ClassDef
;
class
FileDef
;
...
...
@@ -68,16 +69,17 @@ class DotNode
);
void
setDistance
(
int
distance
);
void
addParent
(
DotNode
*
n
);
void
deleteNode
(
DotNodeList
&
deletedList
);
void
deleteNode
(
DotNodeList
&
deletedList
,
SIntDict
<
DotNode
>
*
skipNodes
=
0
);
void
removeChild
(
DotNode
*
n
);
void
removeParent
(
DotNode
*
n
);
int
number
()
const
{
return
m_number
;
}
void
write
(
QTextStream
&
t
,
GraphOutputFormat
f
,
bool
topDown
,
bool
toChildren
,
int
maxDistance
=
1000
,
bool
backArrows
=
TRUE
);
int
m_subgraphId
;
void
clearWriteFlag
();
void
writeXML
(
QTextStream
&
t
);
void
writeDEF
(
QTextStream
&
t
);
QCString
label
()
const
{
return
m_label
;
}
int
number
()
const
{
return
m_number
;
}
private
:
void
colorConnectedNodes
(
int
curColor
);
...
...
src/doxygen.cpp
View file @
9d4d8095
...
...
@@ -6968,6 +6968,9 @@ void parseInput()
msg
(
"Adding classes to their packages...
\n
"
);
addClassesToPackages
();
msg
(
"Building full member lists recursively...
\n
"
);
buildCompleteMemberLists
();
msg
(
"Adding members to member groups.
\n
"
);
addMembersToMemberGroup
();
...
...
@@ -6977,9 +6980,6 @@ void parseInput()
distributeMemberGroupDocumentation
();
}
msg
(
"Building full member lists recursively...
\n
"
);
buildCompleteMemberLists
();
msg
(
"Computing member references...
\n
"
);
computeMemberReferences
();
...
...
src/groupdef.cpp
View file @
9d4d8095
...
...
@@ -309,6 +309,7 @@ bool GroupDef::containsGroup(const GroupDef *def)
void
GroupDef
::
addGroup
(
const
GroupDef
*
def
)
{
//printf("adding group `%s' to group `%s'\n",def->name().data(),name().data());
//if (Config_getBool("SORT_MEMBER_DOCS"))
// groupList->inSort(def);
//else
...
...
@@ -317,10 +318,10 @@ void GroupDef::addGroup(const GroupDef *def)
void
GroupDef
::
addParentGroup
(
const
GroupDef
*
def
)
{
if
(
Config_getBool
(
"SORT_MEMBER_DOCS"
))
parentGroupList
->
inSort
(
def
);
else
parentGroupList
->
append
(
def
);
//
if (Config_getBool("SORT_MEMBER_DOCS"))
//
parentGroupList->inSort(def);
//
else
parentGroupList
->
append
(
def
);
}
bool
GroupDef
::
isASubGroup
()
const
...
...
src/groupdef.h
View file @
9d4d8095
...
...
@@ -78,7 +78,7 @@ class GroupDef : public Definition
bool
visited
;
// number of times accessed for output - KPW
friend
void
writeGroupTreeNode
(
OutputList
&
,
GroupDef
*
,
bool
);
friend
void
writeGroupTreeNode
(
OutputList
&
,
GroupDef
*
,
int
);
// make accessible for writing tree view of group in index.cpp - KPW
// members in the declaration part of the documentation
...
...
src/htmlgen.cpp
View file @
9d4d8095
...
...
@@ -38,6 +38,7 @@
static
const
char
*
defaultStyleSheet
=
"H1 { text-align: center; }
\n
"
"CAPTION { font-weight: bold }
\n
"
"A.qindex {}
\n
"
"A.qindexRef {}
\n
"
"A.el { text-decoration: none; font-weight: bold }
\n
"
...
...
src/htmlgen.h
View file @
9d4d8095
...
...
@@ -165,8 +165,14 @@ class HtmlGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"</sub>"
;
}
void
startSuperscript
()
{
t
<<
"<sup>"
;
}
void
endSuperscript
()
{
t
<<
"</sup>"
;
}
void
startTable
(
int
)
{
t
<<
"<table border=1 cellspacing=3 cellpadding=3>"
;
}
void
endTable
()
{
t
<<
"</table>"
<<
endl
;
}
void
startTable
(
bool
,
int
)
{
t
<<
"<table border=1 cellspacing=3 cellpadding=3>"
;
}
void
endTable
(
bool
hasCaption
)
{
if
(
!
hasCaption
)
t
<<
"</tr>"
;
t
<<
"</table>"
<<
endl
;
}
void
startCaption
()
{
t
<<
"</tr><caption align=
\"
bottom
\"
>"
;
}
void
endCaption
()
{
t
<<
"</caption>"
<<
endl
;
}
void
nextTableRow
()
{
t
<<
"<tr><td>"
;
}
void
endTableRow
()
{
t
<<
"</tr>"
<<
endl
;
}
void
nextTableColumn
()
{
t
<<
"<td>"
;
}
...
...
src/index.cpp
View file @
9d4d8095
...
...
@@ -78,6 +78,34 @@ void countDataStructures()
documentedPackages
=
countPackages
();
}
static
void
startIndexHierarchy
(
OutputList
&
ol
,
int
level
)
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
if
(
level
<
6
)
ol
.
startIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
startItemList
();
ol
.
popGeneratorState
();
}
static
void
endIndexHierarchy
(
OutputList
&
ol
,
int
level
)
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
if
(
level
<
6
)
ol
.
endIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
endItemList
();
ol
.
popGeneratorState
();
}
//----------------------------------------------------------------------------
static
bool
g_memberIndexLetterUsed
[
256
];
...
...
@@ -347,18 +375,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
{
if
(
!
started
)
{
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
if
(
level
<
6
)
ol
.
startIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
startItemList
();
ol
.
popGeneratorState
();
}
startIndexHierarchy
(
ol
,
level
);
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
started
=
TRUE
;
...
...
@@ -407,18 +424,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
}
if
(
started
)
{
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
if
(
level
<
6
)
ol
.
endIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
endItemList
();
ol
.
popGeneratorState
();
}
endIndexHierarchy
(
ol
,
level
);
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
}
...
...
@@ -572,18 +578,7 @@ static void writeClassTreeForList(OutputList &ol,ClassSDict *cl,bool &started)
{
if
(
!
started
)
{
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Html
);
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
startIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
startItemList
();
ol
.
popGeneratorState
();
}
startIndexHierarchy
(
ol
,
0
);
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
started
=
TRUE
;
...
...
@@ -654,18 +649,7 @@ void writeClassHierarchy(OutputList &ol)
writeClassTreeForList
(
ol
,
&
Doxygen
::
hiddenClasses
,
started
);
if
(
started
)
{
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Html
);
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
endIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
endItemList
();
ol
.
popGeneratorState
();
}
endIndexHierarchy
(
ol
,
0
);
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
}
...
...
@@ -2135,18 +2119,7 @@ void writePageIndex(OutputList &ol)
}
parseText
(
ol
,
theTranslator
->
trRelatedPagesDescription
());
ol
.
endTextBlock
();
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
ol
.
startIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
startItemList
();
ol
.
popGeneratorState
();
}
startIndexHierarchy
(
ol
,
0
);
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageInfo
*
pi
=
0
;
for
(
pdi
.
toFirst
();(
pi
=
pdi
.
current
());
++
pdi
)
...
...
@@ -2177,18 +2150,7 @@ void writePageIndex(OutputList &ol)
if
(
hasFtvHelp
)
ftvHelp
->
addContentsItem
(
FALSE
,
0
,
pageName
,
0
,
pageTitle
);
}
}
{
// UGLY HACK!
ol
.
pushGeneratorState
();
ol
.
disable
(
OutputGenerator
::
Man
);
ol
.
disable
(
OutputGenerator
::
Html
);
ol
.
endIndexList
();
ol
.
enableAll
();
ol
.
disable
(
OutputGenerator
::
Latex
);
ol
.
disable
(
OutputGenerator
::
RTF
);
ol
.
endItemList
();
ol
.
popGeneratorState
();
}
endIndexHierarchy
(
ol
,
0
);
if
(
hasHtmlHelp
)
{
htmlHelp
->
decContentsDepth
();
...
...
@@ -2247,7 +2209,7 @@ void writeGraphInfo(OutputList &ol)
* \author KPW
*/
void
writeGroupTreeNode
(
OutputList
&
ol
,
GroupDef
*
gd
,
bool
subL
evel
)
void
writeGroupTreeNode
(
OutputList
&
ol
,
GroupDef
*
gd
,
int
l
evel
)
{
HtmlHelp
*
htmlHelp
=
0
;
FTVHelp
*
ftvHelp
=
0
;
...
...
@@ -2263,7 +2225,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
ftvHelp
=
FTVHelp
::
getInstance
();
}
if
(
!
gd
->
visited
&&
(
!
gd
->
isASubGroup
()
||
subLevel
))
if
(
!
gd
->
visited
&&
(
!
gd
->
isASubGroup
()
||
level
>
0
))
{
//printf("gd->name()=%s #members=%d\n",gd->name().data(),gd->countMembers());
// write group info
...
...
@@ -2338,14 +2300,14 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
// write subgroups
if
(
hasSubGroups
)
{
ol
.
startIndexList
(
);
startIndexHierarchy
(
ol
,
level
+
1
);
QListIterator
<
GroupDef
>
gli
(
*
gd
->
groupList
);
GroupDef
*
subgd
=
0
;
for
(
gli
.
to
Last
();(
subgd
=
gli
.
current
());
--
gli
)
for
(
gli
.
to
First
();(
subgd
=
gli
.
current
());
++
gli
)
{
writeGroupTreeNode
(
ol
,
subgd
,
TRUE
);
writeGroupTreeNode
(
ol
,
subgd
,
level
+
1
);
}
ol
.
endIndexList
(
);
endIndexHierarchy
(
ol
,
level
+
1
);
}
...
...
@@ -2544,14 +2506,14 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
void
writeGroupHierarchy
(
OutputList
&
ol
)
{
ol
.
startIndexList
(
);
startIndexHierarchy
(
ol
,
0
);
GroupSDict
::
Iterator
gli
(
Doxygen
::
groupSDict
);
GroupDef
*
gd
;
for
(
gli
.
toFirst
();(
gd
=
gli
.
current
());
++
gli
)
{
writeGroupTreeNode
(
ol
,
gd
,
FALSE
);
writeGroupTreeNode
(
ol
,
gd
,
0
);
}
ol
.
endIndexList
(
);
endIndexHierarchy
(
ol
,
0
);
}
//----------------------------------------------------------------------------
...
...
src/latexgen.h
View file @
9d4d8095
...
...
@@ -160,10 +160,26 @@ class LatexGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"}}$"
;
}
void
startSuperscript
()
{
t
<<
"$^{
\\
mbox{"
;
}
void
endSuperscript
()
{
t
<<
"}}$"
;
}
void
startTable
(
int
c
)
{
t
<<
"
\\
begin{TabularC}{"
<<
c
<<
"}
\n\\
hline
\n
"
;
void
startTable
(
bool
hasCaption
,
int
c
)
{
if
(
hasCaption
)
t
<<
"
\\
begin{table}[h]"
;
t
<<
"
\\
begin{TabularC}{"
<<
c
<<
"}
\n\\
hline
\n
"
;
}
void
endTable
()
{
t
<<
"
\\\\\\
hline
\n\\
end{TabularC}
\n
"
;
}
void
endTable
(
bool
hasCaption
)
{
if
(
hasCaption
)
{
t
<<
"
\\
end{table}
\n
"
;
}
else
{
t
<<
"
\\\\\\
hline
\n\\
end{TabularC}
\n
"
;
}
}
void
startCaption
()
{
t
<<
"
\\\\\\
hline
\n\\
end{TabularC}
\n
"
"
\\
centering
\n\\
caption{"
;
}
void
endCaption
()
{
t
<<
"}
\n
"
;
}
void
nextTableRow
()
{}
void
endTableRow
()
{
t
<<
"
\\\\\\
hline
\n
"
;
}
void
nextTableColumn
()
{
t
<<
"&"
;
}
...
...
src/mangen.h
View file @
9d4d8095
...
...
@@ -152,8 +152,10 @@ class ManGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"
\\
*>"
;
firstCol
=
FALSE
;
}
void
startSuperscript
()
{
t
<<
"
\\
*{"
;
firstCol
=
FALSE
;
}
void
endSuperscript
()
{
t
<<
"
\\
*}"
;
firstCol
=
FALSE
;
}
void
startTable
(
int
)
{}
void
endTable
()
{}
void
startTable
(
bool
,
int
)
{}
void
endTable
(
bool
)
{}
void
startCaption
()
{}
void
endCaption
()
{}
void
nextTableRow
()
{}
void
endTableRow
()
{}
void
nextTableColumn
()
{}
...
...
src/memberdef.cpp
View file @
9d4d8095
...
...
@@ -349,6 +349,7 @@ MemberDef::MemberDef(const char *df,int dl,
argList
=
0
;
}
m_templateMaster
=
0
;
classSectionSDict
=
0
;
}
/*! Destroys the member definition. */
...
...
@@ -360,6 +361,7 @@ MemberDef::~MemberDef()
delete
argList
;
delete
tArgList
;
delete
m_defTmpArgLists
;
delete
classSectionSDict
;
}
void
MemberDef
::
setReimplements
(
MemberDef
*
md
)
...
...
@@ -1670,3 +1672,14 @@ void MemberDef::addListReference(Definition *d)
d
->
getOutputFileBase
()
+
":"
+
anchor
(),
memName
,
argsString
());
}
MemberList
*
MemberDef
::
getSectionList
(
Definition
*
d
)
const
{
return
(
d
!=
0
&&
classSectionSDict
)
?
classSectionSDict
->
find
((
int
)
d
)
:
0
;
}
void
MemberDef
::
setSectionList
(
Definition
*
d
,
MemberList
*
sl
)
{
if
(
classSectionSDict
==
0
)
classSectionSDict
=
new
SIntDict
<
MemberList
>
(
7
);
classSectionSDict
->
append
((
int
)
d
,
sl
);
}
src/memberdef.h
View file @
9d4d8095
...
...
@@ -24,6 +24,7 @@
#include "entry.h"
#include "definition.h"
#include "sortdict.h"
class
ClassDef
;
class
NamespaceDef
;
...
...
@@ -81,7 +82,7 @@ class MemberDef : public Definition
const
QCString
&
initializer
()
const
{
return
init
;
}
int
initializerLines
()
const
{
return
initLines
;
}
int
getMemberSpecifiers
()
const
{
return
memSpec
;
}
MemberList
*
getSectionList
(
)
const
{
return
section
;
}
MemberList
*
getSectionList
(
Definition
*
d
)
const
;
// scope query members
ClassDef
*
getClassDef
()
const
{
return
classDef
;
}
...
...
@@ -143,7 +144,7 @@ class MemberDef : public Definition
void
setBitfields
(
const
char
*
s
)
{
bitfields
=
s
;
}
void
setMaxInitLines
(
int
lines
)
{
userInitLines
=
lines
;
}
void
setMemberClass
(
ClassDef
*
cd
);
void
setSectionList
(
MemberList
*
sl
)
{
section
=
sl
;
}
void
setSectionList
(
Definition
*
d
,
MemberList
*
sl
);
void
setGroupDef
(
GroupDef
*
gd
,
Grouping
::
GroupPri_t
pri
,
const
QCString
&
fileName
,
int
startLine
,
bool
hasDocs
);
void
setExplicitExternal
(
bool
b
)
{
explExt
=
b
;
}
...
...
@@ -300,6 +301,7 @@ class MemberDef : public Definition
int
groupStartLine
;
// line " " " " "
bool
groupHasDocs
;
// true if the entry that caused the grouping was documented
MemberDef
*
m_templateMaster
;
SIntDict
<
MemberList
>
*
classSectionSDict
;
// disable copying of member defs
...
...
src/membergroup.cpp
View file @
9d4d8095
...
...
@@ -53,7 +53,7 @@ MemberGroup::~MemberGroup()
delete
memberList
;
}
void
MemberGroup
::
insertMember
(
MemberDef
*
md
)
void
MemberGroup
::
insertMember
(
Definition
*
d
,
MemberDef
*
md
)
{
//printf("MemberGroup::insertMember memberList=%p count=%d"
// " member section list: %p\n",
...
...
@@ -62,13 +62,13 @@ void MemberGroup::insertMember(MemberDef *md)
// md->getSectionList());
MemberDef
*
firstMd
=
memberList
->
first
();
if
(
inSameSection
&&
memberList
->
count
()
>
0
&&
firstMd
->
getSectionList
(
)
!=
md
->
getSectionList
(
))
firstMd
->
getSectionList
(
d
)
!=
md
->
getSectionList
(
d
))
{
inSameSection
=
FALSE
;
}
else
if
(
inDeclSection
==
0
)
{
inDeclSection
=
md
->
getSectionList
();
inDeclSection
=
md
->
getSectionList
(
d
);
}
memberList
->
append
(
md
);
...
...
@@ -82,9 +82,9 @@ void MemberGroup::insertMember(MemberDef *md)
}
void
MemberGroup
::
setAnchors
()
void
MemberGroup
::
setAnchors
(
ClassDef
*
context
)
{
::
setAnchors
(
0
,
'z'
,
memberList
,
grpId
);
::
setAnchors
(
context
,
'z'
,
memberList
,
grpId
);
}
void
MemberGroup
::
writeDeclarations
(
OutputList
&
ol
,
...
...
src/membergroup.h
View file @
9d4d8095
...
...
@@ -40,8 +40,8 @@ class MemberGroup
~
MemberGroup
();
QCString
header
()
const
{
return
grpHeader
;
}
int
groupId
()
const
{
return
grpId
;
}
void
insertMember
(
MemberDef
*
);
void
setAnchors
();
void
insertMember
(
Definition
*
d
,
MemberDef
*
md
);
void
setAnchors
(
ClassDef
*
);
void
writePlainDeclarations
(
OutputList
&
ol
,
ClassDef
*
cd
,
NamespaceDef
*
nd
,
FileDef
*
fd
,
GroupDef
*
gd
);
void
writeDeclarations
(
OutputList
&
ol
,
...
...
src/outputgen.h
View file @
9d4d8095
...
...
@@ -198,8 +198,10 @@ class BaseOutputDocInterface
virtual
void
endSubscript
()
=
0
;
virtual
void
startSuperscript
()
=
0
;
virtual
void
endSuperscript
()
=
0
;
virtual
void
startTable
(
int
cols
)
=
0
;
virtual
void
endTable
()
=
0
;
virtual
void
startTable
(
bool
hasCaption
,
int
cols
)
=
0
;
virtual
void
endTable
(
bool
hasCaption
)
=
0
;
virtual
void
startCaption
()
=
0
;
virtual
void
endCaption
()
=
0
;
virtual
void
nextTableRow
()
=
0
;
virtual
void
endTableRow
()
=
0
;
virtual
void
nextTableColumn
()
=
0
;
...
...
src/outputlist.h
View file @
9d4d8095
...
...
@@ -277,10 +277,14 @@ class OutputList : public OutputDocInterface
{
forall
(
&
OutputGenerator
::
startSuperscript
);
}
void
endSuperscript
()
{
forall
(
&
OutputGenerator
::
endSuperscript
);
}
void
startTable
(
int
cols
)
{
forall
(
&
OutputGenerator
::
startTable
,
cols
);
}
void
endTable
()
{
forall
(
&
OutputGenerator
::
endTable
);
}
void
startTable
(
bool
hasCaption
,
int
cols
)
{
forall
(
&
OutputGenerator
::
startTable
,
hasCaption
,
cols
);
}
void
endTable
(
bool
hasCaption
)
{
forall
(
&
OutputGenerator
::
endTable
,
hasCaption
);
}
void
startCaption
()
{
forall
(
&
OutputGenerator
::
startCaption
);
}
void
endCaption
()
{
forall
(
&
OutputGenerator
::
endCaption
);
}
void
nextTableRow
()
{
forall
(
&
OutputGenerator
::
nextTableRow
);
}
void
endTableRow
()
...
...
src/pre.l
View file @
9d4d8095
...
...
@@ -1078,17 +1078,24 @@ BN [ \t\r\n]
BEGIN(CopyLine);
}
}
<CopyLine>"extern"{BN}*"\"C\""*{BN}*"{" {
QCString text=yytext;
g_yyLineNr+=text.contains('\n');
outputArray(yytext,yyleng);
}
<CopyLine>"{" { // count brackets inside the main file
if (g_includeStack.isEmpty())
{
g_curlyCount++;
}
outputChar(*yytext);
}
<CopyLine>"}" { // count brackets inside the main file
if (g_includeStack.isEmpty())
if (g_includeStack.isEmpty() && g_curlyCount>0)
{
g_curlyCount--;
}
outputChar(*yytext);
// This should hold otherwise the preprocessor is confused
//ASSERT(g_curlyCount>=0);
}
<CopyLine>"'"\\[0-7]{1,3}"'" {
outputArray(yytext,yyleng);
...
...
src/rtfgen.h
View file @
9d4d8095
...
...
@@ -152,12 +152,14 @@ class RTFGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"}"
;
}
void
startSuperscript
()
{
t
<<
"{
\\
super "
<<
endl
;}
void
endSuperscript
()
{
t
<<
"}"
;
}
void
startTable
(
int
)
{
}
//t << "\\begin{TabularC}{" << c << "}\n\\hline\n";
void
endTable
()
{
}
//t << "\\\\\\hline\n\\end{TabularC}\n";
void
nextTableRow
()
{
}
void
endTableRow
()
{
}
//t << "\\\\\\hline\n";
void
nextTableColumn
()
{
}
//t << "&";
void
endTableColumn
()
{
}
void
startTable
(
bool
,
int
)
{
/* not implemented */
}
void
endTable
(
bool
)
{
/* not implemented */
}
void
startCaption
()
{
/* not implemented */
}
void
endCaption
()
{
/* not implemented */
}
void
nextTableRow
()
{
/* not implemented */
}
void
endTableRow
()
{
/* not implemented */
}
void
nextTableColumn
()
{
/* not implemented */
}
void
endTableColumn
()
{
/* not implemented */
}
void
writeCopyright
()
{
t
<<
"
\251
"
;
}
void
writeQuote
()
{
t
<<
"
\"
"
;
}
void
writeUmlaut
(
char
c
);
...
...
src/scanner.l
View file @
9d4d8095
...
...
@@ -936,11 +936,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
}
<FindMembers>"template"({BN}*)"<"/[>]? {
lineCount();
// class template specifier already found => member template specifier
// already inside class => member template specifier
//if (current->tArgList /*|| (current_root->section&Entry::COMPOUND_MASK)*/)
//{
// printf("-------> member template \n");
if (current->tArgLists==0)
{
current->tArgLists = new QList<ArgumentList>;
...
...
@@ -950,33 +945,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
al->setAutoDelete(TRUE);
current->tArgLists->append(al);
currentArgumentList = al;
//if (current->mtArgList)
// {
// if (current->tArgList)
// {
// delete current->tArgList;
// }
// current->tArgList = current->mtArgList;
// current->mtArgList = 0;
// }
// current->mtArgList = new ArgumentList;
// current->mtArgList->setAutoDelete(TRUE);
// currentArgumentList = current->mtArgList;
//}
//else // class template specifier
//{
// printf("-------> class template\n");
// if (current->tArgList)
// {
// current->tArgList->clear();
// }
// else
// {
// current->tArgList = new ArgumentList;
// current->tArgList->setAutoDelete(TRUE);
// }
// currentArgumentList = current->tArgList;
//}
templateStr="<";
fullArgString = templateStr.copy();
copyArgString = &templateStr;
...
...
@@ -2198,7 +2166,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
BEGIN(SkipCPP);
}
*/
<FuncQual>[{:;
]
{ unput(*yytext); BEGIN( Function ); }
<FuncQual>[{:;
,]
{ unput(*yytext); BEGIN( Function ); }
<FuncQual>{BN}*"const"{BN}* {
lineCount() ;
current->args += " const ";
...
...
@@ -2263,7 +2231,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<Function>":" {
BEGIN(SkipInits);
}
<Function>[;{] {
<Function>[;{
,
] {
current->name=current->name.simplifyWhiteSpace();
current->type=current->type.simplifyWhiteSpace();
current->args=current->args.simplifyWhiteSpace();
...
...
@@ -2325,7 +2293,11 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
current = new Entry ;
initEntry();
lastCurlyContext = FindMembers;
if( *yytext == '{' )
if ( *yytext == ',' )
{
current->type = previous->type.data();
}
if ( *yytext == '{' )
{
if (current_root->section & Entry::COMPOUND_MASK)
previous->memSpec = previous->memSpec | Entry::Inline;
...
...
@@ -4023,9 +3995,15 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,AfterDoc>^{B}*(("//"{B}*)?)"*"+[ \t]*"-"("#")?{B}+ {
current->doc += yytext;
}
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,AfterDoc>^{B}*(("//"{B}*)?)"*"+[ \t]*"."{B}*\n {
current->doc += yytext;
}
<ClassDocBrief,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+[ \t]*"-"("#")?{B}+ {
current->brief += "-";
}
<ClassDocBrief,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+[ \t]*"."{B}*\n {
current->brief += ".";
}
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,ClassDocBrief,AfterDoc,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+/[^/]
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,ClassDocBrief,AfterDoc,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+{B}+ {
current->doc+=' ';
...
...
src/translator.cpp
View file @
9d4d8095
...
...
@@ -191,3 +191,81 @@ QCString Translator::Windows1251ToKoi8R( const QCString & sInput )
return
result
.
local8Bit
();
}
/*! returns the caracter converted from hankaku-kana to zenkakukana.
Thanks Yongmao Ni http://alfin.mine.utsunomiya-u.ac.jp/~niy/algo/ */
unsigned
int
hankaku2zen
(
int
hankaku
)
{
static
unsigned
int
z
[
64
]
=
{
0x2121
,
0x2123
,
0x2156
,
0x2157
,
0x2122
,
0x2126
,
0x2572
,
0x2521
,
0x2523
,
0x2525
,
0x2527
,
0x2529
,
0x2563
,
0x2565
,
0x2567
,
0x2543
,
0x213c
,
0x2522
,
0x2524
,
0x2526
,
0x2528
,
0x252a
,
0x252b
,
0x252d
,
0x252f
,
0x2531
,
0x2533
,
0x2535
,
0x2537
,
0x2539
,
0x253b
,
0x253d
,
0x253f
,
0x2541
,
0x2544
,
0x2546
,
0x2548
,
0x254a
,
0x254b
,
0x254c
,
0x254d
,
0x254e
,
0x254f
,
0x2552
,
0x2555
,
0x2558
,
0x255b
,
0x255e
,
0x255f
,
0x2560
,
0x2561
,
0x2562
,
0x2564
,
0x2566
,
0x2568
,
0x2569
,
0x256a
,
0x256b
,
0x256c
,
0x256d
,
0x256f
,
0x2573
,
0x212b
,
0x212c
};
if
(
hankaku
<
0xa0
||
hankaku
>
0xdf
)
return
0
;
return
z
[
hankaku
-
0xa0
];
}
/*! returns the character converted from japaneseEUC to SJIS
Thanks Yongmao Ni http://alfin.mine.utsunomiya-u.ac.jp/~niy/algo/ */
unsigned
int
euc2sjis
(
unsigned
int
euc
)
{
unsigned
int
jis
;
unsigned
int
hib
,
lob
;
if
((
euc
&
0xff00
)
==
0x8e00
)
jis
=
hankaku2zen
(
euc
&
0xff
);
else
jis
=
euc
&
~
0x8080
;
hib
=
(
jis
>>
8
)
&
0xff
;
lob
=
jis
&
0xff
;
lob
+=
(
hib
&
1
)
?
0x1f
:
0x7d
;
if
(
lob
>=
0x7f
)
lob
++
;
hib
=
((
hib
-
0x21
)
>>
1
)
+
0x81
;
if
(
hib
>
0x9f
)
hib
+=
0x40
;
return
(
hib
<<
8
)
|
lob
;
}
/*! returns the string converted from Japanese-EUC to SJIS */
QCString
Translator
::
JapaneseEucToSjis
(
const
QCString
&
sInput
)
{
QString
result
;
int
len
=
sInput
.
length
();
int
c1
,
c2
,
sj
;
result
.
setUnicode
(
0
,
len
);
QChar
*
uc
=
(
QChar
*
)
result
.
unicode
();
// const_cast
const
unsigned
char
*
c
=
(
const
unsigned
char
*
)(
const
char
*
)
sInput
;
for
(
int
i
=
0
;
i
<
len
;)
{
c1
=
c
[
i
];
if
(
c1
==
EOF
)
break
;
/* if MSB=0 then the character is ascii */
if
(
!
(
c1
&
0x80
))
{
uc
[
i
]
=
c
[
i
];
i
=
i
+
1
;
}
else
{
c2
=
c
[
i
+
1
];
if
(
c2
==
EOF
)
break
;
sj
=
euc2sjis
(
(
c1
<<
8
)
+
c2
);
uc
[
i
]
=
sj
>>
8
;
uc
[
i
+
1
]
=
sj
&
0xff
;
i
+=
2
;
}
}
return
result
.
local8Bit
();
}
src/translator.h
View file @
9d4d8095
...
...
@@ -44,6 +44,9 @@ class Translator
/*! Returns the string converted from windows-1251 to koi8-r. */
QCString
Windows1251ToKoi8R
(
const
QCString
&
sInput
);
/*! Returns the string converted from Japanese-EUC to SJIS. */
QCString
JapaneseEucToSjis
(
const
QCString
&
sInput
);
public
:
...
...
src/translator_jp.h
View file @
9d4d8095
...
...
@@ -15,464 +15,559 @@
*
*/
/*
* translator_jp.h
*
* 1.2.5)
* First Translation
* by Kenji Nagamatsu
* 1.2.12)
* Update and Shift-Jis(_WIN32)
* by Ryunosuke Sato (30-Dec-2001)
*/
#ifndef TRANSLATOR_JP_H
#define TRANSLATOR_JP_H
#include "translator_adapter.h"
class
TranslatorJapanese
:
public
TranslatorAdapter_1_2_5
class
TranslatorJapanese
:
public
Translator
{
private
:
/*! The decode() can change euc into sjis */
inline
QCString
decode
(
const
QCString
&
sInput
)
{
#ifdef _WIN32
return
JapaneseEucToSjis
(
sInput
);
#else
return
sInput
;
#endif
}
public
:
QCString
idLanguage
()
virtual
QCString
idLanguage
()
{
return
"japanese"
;
}
virtual
QCString
latexLanguageSupportCommand
()
{
return
""
;
}
/*! returns the name of the package that is included by LaTeX */
QCString
latexBabelPackage
()
{
return
"english"
;
}
QCString
idLanguageCharset
()
{
return
"euc-jp"
;
}
virtual
QCString
idLanguageCharset
()
{
#ifdef _WIN32
return
"ShiftJIS"
;
#else
return
"euc-jp"
;
#endif
}
/*! used in the compound documentation before a list of related functions. */
QCString
trRelatedFunctions
()
{
return
"関連する関数"
;
}
virtual
QCString
trRelatedFunctions
()
{
return
decode
(
"関連する関数"
)
;
}
/*! subscript for the related functions. */
QCString
trRelatedSubscript
()
{
return
"(これらはメンバ関数でないことに注意)"
;
}
virtual
QCString
trRelatedSubscript
()
{
return
decode
(
"(これらはメンバ関数でないことに注意)"
)
;
}
/*! header that is put before the detailed description of files, classes and namespaces. */
QCString
trDetailedDescription
()
{
return
"解説"
;
}
virtual
QCString
trDetailedDescription
()
{
return
decode
(
"解説"
)
;
}
/*! header that is put before the list of typedefs. */
QCString
trMemberTypedefDocumentation
()
{
return
"メンバ型定義の解説"
;
}
virtual
QCString
trMemberTypedefDocumentation
()
{
return
decode
(
"メンバ型定義の解説"
)
;
}
/*! header that is put before the list of enumerations. */
QCString
trMemberEnumerationDocumentation
()
{
return
"メンバ列挙型の解説"
;
}
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
decode
(
"メンバ列挙型の解説"
)
;
}
/*! header that is put before the list of member functions. */
QCString
trMemberFunctionDocumentation
()
{
return
"メンバ関数の解説"
;
}
virtual
QCString
trMemberFunctionDocumentation
()
{
return
decode
(
"メンバ関数の解説"
)
;
}
/*! header that is put before the list of member attributes. */
QCString
trMemberDataDocumentation
()
{
return
"メンバデータの解説"
;
}
virtual
QCString
trMemberDataDocumentation
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"構造体の解説"
);
}
else
{
return
decode
(
"メンバの解説"
);
}
}
/*! this is the text of a link put after brief descriptions. */
QCString
trMore
()
{
return
"より詳しく..."
;
}
virtual
QCString
trMore
()
{
return
decode
(
"より詳しく..."
)
;
}
/*! put in the class documentation */
QCString
trListOfAllMembers
()
{
return
"すべてのメンバリスト"
;
}
virtual
QCString
trListOfAllMembers
()
{
return
decode
(
"すべてのメンバリスト"
)
;
}
/*! used as the title of the "list of all members" page of a class */
QCString
trMemberList
()
{
return
"メンバリスト"
;
}
virtual
QCString
trMemberList
()
{
return
decode
(
"メンバリスト"
)
;
}
/*! this is the first part of a sentence that is followed by a class name */
QCString
trThisIsTheListOfAllMembers
()
{
return
"これは全メンバリストです。"
;
}
virtual
QCString
trThisIsTheListOfAllMembers
()
{
return
decode
(
"これは全メンバリストです。"
)
;
}
/*! this is the remainder of the sentence after the class name */
QCString
trIncludingInheritedMembers
()
{
return
"継承メンバもすべて含んでいます。"
;
}
virtual
QCString
trIncludingInheritedMembers
()
{
return
decode
(
"継承メンバもすべて含んでいます。"
)
;
}
/*! 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
+=
"ソースコードから Doxygen が自動的に生成しました。"
;
return
result
;
return
decode
(
result
)
;
}
/*! put after an enum name in the list of all members */
QCString
trEnumName
()
{
return
"enum 型"
;
}
virtual
QCString
trEnumName
()
{
return
decode
(
"列挙型"
)
;
}
/*! put after an enum value in the list of all members */
QCString
trEnumValue
()
{
return
"enum 値"
;
}
virtual
QCString
trEnumValue
()
{
return
decode
(
"列挙値"
)
;
}
/*! put after an undocumented member in the list of all members */
QCString
trDefinedIn
()
{
return
"次で定義されました。"
;
}
/*! put as in introduction in the verbatim header file of a class.
* parameter f is the name of the include file.
*/
QCString
trVerbatimText
(
const
char
*
f
)
{
return
(
QCString
)
"これはインクルードファイル"
+
f
+
"の内容です。"
;
}
virtual
QCString
trDefinedIn
()
{
return
decode
(
"次で定義されました。"
);
}
// quick reference sections
/*! This is put above each page as a link to the list of all groups of
* compounds or files (see the \group command).
*/
QCString
trModules
()
{
return
"モジュール"
;
}
virtual
QCString
trModules
()
{
return
decode
(
"モジュール"
)
;
}
/*! This is put above each page as a link to the class hierarchy */
QCString
trClassHierarchy
()
{
return
"クラス階層"
;
}
virtual
QCString
trClassHierarchy
()
{
return
decode
(
"クラス階層"
)
;
}
/*! 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"
))
{
return
decode
(
"データ構造"
);
}
else
{
return
decode
(
"構成"
);
}
}
/*! This is put above each page as a link to the list of documented files */
QCString
trFileList
()
{
return
"ファイルリスト"
;
}
virtual
QCString
trFileList
()
{
return
decode
(
"ファイルリスト"
)
;
}
/*! This is put above each page as a link to the list of all verbatim headers */
QCString
trHeaderFiles
()
{
return
"ヘッダファイル"
;
}
virtual
QCString
trHeaderFiles
()
{
return
decode
(
"ヘッダファイル"
)
;
}
/*! 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"
))
{
return
decode
(
"データフィールド"
);
}
else
{
return
decode
(
"構成メンバ"
);
}
}
/*! 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"
))
{
return
decode
(
"グローバル"
);
}
else
{
return
decode
(
"ファイルメンバ"
);
}
}
/*! This is put above each page as a link to all related pages. */
QCString
trRelatedPages
()
{
return
"関連ページ"
;
}
virtual
QCString
trRelatedPages
()
{
return
decode
(
"関連ページ"
)
;
}
/*! This is put above each page as a link to all examples. */
QCString
trExamples
()
{
return
"例"
;
}
virtual
QCString
trExamples
()
{
return
decode
(
"例"
)
;
}
/*! This is put above each page as a link to the search engine. */
QCString
trSearch
()
{
return
"検索"
;
}
virtual
QCString
trSearch
()
{
return
decode
(
"検索"
)
;
}
/*! This is an introduction to the class hierarchy. */
QCString
trClassHierarchyDescription
()
{
return
"この継承リストはおおまかにはソートされていますが、"
"アルファベット順で完全にソートされてはいません。"
;
virtual
QCString
trClassHierarchyDescription
()
{
return
decode
(
"この継承リストはおおまかにはソートされていますが、"
"アルファベット順で完全にソートされてはいません。"
)
;
}
/*! This is an introduction to the list with all files. */
QCString
trFileListDescription
(
bool
extractAll
)
virtual
QCString
trFileListDescription
(
bool
extractAll
)
{
QCString
result
=
"このリストは、"
;
if
(
!
extractAll
)
result
+=
"ドキュメント化され、"
;
result
+=
"簡易説明を持つファイルすべてのリストです。"
;
return
result
;
return
decode
(
result
)
;
}
/*! This is an introduction to the annotated compound list. */
QCString
trCompoundListDescription
()
{
return
"これは簡易説明を持つ、クラス、構造体、共用体のリストです。"
;}
virtual
QCString
trCompoundListDescription
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データ構造の簡単な説明です。"
);
}
else
{
return
decode
(
"クラス、構造体、共用体、インタフェースの簡単な説明です。"
);
}
}
/*! This is an introduction to the page with all class members. */
QCString
trCompoundMembersDescription
(
bool
extractAll
)
virtual
QCString
trCompoundMembersDescription
(
bool
extractAll
)
{
QCString
result
=
"これは"
;
if
(
!
extractAll
)
result
+=
"ドキュメント化された"
;
result
+=
"クラスメンバすべてのリストで、それぞれ"
;
if
(
extractAll
)
result
+=
"が属しているクラス"
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"フィールドすべてのリストで、それぞれ"
;
if
(
extractAll
)
result
+=
"が属している構造体/共用体"
;
}
else
{
result
+=
"クラスメンバすべてのリストで、それぞれ"
;
if
(
extractAll
)
result
+=
"が属しているクラス"
;
}
result
+=
"の解説へのリンクが張られています。"
;
return
result
;
return
decode
(
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
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"関数、変数、マクロ、列挙型、型定義のリストで、それぞれ"
;
}
else
{
result
+=
"ファイルメンバすべてのリストで、それぞれ"
;
}
if
(
extractAll
)
result
+=
"が属しているファイル"
;
result
+=
"の解説へのリンクが張られています。"
;
return
result
;
return
decode
(
result
)
;
}
/*! This is an introduction to the page with the list of all header files. */
QCString
trHeaderFilesDescription
()
{
return
"APIを構成するヘッダファイルです。"
;
}
virtual
QCString
trHeaderFilesDescription
()
{
return
decode
(
"APIを構成するヘッダファイルです。"
)
;
}
/*! This is an introduction to the page with the list of all examples */
QCString
trExamplesDescription
()
{
return
"すべての例のリストです。"
;
}
virtual
QCString
trExamplesDescription
()
{
return
decode
(
"すべての例のリストです。"
)
;
}
/*! This is an introduction to the page with the list of related pages */
QCString
trRelatedPagesDescription
()
{
return
"関連するドキュメントページすべてのリストです。"
;
}
virtual
QCString
trRelatedPagesDescription
()
{
return
decode
(
"関連するドキュメントページすべてのリストです。"
)
;
}
/*! This is an introduction to the page with the list of class/file groups */
QCString
trModulesDescription
()
{
return
"すべてのモジュールのリストです。"
;
}
virtual
QCString
trModulesDescription
()
{
return
decode
(
"すべてのモジュールのリストです。"
)
;
}
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
*/
QCString
trNoDescriptionAvailable
()
{
return
"ドキュメントが記述されていません。"
;
}
virtual
QCString
trNoDescriptionAvailable
()
{
return
decode
(
"ドキュメントが記述されていません。"
)
;
}
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
QCString
trDocumentation
()
{
return
"ドキュメント"
;
}
virtual
QCString
trDocumentation
()
{
return
decode
(
"ドキュメント"
)
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
QCString
trModuleIndex
()
{
return
"モジュール索引"
;
}
virtual
QCString
trModuleIndex
()
{
return
decode
(
"モジュール索引"
)
;
}
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
QCString
trHierarchicalIndex
()
{
return
"階層索引"
;
}
virtual
QCString
trHierarchicalIndex
()
{
return
decode
(
"階層索引"
)
;
}
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
*/
QCString
trCompoundIndex
()
{
return
"データ構造索引"
;
}
virtual
QCString
trCompoundIndex
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データ構造索引"
);
}
else
{
return
decode
(
"構成索引"
);
}
}
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
*/
QCString
trFileIndex
()
{
return
"ファイル索引"
;
}
virtual
QCString
trFileIndex
()
{
return
decode
(
"ファイル索引"
)
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
*/
QCString
trModuleDocumentation
()
{
return
"モジュールの解説"
;
}
virtual
QCString
trModuleDocumentation
()
{
return
decode
(
"モジュールの解説"
)
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all classes, structs and unions.
*/
QCString
trClassDocumentation
()
{
return
"クラスの解説"
;
}
virtual
QCString
trClassDocumentation
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データ構造の解説"
);
}
else
{
return
decode
(
"クラスの解説"
);
}
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all files.
*/
QCString
trFileDocumentation
()
{
return
"ファイルの解説"
;
}
virtual
QCString
trFileDocumentation
()
{
return
decode
(
"ファイルの解説"
)
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
*/
QCString
trExampleDocumentation
()
{
return
"例題の解説"
;
}
virtual
QCString
trExampleDocumentation
()
{
return
decode
(
"例題の解説"
)
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
*/
QCString
trPageDocumentation
()
{
return
"ページの解説"
;
}
virtual
QCString
trPageDocumentation
()
{
return
decode
(
"ページの解説"
)
;
}
/*! This is used in LaTeX as the title of the document */
QCString
trReferenceManual
()
{
return
"リファレンスマニュアル"
;
}
virtual
QCString
trReferenceManual
()
{
return
decode
(
"リファレンスマニュアル"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
QCString
trDefines
()
{
return
"マクロ定義"
;
}
virtual
QCString
trDefines
()
{
return
decode
(
"マクロ定義"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
QCString
trFuncProtos
()
{
return
"関数プロトタイプ"
;
}
virtual
QCString
trFuncProtos
()
{
return
decode
(
"関数プロトタイプ"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
QCString
trTypedefs
()
{
return
"型定義"
;
}
virtual
QCString
trTypedefs
()
{
return
decode
(
"型定義"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
QCString
trEnumerations
()
{
return
"列挙型"
;
}
virtual
QCString
trEnumerations
()
{
return
decode
(
"列挙型"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
QCString
trFunctions
()
{
return
"関数"
;
}
virtual
QCString
trFunctions
()
{
return
decode
(
"関数"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trVariables
()
{
return
"変数"
;
}
virtual
QCString
trVariables
()
{
return
decode
(
"変数"
)
;
}
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
QCString
trEnumerationValues
()
{
return
"列挙型値"
;
}
/*! This is used in man pages as the author section. */
QCString
trAuthor
()
{
return
"作者"
;
}
virtual
QCString
trEnumerationValues
()
{
return
decode
(
"列挙型値"
);
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
QCString
trDefineDocumentation
()
{
return
"マクロ定義の解説"
;
}
virtual
QCString
trDefineDocumentation
()
{
return
decode
(
"マクロ定義の解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
QCString
trFunctionPrototypeDocumentation
()
{
return
"関数プロトタイプの解説"
;
}
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
decode
(
"関数プロトタイプの解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
QCString
trTypedefDocumentation
()
{
return
"型定義の解説"
;
}
virtual
QCString
trTypedefDocumentation
()
{
return
decode
(
"型定義の解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
QCString
trEnumerationTypeDocumentation
()
{
return
"列挙型の解説"
;
}
virtual
QCString
trEnumerationTypeDocumentation
()
{
return
decode
(
"列挙型の解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
QCString
trEnumerationValueDocumentation
()
{
return
"列挙型値の解説"
;
}
virtual
QCString
trEnumerationValueDocumentation
()
{
return
decode
(
"列挙型値の解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
QCString
trFunctionDocumentation
()
{
return
"関数の解説"
;
}
virtual
QCString
trFunctionDocumentation
()
{
return
decode
(
"関数の解説"
)
;
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
QCString
trVariableDocumentation
()
{
return
"変数の解説"
;
}
virtual
QCString
trVariableDocumentation
()
{
return
decode
(
"変数の解説"
)
;
}
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
*/
QCString
trCompounds
()
{
return
"データ構造"
;
}
/*! This is used in the documentation of a group before the list of
* links to documented files
*/
QCString
trFiles
()
{
return
"ファイル"
;
}
virtual
QCString
trCompounds
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データ構造"
);
}
else
{
return
decode
(
"構成"
);
}
}
/*! 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
+
"に対して"
;
result
+=
(
QCString
)
date
+
"に生成されました。"
;
return
result
;
return
decode
(
result
)
;
}
/*! This is part of the sentence used in the standard footer of each page.
*/
QCString
trWrittenBy
()
virtual
QCString
trWrittenBy
()
{
return
"の開発者:"
;
return
decode
(
"担当"
)
;
}
/*! this text is put before a class diagram */
QCString
trClassDiagram
(
const
char
*
clName
)
virtual
QCString
trClassDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"に対するクラス階層図"
;
return
decode
((
QCString
)
clName
+
"に対する継承グラフ"
)
;
}
/*! this text is generated when the \\internal command is used. */
QCString
trForInternalUseOnly
()
{
return
"内部使用のみ。"
;
}
virtual
QCString
trForInternalUseOnly
()
{
return
decode
(
"内部使用のみ。"
)
;
}
/*! this text is generated when the \\reimp command is used. */
QCString
trReimplementedForInternalReasons
()
{
return
"内部的な理由により再実装されましたが、APIには影響しません。"
;
virtual
QCString
trReimplementedForInternalReasons
()
{
return
decode
(
"内部的な理由により再実装されましたが、APIには影響しません。"
)
;
}
/*! this text is generated when the \\warning command is used. */
QCString
trWarning
()
{
return
"警告"
;
}
virtual
QCString
trWarning
()
{
return
decode
(
"警告"
)
;
}
/*! this text is generated when the \\bug command is used. */
QCString
trBugsAndLimitations
()
{
return
"バグと制限"
;
}
virtual
QCString
trBugsAndLimitations
()
{
return
decode
(
"バグと制限"
)
;
}
/*! this text is generated when the \\version command is used. */
QCString
trVersion
()
{
return
"バージョン"
;
}
virtual
QCString
trVersion
()
{
return
decode
(
"バージョン"
)
;
}
/*! this text is generated when the \\date command is used. */
QCString
trDate
()
{
return
"日付"
;
}
virtual
QCString
trDate
()
{
return
decode
(
"日付"
)
;
}
/*! this text is generated when the \\author command is used. */
QCString
trAuthors
()
{
return
"作者"
;
}
virtual
QCString
trAuthors
()
{
return
decode
(
"作者"
)
;
}
/*! this text is generated when the \\return command is used. */
QCString
trReturns
()
{
return
"戻り値"
;
}
virtual
QCString
trReturns
()
{
return
decode
(
"戻り値"
)
;
}
/*! this text is generated when the \\sa command is used. */
QCString
trSeeAlso
()
{
return
"参照"
;
}
virtual
QCString
trSeeAlso
()
{
return
decode
(
"参照"
)
;
}
/*! this text is generated when the \\param command is used. */
QCString
trParameters
()
{
return
"引数"
;
}
virtual
QCString
trParameters
()
{
return
decode
(
"引数"
)
;
}
/*! this text is generated when the \\exception command is used. */
QCString
trExceptions
()
{
return
"例外"
;
}
virtual
QCString
trExceptions
()
{
return
decode
(
"例外"
)
;
}
/*! this text is used in the title page of a LaTeX document. */
QCString
trGeneratedBy
()
{
return
""
;
}
virtual
QCString
trGeneratedBy
()
{
return
decode
(
""
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
/*! used as the title of page containing all the index of all namespaces. */
QCString
trNamespaceList
()
{
return
"名前空間リスト"
;
}
virtual
QCString
trNamespaceList
()
{
return
decode
(
"名前空間リスト"
)
;
}
/*! used as an introduction to the namespace list */
QCString
trNamespaceListDescription
(
bool
extractAll
)
virtual
QCString
trNamespaceListDescription
(
bool
extractAll
)
{
QCString
result
=
"このリストは、簡易説明を持つすべての"
;
if
(
!
extractAll
)
result
+=
"ドキュメント化された"
;
result
+=
"名前空間のリストです。"
;
return
result
;
return
decode
(
result
)
;
}
/*! used in the class documentation as a header before the list of all
* friends of a class
*/
QCString
trFriends
()
{
return
"フレンド"
;
}
virtual
QCString
trFriends
()
{
return
decode
(
"フレンド"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
...
...
@@ -482,16 +577,16 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
* related classes
*/
virtual
QCString
trRelatedFunctionDocumentation
()
{
return
"フレンドと関連する関数の解説"
;
}
{
return
decode
(
"フレンドと関連する関数の解説"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////
/*! 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*/
)
bool
isTemplate
)
{
QCString
result
=
""
;
switch
(
compType
)
...
...
@@ -500,52 +595,53 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
case
ClassDef
:
:
Struct
:
result
+=
"構造体 "
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"共用体 "
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"インタフェース"
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"
Exception
"
;
break
;
//TODO:fixme
case
ClassDef
:
:
Exception
:
result
+=
"
例外
"
;
break
;
//TODO:fixme
}
if
(
isTemplate
)
result
+=
" テンプレート"
;
result
+=
(
QCString
)
clName
+
" の解説"
;
return
result
;
return
decode
(
result
)
;
}
/*! used as the title of the HTML page of a file */
QCString
trFileReference
(
const
char
*
fileName
)
virtual
QCString
trFileReference
(
const
char
*
fileName
)
{
QCString
result
=
"ファイル "
+
(
QCString
)
fileName
+
" の解説"
;
return
result
;
return
decode
(
result
)
;
}
/*! used as the title of the HTML page of a namespace */
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
virtual
QCString
trNamespaceReference
(
const
char
*
namespaceName
)
{
QCString
result
=
"名前空間 "
+
(
QCString
)
namespaceName
+
" の解説"
;
return
result
;
return
decode
(
result
)
;
}
/* these are for the member sections of a class, struct or union */
QCString
trPublicMembers
()
{
return
"公開メンバ"
;
}
QCString
trPublicSlots
()
{
return
"公開スロット"
;
}
QCString
trSignals
()
{
return
"シグナル"
;
}
QCString
trStaticPublicMembers
()
{
return
"静的公開メンバ"
;
}
QCString
trProtectedMembers
()
{
return
"保護メンバ"
;
}
QCString
trProtectedSlots
()
{
return
"保護スロット"
;
}
QCString
trStaticProtectedMembers
()
{
return
"静的保護メンバ"
;
}
QCString
trPrivateMembers
()
{
return
"非公開メンバ"
;
}
QCString
trPrivateSlots
()
{
return
"非公開スロット"
;
}
QCString
trStaticPrivateMembers
()
{
return
"静的非公開メンバ"
;
}
virtual
QCString
trPublicMembers
()
{
return
decode
(
"公開メンバ"
)
;
}
virtual
QCString
trPublicSlots
()
{
return
decode
(
"公開スロット"
)
;
}
virtual
QCString
trSignals
()
{
return
decode
(
"シグナル"
)
;
}
virtual
QCString
trStaticPublicMembers
()
{
return
decode
(
"静的公開メンバ"
)
;
}
virtual
QCString
trProtectedMembers
()
{
return
decode
(
"保護メンバ"
)
;
}
virtual
QCString
trProtectedSlots
()
{
return
decode
(
"保護スロット"
)
;
}
virtual
QCString
trStaticProtectedMembers
()
{
return
decode
(
"静的保護メンバ"
)
;
}
virtual
QCString
trPrivateMembers
()
{
return
decode
(
"非公開メンバ"
)
;
}
virtual
QCString
trPrivateSlots
()
{
return
decode
(
"非公開スロット"
)
;
}
virtual
QCString
trStaticPrivateMembers
()
{
return
decode
(
"静的非公開メンバ"
)
;
}
/*! 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
;
...
...
@@ -564,47 +660,47 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
result
+=
", と "
;
}
}
return
result
;
return
decode
(
result
)
;
}
/*! 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
)
+
"を継承しています。"
;
return
decode
(
trWriteList
(
numEntries
)
+
"を継承しています。"
)
;
}
/*! 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
)
+
"に継承されています。"
;
return
decode
(
trWriteList
(
numEntries
)
+
"に継承されています。"
)
;
}
/*! 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
)
+
"を再定義しています。"
;
return
decode
(
trWriteList
(
numEntries
)
+
"を再定義しています。"
)
;
}
/*! used in member documentation blocks to produce a list of
* all member that overwrite the implementation of this member.
*/
QCString
trReimplementedInList
(
int
numEntries
)
virtual
QCString
trReimplementedInList
(
int
numEntries
)
{
return
trWriteList
(
numEntries
)
+
"で再定義されています。"
;
return
decode
(
trWriteList
(
numEntries
)
+
"で再定義されています。"
)
;
}
/*! This is put above each page as a link to all members of namespaces. */
QCString
trNamespaceMembers
()
{
return
"名前空間メンバ"
;
}
virtual
QCString
trNamespaceMembers
()
{
return
decode
(
"名前空間メンバ"
)
;
}
/*! 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
+=
"ドキュメント化された"
;
...
...
@@ -614,19 +710,19 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
else
result
+=
"が属している名前空間"
;
result
+=
"へのリンクが張られています。"
;
return
result
;
return
decode
(
result
)
;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
QCString
trNamespaceIndex
()
{
return
"名前空間索引"
;
}
virtual
QCString
trNamespaceIndex
()
{
return
decode
(
"名前空間索引"
)
;
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
*/
QCString
trNamespaceDocumentation
()
{
return
"名前空間の解説"
;
}
virtual
QCString
trNamespaceDocumentation
()
{
return
decode
(
"名前空間の解説"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
...
...
@@ -635,8 +731,8 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
/*! This is used in the documentation before the list of all
* namespaces in a file.
*/
QCString
trNamespaces
()
{
return
"名前空間"
;
}
virtual
QCString
trNamespaces
()
{
return
decode
(
"名前空間"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
...
...
@@ -645,7 +741,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
/*! 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
)
{
// here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
...
...
@@ -656,61 +752,61 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
case
ClassDef
:
:
Struct
:
result
+=
"構造体"
;
break
;
case
ClassDef
:
:
Union
:
result
+=
"共用体"
;
break
;
case
ClassDef
:
:
Interface
:
result
+=
"インタフェース"
;
break
;
case
ClassDef
:
:
Exception
:
result
+=
"
Exception
"
;
break
;
//TODO:fixme
case
ClassDef
:
:
Exception
:
result
+=
"
例外
"
;
break
;
//TODO:fixme
}
result
+=
"の解説は次のファイルから生成されました:"
;
return
result
;
return
decode
(
result
)
;
}
/*! This is in the (quick) index as a link to the alphabetical compound
* list.
*/
QCString
trAlphabeticalList
()
{
return
"アルファベット順リスト"
;
}
virtual
QCString
trAlphabeticalList
()
{
return
decode
(
"アルファベット順リスト"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
//////////////////////////////////////////////////////////////////////////
/*! This is used as the heading text for the retval command. */
QCString
trReturnValues
()
{
return
"戻り値"
;
}
virtual
QCString
trReturnValues
()
{
return
decode
(
"戻り値"
)
;
}
/*! This is in the (quick) index as a link to the main page (index.html)
*/
QCString
trMainPage
()
{
return
"メインページ"
;
}
virtual
QCString
trMainPage
()
{
return
decode
(
"メインページ"
)
;
}
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
*/
QCString
trPageAbbreviation
()
{
return
"p."
;
}
virtual
QCString
trPageAbbreviation
()
{
return
decode
(
"p."
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991003
//////////////////////////////////////////////////////////////////////////
QCString
trSources
()
virtual
QCString
trSources
()
{
return
"ソース"
;
return
decode
(
"ソース"
)
;
}
QCString
trDefinedAtLineInSourceFile
()
virtual
QCString
trDefinedAtLineInSourceFile
()
{
return
"ファイル @1 の @0 行で定義されています。"
;
return
decode
(
"ファイル @1 の @0 行で定義されています。"
)
;
}
QCString
trDefinedInSourceFile
()
virtual
QCString
trDefinedInSourceFile
()
{
return
"ファイル @0 で定義されています。"
;
return
decode
(
"ファイル @0 で定義されています。"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.0.0
//////////////////////////////////////////////////////////////////////////
QCString
trDeprecated
()
virtual
QCString
trDeprecated
()
{
return
"Deprecated"
;
return
decode
(
"非推奨"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -718,115 +814,122 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! this text is put before a collaboration diagram */
QCString
trCollaborationDiagram
(
const
char
*
clName
)
virtual
QCString
trCollaborationDiagram
(
const
char
*
clName
)
{
return
(
QCString
)
clName
+
"のコラボレーション図"
;
return
decode
((
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
+
"のインクルード依存関係図"
;
return
decode
((
QCString
)
fName
+
"のインクルード依存関係図"
)
;
}
/*! header that is put before the list of constructor/destructors. */
QCString
trConstructorDocumentation
()
virtual
QCString
trConstructorDocumentation
()
{
return
"コンストラクタとデストラクタの解説"
;
return
decode
(
"コンストラクタとデストラクタの解説"
)
;
}
/*! Used in the file documentation to point to the corresponding sources. */
QCString
trGotoSourceCode
()
virtual
QCString
trGotoSourceCode
()
{
return
"このファイルのソースコードを見る。"
;
return
decode
(
"このファイルのソースコードを見る。"
)
;
}
/*! Used in the file sources to point to the corresponding documentation. */
QCString
trGotoDocumentation
()
virtual
QCString
trGotoDocumentation
()
{
return
"このファイルの解説を見る。"
;
return
decode
(
"このファイルの解説を見る。"
)
;
}
/*! Text for the \\pre command */
QCString
trPrecondition
()
virtual
QCString
trPrecondition
()
{
return
"事前条件"
;
return
decode
(
"事前条件"
)
;
}
/*! Text for the \\post command */
QCString
trPostcondition
()
virtual
QCString
trPostcondition
()
{
return
"事後条件"
;
return
decode
(
"事後条件"
)
;
}
/*! Text for the \\invariant command */
QCString
trInvariant
()
virtual
QCString
trInvariant
()
{
return
"Invariant"
;
return
decode
(
"不変"
)
;
}
/*! Text shown before a multi-line variable/enum initialization */
QCString
trInitialValue
()
virtual
QCString
trInitialValue
()
{
return
"初期値:"
;
return
decode
(
"初期値:"
)
;
}
/*! Text used the source code in the file index */
QCString
trCode
()
virtual
QCString
trCode
()
{
return
"コード"
;
return
decode
(
"コード"
)
;
}
QCString
trGraphicalHierarchy
()
virtual
QCString
trGraphicalHierarchy
()
{
return
"クラス階層図"
;
return
decode
(
"クラス階層図"
)
;
}
QCString
trGotoGraphicalHierarchy
()
virtual
QCString
trGotoGraphicalHierarchy
()
{
return
"クラス階層図を見る。"
;
return
decode
(
"クラス階層図を見る。"
)
;
}
QCString
trGotoTextualHierarchy
()
virtual
QCString
trGotoTextualHierarchy
()
{
return
"クラス階層図(テキスト)を見る。"
;
return
decode
(
"クラス階層図(テキスト)を見る。"
)
;
}
QCString
trPageIndex
()
virtual
QCString
trPageIndex
()
{
return
"ページ索引"
;
return
decode
(
"ページ索引"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
QCString
trNote
()
virtual
QCString
trNote
()
{
return
"覚え書き"
;
return
decode
(
"覚え書き"
)
;
}
QCString
trPublicTypes
()
virtual
QCString
trPublicTypes
()
{
return
"公開型"
;
return
decode
(
"公開型"
)
;
}
QCString
trPublicAttribs
()
virtual
QCString
trPublicAttribs
()
{
return
"公開属性"
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データフィールド"
);
}
else
{
return
decode
(
"公開属性"
);
}
}
QCString
trStaticPublicAttribs
()
virtual
QCString
trStaticPublicAttribs
()
{
return
"静的公開属性"
;
return
decode
(
"静的公開属性"
)
;
}
QCString
trProtectedTypes
()
virtual
QCString
trProtectedTypes
()
{
return
"保護型"
;
return
decode
(
"保護型"
)
;
}
QCString
trProtectedAttribs
()
virtual
QCString
trProtectedAttribs
()
{
return
"保護属性"
;
return
decode
(
"保護属性"
)
;
}
QCString
trStaticProtectedAttribs
()
virtual
QCString
trStaticProtectedAttribs
()
{
return
"静的保護属性"
;
return
decode
(
"静的保護属性"
)
;
}
QCString
trPrivateTypes
()
virtual
QCString
trPrivateTypes
()
{
return
"非公開型"
;
return
decode
(
"非公開型"
)
;
}
QCString
trPrivateAttribs
()
virtual
QCString
trPrivateAttribs
()
{
return
"非公開属性"
;
return
decode
(
"非公開属性"
)
;
}
QCString
trStaticPrivateAttribs
()
virtual
QCString
trStaticPrivateAttribs
()
{
return
"静的非公開属性"
;
return
decode
(
"静的非公開属性"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -834,40 +937,40 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a todo item */
QCString
trTodo
()
virtual
QCString
trTodo
()
{
return
"TODO"
;
return
decode
(
"TODO"
)
;
}
/*! Used as the header of the todo list */
QCString
trTodoList
()
virtual
QCString
trTodoList
()
{
return
"TODOリスト"
;
return
decode
(
"TODOリスト"
)
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.4
//////////////////////////////////////////////////////////////////////////
QCString
trReferencedBy
()
virtual
QCString
trReferencedBy
()
{
return
"次で参照されています。"
;
return
decode
(
"参照位置"
)
;
}
QCString
trRemarks
()
virtual
QCString
trRemarks
()
{
return
"意見"
;
return
decode
(
"意見"
)
;
}
QCString
trAttention
()
virtual
QCString
trAttention
()
{
return
"注意"
;
return
decode
(
"注意"
)
;
}
QCString
trInclByDepGraph
()
virtual
QCString
trInclByDepGraph
()
{
return
"このグラフは、このファイルがどのファイルから直接、間接的に"
"インクルードされているかを示しています。"
;
return
decode
(
"このグラフは、このファイルがどのファイルから直接、間接的に"
"インクルードされているかを示しています。"
)
;
}
QCString
trSince
()
virtual
QCString
trSince
()
{
return
"Since"
;
return
decode
(
"から"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -875,15 +978,15 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! title of the graph legend page */
QCString
trLegendTitle
()
virtual
QCString
trLegendTitle
()
{
return
"グラフの凡例"
;
return
decode
(
"グラフの凡例"
)
;
}
/*! page explaining how the dot graph's should be interpreted */
QCString
trLegendDocs
()
virtual
QCString
trLegendDocs
()
{
return
"このページでは、doxygen で生成されたグラフをどのようにみたらよいかを"
decode
(
"このページでは、doxygen で生成されたグラフをどのようにみたらよいかを"
"説明します。<p>
\n
"
"次の例を考えてみます。
\n
"
"
\\
code
\n
"
...
...
@@ -933,12 +1036,12 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
"<li>紫の破線矢印は、そのクラスが他のクラスに含まれていたり、"
"利用されていることを示します。また、矢印が指しているクラスや構造体を"
"どの変数でアクセスできるかを矢印のラベルとして示しています。
\n
"
"</ul>
\n
"
;
"</ul>
\n
"
)
;
}
/*! text for the link to the legend page */
QCString
trLegend
()
virtual
QCString
trLegend
()
{
return
"凡例"
;
return
decode
(
"凡例"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -946,14 +1049,14 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a test item */
QCString
trTest
()
virtual
QCString
trTest
()
{
return
"テスト"
;
return
decode
(
"テスト"
)
;
}
/*! Used as the header of the test list */
QCString
trTestList
()
virtual
QCString
trTestList
()
{
return
"テストリスト"
;
return
decode
(
"テストリスト"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -961,9 +1064,9 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for KDE-2 IDL methods */
QCString
trDCOPMethods
()
virtual
QCString
trDCOPMethods
()
{
return
"DCOPメソッド"
;
return
decode
(
"DCOPメソッド"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -971,14 +1074,14 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for IDL properties */
QCString
trProperties
()
virtual
QCString
trProperties
()
{
return
"プロパティ"
;
return
decode
(
"プロパティ"
)
;
}
/*! Used as a section header for IDL property documentation */
QCString
trPropertyDocumentation
()
virtual
QCString
trPropertyDocumentation
()
{
return
"プロパティの解説"
;
return
decode
(
"プロパティの解説"
)
;
}
...
...
@@ -989,43 +1092,241 @@ class TranslatorJapanese : public TranslatorAdapter_1_2_5
/*! Used for Java interfaces in the summary section of Java packages */
virtual
QCString
trInterfaces
()
{
return
"インターフェース"
;
return
decode
(
"インターフェース"
)
;
}
/*! Used for Java classes in the summary section of Java packages */
virtual
QCString
trClasses
()
{
return
"クラス"
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
decode
(
"データ構造"
);
}
else
{
return
decode
(
"クラス"
);
}
}
/*! Used as the title of a Java package */
virtual
QCString
trPackage
(
const
char
*
name
)
{
return
(
QCString
)
"パッケージ "
+
name
;
return
decode
((
QCString
)
"パッケージ "
+
name
)
;
}
/*! Title of the package index page */
virtual
QCString
trPackageList
()
{
return
"パッケージリスト"
;
return
decode
(
"パッケージリスト"
)
;
}
/*! The description of the package index page */
virtual
QCString
trPackageListDescription
()
{
return
"簡易説明を持つパッケージです。"
;
return
decode
(
"簡易説明を持つパッケージです。"
)
;
}
/*! The link name in the Quick links header for each page */
virtual
QCString
trPackages
()
{
return
"パッケージ"
;
return
decode
(
"パッケージ"
)
;
}
/*! Used as a chapter title for Latex & RTF output */
virtual
QCString
trPackageDocumentation
()
{
return
"パッケージの解説"
;
return
decode
(
"パッケージの解説"
)
;
}
/*! Text shown before a multi-line define */
virtual
QCString
trDefineValue
()
{
return
"値:"
;
return
decode
(
"値:"
);
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.5
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a \\bug item */
virtual
QCString
trBug
()
{
return
decode
(
"バグ"
);
}
/*! Used as the header of the bug list */
virtual
QCString
trBugList
()
{
return
decode
(
"バグのリスト"
);
}
//////////////////////////////////////////////////////////////////////////
// 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
"932"
;
}
/*! Used as ansicpg for RTF fcharset
* \see trRTFansicp() for a table of possible values.
*/
virtual
QCString
trRTFCharSet
()
{
return
"128"
;
}
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
decode
(
"索引"
);
}
/*! 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
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"クラス"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trFile
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"ファイル"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trNamespace
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"名前空間"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGroup
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"グループ"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trPage
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"ページ"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trMember
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"メンバ"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"フィールド"
);
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGlobal
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"グローバル"
);
return
decode
(
result
);
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.7
//////////////////////////////////////////////////////////////////////////
/*! This text is generated when the \\author command is used and
* for the author section in man pages. */
virtual
QCString
trAuthor
(
bool
first_capital
,
bool
singular
)
{
first_capital
=
first_capital
;
singular
=
singular
;
QCString
result
(
"作者"
);
return
decode
(
result
);
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
decode
(
"参照"
);
}
};
#endif
src/translator_sk.h
View file @
9d4d8095
...
...
@@ -23,7 +23,7 @@
#ifndef TRANSLATOR_SK_H
#define TRANSLATOR_SK_H
class
TranslatorSlovak
:
public
Translator
Adapter_1_2_11
class
TranslatorSlovak
:
public
Translator
{
private
:
/*! The Decode() inline assumes the source written in the
...
...
@@ -1221,13 +1221,13 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
/*! Used as ansicpg for RTF fcharset */
virtual
QCString
trRTFCharSet
()
{
return
"
0"
;
//???
return
"
3"
;
}
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
{
return
"Index"
;
//???
return
"Index"
;
}
/*! This is used for translation of the word that will possibly
...
...
@@ -1331,6 +1331,17 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
result
+=
(
singular
)
?
"r"
:
"ri"
;
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////
/*! This text is put before the list of members referenced by a member
*/
virtual
QCString
trReferences
()
{
return
Decode
(
"Odkazuje sa na"
);
}
};
#endif // TRANSLATOR_SK_H
src/util.cpp
View file @
9d4d8095
...
...
@@ -3102,7 +3102,8 @@ const char *getOverloadDocs()
"function only in what argument(s) it accepts."
;
}
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupSDict
*
memberGroupSDict
)
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupSDict
*
memberGroupSDict
,
Definition
*
context
)
{
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
...
...
@@ -3122,19 +3123,30 @@ void addMembersToMemberGroup(MemberList *ml,MemberGroupSDict *memberGroupSDict)
mg
=
new
MemberGroup
(
groupId
,
*
pGrpHeader
,
pDocs
?
pDocs
->
data
()
:
0
);
memberGroupSDict
->
append
(
groupId
,
mg
);
}
md
=
ml
->
take
(
index
);
mg
->
insertMember
(
md
);
md
=
ml
->
take
(
index
);
// remove from member list
//if (allMembers) // remove from all member list as well
//{
// MemberNameInfo *mni = allMembers->find(md->name());
// if (mni)
// {
// QListIterator<MemberInfo> mii(*mni);
// MemberInfo *mi;
// for (;(mi=mii.current());++mii)
// {
// if (mi->memberDef==md)
// {
// mni->remove(mi);
// break;
// }
// }
// }
//}
mg
->
insertMember
(
context
,
md
);
// insert in member group
md
->
setMemberGroup
(
mg
);
continue
;
}
else
{
++
mli
;
++
index
;
}
}
else
{
++
mli
;
++
index
;
}
++
mli
;
++
index
;
}
}
...
...
src/util.h
View file @
9d4d8095
...
...
@@ -42,6 +42,7 @@ class ClassList;
class
MemberGroupSDict
;
class
Definition
;
struct
TagInfo
;
class
MemberNameInfoSDict
;
//--------------------------------------------------------------------
...
...
@@ -148,7 +149,9 @@ 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
,
MemberGroupSDict
*
memberGroupSDict
);
void
addMembersToMemberGroup
(
MemberList
*
ml
,
MemberGroupSDict
*
memberGroupSDict
,
Definition
*
context
=
0
);
bool
extractClassNameFromType
(
const
QCString
&
type
,
int
&
pos
,
QCString
&
name
,
QCString
&
templSpec
);
QCString
substituteTemplateArgumentsInString
(
...
...
src/xmlgen.cpp
View file @
9d4d8095
...
...
@@ -83,16 +83,12 @@ inline void writeXMLString(QTextStream &t,const char *s)
void
writeXMLLink
(
QTextStream
&
t
,
const
char
*
extRef
,
const
char
*
compoundId
,
const
char
*
anchorId
,
const
char
*
text
)
{
t
<<
"<ref idref=
\"
"
<<
compoundId
;
if
(
anchorId
)
{
t
<<
"_1"
<<
anchorId
;
}
t
<<
"<ref refid=
\"
"
<<
compoundId
;
if
(
anchorId
)
t
<<
"_1"
<<
anchorId
;
t
<<
"
\"
kindref=
\"
"
;
if
(
anchorId
)
t
<<
"member"
;
else
t
<<
"compound"
;
t
<<
"
\"
"
;
if
(
extRef
)
{
t
<<
" external=
\"
"
<<
extRef
<<
"
\"
"
;
}
if
(
extRef
)
t
<<
" external=
\"
"
<<
extRef
<<
"
\"
"
;
t
<<
">"
;
writeXMLString
(
t
,
text
);
t
<<
"</ref>"
;
...
...
@@ -613,17 +609,27 @@ class XMLGenerator : public OutputDocInterface
XML_DB
((
"(endSuperscript)
\n
"
));
m_t
<<
"</superscript>"
;
}
void
startTable
(
int
cols
)
void
startTable
(
bool
,
int
cols
)
{
XML_DB
((
"startTable
\n
"
));
startParMode
();
m_t
<<
"<table cols=
\"
"
<<
cols
<<
"
\"
>
\n
"
;
}
void
endTable
()
void
endTable
(
bool
)
{
XML_DB
((
"endTable
\n
"
));
m_t
<<
"</row>
\n
</table>"
;
}
void
startCaption
()
{
XML_DB
((
"startCaption"
));
m_t
<<
"<caption>"
;
}
void
endCaption
()
{
XML_DB
((
"encCaption"
));
m_t
<<
"</caption"
;
}
void
nextTableRow
()
{
XML_DB
((
"(nextTableRow)
\n
"
));
...
...
@@ -764,15 +770,20 @@ class XMLGenerator : public OutputDocInterface
{
XML_DB
((
"(endPageRef)
\n
"
));
}
void
writeLineNumber
(
const
char
*
,
const
char
*
file
,
// TODO: support external references
const
char
*
anchor
,
int
l
)
void
writeLineNumber
(
const
char
*
extRef
,
const
char
*
compId
,
const
char
*
anchor
Id
,
int
l
)
{
XML_DB
((
"(writeLineNumber)
\n
"
));
m_t
<<
"<linenumber"
;
m_t
<<
" line=
\"
"
<<
l
<<
"
\"
"
;
if
(
file
)
if
(
compId
)
{
m_t
<<
" refid=
\"
"
<<
file
<<
"_1"
<<
anchor
<<
"
\"
"
;
m_t
<<
" refid=
\"
"
<<
compId
;
if
(
anchorId
)
m_t
<<
"_1"
<<
anchorId
;
m_t
<<
"
\"
kindref=
\"
"
;
if
(
anchorId
)
m_t
<<
"member"
;
else
m_t
<<
"compound"
;
m_t
<<
"
\"
"
;
if
(
extRef
)
m_t
<<
" external=
\"
"
<<
extRef
<<
"
\"
"
;
}
m_t
<<
"/>"
;
}
...
...
@@ -1172,7 +1183,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
{
t
<<
" <exceptions>"
;
linkifyText
(
TextGeneratorXMLImpl
(
t
),
scopeName
,
md
->
name
(),
md
->
excpString
());
t
<<
"</exception>"
<<
endl
;
t
<<
"</exception
s
>"
<<
endl
;
}
if
(
md
->
memberType
()
==
MemberDef
::
Enumeration
)
// enum
...
...
@@ -1293,7 +1304,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
BaseClassDef
*
bcd
;
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
{
t
<<
" <basecompoundref
idref
=
\"
"
t
<<
" <basecompoundref
refid
=
\"
"
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
"
\"
prot=
\"
"
;
switch
(
bcd
->
prot
)
...
...
@@ -1318,7 +1329,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
BaseClassDef
*
bcd
;
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
{
t
<<
" <derivedcompoundref
idref
=
\"
"
t
<<
" <derivedcompoundref
refid
=
\"
"
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
"
\"
prot=
\"
"
;
switch
(
bcd
->
prot
)
...
...
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