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
Expand all
Show 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
...
@@ -140,7 +140,7 @@ MAN_LINKS = NO
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options related to the XML output
# configuration options related to the XML output
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
GENERATE_XML =
NO
GENERATE_XML =
YES
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
...
@@ -168,7 +168,7 @@ PERL_PATH = /usr/bin/perl
...
@@ -168,7 +168,7 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
CLASS_DIAGRAMS = NO
HAVE_DOT =
NO
HAVE_DOT =
YES
CLASS_GRAPH = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
COLLABORATION_GRAPH = YES
TEMPLATE_RELATIONS = 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.
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.
Please read INSTALL for compilation instructions.
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
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"?>
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- DTD describing the grammar used in doxygen's XML output -->
<!-- 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 -->
<!-- standard character entities -->
<!ENTITY lt "&#60;">
<!ENTITY lt "&#60;">
...
@@ -12,26 +10,70 @@
...
@@ -12,26 +10,70 @@
<!ENTITY apos "'">
<!ENTITY apos "'">
<!ENTITY quot """>
<!ENTITY quot """>
<!-- required attributes for compounds -->
<!--
Document root
-->
<!ELEMENT doxygen (compounddef)*>
<!--
Compound related entities and elements
-->
<!ENTITY % compound-req.att
<!ENTITY % compound-req.att
'id ID #REQUIRED
'id ID #REQUIRED
type
(group|file|namespace|
kind
(group|file|namespace|
class|struct|union|
class|struct|union|
interface|dispinterface|
interface|dispinterface|
valuetype|library) #REQUIRED'
valuetype|library) #REQUIRED'
>
>
<!-- required attributes for references -->
<!ENTITY % ref-req.att 'idref IDREF #REQUIRED'
<!ENTITY % ref-req.att 'idref IDREF #REQUIRED'
>
>
<!-- required attributes for inheritance relations -->
<!ENTITY % inheritcompref-req.att
<!ENTITY % inheritcompref-req.att
'%ref-req.att;
'%ref-req.att;
prot (public|protected|private) #REQUIRED
prot (public|protected|private) #REQUIRED
virt (non-virtual|virtual) #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 -->
<!-- required attributes for member sections -->
<!ENTITY % sec-req.att '
type
(user
<!ENTITY % sec-req.att '
kind
(user
|public-type
|public-type
|public-func
|public-func
|public-attrib
|public-attrib
...
@@ -59,65 +101,148 @@
...
@@ -59,65 +101,148 @@
) #REQUIRED
) #REQUIRED
'
'
>
>
<!-- required attributes for members -->
<!ENTITY % mem-req.att 'id ID #REQUIRED'>
<!ENTITY % mem-req.att 'id ID #REQUIRED'>
<!-- optional attributes for function -->
<!-- optional attributes for function -->
<!ENTITY % func-opt.att 'virt (virtual|pure-virtual) #IMPLIED'>
<!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)>
<!ELEMENT memberref (#PCDATA)>
<!ATTLIST memberref %ref-req.att;>
<!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 sectionlist (sectiondef)+>
<!ELEMENT sectiondef (memberlist)>
<!ELEMENT sectiondef (memberdef|memberlist)*>
<!ATTLIST sectiondef %sec-req.att;>
<!ATTLIST sectiondef %sec-req.att;>
<!ELEMENT memberlist (functiondef|variabledef|typedef|definedef|enumdef)+>
<!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;>
<!ATTLIST functiondef %mem-req.att; %func-opt.att;>
<!ELEMENT variabledef (type,name,array?,initializer?)>
<!ELEMENT variabledef (type,name,array?,initializer?)>
<!ATTLIST variabledef %mem-req.att;>
<!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)>
<!ELEMENT typedef (type,name)>
<!ATTLIST typedef %mem-req.att;>
<!ATTLIST typedef %mem-req.att;>
<!ELEMENT definedef (name,defparamlist?,initializer?)>
<!ELEMENT definedef (name,defparameterlist?,initializer?)>
<!ATTLIST definedef %mem-req.att;>
<!ATTLIST definedef %mem-req.att;>
<!ELEMENT enumdef (name,enumvaluelist)>
<!ELEMENT enumdef (name,enumvaluelist)>
<!ATTLIST enumdef %mem-req.att;>
<!ATTLIST enumdef %mem-req.att;>
<!ELEMENT slotdef (type,name,paramlist)>
<!ELEMENT slotdef (type,name,parameterlist)>
<!ATTLIST slotdef %mem-req.att;>
<!ATTLIST slotdef %mem-req.att;>
<!ELEMENT signaldef (type,name,paramlist)>
<!ELEMENT signaldef (type,name,parameterlist)>
<!ATTLIST signaldef %mem-req.att;>
<!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 enumvaluelist (enumvalue)*>
<!ELEMENT enumvalue (name,initializer?)>
<!ELEMENT enumvalue (name,initializer?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT compoundname (#PCDATA)>
<!ELEMENT declname (#PCDATA)>
<!ELEMENT declname (#PCDATA)>
<!ELEMENT defname (#PCDATA)>
<!ELEMENT defname (#PCDATA)>
<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef)*>
<!ELEMENT type (#PCDATA|memberref|compoundref|compounddef|ref)*>
<!ELEMENT defval (#PCDATA|memberref|compoundref)*>
<!ELEMENT defval (#PCDATA|memberref|compoundref)*>
<!ELEMENT initializer (#PCDATA|memberref|compoundref)*>
<!ELEMENT initializer (#PCDATA|memberref|compoundref|ref)*>
<!ELEMENT array (#PCDATA)>
<!ELEMENT array (#PCDATA)>
<!ELEMENT attributes (#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
...
@@ -22,7 +22,9 @@ class ILT_Text : public ILinkedText
class
ILT_Ref
:
public
ILinkedText
class
ILT_Ref
:
public
ILinkedText
{
{
public
:
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
};
...
@@ -104,8 +106,8 @@ class IDoc
...
@@ -104,8 +106,8 @@ class IDoc
Para
,
// 0 -> IDocPara
Para
,
// 0 -> IDocPara
Text
,
// 1 -> IDocText
Text
,
// 1 -> IDocText
MarkupModifier
,
// 2 -> IDocMarkupModifier
MarkupModifier
,
// 2 -> IDocMarkupModifier
ItemizedList
,
// 3 -> IDocList
ItemizedList
,
// 3 -> IDoc
Itemized
List
OrderedList
,
// 4 -> IDocList
OrderedList
,
// 4 -> IDoc
Ordered
List
ListItem
,
// 5 -> IDocListItem
ListItem
,
// 5 -> IDocListItem
ParameterList
,
// 6 -> IDocParameterList
ParameterList
,
// 6 -> IDocParameterList
Parameter
,
// 7 -> IDocParameter
Parameter
,
// 7 -> IDocParameter
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
class
IDocMarkupModifier
:
public
IDoc
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
class
IDocListItem
:
public
IDoc
{
{
public
:
virtual
IDocIterator
*
contents
()
const
=
0
;
};
};
class
IDocParameterList
:
public
IDoc
class
IDocParameterList
:
public
IDoc
{
{
public
:
enum
Types
{
Param
,
RetVal
,
Exception
};
virtual
Types
listType
()
const
=
0
;
virtual
IDocIterator
*
params
()
const
=
0
;
};
};
class
IDocParameter
:
public
IDoc
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
:
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
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
class
IDocVariableList
:
public
IDoc
...
...
addon/doxmlparser/src/compoundhandler.cpp
View file @
9d4d8095
...
@@ -111,7 +111,7 @@ void CompoundHandler::endCompoundName()
...
@@ -111,7 +111,7 @@ void CompoundHandler::endCompoundName()
void
CompoundHandler
::
addSuperClass
(
const
QXmlAttributes
&
attrib
)
void
CompoundHandler
::
addSuperClass
(
const
QXmlAttributes
&
attrib
)
{
{
SuperClass
*
sc
=
new
SuperClass
(
SuperClass
*
sc
=
new
SuperClass
(
attrib
.
value
(
"
idref
"
),
attrib
.
value
(
"
refid
"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"virt"
)
attrib
.
value
(
"virt"
)
);
);
...
@@ -125,7 +125,7 @@ void CompoundHandler::addSuperClass(const QXmlAttributes& attrib)
...
@@ -125,7 +125,7 @@ void CompoundHandler::addSuperClass(const QXmlAttributes& attrib)
void
CompoundHandler
::
addSubClass
(
const
QXmlAttributes
&
attrib
)
void
CompoundHandler
::
addSubClass
(
const
QXmlAttributes
&
attrib
)
{
{
SubClass
*
sc
=
new
SubClass
(
SubClass
*
sc
=
new
SubClass
(
attrib
.
value
(
"
idref
"
),
attrib
.
value
(
"
refid
"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"prot"
),
attrib
.
value
(
"virt"
)
attrib
.
value
(
"virt"
)
);
);
...
...
addon/doxmlparser/src/dochandler.cpp
View file @
9d4d8095
...
@@ -232,47 +232,85 @@ void ListItemHandler::startParagraph(const QXmlAttributes& attrib)
...
@@ -232,47 +232,85 @@ void ListItemHandler::startParagraph(const QXmlAttributes& attrib)
m_children
.
append
(
parHandler
);
m_children
.
append
(
parHandler
);
}
}
IDocIterator
*
ListItemHandler
::
contents
()
const
{
return
new
ListItemIterator
(
*
this
);
}
//----------------------------------------------------------------------
//----------------------------------------------------------------------
// ListHandler
//
Ordered
ListHandler
//----------------------------------------------------------------------
//----------------------------------------------------------------------
ListHandler
::
ListHandler
(
Kind
k
,
IBaseHandler
*
parent
)
OrderedListHandler
::
OrderedListHandler
(
IBaseHandler
*
parent
)
:
m_parent
(
parent
)
:
m_parent
(
parent
),
m_kind
(
k
)
{
{
m_children
.
setAutoDelete
(
TRUE
);
m_children
.
setAutoDelete
(
TRUE
);
const
char
*
endListName
=
0
;
addEndHandler
(
"orderedlist"
,
this
,
&
OrderedListHandler
::
endOrderedList
);
switch
(
k
)
addStartHandler
(
"listitem"
,
this
,
&
OrderedListHandler
::
startOrderedListItem
);
{
}
case
ItemizedList
:
endListName
=
"itemizedlist"
;
break
;
case
OrderedList
:
endListName
=
"orderedlist"
;
break
;
default
:
ASSERT
(
0
);
}
addEndHandler
(
endListName
,
this
,
&
ListHandler
::
endList
);
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
);
m_parent
->
setDelegate
(
this
);
}
}
void
ListHandler
::
en
dList
()
void
ItemizedListHandler
::
endItemize
dList
()
{
{
m_parent
->
setDelegate
(
0
);
m_parent
->
setDelegate
(
0
);
}
}
void
ListHandler
::
start
ListItem
(
const
QXmlAttributes
&
attrib
)
void
ItemizedListHandler
::
startItemized
ListItem
(
const
QXmlAttributes
&
attrib
)
{
{
ListItemHandler
*
liHandler
=
new
ListItemHandler
(
this
);
ListItemHandler
*
liHandler
=
new
ListItemHandler
(
this
);
liHandler
->
startListItem
(
attrib
);
liHandler
->
startListItem
(
attrib
);
m_children
.
append
(
liHandler
);
m_children
.
append
(
liHandler
);
}
}
IDocIterator
*
ItemizedListHandler
::
elements
()
const
{
return
new
ItemizedListIterator
(
*
this
);
}
//----------------------------------------------------------------------
//----------------------------------------------------------------------
// ParameterHandler
// ParameterHandler
//----------------------------------------------------------------------
//----------------------------------------------------------------------
...
@@ -372,6 +410,11 @@ void ParameterListHandler::startParameterDescription(const QXmlAttributes& attri
...
@@ -372,6 +410,11 @@ void ParameterListHandler::startParameterDescription(const QXmlAttributes& attri
m_curParam
->
startParameterDescription
(
attrib
);
m_curParam
->
startParameterDescription
(
attrib
);
}
}
IDocIterator
*
ParameterListHandler
::
params
()
const
{
return
new
ParameterListIterator
(
*
this
);
}
//----------------------------------------------------------------------
//----------------------------------------------------------------------
// LinkHandler
// LinkHandler
//----------------------------------------------------------------------
//----------------------------------------------------------------------
...
@@ -1116,6 +1159,8 @@ TableHandler::TableHandler(IBaseHandler *parent)
...
@@ -1116,6 +1159,8 @@ TableHandler::TableHandler(IBaseHandler *parent)
m_children
.
setAutoDelete
(
TRUE
);
m_children
.
setAutoDelete
(
TRUE
);
addEndHandler
(
"table"
,
this
,
&
TableHandler
::
endTable
);
addEndHandler
(
"table"
,
this
,
&
TableHandler
::
endTable
);
addStartHandler
(
"row"
,
this
,
&
TableHandler
::
startRow
);
addStartHandler
(
"row"
,
this
,
&
TableHandler
::
startRow
);
addStartHandler
(
"caption"
,
this
,
&
TableHandler
::
startCaption
);
addEndHandler
(
"caption"
,
this
,
&
TableHandler
::
endCaption
);
}
}
TableHandler
::~
TableHandler
()
TableHandler
::~
TableHandler
()
...
@@ -1141,6 +1186,16 @@ void TableHandler::startRow(const QXmlAttributes& attrib)
...
@@ -1141,6 +1186,16 @@ void TableHandler::startRow(const QXmlAttributes& attrib)
m_children
.
append
(
rh
);
m_children
.
append
(
rh
);
}
}
void
TableHandler
::
startCaption
(
const
QXmlAttributes
&
/*attrib*/
)
{
m_curString
=
""
;
}
void
TableHandler
::
endCaption
()
{
m_caption
=
m_curString
;
}
//----------------------------------------------------------------------
//----------------------------------------------------------------------
// ParagraphHandler
// ParagraphHandler
//----------------------------------------------------------------------
//----------------------------------------------------------------------
...
@@ -1195,16 +1250,16 @@ void ParagraphHandler::endParagraph()
...
@@ -1195,16 +1250,16 @@ void ParagraphHandler::endParagraph()
void
ParagraphHandler
::
startItemizedList
(
const
QXmlAttributes
&
attrib
)
void
ParagraphHandler
::
startItemizedList
(
const
QXmlAttributes
&
attrib
)
{
{
addTextNode
();
addTextNode
();
ListHandler
*
listHandler
=
new
ListHandler
(
ItemizedList
,
this
);
ItemizedListHandler
*
listHandler
=
new
ItemizedListHandler
(
this
);
listHandler
->
startList
(
attrib
);
listHandler
->
start
Itemized
List
(
attrib
);
m_children
.
append
(
listHandler
);
m_children
.
append
(
listHandler
);
}
}
void
ParagraphHandler
::
startOrderedList
(
const
QXmlAttributes
&
attrib
)
void
ParagraphHandler
::
startOrderedList
(
const
QXmlAttributes
&
attrib
)
{
{
addTextNode
();
addTextNode
();
ListHandler
*
listHandler
=
new
ListHandler
(
OrderedList
,
this
);
OrderedListHandler
*
listHandler
=
new
OrderedListHandler
(
this
);
listHandler
->
startList
(
attrib
);
listHandler
->
start
Ordered
List
(
attrib
);
m_children
.
append
(
listHandler
);
m_children
.
append
(
listHandler
);
}
}
...
...
addon/doxmlparser/src/dochandler.h
View file @
9d4d8095
This diff is collapsed.
Click to expand it.
addon/doxmlparser/src/doxmlintf.h
View file @
9d4d8095
...
@@ -22,7 +22,9 @@ class ILT_Text : public ILinkedText
...
@@ -22,7 +22,9 @@ class ILT_Text : public ILinkedText
class
ILT_Ref
:
public
ILinkedText
class
ILT_Ref
:
public
ILinkedText
{
{
public
:
public
:
enum
TargetKind
{
Member
,
Compound
};
virtual
QString
id
()
const
=
0
;
virtual
QString
id
()
const
=
0
;
virtual
TargetKind
targetKind
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
external
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
virtual
QString
text
()
const
=
0
;
};
};
...
@@ -104,8 +106,8 @@ class IDoc
...
@@ -104,8 +106,8 @@ class IDoc
Para
,
// 0 -> IDocPara
Para
,
// 0 -> IDocPara
Text
,
// 1 -> IDocText
Text
,
// 1 -> IDocText
MarkupModifier
,
// 2 -> IDocMarkupModifier
MarkupModifier
,
// 2 -> IDocMarkupModifier
ItemizedList
,
// 3 -> IDocList
ItemizedList
,
// 3 -> IDoc
Itemized
List
OrderedList
,
// 4 -> IDocList
OrderedList
,
// 4 -> IDoc
Ordered
List
ListItem
,
// 5 -> IDocListItem
ListItem
,
// 5 -> IDocListItem
ParameterList
,
// 6 -> IDocParameterList
ParameterList
,
// 6 -> IDocParameterList
Parameter
,
// 7 -> IDocParameter
Parameter
,
// 7 -> IDocParameter
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
...
@@ -168,36 +170,74 @@ class IDocText : public IDocMarkup
class
IDocMarkupModifier
:
public
IDoc
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
class
IDocListItem
:
public
IDoc
{
{
public
:
virtual
IDocIterator
*
contents
()
const
=
0
;
};
};
class
IDocParameterList
:
public
IDoc
class
IDocParameterList
:
public
IDoc
{
{
public
:
enum
Types
{
Param
,
RetVal
,
Exception
};
virtual
Types
listType
()
const
=
0
;
virtual
IDocIterator
*
params
()
const
=
0
;
};
};
class
IDocParameter
:
public
IDoc
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
:
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
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
class
IDocVariableList
:
public
IDoc
...
...
addon/doxmlparser/src/linkedtexthandler.cpp
View file @
9d4d8095
...
@@ -36,10 +36,12 @@ class LT_Ref : public ILT_Ref
...
@@ -36,10 +36,12 @@ class LT_Ref : public ILT_Ref
void
setRefId
(
const
QString
&
refId
)
{
m_refId
=
refId
;
}
void
setRefId
(
const
QString
&
refId
)
{
m_refId
=
refId
;
}
void
setText
(
const
QString
&
text
)
{
m_text
=
text
;
}
void
setText
(
const
QString
&
text
)
{
m_text
=
text
;
}
void
setExtId
(
const
QString
&
extId
)
{
m_extId
=
extId
;
}
void
setExtId
(
const
QString
&
extId
)
{
m_extId
=
extId
;
}
void
setTargetKind
(
TargetKind
k
)
{
m_targetKind
=
k
;
}
// ILT_Ref
// ILT_Ref
virtual
QString
text
()
const
{
return
m_text
;
}
virtual
QString
text
()
const
{
return
m_text
;
}
virtual
QString
id
()
const
{
return
m_refId
;
}
virtual
QString
id
()
const
{
return
m_refId
;
}
virtual
TargetKind
targetKind
()
const
{
return
m_targetKind
;
}
virtual
QString
external
()
const
{
return
m_extId
;
}
virtual
QString
external
()
const
{
return
m_extId
;
}
virtual
Kind
kind
()
const
{
return
Kind_Ref
;
}
virtual
Kind
kind
()
const
{
return
Kind_Ref
;
}
...
@@ -47,6 +49,7 @@ class LT_Ref : public ILT_Ref
...
@@ -47,6 +49,7 @@ class LT_Ref : public ILT_Ref
QString
m_refId
;
QString
m_refId
;
QString
m_extId
;
QString
m_extId
;
QString
m_text
;
QString
m_text
;
TargetKind
m_targetKind
;
};
};
LinkedTextHandler
::
LinkedTextHandler
(
IBaseHandler
*
parent
,
LinkedTextHandler
::
LinkedTextHandler
(
IBaseHandler
*
parent
,
...
@@ -92,8 +95,10 @@ void LinkedTextHandler::startRef(const QXmlAttributes& attrib)
...
@@ -92,8 +95,10 @@ void LinkedTextHandler::startRef(const QXmlAttributes& attrib)
}
}
ASSERT
(
m_ref
==
0
);
ASSERT
(
m_ref
==
0
);
m_ref
=
new
LT_Ref
;
m_ref
=
new
LT_Ref
;
m_ref
->
setRefId
(
attrib
.
value
(
"
idref
"
));
m_ref
->
setRefId
(
attrib
.
value
(
"
refid
"
));
m_ref
->
setExtId
(
attrib
.
value
(
"external"
));
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
()
void
LinkedTextHandler
::
endRef
()
...
...
addon/doxmlparser/test/main.cpp
View file @
9d4d8095
...
@@ -60,6 +60,90 @@ void DumpDoc(IDoc *doc)
...
@@ -60,6 +60,90 @@ void DumpDoc(IDoc *doc)
printf
(
" --- text `%s' markup=%d ---
\n
"
,
txt
->
text
().
data
(),
txt
->
markup
());
printf
(
" --- text `%s' markup=%d ---
\n
"
,
txt
->
text
().
data
(),
txt
->
markup
());
}
}
break
;
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
:
case
IDoc
:
:
Title
:
{
{
printf
(
" --- title ---
\n
"
);
printf
(
" --- title ---
\n
"
);
...
@@ -74,6 +158,120 @@ void DumpDoc(IDoc *doc)
...
@@ -74,6 +158,120 @@ void DumpDoc(IDoc *doc)
printf
(
" --- end title ---
\n
"
);
printf
(
" --- end title ---
\n
"
);
}
}
break
;
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
:
case
IDoc
:
:
Section
:
{
{
IDocSection
*
sec
=
dynamic_cast
<
IDocSection
*>
(
doc
);
IDocSection
*
sec
=
dynamic_cast
<
IDocSection
*>
(
doc
);
...
...
addon/doxywizard/Makefile.in
View file @
9d4d8095
...
@@ -10,9 +10,15 @@
...
@@ -10,9 +10,15 @@
# See the GNU General Public License for more details.
# See the GNU General Public License for more details.
#
#
all
:
Makefile.doxywizard
all
:
config.h config.l
Makefile.doxywizard
$(MAKE)
-f
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
Makefile.doxywizard
:
doxywizard.pro
$(ENV)
$(PERL)
$(TMAKE)
doxywizard.pro
>
Makefile.doxywizard
$(ENV)
$(PERL)
$(TMAKE)
doxywizard.pro
>
Makefile.doxywizard
...
@@ -21,9 +27,10 @@ tmake:
...
@@ -21,9 +27,10 @@ tmake:
clean
:
Makefile.doxywizard
clean
:
Makefile.doxywizard
$(MAKE)
-f
Makefile.doxywizard clean
$(MAKE)
-f
Makefile.doxywizard clean
$(RM)
config.cpp
distclean
:
clean
distclean
:
clean
$(RM)
Makefile.doxywizard
$(RM)
Makefile.doxywizard
config.l config.h
install
:
install
:
$(INSTTOOL)
-d
$(INSTALL)
/bin
$(INSTTOOL)
-d
$(INSTALL)
/bin
...
...
addon/doxywizard/Makefile.win_nmake.in
View file @
9d4d8095
...
@@ -30,8 +30,9 @@ tmake:
...
@@ -30,8 +30,9 @@ tmake:
clean
:
Makefile.doxywizard
clean
:
Makefile.doxywizard
$(MAKE)
-f
Makefile.doxywizard clean
$(MAKE)
-f
Makefile.doxywizard clean
$(RM)
config.cpp
distclean
:
clean
distclean
:
clean
$(RM)
Makefile.doxywizard config.
cpp
$(RM)
Makefile.doxywizard config.
l config.h
FORCE
:
FORCE
:
addon/doxywizard/doxywizard.cpp
View file @
9d4d8095
...
@@ -179,7 +179,7 @@ void Wizard::newFile()
...
@@ -179,7 +179,7 @@ void Wizard::newFile()
if
(
hasChanged
)
if
(
hasChanged
)
{
{
switch
(
QMessageBox
::
warning
(
this
,
"DoxyWizard"
,
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
))
"Yes"
,
"No"
,
0
,
0
,
1
))
{
{
case
0
:
case
0
:
...
@@ -219,7 +219,7 @@ void Wizard::loadFile()
...
@@ -219,7 +219,7 @@ void Wizard::loadFile()
if
(
hasChanged
)
if
(
hasChanged
)
{
{
switch
(
QMessageBox
::
warning
(
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
))
"Yes"
,
"No"
,
0
,
0
,
1
))
{
{
case
0
:
case
0
:
...
@@ -278,7 +278,7 @@ void Wizard::quit()
...
@@ -278,7 +278,7 @@ void Wizard::quit()
{
{
if
(
hasChanged
)
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
))
"Yes"
,
"No"
,
0
,
0
,
1
))
{
{
case
0
:
case
0
:
...
...
addon/doxywizard/doxywizard.pro.in
View file @
9d4d8095
...
@@ -12,8 +12,7 @@
...
@@ -12,8 +12,7 @@
# project file for the doxywizard project
# project file for the doxywizard project
# special template configuration file because we use flex
# special template configuration file because we use flex
unix:TEMPLATE = app.t
TEMPLATE = doxywizard.t
win32:TEMPLATE = doxywizard.t
# executable to generate
# executable to generate
TARGET = ../../bin/doxywizard
TARGET = ../../bin/doxywizard
...
@@ -29,8 +28,8 @@ HEADERS = doxywizard.h \
...
@@ -29,8 +28,8 @@ HEADERS = doxywizard.h \
inputbool.h \
inputbool.h \
inputstrlist.h \
inputstrlist.h \
inputint.h \
inputint.h \
pixmaps.h
pixmaps.h
\
win32:HEADERS +=
config.h
config.h
# source flle for the project
# source flle for the project
SOURCES = doxywizard.cpp \
SOURCES = doxywizard.cpp \
...
@@ -40,8 +39,8 @@ SOURCES = doxywizard.cpp \
...
@@ -40,8 +39,8 @@ SOURCES = doxywizard.cpp \
inputbool.cpp \
inputbool.cpp \
inputstrlist.cpp \
inputstrlist.cpp \
inputint.cpp \
inputint.cpp \
pixmaps.cpp
pixmaps.cpp
\
win32:SOURCES +=
config.cpp
config.cpp
# where to put the objects
# where to put the objects
OBJECTS_DIR = obj
OBJECTS_DIR = obj
...
@@ -57,5 +56,4 @@ win32:INCLUDEPATH += .
...
@@ -57,5 +56,4 @@ win32:INCLUDEPATH += .
# extra link options
# 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 = $(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 =
win32:TMAKE_LIBS_QT =
unix:LIBS = -L../../lib -ldoxycfg
configure
View file @
9d4d8095
...
@@ -139,6 +139,9 @@ if test -z "$f_platform"; then
...
@@ -139,6 +139,9 @@ if test -z "$f_platform"; then
dgux:
*
)
dgux:
*
)
f_platform
=
dgux-g++
f_platform
=
dgux-g++
;;
;;
Darwin:
*
)
f_platform
=
macosx-c++
;;
FreeBSD:
*
)
FreeBSD:
*
)
f_platform
=
freebsd-g++
f_platform
=
freebsd-g++
;;
;;
...
@@ -290,10 +293,13 @@ fi
...
@@ -290,10 +293,13 @@ fi
if
test
"
$f_insttool
"
=
NO
;
then
if
test
"
$f_insttool
"
=
NO
;
then
if
test
"
$install_found
"
=
YES
;
then
if
test
"
$install_found
"
=
YES
;
then
echo
"GNU version of install is required!"
echo
;
else
else
echo
"not found!"
;
echo
"not found!"
;
echo
fi
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
echo
exit
2
exit
2
fi
fi
...
...
doc/htmlcmds.doc
View file @
9d4d8095
...
@@ -31,6 +31,8 @@ documentation. Note that all attributes of a HTML tag are ignored
...
@@ -31,6 +31,8 @@ documentation. Note that all attributes of a HTML tag are ignored
<li>\c <BR> Forces a line break.
<li>\c <BR> Forces a line break.
<li>\c <CENTER> starts a section of centered text.
<li>\c <CENTER> starts a section of centered text.
<li>\c </CENTER> ends 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> Starts a piece of text displayed in a typewriter font.
<li>\c </CODE> End a \c <CODE> section.
<li>\c </CODE> End a \c <CODE> section.
<li>\c <DD> Starts an item description.
<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
...
@@ -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
that the text fragments that doxygen generates can be produced in
languages other than English (the default) at configuration time.
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):
are supported (sorted alphabetically):
Brazilian Portuguese, Chinese, Croatian, Czech, Danish,
Brazilian Portuguese, Chinese, Croatian, Czech, Danish,
Dutch, English, Finnish, French, German,
Dutch, English, Finnish, French, German,
...
@@ -130,9 +130,9 @@ when the translator was updated.
...
@@ -130,9 +130,9 @@ when the translator was updated.
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>Japanese</TD>
<TD>Japanese</TD>
<TD>Kenji Nagamatsu</TD>
<TD>
Ryunosuke Sato<br>
Kenji Nagamatsu</TD>
<TD>naga@NOSPAM.joyful.club.ne.jp</TD>
<TD>
puyo@NOSPAM.mint.freemail.ne.jp<br>
naga@NOSPAM.joyful.club.ne.jp</TD>
<TD>
1.2.5
</TD>
<TD>
up-to-date
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>Korean</TD>
<TD>Korean</TD>
...
@@ -173,8 +173,8 @@ when the translator was updated.
...
@@ -173,8 +173,8 @@ when the translator was updated.
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>Slovak</TD>
<TD>Slovak</TD>
<TD>Stanislav Kudláč</TD>
<TD>Stanislav Kudláč</TD>
<TD>
qwerty1
@NOSPAM.pobox.sk</TD>
<TD>
skudlac
@NOSPAM.pobox.sk</TD>
<TD>
1.2.11
</TD>
<TD>
up-to-date
</TD>
</TR>
</TR>
<TR BGCOLOR="#ffffff">
<TR BGCOLOR="#ffffff">
<TD>Slovene</TD>
<TD>Slovene</TD>
...
@@ -240,7 +240,8 @@ when the translator was updated.
...
@@ -240,7 +240,8 @@ when the translator was updated.
Italian & Alessandro Falappa & {\tt alessandro@falappa.net} & up-to-date \\
Italian & Alessandro Falappa & {\tt alessandro@falappa.net} & up-to-date \\
& Ahmed Aldo Faisal & {\tt aaf23@cam.ac.uk} & \\
& Ahmed Aldo Faisal & {\tt aaf23@cam.ac.uk} & \\
\hline
\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
\hline
Korean & Richard Kim & {\tt ryk@dspwiz.com} & up-to-date \\
Korean & Richard Kim & {\tt ryk@dspwiz.com} & up-to-date \\
\hline
\hline
...
@@ -254,7 +255,7 @@ when the translator was updated.
...
@@ -254,7 +255,7 @@ when the translator was updated.
\hline
\hline
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & up-to-date \\
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & up-to-date \\
\hline
\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
\hline
Slovene & Matjaz Ostroversnik & {\tt matjaz.ostroversnik@zrs-tk.si} & up-to-date \\
Slovene & Matjaz Ostroversnik & {\tt matjaz.ostroversnik@zrs-tk.si} & up-to-date \\
\hline
\hline
...
...
doc/lists.doc
View file @
9d4d8095
...
@@ -41,6 +41,35 @@ Doxygen has a number of ways to create lists of items.
...
@@ -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
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.
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>
<b>Using HTML commands</b>
If you like you can also use HTML commands inside the documentation
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
...
@@ -44,6 +44,7 @@ Alessandro Falappa: alessandro@falappa.net
Ahmed Aldo Faisal: aaf23@cam.ac.uk
Ahmed Aldo Faisal: aaf23@cam.ac.uk
Japanese
Japanese
Ryunosuke Sato: puyo@mint.freemail.ne.jp
Kenji Nagamatsu: naga@joyful.club.ne.jp
Kenji Nagamatsu: naga@joyful.club.ne.jp
Korean
Korean
...
@@ -65,7 +66,7 @@ Russian
...
@@ -65,7 +66,7 @@ Russian
Alexandr Chelpanov: cav@cryptopro.ru
Alexandr Chelpanov: cav@cryptopro.ru
Slovak
Slovak
Stanislav Kudláč:
qwerty1
@pobox.sk
Stanislav Kudláč:
skudlac
@pobox.sk
Slovene
Slovene
Matjaz Ostroversnik: matjaz.ostroversnik@zrs-tk.si
Matjaz Ostroversnik: matjaz.ostroversnik@zrs-tk.si
...
...
packages/rpm/doxygen.spec
View file @
9d4d8095
Name: doxygen
Name: doxygen
Version: 1.2.13
Version: 1.2.13
.1
Summary: documentation system for C, C++ and IDL
Summary: documentation system for C, C++ and IDL
Release: 4
Release: 4
Source: doxygen-%{version}.src.tar.gz
Source: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
9d4d8095
...
@@ -156,29 +156,29 @@ void ClassDef::insertSubClass(ClassDef *cd,Protection p,
...
@@ -156,29 +156,29 @@ void ClassDef::insertSubClass(ClassDef *cd,Protection p,
void
ClassDef
::
addMembersToMemberGroup
()
void
ClassDef
::
addMembersToMemberGroup
()
{
{
::
addMembersToMemberGroup
(
&
pubTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
signals
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
signals
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
dcopMethods
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
pubStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
proStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priTypes
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priTypes
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priSlots
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priSlots
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priStaticMembers
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
priStaticAttribs
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
friends
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
friends
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
related
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
related
,
memberGroupSDict
,
this
);
::
addMembersToMemberGroup
(
&
properties
,
memberGroupSDict
);
::
addMembersToMemberGroup
(
&
properties
,
memberGroupSDict
,
this
);
}
}
// adds new member definition to the class
// adds new member definition to the class
...
@@ -197,12 +197,12 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -197,12 +197,12 @@ void ClassDef::internalInsertMember(MemberDef *md,
(
Config_getBool
(
"EXTRACT_PRIVATE"
)
||
prot
!=
Private
))
(
Config_getBool
(
"EXTRACT_PRIVATE"
)
||
prot
!=
Private
))
{
{
related
.
append
(
md
);
related
.
append
(
md
);
md
->
setSectionList
(
&
related
);
md
->
setSectionList
(
this
,
&
related
);
}
}
else
if
(
md
->
isFriend
())
else
if
(
md
->
isFriend
())
{
{
friends
.
append
(
md
);
friends
.
append
(
md
);
md
->
setSectionList
(
&
friends
);
md
->
setSectionList
(
this
,
&
friends
);
}
}
else
else
{
{
...
@@ -210,30 +210,30 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -210,30 +210,30 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
MemberDef
:
:
Signal
:
// Qt specific
case
MemberDef
:
:
Signal
:
// Qt specific
signals
.
append
(
md
);
signals
.
append
(
md
);
md
->
setSectionList
(
&
signals
);
md
->
setSectionList
(
this
,
&
signals
);
break
;
break
;
case
MemberDef
:
:
DCOP
:
// KDE2 specific
case
MemberDef
:
:
DCOP
:
// KDE2 specific
dcopMethods
.
append
(
md
);
dcopMethods
.
append
(
md
);
md
->
setSectionList
(
&
dcopMethods
);
md
->
setSectionList
(
this
,
&
dcopMethods
);
break
;
break
;
case
MemberDef
:
:
Property
:
case
MemberDef
:
:
Property
:
properties
.
append
(
md
);
properties
.
append
(
md
);
md
->
setSectionList
(
&
properties
);
md
->
setSectionList
(
this
,
&
properties
);
break
;
break
;
case
MemberDef
:
:
Slot
:
// Qt specific
case
MemberDef
:
:
Slot
:
// Qt specific
switch
(
prot
)
switch
(
prot
)
{
{
case
Protected
:
case
Protected
:
proSlots
.
append
(
md
);
proSlots
.
append
(
md
);
md
->
setSectionList
(
&
proSlots
);
md
->
setSectionList
(
this
,
&
proSlots
);
break
;
break
;
case
Public
:
case
Public
:
pubSlots
.
append
(
md
);
pubSlots
.
append
(
md
);
md
->
setSectionList
(
&
pubSlots
);
md
->
setSectionList
(
this
,
&
pubSlots
);
break
;
break
;
case
Private
:
case
Private
:
priSlots
.
append
(
md
);
priSlots
.
append
(
md
);
md
->
setSectionList
(
&
priSlots
);
md
->
setSectionList
(
this
,
&
priSlots
);
break
;
break
;
}
}
break
;
break
;
...
@@ -246,15 +246,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -246,15 +246,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
Protected
:
case
Protected
:
proStaticAttribs
.
append
(
md
);
proStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
proStaticAttribs
);
md
->
setSectionList
(
this
,
&
proStaticAttribs
);
break
;
break
;
case
Public
:
case
Public
:
pubStaticAttribs
.
append
(
md
);
pubStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
pubStaticAttribs
);
md
->
setSectionList
(
this
,
&
pubStaticAttribs
);
break
;
break
;
case
Private
:
case
Private
:
priStaticAttribs
.
append
(
md
);
priStaticAttribs
.
append
(
md
);
md
->
setSectionList
(
&
priStaticAttribs
);
md
->
setSectionList
(
this
,
&
priStaticAttribs
);
break
;
break
;
}
}
}
}
...
@@ -264,15 +264,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -264,15 +264,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
Protected
:
case
Protected
:
proStaticMembers
.
append
(
md
);
proStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
proStaticMembers
);
md
->
setSectionList
(
this
,
&
proStaticMembers
);
break
;
break
;
case
Public
:
case
Public
:
pubStaticMembers
.
append
(
md
);
pubStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
pubStaticMembers
);
md
->
setSectionList
(
this
,
&
pubStaticMembers
);
break
;
break
;
case
Private
:
case
Private
:
priStaticMembers
.
append
(
md
);
priStaticMembers
.
append
(
md
);
md
->
setSectionList
(
&
priStaticMembers
);
md
->
setSectionList
(
this
,
&
priStaticMembers
);
break
;
break
;
}
}
}
}
...
@@ -285,15 +285,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -285,15 +285,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
Protected
:
case
Protected
:
proAttribs
.
append
(
md
);
proAttribs
.
append
(
md
);
md
->
setSectionList
(
&
proAttribs
);
md
->
setSectionList
(
this
,
&
proAttribs
);
break
;
break
;
case
Public
:
case
Public
:
pubAttribs
.
append
(
md
);
pubAttribs
.
append
(
md
);
md
->
setSectionList
(
&
pubAttribs
);
md
->
setSectionList
(
this
,
&
pubAttribs
);
break
;
break
;
case
Private
:
case
Private
:
priAttribs
.
append
(
md
);
priAttribs
.
append
(
md
);
md
->
setSectionList
(
&
priAttribs
);
md
->
setSectionList
(
this
,
&
priAttribs
);
break
;
break
;
}
}
}
}
...
@@ -303,15 +303,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -303,15 +303,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
Protected
:
case
Protected
:
proTypes
.
append
(
md
);
proTypes
.
append
(
md
);
md
->
setSectionList
(
&
proTypes
);
md
->
setSectionList
(
this
,
&
proTypes
);
break
;
break
;
case
Public
:
case
Public
:
pubTypes
.
append
(
md
);
pubTypes
.
append
(
md
);
md
->
setSectionList
(
&
pubTypes
);
md
->
setSectionList
(
this
,
&
pubTypes
);
break
;
break
;
case
Private
:
case
Private
:
priTypes
.
append
(
md
);
priTypes
.
append
(
md
);
md
->
setSectionList
(
&
priTypes
);
md
->
setSectionList
(
this
,
&
priTypes
);
break
;
break
;
}
}
}
}
...
@@ -321,15 +321,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
...
@@ -321,15 +321,15 @@ void ClassDef::internalInsertMember(MemberDef *md,
{
{
case
Protected
:
case
Protected
:
proMembers
.
append
(
md
);
proMembers
.
append
(
md
);
md
->
setSectionList
(
&
proMembers
);
md
->
setSectionList
(
this
,
&
proMembers
);
break
;
break
;
case
Public
:
case
Public
:
pubMembers
.
append
(
md
);
pubMembers
.
append
(
md
);
md
->
setSectionList
(
&
pubMembers
);
md
->
setSectionList
(
this
,
&
pubMembers
);
break
;
break
;
case
Private
:
case
Private
:
priMembers
.
append
(
md
);
priMembers
.
append
(
md
);
md
->
setSectionList
(
&
priMembers
);
md
->
setSectionList
(
this
,
&
priMembers
);
break
;
break
;
}
}
}
}
...
@@ -485,27 +485,6 @@ void ClassDef::insertMember(MemberDef *md)
...
@@ -485,27 +485,6 @@ void ClassDef::insertMember(MemberDef *md)
internalInsertMember
(
md
,
md
->
protection
(),
TRUE
);
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
// compute the anchors for all members
void
ClassDef
::
computeAnchors
()
void
ClassDef
::
computeAnchors
()
{
{
...
@@ -533,6 +512,12 @@ void ClassDef::computeAnchors()
...
@@ -533,6 +512,12 @@ void ClassDef::computeAnchors()
setAnchors
(
context
,
'u'
,
&
priTypes
);
setAnchors
(
context
,
'u'
,
&
priTypes
);
setAnchors
(
context
,
'v'
,
&
dcopMethods
);
setAnchors
(
context
,
'v'
,
&
dcopMethods
);
setAnchors
(
context
,
'w'
,
&
properties
);
setAnchors
(
context
,
'w'
,
&
properties
);
MemberGroupSDict
::
Iterator
mgli
(
*
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
{
mg
->
setAnchors
(
context
);
}
}
}
void
ClassDef
::
distributeMemberGroupDocumentation
()
void
ClassDef
::
distributeMemberGroupDocumentation
()
...
@@ -1006,6 +991,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
...
@@ -1006,6 +991,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
}
}
else
// add this group to the corresponding member section
else
// add this group to the corresponding member section
{
{
//printf("addToDeclarationSection(%s)\n",mg->header().data());
mg
->
addToDeclarationSection
();
mg
->
addToDeclarationSection
();
}
}
}
}
...
...
src/config.l
View file @
9d4d8095
...
@@ -31,6 +31,7 @@
...
@@ -31,6 +31,7 @@
#include <qstack.h>
#include <qstack.h>
#include "config.h"
#include "config.h"
#include "lang_cfg.h"
#include "version.h"
#include "version.h"
#undef Config_getString
#undef Config_getString
...
...
src/doc.l
View file @
9d4d8095
...
@@ -99,6 +99,7 @@ static QCString curDotFileName;
...
@@ -99,6 +99,7 @@ static QCString curDotFileName;
static QCString curDotFileCaption;
static QCString curDotFileCaption;
static QCString internalRefFile;
static QCString internalRefFile;
static QCString internalRefAnchor;
static QCString internalRefAnchor;
static QCString caption;
static QStack<char> currentListIndent; // indent stack of all list items
static QStack<char> currentListIndent; // indent stack of all list items
static bool insideItemList = FALSE;
static bool insideItemList = FALSE;
...
@@ -185,72 +186,85 @@ class Table
...
@@ -185,72 +186,85 @@ class Table
~Table();
~Table();
void newRow();
void newRow();
void newElem();
void newElem();
void setCaption(const char *s);
private:
private:
OutputDocInterface *parentDoc;
OutputDocInterface *m_parentDoc;
QList<TableElem> *elemList;
QList<TableElem> *m_elemList;
int curRow;
QCString m_caption;
int curCol;
int m_curRow;
int rows;
int m_curCol;
int cols;
int m_rows;
int m_cols;
};
};
Table::Table()
Table::Table()
{
{
parentDoc=outDoc;
m_
parentDoc=outDoc;
elemList=new QList<TableElem>;
m_
elemList=new QList<TableElem>;
elemList->setAutoDelete(TRUE);
m_
elemList->setAutoDelete(TRUE);
curRow=curCol=rows=
cols=0;
m_curRow=m_curCol=m_rows=m_
cols=0;
}
}
Table::~Table()
Table::~Table()
{
{
//printf("Table::~Table()\n");
//printf("Table::~Table()\n");
// use elemList & cols & rows
// use elemList & cols & rows
if (
cols>0 &&
rows>0)
if (
m_cols>0 && m_
rows>0)
{
{
parentDoc->startTable(
cols);
m_parentDoc->startTable(!m_caption.isEmpty(),m_
cols);
TableElem *e=elemList->first();
TableElem *e=
m_
elemList->first();
while (e)
while (e)
{
{
if (e->getRow()>0)
if (e->getRow()>0)
{
{
if (e->getCol()==0)
if (e->getCol()==0)
{
{
if (e->getRow()>1) parentDoc->endTableRow();
if (e->getRow()>1)
m_
parentDoc->endTableRow();
parentDoc->nextTableRow();
m_
parentDoc->nextTableRow();
}
}
else
else
{
{
parentDoc->nextTableColumn();
m_
parentDoc->nextTableColumn();
}
}
parentDoc->append(e->outputDocInterface());
m_
parentDoc->append(e->outputDocInterface());
parentDoc->endTableColumn();
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;
delete m_elemList; m_elemList=0;
outDoc=parentDoc;
outDoc=m_parentDoc;
}
void Table::setCaption(const char *s)
{
m_caption=s;
}
}
void Table::newRow()
void Table::newRow()
{
{
//printf("Table::newRow()\n");
//printf("Table::newRow()\n");
curRow++;
m_
curRow++;
if (
curRow>rows) rows=
curRow;
if (
m_curRow>m_rows) m_rows=m_
curRow;
curCol=0;
m_
curCol=0;
}
}
void Table::newElem()
void Table::newElem()
{
{
//printf("Table::newElem(%d,%d)\n",curRow,curCol);
//printf("Table::newElem(%d,%d)\n",curRow,curCol);
TableElem *te = new TableElem(
curRow,
curCol);
TableElem *te = new TableElem(
m_curRow,m_
curCol);
elemList->append(te);
m_
elemList->append(te);
curCol++;
m_
curCol++;
if (
curCol>cols) cols=
curCol;
if (
m_curCol>m_cols) m_cols=m_
curCol;
}
}
static QStack<Table> tableStack;
static QStack<Table> tableStack;
...
@@ -531,19 +545,19 @@ struct IndentInfo
...
@@ -531,19 +545,19 @@ struct IndentInfo
static QStack<IndentInfo> listIndentStack; // indent stack of - items
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 i;
int indent=0;
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]);
//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;
indent=0;
}
}
...
@@ -552,9 +566,17 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
...
@@ -552,9 +566,17 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
indent++;
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);
//printf("list marker found at column %d enumerated %d\n",indent,enumerated);
if (!insideItemList)
if (!insideItemList)
{
{
//printf("startListMarker indent=%d\n",indent);
currentListIndent.push(enumerated ? "O" : "U");
currentListIndent.push(enumerated ? "O" : "U");
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.top()->startList();
listIndentStack.top()->startList();
...
@@ -580,6 +602,7 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
...
@@ -580,6 +602,7 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
}
}
else if (pPrevInfo->indent<indent) // start sub item list
else if (pPrevInfo->indent<indent) // start sub item list
{
{
//printf("startListMarker indent=%d\n",indent);
currentListIndent.push(enumerated ? "O" : "U");
currentListIndent.push(enumerated ? "O" : "U");
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.push(new IndentInfo(indent,enumerated));
listIndentStack.top()->startList();
listIndentStack.top()->startList();
...
@@ -610,6 +633,32 @@ static void addListItemMarker(const char *marker,int dashPos,bool enumerated)
...
@@ -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.
// end the current (nested) list regardless of the nesting level.
static void forceEndItemList()
static void forceEndItemList()
{
{
...
@@ -626,7 +675,7 @@ static void forceEndItemList()
...
@@ -626,7 +675,7 @@ static void forceEndItemList()
case 'O': outDoc->endEnumList(); break;
case 'O': outDoc->endEnumList(); break;
case 'U': outDoc->endItemList(); break;
case 'U': outDoc->endItemList(); break;
case 'D': outDoc->endDescription(); break;
case 'D': outDoc->endDescription(); break;
case 'P':
break; // do not end paragraphs
case 'P':
if (inBlock()) endBlock(); break;
default:
default:
err("Unexpected list indent token `%c'\n",c);
err("Unexpected list indent token `%c'\n",c);
}
}
...
@@ -899,6 +948,7 @@ SUB [sS][uU][bB]
...
@@ -899,6 +948,7 @@ SUB [sS][uU][bB]
SUP [sS][uU][pP]
SUP [sS][uU][pP]
SRC [sS][rR][cC]
SRC [sS][rR][cC]
TABLE [tT][aA][bB][lL][eE]
TABLE [tT][aA][bB][lL][eE]
CAPTION [cC][aA][pP][tT][iI][oO][nN]
TITLE [tT][iI][tT][lL][eE]
TITLE [tT][iI][tT][lL][eE]
TD [tT][dD]
TD [tT][dD]
TR [tT][rR]
TR [tT][rR]
...
@@ -955,6 +1005,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -955,6 +1005,7 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
%x DocInternalRef
%x DocInternalRef
%x DocInternalRefText
%x DocInternalRefText
%x DocImage
%x DocImage
%x DocCaption
%x DocHtmlImageName
%x DocHtmlImageName
%x DocHtmlImageOpt
%x DocHtmlImageOpt
%x DocLatexImageName
%x DocLatexImageName
...
@@ -974,6 +1025,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -974,6 +1025,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
bool isEnumerated = text.at(dashPos+1)=='#';
bool isEnumerated = text.at(dashPos+1)=='#';
addListItemMarker(yytext,dashPos+1,isEnumerated);
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 */
<DocScan>\n{B}*(("//"{B}*)?)"*"*{B}*"-"("#")?{B}+ { /* found list item marker */
QCString text=yytext;
QCString text=yytext;
int dashPos = text.findRev('-');
int dashPos = text.findRev('-');
...
@@ -981,6 +1037,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -981,6 +1037,11 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
bool isEnumerated = text.at(dashPos+1)=='#';
bool isEnumerated = text.at(dashPos+1)=='#';
addListItemMarker(yytext+1,dashPos,isEnumerated);
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->writeCopyright(); }
<DocScan,Text>"<" { outDoc->docify("<"); }
<DocScan,Text>"<" { outDoc->docify("<"); }
<DocScan,Text>">" { outDoc->docify(">"); }
<DocScan,Text>">" { outDoc->docify(">"); }
...
@@ -2024,6 +2085,20 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
...
@@ -2024,6 +2085,20 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocScan>"</"{CENTER}{ATTR}">" { outDoc->endCenter(); }
<DocScan>"</"{CENTER}{ATTR}">" { outDoc->endCenter(); }
<DocScan>"<"{TABLE}{ATTR}">" { startTable(); }
<DocScan>"<"{TABLE}{ATTR}">" { startTable(); }
<DocScan>"</"{TABLE}{ATTR}">" { endTable(); }
<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>"<"{INPUT}{ATTR}">"
<DocScan>"<"{SMALL}{ATTR}">" { outDoc->startSmall(); }
<DocScan>"<"{SMALL}{ATTR}">" { outDoc->startSmall(); }
<DocScan>"</"{SMALL}{ATTR}">" { outDoc->endSmall(); }
<DocScan>"</"{SMALL}{ATTR}">" { outDoc->endSmall(); }
...
...
src/dot.cpp
View file @
9d4d8095
...
@@ -197,11 +197,12 @@ class DotNodeList : public QList<DotNode>
...
@@ -197,11 +197,12 @@ class DotNodeList : public QList<DotNode>
/*! helper function that deletes all nodes in a connected graph, given
/*! helper function that deletes all nodes in a connected graph, given
* one of the graph's nodes
* 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
;
static
DotNodeList
deletedNodes
;
deletedNodes
.
setAutoDelete
(
TRUE
);
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.
deletedNodes
.
clear
();
// actually remove the nodes.
}
}
...
@@ -220,6 +221,7 @@ DotNode::DotNode(int n,const char *lab,const char *url,int distance,bool isRoot)
...
@@ -220,6 +221,7 @@ DotNode::DotNode(int n,const char *lab,const char *url,int distance,bool isRoot)
DotNode
::~
DotNode
()
DotNode
::~
DotNode
()
{
{
//printf("DotNode::~DotNode() %s\n",m_label.data());
delete
m_children
;
delete
m_children
;
delete
m_parents
;
delete
m_parents
;
delete
m_edgeInfo
;
delete
m_edgeInfo
;
...
@@ -276,7 +278,7 @@ void DotNode::removeParent(DotNode *n)
...
@@ -276,7 +278,7 @@ void DotNode::removeParent(DotNode *n)
if
(
m_parents
)
m_parents
->
remove
(
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
if
(
m_deleted
)
return
;
// avoid recursive loops in case the graph has cycles
m_deleted
=
TRUE
;
m_deleted
=
TRUE
;
...
@@ -287,7 +289,7 @@ void DotNode::deleteNode(DotNodeList &deletedList)
...
@@ -287,7 +289,7 @@ void DotNode::deleteNode(DotNodeList &deletedList)
for
(
dnlip
.
toFirst
();(
pn
=
dnlip
.
current
());
++
dnlip
)
for
(
dnlip
.
toFirst
();(
pn
=
dnlip
.
current
());
++
dnlip
)
{
{
//pn->removeChild(this);
//pn->removeChild(this);
pn
->
deleteNode
(
deletedList
);
pn
->
deleteNode
(
deletedList
,
skipNodes
);
}
}
}
}
if
(
m_children
!=
0
)
// delete all child nodes of this node
if
(
m_children
!=
0
)
// delete all child nodes of this node
...
@@ -297,11 +299,16 @@ void DotNode::deleteNode(DotNodeList &deletedList)
...
@@ -297,11 +299,16 @@ void DotNode::deleteNode(DotNodeList &deletedList)
for
(
dnlic
.
toFirst
();(
cn
=
dnlic
.
current
());
++
dnlic
)
for
(
dnlic
.
toFirst
();(
cn
=
dnlic
.
current
());
++
dnlic
)
{
{
//cn->removeParent(this);
//cn->removeParent(this);
cn
->
deleteNode
(
deletedList
);
cn
->
deleteNode
(
deletedList
,
skipNodes
);
}
}
}
}
// add this node to the list of deleted nodes.
// add this node to the list of deleted nodes.
//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
);
deletedList
.
append
(
this
);
}
}
}
static
QCString
convertLabel
(
const
QCString
&
l
)
static
QCString
convertLabel
(
const
QCString
&
l
)
...
@@ -882,12 +889,22 @@ DotGfxHierarchyTable::DotGfxHierarchyTable()
...
@@ -882,12 +889,22 @@ DotGfxHierarchyTable::DotGfxHierarchyTable()
DotGfxHierarchyTable
::~
DotGfxHierarchyTable
()
DotGfxHierarchyTable
::~
DotGfxHierarchyTable
()
{
{
//printf("DotGfxHierarchyTable::~DotGfxHierarchyTable\n");
SIntDict
<
DotNode
>
skipNodes
(
17
);
skipNodes
.
setAutoDelete
(
TRUE
);
DotNode
*
n
=
m_rootNodes
->
first
();
DotNode
*
n
=
m_rootNodes
->
first
();
while
(
n
)
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
();
n
=
m_rootNodes
->
next
();
deleteNodes
(
oldNode
);
}
}
delete
m_rootNodes
;
delete
m_rootNodes
;
delete
m_usedNodes
;
delete
m_usedNodes
;
...
...
src/dot.h
View file @
9d4d8095
...
@@ -19,6 +19,7 @@
...
@@ -19,6 +19,7 @@
#include "qtbc.h"
#include "qtbc.h"
#include <qlist.h>
#include <qlist.h>
#include <qdict.h>
#include <qdict.h>
#include "sortdict.h"
class
ClassDef
;
class
ClassDef
;
class
FileDef
;
class
FileDef
;
...
@@ -68,16 +69,17 @@ class DotNode
...
@@ -68,16 +69,17 @@ class DotNode
);
);
void
setDistance
(
int
distance
);
void
setDistance
(
int
distance
);
void
addParent
(
DotNode
*
n
);
void
addParent
(
DotNode
*
n
);
void
deleteNode
(
DotNodeList
&
deletedList
);
void
deleteNode
(
DotNodeList
&
deletedList
,
SIntDict
<
DotNode
>
*
skipNodes
=
0
);
void
removeChild
(
DotNode
*
n
);
void
removeChild
(
DotNode
*
n
);
void
removeParent
(
DotNode
*
n
);
void
removeParent
(
DotNode
*
n
);
int
number
()
const
{
return
m_number
;
}
void
write
(
QTextStream
&
t
,
GraphOutputFormat
f
,
bool
topDown
,
bool
toChildren
,
void
write
(
QTextStream
&
t
,
GraphOutputFormat
f
,
bool
topDown
,
bool
toChildren
,
int
maxDistance
=
1000
,
bool
backArrows
=
TRUE
);
int
maxDistance
=
1000
,
bool
backArrows
=
TRUE
);
int
m_subgraphId
;
int
m_subgraphId
;
void
clearWriteFlag
();
void
clearWriteFlag
();
void
writeXML
(
QTextStream
&
t
);
void
writeXML
(
QTextStream
&
t
);
void
writeDEF
(
QTextStream
&
t
);
void
writeDEF
(
QTextStream
&
t
);
QCString
label
()
const
{
return
m_label
;
}
int
number
()
const
{
return
m_number
;
}
private
:
private
:
void
colorConnectedNodes
(
int
curColor
);
void
colorConnectedNodes
(
int
curColor
);
...
...
src/doxygen.cpp
View file @
9d4d8095
...
@@ -6968,6 +6968,9 @@ void parseInput()
...
@@ -6968,6 +6968,9 @@ void parseInput()
msg
(
"Adding classes to their packages...
\n
"
);
msg
(
"Adding classes to their packages...
\n
"
);
addClassesToPackages
();
addClassesToPackages
();
msg
(
"Building full member lists recursively...
\n
"
);
buildCompleteMemberLists
();
msg
(
"Adding members to member groups.
\n
"
);
msg
(
"Adding members to member groups.
\n
"
);
addMembersToMemberGroup
();
addMembersToMemberGroup
();
...
@@ -6977,9 +6980,6 @@ void parseInput()
...
@@ -6977,9 +6980,6 @@ void parseInput()
distributeMemberGroupDocumentation
();
distributeMemberGroupDocumentation
();
}
}
msg
(
"Building full member lists recursively...
\n
"
);
buildCompleteMemberLists
();
msg
(
"Computing member references...
\n
"
);
msg
(
"Computing member references...
\n
"
);
computeMemberReferences
();
computeMemberReferences
();
...
...
src/groupdef.cpp
View file @
9d4d8095
...
@@ -309,6 +309,7 @@ bool GroupDef::containsGroup(const GroupDef *def)
...
@@ -309,6 +309,7 @@ bool GroupDef::containsGroup(const GroupDef *def)
void
GroupDef
::
addGroup
(
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"))
//if (Config_getBool("SORT_MEMBER_DOCS"))
// groupList->inSort(def);
// groupList->inSort(def);
//else
//else
...
@@ -317,9 +318,9 @@ void GroupDef::addGroup(const GroupDef *def)
...
@@ -317,9 +318,9 @@ void GroupDef::addGroup(const GroupDef *def)
void
GroupDef
::
addParentGroup
(
const
GroupDef
*
def
)
void
GroupDef
::
addParentGroup
(
const
GroupDef
*
def
)
{
{
if
(
Config_getBool
(
"SORT_MEMBER_DOCS"
))
//
if (Config_getBool("SORT_MEMBER_DOCS"))
parentGroupList
->
inSort
(
def
);
//
parentGroupList->inSort(def);
else
//
else
parentGroupList
->
append
(
def
);
parentGroupList
->
append
(
def
);
}
}
...
...
src/groupdef.h
View file @
9d4d8095
...
@@ -78,7 +78,7 @@ class GroupDef : public Definition
...
@@ -78,7 +78,7 @@ class GroupDef : public Definition
bool
visited
;
// number of times accessed for output - KPW
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
// make accessible for writing tree view of group in index.cpp - KPW
// members in the declaration part of the documentation
// members in the declaration part of the documentation
...
...
src/htmlgen.cpp
View file @
9d4d8095
...
@@ -38,6 +38,7 @@
...
@@ -38,6 +38,7 @@
static
const
char
*
defaultStyleSheet
=
static
const
char
*
defaultStyleSheet
=
"H1 { text-align: center; }
\n
"
"H1 { text-align: center; }
\n
"
"CAPTION { font-weight: bold }
\n
"
"A.qindex {}
\n
"
"A.qindex {}
\n
"
"A.qindexRef {}
\n
"
"A.qindexRef {}
\n
"
"A.el { text-decoration: none; font-weight: bold }
\n
"
"A.el { text-decoration: none; font-weight: bold }
\n
"
...
...
src/htmlgen.h
View file @
9d4d8095
...
@@ -165,8 +165,14 @@ class HtmlGenerator : public OutputGenerator
...
@@ -165,8 +165,14 @@ class HtmlGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"</sub>"
;
}
void
endSubscript
()
{
t
<<
"</sub>"
;
}
void
startSuperscript
()
{
t
<<
"<sup>"
;
}
void
startSuperscript
()
{
t
<<
"<sup>"
;
}
void
endSuperscript
()
{
t
<<
"</sup>"
;
}
void
endSuperscript
()
{
t
<<
"</sup>"
;
}
void
startTable
(
int
)
{
t
<<
"<table border=1 cellspacing=3 cellpadding=3>"
;
}
void
startTable
(
bool
,
int
)
void
endTable
()
{
t
<<
"</table>"
<<
endl
;
}
{
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
nextTableRow
()
{
t
<<
"<tr><td>"
;
}
void
endTableRow
()
{
t
<<
"</tr>"
<<
endl
;
}
void
endTableRow
()
{
t
<<
"</tr>"
<<
endl
;
}
void
nextTableColumn
()
{
t
<<
"<td>"
;
}
void
nextTableColumn
()
{
t
<<
"<td>"
;
}
...
...
src/index.cpp
View file @
9d4d8095
...
@@ -78,6 +78,34 @@ void countDataStructures()
...
@@ -78,6 +78,34 @@ void countDataStructures()
documentedPackages
=
countPackages
();
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
];
static
bool
g_memberIndexLetterUsed
[
256
];
...
@@ -347,18 +375,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
...
@@ -347,18 +375,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
{
{
if
(
!
started
)
if
(
!
started
)
{
{
{
startIndexHierarchy
(
ol
,
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
();
}
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
started
=
TRUE
;
started
=
TRUE
;
...
@@ -407,18 +424,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
...
@@ -407,18 +424,7 @@ void writeClassTree(OutputList &ol,BaseClassList *bcl,bool hideSuper,int level)
}
}
if
(
started
)
if
(
started
)
{
{
{
endIndexHierarchy
(
ol
,
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
();
}
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
}
}
...
@@ -572,18 +578,7 @@ static void writeClassTreeForList(OutputList &ol,ClassSDict *cl,bool &started)
...
@@ -572,18 +578,7 @@ static void writeClassTreeForList(OutputList &ol,ClassSDict *cl,bool &started)
{
{
if
(
!
started
)
if
(
!
started
)
{
{
{
startIndexHierarchy
(
ol
,
0
);
// 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
();
}
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasHtmlHelp
)
htmlHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
incContentsDepth
();
started
=
TRUE
;
started
=
TRUE
;
...
@@ -654,18 +649,7 @@ void writeClassHierarchy(OutputList &ol)
...
@@ -654,18 +649,7 @@ void writeClassHierarchy(OutputList &ol)
writeClassTreeForList
(
ol
,
&
Doxygen
::
hiddenClasses
,
started
);
writeClassTreeForList
(
ol
,
&
Doxygen
::
hiddenClasses
,
started
);
if
(
started
)
if
(
started
)
{
{
{
endIndexHierarchy
(
ol
,
0
);
// 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
();
}
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasHtmlHelp
)
htmlHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
if
(
hasFtvHelp
)
ftvHelp
->
decContentsDepth
();
}
}
...
@@ -2135,18 +2119,7 @@ void writePageIndex(OutputList &ol)
...
@@ -2135,18 +2119,7 @@ void writePageIndex(OutputList &ol)
}
}
parseText
(
ol
,
theTranslator
->
trRelatedPagesDescription
());
parseText
(
ol
,
theTranslator
->
trRelatedPagesDescription
());
ol
.
endTextBlock
();
ol
.
endTextBlock
();
{
startIndexHierarchy
(
ol
,
0
);
// 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
();
}
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageInfo
*
pi
=
0
;
PageInfo
*
pi
=
0
;
for
(
pdi
.
toFirst
();(
pi
=
pdi
.
current
());
++
pdi
)
for
(
pdi
.
toFirst
();(
pi
=
pdi
.
current
());
++
pdi
)
...
@@ -2177,18 +2150,7 @@ void writePageIndex(OutputList &ol)
...
@@ -2177,18 +2150,7 @@ void writePageIndex(OutputList &ol)
if
(
hasFtvHelp
)
ftvHelp
->
addContentsItem
(
FALSE
,
0
,
pageName
,
0
,
pageTitle
);
if
(
hasFtvHelp
)
ftvHelp
->
addContentsItem
(
FALSE
,
0
,
pageName
,
0
,
pageTitle
);
}
}
}
}
{
endIndexHierarchy
(
ol
,
0
);
// 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
();
}
if
(
hasHtmlHelp
)
if
(
hasHtmlHelp
)
{
{
htmlHelp
->
decContentsDepth
();
htmlHelp
->
decContentsDepth
();
...
@@ -2247,7 +2209,7 @@ void writeGraphInfo(OutputList &ol)
...
@@ -2247,7 +2209,7 @@ void writeGraphInfo(OutputList &ol)
* \author KPW
* \author KPW
*/
*/
void
writeGroupTreeNode
(
OutputList
&
ol
,
GroupDef
*
gd
,
bool
subL
evel
)
void
writeGroupTreeNode
(
OutputList
&
ol
,
GroupDef
*
gd
,
int
l
evel
)
{
{
HtmlHelp
*
htmlHelp
=
0
;
HtmlHelp
*
htmlHelp
=
0
;
FTVHelp
*
ftvHelp
=
0
;
FTVHelp
*
ftvHelp
=
0
;
...
@@ -2263,7 +2225,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
...
@@ -2263,7 +2225,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
ftvHelp
=
FTVHelp
::
getInstance
();
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());
//printf("gd->name()=%s #members=%d\n",gd->name().data(),gd->countMembers());
// write group info
// write group info
...
@@ -2338,14 +2300,14 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
...
@@ -2338,14 +2300,14 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
// write subgroups
// write subgroups
if
(
hasSubGroups
)
if
(
hasSubGroups
)
{
{
ol
.
startIndexList
(
);
startIndexHierarchy
(
ol
,
level
+
1
);
QListIterator
<
GroupDef
>
gli
(
*
gd
->
groupList
);
QListIterator
<
GroupDef
>
gli
(
*
gd
->
groupList
);
GroupDef
*
subgd
=
0
;
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)
...
@@ -2544,14 +2506,14 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
void
writeGroupHierarchy
(
OutputList
&
ol
)
void
writeGroupHierarchy
(
OutputList
&
ol
)
{
{
ol
.
startIndexList
(
);
startIndexHierarchy
(
ol
,
0
);
GroupSDict
::
Iterator
gli
(
Doxygen
::
groupSDict
);
GroupSDict
::
Iterator
gli
(
Doxygen
::
groupSDict
);
GroupDef
*
gd
;
GroupDef
*
gd
;
for
(
gli
.
toFirst
();(
gd
=
gli
.
current
());
++
gli
)
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
...
@@ -160,10 +160,26 @@ class LatexGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"}}$"
;
}
void
endSubscript
()
{
t
<<
"}}$"
;
}
void
startSuperscript
()
{
t
<<
"$^{
\\
mbox{"
;
}
void
startSuperscript
()
{
t
<<
"$^{
\\
mbox{"
;
}
void
endSuperscript
()
{
t
<<
"}}$"
;
}
void
endSuperscript
()
{
t
<<
"}}$"
;
}
void
startTable
(
int
c
)
{
t
<<
"
\\
begin{TabularC}{"
<<
c
void
startTable
(
bool
hasCaption
,
int
c
)
<<
"}
\n\\
hline
\n
"
;
{
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
nextTableRow
()
{}
void
endTableRow
()
{
t
<<
"
\\\\\\
hline
\n
"
;
}
void
endTableRow
()
{
t
<<
"
\\\\\\
hline
\n
"
;
}
void
nextTableColumn
()
{
t
<<
"&"
;
}
void
nextTableColumn
()
{
t
<<
"&"
;
}
...
...
src/mangen.h
View file @
9d4d8095
...
@@ -152,8 +152,10 @@ class ManGenerator : public OutputGenerator
...
@@ -152,8 +152,10 @@ class ManGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"
\\
*>"
;
firstCol
=
FALSE
;
}
void
endSubscript
()
{
t
<<
"
\\
*>"
;
firstCol
=
FALSE
;
}
void
startSuperscript
()
{
t
<<
"
\\
*{"
;
firstCol
=
FALSE
;
}
void
startSuperscript
()
{
t
<<
"
\\
*{"
;
firstCol
=
FALSE
;
}
void
endSuperscript
()
{
t
<<
"
\\
*}"
;
firstCol
=
FALSE
;
}
void
endSuperscript
()
{
t
<<
"
\\
*}"
;
firstCol
=
FALSE
;
}
void
startTable
(
int
)
{}
void
startTable
(
bool
,
int
)
{}
void
endTable
()
{}
void
endTable
(
bool
)
{}
void
startCaption
()
{}
void
endCaption
()
{}
void
nextTableRow
()
{}
void
nextTableRow
()
{}
void
endTableRow
()
{}
void
endTableRow
()
{}
void
nextTableColumn
()
{}
void
nextTableColumn
()
{}
...
...
src/memberdef.cpp
View file @
9d4d8095
...
@@ -349,6 +349,7 @@ MemberDef::MemberDef(const char *df,int dl,
...
@@ -349,6 +349,7 @@ MemberDef::MemberDef(const char *df,int dl,
argList
=
0
;
argList
=
0
;
}
}
m_templateMaster
=
0
;
m_templateMaster
=
0
;
classSectionSDict
=
0
;
}
}
/*! Destroys the member definition. */
/*! Destroys the member definition. */
...
@@ -360,6 +361,7 @@ MemberDef::~MemberDef()
...
@@ -360,6 +361,7 @@ MemberDef::~MemberDef()
delete
argList
;
delete
argList
;
delete
tArgList
;
delete
tArgList
;
delete
m_defTmpArgLists
;
delete
m_defTmpArgLists
;
delete
classSectionSDict
;
}
}
void
MemberDef
::
setReimplements
(
MemberDef
*
md
)
void
MemberDef
::
setReimplements
(
MemberDef
*
md
)
...
@@ -1670,3 +1672,14 @@ void MemberDef::addListReference(Definition *d)
...
@@ -1670,3 +1672,14 @@ void MemberDef::addListReference(Definition *d)
d
->
getOutputFileBase
()
+
":"
+
anchor
(),
memName
,
argsString
());
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 @@
...
@@ -24,6 +24,7 @@
#include "entry.h"
#include "entry.h"
#include "definition.h"
#include "definition.h"
#include "sortdict.h"
class
ClassDef
;
class
ClassDef
;
class
NamespaceDef
;
class
NamespaceDef
;
...
@@ -81,7 +82,7 @@ class MemberDef : public Definition
...
@@ -81,7 +82,7 @@ class MemberDef : public Definition
const
QCString
&
initializer
()
const
{
return
init
;
}
const
QCString
&
initializer
()
const
{
return
init
;
}
int
initializerLines
()
const
{
return
initLines
;
}
int
initializerLines
()
const
{
return
initLines
;
}
int
getMemberSpecifiers
()
const
{
return
memSpec
;
}
int
getMemberSpecifiers
()
const
{
return
memSpec
;
}
MemberList
*
getSectionList
(
)
const
{
return
section
;
}
MemberList
*
getSectionList
(
Definition
*
d
)
const
;
// scope query members
// scope query members
ClassDef
*
getClassDef
()
const
{
return
classDef
;
}
ClassDef
*
getClassDef
()
const
{
return
classDef
;
}
...
@@ -143,7 +144,7 @@ class MemberDef : public Definition
...
@@ -143,7 +144,7 @@ class MemberDef : public Definition
void
setBitfields
(
const
char
*
s
)
{
bitfields
=
s
;
}
void
setBitfields
(
const
char
*
s
)
{
bitfields
=
s
;
}
void
setMaxInitLines
(
int
lines
)
{
userInitLines
=
lines
;
}
void
setMaxInitLines
(
int
lines
)
{
userInitLines
=
lines
;
}
void
setMemberClass
(
ClassDef
*
cd
);
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
setGroupDef
(
GroupDef
*
gd
,
Grouping
::
GroupPri_t
pri
,
const
QCString
&
fileName
,
int
startLine
,
bool
hasDocs
);
void
setExplicitExternal
(
bool
b
)
{
explExt
=
b
;
}
void
setExplicitExternal
(
bool
b
)
{
explExt
=
b
;
}
...
@@ -300,6 +301,7 @@ class MemberDef : public Definition
...
@@ -300,6 +301,7 @@ class MemberDef : public Definition
int
groupStartLine
;
// line " " " " "
int
groupStartLine
;
// line " " " " "
bool
groupHasDocs
;
// true if the entry that caused the grouping was documented
bool
groupHasDocs
;
// true if the entry that caused the grouping was documented
MemberDef
*
m_templateMaster
;
MemberDef
*
m_templateMaster
;
SIntDict
<
MemberList
>
*
classSectionSDict
;
// disable copying of member defs
// disable copying of member defs
...
...
src/membergroup.cpp
View file @
9d4d8095
...
@@ -53,7 +53,7 @@ MemberGroup::~MemberGroup()
...
@@ -53,7 +53,7 @@ MemberGroup::~MemberGroup()
delete
memberList
;
delete
memberList
;
}
}
void
MemberGroup
::
insertMember
(
MemberDef
*
md
)
void
MemberGroup
::
insertMember
(
Definition
*
d
,
MemberDef
*
md
)
{
{
//printf("MemberGroup::insertMember memberList=%p count=%d"
//printf("MemberGroup::insertMember memberList=%p count=%d"
// " member section list: %p\n",
// " member section list: %p\n",
...
@@ -62,13 +62,13 @@ void MemberGroup::insertMember(MemberDef *md)
...
@@ -62,13 +62,13 @@ void MemberGroup::insertMember(MemberDef *md)
// md->getSectionList());
// md->getSectionList());
MemberDef
*
firstMd
=
memberList
->
first
();
MemberDef
*
firstMd
=
memberList
->
first
();
if
(
inSameSection
&&
memberList
->
count
()
>
0
&&
if
(
inSameSection
&&
memberList
->
count
()
>
0
&&
firstMd
->
getSectionList
(
)
!=
md
->
getSectionList
(
))
firstMd
->
getSectionList
(
d
)
!=
md
->
getSectionList
(
d
))
{
{
inSameSection
=
FALSE
;
inSameSection
=
FALSE
;
}
}
else
if
(
inDeclSection
==
0
)
else
if
(
inDeclSection
==
0
)
{
{
inDeclSection
=
md
->
getSectionList
();
inDeclSection
=
md
->
getSectionList
(
d
);
}
}
memberList
->
append
(
md
);
memberList
->
append
(
md
);
...
@@ -82,9 +82,9 @@ void MemberGroup::insertMember(MemberDef *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
,
void
MemberGroup
::
writeDeclarations
(
OutputList
&
ol
,
...
...
src/membergroup.h
View file @
9d4d8095
...
@@ -40,8 +40,8 @@ class MemberGroup
...
@@ -40,8 +40,8 @@ class MemberGroup
~
MemberGroup
();
~
MemberGroup
();
QCString
header
()
const
{
return
grpHeader
;
}
QCString
header
()
const
{
return
grpHeader
;
}
int
groupId
()
const
{
return
grpId
;
}
int
groupId
()
const
{
return
grpId
;
}
void
insertMember
(
MemberDef
*
);
void
insertMember
(
Definition
*
d
,
MemberDef
*
md
);
void
setAnchors
();
void
setAnchors
(
ClassDef
*
);
void
writePlainDeclarations
(
OutputList
&
ol
,
void
writePlainDeclarations
(
OutputList
&
ol
,
ClassDef
*
cd
,
NamespaceDef
*
nd
,
FileDef
*
fd
,
GroupDef
*
gd
);
ClassDef
*
cd
,
NamespaceDef
*
nd
,
FileDef
*
fd
,
GroupDef
*
gd
);
void
writeDeclarations
(
OutputList
&
ol
,
void
writeDeclarations
(
OutputList
&
ol
,
...
...
src/outputgen.h
View file @
9d4d8095
...
@@ -198,8 +198,10 @@ class BaseOutputDocInterface
...
@@ -198,8 +198,10 @@ class BaseOutputDocInterface
virtual
void
endSubscript
()
=
0
;
virtual
void
endSubscript
()
=
0
;
virtual
void
startSuperscript
()
=
0
;
virtual
void
startSuperscript
()
=
0
;
virtual
void
endSuperscript
()
=
0
;
virtual
void
endSuperscript
()
=
0
;
virtual
void
startTable
(
int
cols
)
=
0
;
virtual
void
startTable
(
bool
hasCaption
,
int
cols
)
=
0
;
virtual
void
endTable
()
=
0
;
virtual
void
endTable
(
bool
hasCaption
)
=
0
;
virtual
void
startCaption
()
=
0
;
virtual
void
endCaption
()
=
0
;
virtual
void
nextTableRow
()
=
0
;
virtual
void
nextTableRow
()
=
0
;
virtual
void
endTableRow
()
=
0
;
virtual
void
endTableRow
()
=
0
;
virtual
void
nextTableColumn
()
=
0
;
virtual
void
nextTableColumn
()
=
0
;
...
...
src/outputlist.h
View file @
9d4d8095
...
@@ -277,10 +277,14 @@ class OutputList : public OutputDocInterface
...
@@ -277,10 +277,14 @@ class OutputList : public OutputDocInterface
{
forall
(
&
OutputGenerator
::
startSuperscript
);
}
{
forall
(
&
OutputGenerator
::
startSuperscript
);
}
void
endSuperscript
()
void
endSuperscript
()
{
forall
(
&
OutputGenerator
::
endSuperscript
);
}
{
forall
(
&
OutputGenerator
::
endSuperscript
);
}
void
startTable
(
int
cols
)
void
startTable
(
bool
hasCaption
,
int
cols
)
{
forall
(
&
OutputGenerator
::
startTable
,
cols
);
}
{
forall
(
&
OutputGenerator
::
startTable
,
hasCaption
,
cols
);
}
void
endTable
()
void
endTable
(
bool
hasCaption
)
{
forall
(
&
OutputGenerator
::
endTable
);
}
{
forall
(
&
OutputGenerator
::
endTable
,
hasCaption
);
}
void
startCaption
()
{
forall
(
&
OutputGenerator
::
startCaption
);
}
void
endCaption
()
{
forall
(
&
OutputGenerator
::
endCaption
);
}
void
nextTableRow
()
void
nextTableRow
()
{
forall
(
&
OutputGenerator
::
nextTableRow
);
}
{
forall
(
&
OutputGenerator
::
nextTableRow
);
}
void
endTableRow
()
void
endTableRow
()
...
...
src/pre.l
View file @
9d4d8095
...
@@ -1078,17 +1078,24 @@ BN [ \t\r\n]
...
@@ -1078,17 +1078,24 @@ BN [ \t\r\n]
BEGIN(CopyLine);
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
<CopyLine>"{" { // count brackets inside the main file
if (g_includeStack.isEmpty())
if (g_includeStack.isEmpty())
{
g_curlyCount++;
g_curlyCount++;
}
outputChar(*yytext);
outputChar(*yytext);
}
}
<CopyLine>"}" { // count brackets inside the main file
<CopyLine>"}" { // count brackets inside the main file
if (g_includeStack.isEmpty())
if (g_includeStack.isEmpty() && g_curlyCount>0)
{
g_curlyCount--;
g_curlyCount--;
}
outputChar(*yytext);
outputChar(*yytext);
// This should hold otherwise the preprocessor is confused
//ASSERT(g_curlyCount>=0);
}
}
<CopyLine>"'"\\[0-7]{1,3}"'" {
<CopyLine>"'"\\[0-7]{1,3}"'" {
outputArray(yytext,yyleng);
outputArray(yytext,yyleng);
...
...
src/rtfgen.h
View file @
9d4d8095
...
@@ -152,12 +152,14 @@ class RTFGenerator : public OutputGenerator
...
@@ -152,12 +152,14 @@ class RTFGenerator : public OutputGenerator
void
endSubscript
()
{
t
<<
"}"
;
}
void
endSubscript
()
{
t
<<
"}"
;
}
void
startSuperscript
()
{
t
<<
"{
\\
super "
<<
endl
;}
void
startSuperscript
()
{
t
<<
"{
\\
super "
<<
endl
;}
void
endSuperscript
()
{
t
<<
"}"
;
}
void
endSuperscript
()
{
t
<<
"}"
;
}
void
startTable
(
int
)
{
}
//t << "\\begin{TabularC}{" << c << "}\n\\hline\n";
void
startTable
(
bool
,
int
)
{
/* not implemented */
}
void
endTable
()
{
}
//t << "\\\\\\hline\n\\end{TabularC}\n";
void
endTable
(
bool
)
{
/* not implemented */
}
void
nextTableRow
()
{
}
void
startCaption
()
{
/* not implemented */
}
void
endTableRow
()
{
}
//t << "\\\\\\hline\n";
void
endCaption
()
{
/* not implemented */
}
void
nextTableColumn
()
{
}
//t << "&";
void
nextTableRow
()
{
/* not implemented */
}
void
endTableColumn
()
{
}
void
endTableRow
()
{
/* not implemented */
}
void
nextTableColumn
()
{
/* not implemented */
}
void
endTableColumn
()
{
/* not implemented */
}
void
writeCopyright
()
{
t
<<
"
\251
"
;
}
void
writeCopyright
()
{
t
<<
"
\251
"
;
}
void
writeQuote
()
{
t
<<
"
\"
"
;
}
void
writeQuote
()
{
t
<<
"
\"
"
;
}
void
writeUmlaut
(
char
c
);
void
writeUmlaut
(
char
c
);
...
...
src/scanner.l
View file @
9d4d8095
...
@@ -936,11 +936,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -936,11 +936,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
}
}
<FindMembers>"template"({BN}*)"<"/[>]? {
<FindMembers>"template"({BN}*)"<"/[>]? {
lineCount();
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)
if (current->tArgLists==0)
{
{
current->tArgLists = new QList<ArgumentList>;
current->tArgLists = new QList<ArgumentList>;
...
@@ -950,33 +945,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -950,33 +945,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
al->setAutoDelete(TRUE);
al->setAutoDelete(TRUE);
current->tArgLists->append(al);
current->tArgLists->append(al);
currentArgumentList = 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="<";
templateStr="<";
fullArgString = templateStr.copy();
fullArgString = templateStr.copy();
copyArgString = &templateStr;
copyArgString = &templateStr;
...
@@ -2198,7 +2166,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -2198,7 +2166,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
BEGIN(SkipCPP);
BEGIN(SkipCPP);
}
}
*/
*/
<FuncQual>[{:;
]
{ unput(*yytext); BEGIN( Function ); }
<FuncQual>[{:;
,]
{ unput(*yytext); BEGIN( Function ); }
<FuncQual>{BN}*"const"{BN}* {
<FuncQual>{BN}*"const"{BN}* {
lineCount() ;
lineCount() ;
current->args += " const ";
current->args += " const ";
...
@@ -2263,7 +2231,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -2263,7 +2231,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<Function>":" {
<Function>":" {
BEGIN(SkipInits);
BEGIN(SkipInits);
}
}
<Function>[;{] {
<Function>[;{
,
] {
current->name=current->name.simplifyWhiteSpace();
current->name=current->name.simplifyWhiteSpace();
current->type=current->type.simplifyWhiteSpace();
current->type=current->type.simplifyWhiteSpace();
current->args=current->args.simplifyWhiteSpace();
current->args=current->args.simplifyWhiteSpace();
...
@@ -2325,7 +2293,11 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -2325,7 +2293,11 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
current = new Entry ;
current = new Entry ;
initEntry();
initEntry();
lastCurlyContext = FindMembers;
lastCurlyContext = FindMembers;
if( *yytext == '{' )
if ( *yytext == ',' )
{
current->type = previous->type.data();
}
if ( *yytext == '{' )
{
{
if (current_root->section & Entry::COMPOUND_MASK)
if (current_root->section & Entry::COMPOUND_MASK)
previous->memSpec = previous->memSpec | Entry::Inline;
previous->memSpec = previous->memSpec | Entry::Inline;
...
@@ -4023,9 +3995,15 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
...
@@ -4023,9 +3995,15 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,AfterDoc>^{B}*(("//"{B}*)?)"*"+[ \t]*"-"("#")?{B}+ {
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,AfterDoc>^{B}*(("//"{B}*)?)"*"+[ \t]*"-"("#")?{B}+ {
current->doc += yytext;
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}+ {
<ClassDocBrief,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+[ \t]*"-"("#")?{B}+ {
current->brief += "-";
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}*)?)"*"+/[^/]
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,ClassDocBrief,AfterDoc,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+{B}+ {
<Doc,JavaDoc,ClassDoc,PageDoc,ExampleDoc,ReadFormulaShort,ReadFormulaLong,ClassDocBrief,AfterDoc,AfterDocBrief>^{B}*(("//"{B}*)?)"*"+{B}+ {
current->doc+=' ';
current->doc+=' ';
...
...
src/translator.cpp
View file @
9d4d8095
...
@@ -191,3 +191,81 @@ QCString Translator::Windows1251ToKoi8R( const QCString & sInput )
...
@@ -191,3 +191,81 @@ QCString Translator::Windows1251ToKoi8R( const QCString & sInput )
return
result
.
local8Bit
();
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
...
@@ -45,6 +45,9 @@ class Translator
...
@@ -45,6 +45,9 @@ class Translator
/*! Returns the string converted from windows-1251 to koi8-r. */
/*! Returns the string converted from windows-1251 to koi8-r. */
QCString
Windows1251ToKoi8R
(
const
QCString
&
sInput
);
QCString
Windows1251ToKoi8R
(
const
QCString
&
sInput
);
/*! Returns the string converted from Japanese-EUC to SJIS. */
QCString
JapaneseEucToSjis
(
const
QCString
&
sInput
);
public
:
public
:
/*! This method is used to provide warning message that is displayed
/*! This method is used to provide warning message that is displayed
...
...
src/translator_jp.h
View file @
9d4d8095
This diff is collapsed.
Click to expand it.
src/translator_sk.h
View file @
9d4d8095
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
#ifndef TRANSLATOR_SK_H
#ifndef TRANSLATOR_SK_H
#define TRANSLATOR_SK_H
#define TRANSLATOR_SK_H
class
TranslatorSlovak
:
public
Translator
Adapter_1_2_11
class
TranslatorSlovak
:
public
Translator
{
{
private
:
private
:
/*! The Decode() inline assumes the source written in the
/*! The Decode() inline assumes the source written in the
...
@@ -1221,13 +1221,13 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
...
@@ -1221,13 +1221,13 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
/*! Used as ansicpg for RTF fcharset */
/*! Used as ansicpg for RTF fcharset */
virtual
QCString
trRTFCharSet
()
virtual
QCString
trRTFCharSet
()
{
{
return
"
0"
;
//???
return
"
3"
;
}
}
/*! Used as header RTF general index */
/*! Used as header RTF general index */
virtual
QCString
trRTFGeneralIndex
()
virtual
QCString
trRTFGeneralIndex
()
{
{
return
"Index"
;
//???
return
"Index"
;
}
}
/*! This is used for translation of the word that will possibly
/*! This is used for translation of the word that will possibly
...
@@ -1331,6 +1331,17 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
...
@@ -1331,6 +1331,17 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_11
result
+=
(
singular
)
?
"r"
:
"ri"
;
result
+=
(
singular
)
?
"r"
:
"ri"
;
return
result
;
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
#endif // TRANSLATOR_SK_H
src/util.cpp
View file @
9d4d8095
...
@@ -3102,7 +3102,8 @@ const char *getOverloadDocs()
...
@@ -3102,7 +3102,8 @@ const char *getOverloadDocs()
"function only in what argument(s) it accepts."
;
"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
);
MemberListIterator
mli
(
*
ml
);
MemberDef
*
md
;
MemberDef
*
md
;
...
@@ -3122,20 +3123,31 @@ void addMembersToMemberGroup(MemberList *ml,MemberGroupSDict *memberGroupSDict)
...
@@ -3122,20 +3123,31 @@ void addMembersToMemberGroup(MemberList *ml,MemberGroupSDict *memberGroupSDict)
mg
=
new
MemberGroup
(
groupId
,
*
pGrpHeader
,
pDocs
?
pDocs
->
data
()
:
0
);
mg
=
new
MemberGroup
(
groupId
,
*
pGrpHeader
,
pDocs
?
pDocs
->
data
()
:
0
);
memberGroupSDict
->
append
(
groupId
,
mg
);
memberGroupSDict
->
append
(
groupId
,
mg
);
}
}
md
=
ml
->
take
(
index
);
md
=
ml
->
take
(
index
);
// remove from member list
mg
->
insertMember
(
md
);
//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
);
md
->
setMemberGroup
(
mg
);
continue
;
}
}
else
{
++
mli
;
++
index
;
}
}
}
else
{
++
mli
;
++
index
;
++
mli
;
++
index
;
}
}
}
}
}
/*! Extracts a (sub-)string from \a type starting at \a pos that
/*! Extracts a (sub-)string from \a type starting at \a pos that
...
...
src/util.h
View file @
9d4d8095
...
@@ -42,6 +42,7 @@ class ClassList;
...
@@ -42,6 +42,7 @@ class ClassList;
class
MemberGroupSDict
;
class
MemberGroupSDict
;
class
Definition
;
class
Definition
;
struct
TagInfo
;
struct
TagInfo
;
class
MemberNameInfoSDict
;
//--------------------------------------------------------------------
//--------------------------------------------------------------------
...
@@ -148,7 +149,9 @@ int iSystem(const char *command,const char *args,bool isBatchFile=FALSE);
...
@@ -148,7 +149,9 @@ int iSystem(const char *command,const char *args,bool isBatchFile=FALSE);
QCString
convertToHtml
(
const
char
*
s
);
QCString
convertToHtml
(
const
char
*
s
);
QCString
convertToXML
(
const
char
*
s
);
QCString
convertToXML
(
const
char
*
s
);
const
char
*
getOverloadDocs
();
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
,
bool
extractClassNameFromType
(
const
QCString
&
type
,
int
&
pos
,
QCString
&
name
,
QCString
&
templSpec
);
QCString
&
name
,
QCString
&
templSpec
);
QCString
substituteTemplateArgumentsInString
(
QCString
substituteTemplateArgumentsInString
(
...
...
src/xmlgen.cpp
View file @
9d4d8095
...
@@ -83,16 +83,12 @@ inline void writeXMLString(QTextStream &t,const char *s)
...
@@ -83,16 +83,12 @@ inline void writeXMLString(QTextStream &t,const char *s)
void
writeXMLLink
(
QTextStream
&
t
,
const
char
*
extRef
,
const
char
*
compoundId
,
void
writeXMLLink
(
QTextStream
&
t
,
const
char
*
extRef
,
const
char
*
compoundId
,
const
char
*
anchorId
,
const
char
*
text
)
const
char
*
anchorId
,
const
char
*
text
)
{
{
t
<<
"<ref idref=
\"
"
<<
compoundId
;
t
<<
"<ref refid=
\"
"
<<
compoundId
;
if
(
anchorId
)
if
(
anchorId
)
t
<<
"_1"
<<
anchorId
;
{
t
<<
"
\"
kindref=
\"
"
;
t
<<
"_1"
<<
anchorId
;
if
(
anchorId
)
t
<<
"member"
;
else
t
<<
"compound"
;
}
t
<<
"
\"
"
;
t
<<
"
\"
"
;
if
(
extRef
)
if
(
extRef
)
t
<<
" external=
\"
"
<<
extRef
<<
"
\"
"
;
{
t
<<
" external=
\"
"
<<
extRef
<<
"
\"
"
;
}
t
<<
">"
;
t
<<
">"
;
writeXMLString
(
t
,
text
);
writeXMLString
(
t
,
text
);
t
<<
"</ref>"
;
t
<<
"</ref>"
;
...
@@ -613,17 +609,27 @@ class XMLGenerator : public OutputDocInterface
...
@@ -613,17 +609,27 @@ class XMLGenerator : public OutputDocInterface
XML_DB
((
"(endSuperscript)
\n
"
));
XML_DB
((
"(endSuperscript)
\n
"
));
m_t
<<
"</superscript>"
;
m_t
<<
"</superscript>"
;
}
}
void
startTable
(
int
cols
)
void
startTable
(
bool
,
int
cols
)
{
{
XML_DB
((
"startTable
\n
"
));
XML_DB
((
"startTable
\n
"
));
startParMode
();
startParMode
();
m_t
<<
"<table cols=
\"
"
<<
cols
<<
"
\"
>
\n
"
;
m_t
<<
"<table cols=
\"
"
<<
cols
<<
"
\"
>
\n
"
;
}
}
void
endTable
()
void
endTable
(
bool
)
{
{
XML_DB
((
"endTable
\n
"
));
XML_DB
((
"endTable
\n
"
));
m_t
<<
"</row>
\n
</table>"
;
m_t
<<
"</row>
\n
</table>"
;
}
}
void
startCaption
()
{
XML_DB
((
"startCaption"
));
m_t
<<
"<caption>"
;
}
void
endCaption
()
{
XML_DB
((
"encCaption"
));
m_t
<<
"</caption"
;
}
void
nextTableRow
()
void
nextTableRow
()
{
{
XML_DB
((
"(nextTableRow)
\n
"
));
XML_DB
((
"(nextTableRow)
\n
"
));
...
@@ -764,15 +770,20 @@ class XMLGenerator : public OutputDocInterface
...
@@ -764,15 +770,20 @@ class XMLGenerator : public OutputDocInterface
{
{
XML_DB
((
"(endPageRef)
\n
"
));
XML_DB
((
"(endPageRef)
\n
"
));
}
}
void
writeLineNumber
(
const
char
*
,
const
char
*
file
,
// TODO: support external references
void
writeLineNumber
(
const
char
*
extRef
,
const
char
*
compId
,
const
char
*
anchor
,
int
l
)
const
char
*
anchor
Id
,
int
l
)
{
{
XML_DB
((
"(writeLineNumber)
\n
"
));
XML_DB
((
"(writeLineNumber)
\n
"
));
m_t
<<
"<linenumber"
;
m_t
<<
"<linenumber"
;
m_t
<<
" line=
\"
"
<<
l
<<
"
\"
"
;
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
<<
"/>"
;
m_t
<<
"/>"
;
}
}
...
@@ -1172,7 +1183,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
...
@@ -1172,7 +1183,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &t,Definition *def)
{
{
t
<<
" <exceptions>"
;
t
<<
" <exceptions>"
;
linkifyText
(
TextGeneratorXMLImpl
(
t
),
scopeName
,
md
->
name
(),
md
->
excpString
());
linkifyText
(
TextGeneratorXMLImpl
(
t
),
scopeName
,
md
->
name
(),
md
->
excpString
());
t
<<
"</exception>"
<<
endl
;
t
<<
"</exception
s
>"
<<
endl
;
}
}
if
(
md
->
memberType
()
==
MemberDef
::
Enumeration
)
// enum
if
(
md
->
memberType
()
==
MemberDef
::
Enumeration
)
// enum
...
@@ -1293,7 +1304,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
...
@@ -1293,7 +1304,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
BaseClassDef
*
bcd
;
BaseClassDef
*
bcd
;
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
{
{
t
<<
" <basecompoundref
idref
=
\"
"
t
<<
" <basecompoundref
refid
=
\"
"
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
"
\"
prot=
\"
"
;
<<
"
\"
prot=
\"
"
;
switch
(
bcd
->
prot
)
switch
(
bcd
->
prot
)
...
@@ -1318,7 +1329,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
...
@@ -1318,7 +1329,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &t)
BaseClassDef
*
bcd
;
BaseClassDef
*
bcd
;
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
for
(
bcli
.
toFirst
();(
bcd
=
bcli
.
current
());
++
bcli
)
{
{
t
<<
" <derivedcompoundref
idref
=
\"
"
t
<<
" <derivedcompoundref
refid
=
\"
"
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
bcd
->
classDef
->
getOutputFileBase
()
<<
"
\"
prot=
\"
"
;
<<
"
\"
prot=
\"
"
;
switch
(
bcd
->
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