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
977ad9d3
Commit
977ad9d3
authored
Jun 30, 2002
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.16-20020630
parent
54bcd31f
Changes
28
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
516 additions
and
396 deletions
+516
-396
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+1
-1
code.l
src/code.l
+24
-13
definition.cpp
src/definition.cpp
+42
-0
definition.h
src/definition.h
+13
-10
doc.l
src/doc.l
+38
-65
doxygen.cpp
src/doxygen.cpp
+66
-36
doxygen.h
src/doxygen.h
+2
-2
entry.cpp
src/entry.cpp
+38
-7
entry.h
src/entry.h
+11
-3
filedef.cpp
src/filedef.cpp
+1
-1
groupdef.cpp
src/groupdef.cpp
+1
-1
memberdef.cpp
src/memberdef.cpp
+1
-1
namespacedef.cpp
src/namespacedef.cpp
+1
-1
outputgen.h
src/outputgen.h
+0
-2
outputlist.h
src/outputlist.h
+0
-4
page.h
src/page.h
+2
-5
pre.l
src/pre.l
+2
-2
reflist.cpp
src/reflist.cpp
+42
-2
reflist.h
src/reflist.h
+18
-4
rtfgen.cpp
src/rtfgen.cpp
+2
-2
scanner.l
src/scanner.l
+144
-127
util.cpp
src/util.cpp
+57
-98
util.h
src/util.h
+4
-2
xmlgen.cpp
src/xmlgen.cpp
+0
-1
No files found.
INSTALL
View file @
977ad9d3
DOXYGEN Version 1.2.16-200206
23
DOXYGEN Version 1.2.16-200206
30
Please read the installation section of the manual for instructions.
--------
Dimitri van Heesch (
23
June 2002)
Dimitri van Heesch (
30
June 2002)
README
View file @
977ad9d3
DOXYGEN Version 1.2.16_200206
23
DOXYGEN Version 1.2.16_200206
30
Please read INSTALL for compilation instructions.
...
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (
23
June 2002)
Dimitri van Heesch (dimitri@stack.nl) (
30
June 2002)
VERSION
View file @
977ad9d3
1.2.16-200206
23
1.2.16-200206
30
packages/rpm/doxygen.spec
View file @
977ad9d3
Summary: A documentation system for C/C++.
Name: doxygen
Version: 1.2.16_200206
23
Version: 1.2.16_200206
30
Release: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
977ad9d3
...
...
@@ -2462,7 +2462,7 @@ QCString ClassDef::className() const
void
ClassDef
::
addListReferences
()
{
addRefItem
(
todoId
(),
testId
(),
bugId
(),
addRefItem
(
specialListItems
(),
theTranslator
->
trClass
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
...
...
src/code.l
View file @
977ad9d3
...
...
@@ -1020,6 +1020,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
%x SkipSharp
%x ReadInclude
%x TemplDecl
%x CallEnd
%%
...
...
@@ -1565,19 +1566,17 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
g_code->codify(yytext);
if (--g_bracketCount<=0)
{
if (!g_insideBody)
{
g_theVarContext.popScope();
}
g_name.resize(0);g_args.resize(0);
g_parmType.resize(0);g_parmName.resize(0);
BEGIN( Body );
BEGIN( CallEnd );
}
}
<CallEnd>[ \t\n]* { codifyLines(yytext); }
/*
<MemberCall2,FuncCall>")"[ \t\n]*[;:] {
*/
<CallEnd>[;:] {
codifyLines(yytext);
g_bracketCount=0;
if (
yytext[yyleng-1]
==';') g_searchingForBody=FALSE;
if (
*yytext
==';') g_searchingForBody=FALSE;
if (!g_inClass && !g_type.isEmpty())
{
g_theVarContext.addVariable(g_type,g_name);
...
...
@@ -1585,7 +1584,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
g_parmType.resize(0);g_parmName.resize(0);
g_theCallContext.popScope();
g_theCallContext.setClass(0);
if (
yytext[yyleng-1]
==';' || g_insideBody)
if (
*yytext
==';' || g_insideBody)
{
if (!g_insideBody)
{
...
...
@@ -1600,7 +1599,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
BEGIN( SkipInits );
}
}
/*
<MemberCall2,FuncCall>")"({BN}"const"|"volatile")*{BN}*"{" {
*/
<CallEnd>({BN}"const"|"volatile")*{BN}*"{" {
if (g_insideBody)
{
g_theVarContext.pushScope();
...
...
@@ -1617,18 +1619,17 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
{
g_scopeStack.push(INNERBLOCK);
}
g_code->codify(")");
yytext[yyleng-1]='\0';
QCString cv(yytext
+1
);
QCString cv(yytext);
if (!cv.stripWhiteSpace().isEmpty())
{
startFontClass("keyword");
codifyLines(yytext
+1
);
codifyLines(yytext);
endFontClass();
}
else // just whitespace
{
codifyLines(yytext
+1
);
codifyLines(yytext);
}
g_code->codify("{");
if (g_searchingForBody)
...
...
@@ -1641,6 +1642,16 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
g_type.resize(0); g_name.resize(0);
BEGIN( Body );
}
<CallEnd>. {
unput(*yytext);
if (!g_insideBody)
{
g_theVarContext.popScope();
}
g_name.resize(0);g_args.resize(0);
g_parmType.resize(0);g_parmName.resize(0);
BEGIN( Body );
}
<SkipInits>";" {
g_code->codify(yytext);
g_type.resize(0); g_name.resize(0);
...
...
src/definition.cpp
View file @
977ad9d3
...
...
@@ -52,6 +52,7 @@ Definition::Definition(const char *df,int dl,
m_bugId
=
0
;
m_outerScope
=
Doxygen
::
globalScope
;
m_partOfGroups
=
0
;
m_specialListItems
=
0
;
}
Definition
::~
Definition
()
...
...
@@ -60,6 +61,7 @@ Definition::~Definition()
delete
m_sourceRefByDict
;
delete
m_sourceRefsDict
;
delete
m_partOfGroups
;
delete
m_specialListItems
;
}
void
Definition
::
addSectionsToDefinition
(
QList
<
QCString
>
*
anchorList
)
...
...
@@ -561,4 +563,44 @@ void Definition::makePartOfGroup(GroupDef *gd)
m_partOfGroups
->
append
(
gd
);
}
void
Definition
::
setRefItems
(
const
QList
<
ListItemInfo
>
*
sli
)
{
if
(
sli
)
{
// deep copy the list
if
(
m_specialListItems
==
0
)
{
m_specialListItems
=
new
QList
<
ListItemInfo
>
;
m_specialListItems
->
setAutoDelete
(
TRUE
);
}
QListIterator
<
ListItemInfo
>
slii
(
*
sli
);
ListItemInfo
*
lii
;
for
(
slii
.
toFirst
();(
lii
=
slii
.
current
());
++
slii
)
{
m_specialListItems
->
append
(
new
ListItemInfo
(
*
lii
));
}
}
}
int
Definition
::
getSpecialListId
(
const
char
*
listName
)
const
{
if
(
m_specialListItems
)
{
QListIterator
<
ListItemInfo
>
slii
(
*
m_specialListItems
);
ListItemInfo
*
lii
;
for
(
slii
.
toFirst
();(
lii
=
slii
.
current
());
++
slii
)
{
if
(
strcmp
(
lii
->
type
,
listName
)
==
0
)
{
return
lii
->
itemId
;
}
}
}
return
-
1
;
}
const
QList
<
ListItemInfo
>
*
Definition
::
specialListItems
()
const
{
return
m_specialListItems
;
}
src/definition.h
View file @
977ad9d3
...
...
@@ -30,6 +30,7 @@ class MemberSDict;
class
MemberDef
;
class
GroupDef
;
class
GroupList
;
class
ListItemInfo
;
/*! The common base class of all entity definitions found in the sources. */
class
Definition
...
...
@@ -103,15 +104,17 @@ class Definition
void
addSourceReferencedBy
(
MemberDef
*
d
);
void
addSourceReferences
(
MemberDef
*
d
);
void
setRefItems
(
int
todoId
,
int
testId
,
int
bugId
)
{
if
(
todoId
!=
0
)
m_todoId
=
todoId
;
if
(
testId
!=
0
)
m_testId
=
testId
;
if
(
bugId
!=
0
)
m_bugId
=
bugId
;
}
int
todoId
()
const
{
return
m_todoId
;
}
int
testId
()
const
{
return
m_testId
;
}
int
bugId
()
const
{
return
m_bugId
;
}
//{
// if (todoId!=0) m_todoId=todoId;
// if (testId!=0) m_testId=testId;
// if (bugId!=0) m_bugId=bugId;
//}
//int todoId() const { return m_todoId; }
//int testId() const { return m_testId; }
//int bugId() const { return m_bugId; }
void
setRefItems
(
const
QList
<
ListItemInfo
>
*
sli
);
int
getSpecialListId
(
const
char
*
listName
)
const
;
const
QList
<
ListItemInfo
>
*
specialListItems
()
const
;
/*! returns the file in which this definition was found */
QCString
getDefFileName
()
const
{
return
m_defFileName
;
}
...
...
@@ -165,7 +168,7 @@ class Definition
QCString
m_docFile
;
int
m_briefLine
;
QCString
m_briefFile
;
QList
<
ListItemInfo
>
*
m_specialListItems
;
};
class
DefinitionList
:
public
QList
<
Definition
>
...
...
src/doc.l
View file @
977ad9d3
...
...
@@ -1071,6 +1071,40 @@ bool findDocsForMemberOrCompound(const char *commandName,
return FALSE;
}
/* ----------------------------------------------------------------- */
static void writeSpecialItem(const char *commandString)
{
QCString cmd = commandString; // format "\test 20" or "\todo 4"
int sepPos=cmd.find(' ');
QCString listName = cmd.mid(1,cmd.length()-sepPos-1); // i.e. "test" or "todo"
RefList *refList = Doxygen::specialLists->find(cmd.mid(1,sepPos-1));
ASSERT(refList!=0);
if (Config_getBool(refList->optionName()))
{
QCString numStr=cmd.right(cmd.length()-sepPos-1); // i.e. "20" or "4"
bool ok; int num = numStr.toUInt(&ok);
RefItem *item = refList->getRefItem(num);
ASSERT(item!=0);
if (insideItemList)
{
forceEndItemList();
}
endArgumentList();
if (inBlock()) endBlock();
currentListIndent.push("P");
outDoc->startSimpleSect(refList->sectionType(),
refList->listName(),
item->listAnchor,
refList->sectionTitle()+": "
);
outDoc->writeDescItem();
internalParseDocument(item->text);
outDoc->endSimpleSect();
currentListIndent.pop();
}
}
/* ----------------------------------------------------------------- */
#undef YY_INPUT
#define YY_INPUT(buf,result,max_size) result=yyread(buf,max_size);
...
...
@@ -1655,71 +1689,10 @@ LINKMASK [a-z_A-Z0-9:#.,~&*/\[\]<>()\-\+]+({B}*("const"|"volatile"))?
outDoc->writeDescItem();
}
}
<DocScan>"\\todo "[0-9]+ { // this tag is generated in an earlier pass
if (Config_getBool("GENERATE_TODOLIST"))
{
QCString numStr=yytext;
numStr=numStr.right(numStr.length()-6);
bool ok; int num = numStr.toUInt(&ok);
RefItem *item = todoList.getRefItem(num);
ASSERT(item!=0);
if (insideItemList)
{
forceEndItemList();
}
endArgumentList();
if (inBlock()) endBlock();
currentListIndent.push("P");
outDoc->startSimpleSect(BaseOutputDocInterface::Todo,"todo",item->listAnchor,theTranslator->trTodo()+": ");
outDoc->writeDescItem();
internalParseDocument(item->text);
outDoc->endSimpleSect();
currentListIndent.pop();
}
}
<DocScan>"\\test "[0-9]+ { // this tag is generated in an earlier pass
if (Config_getBool("GENERATE_TESTLIST"))
{
QCString numStr=yytext;
numStr=numStr.right(numStr.length()-6);
bool ok; int num = numStr.toUInt(&ok);
RefItem *item = testList.getRefItem(num);
ASSERT(item!=0);
if (insideItemList)
{
forceEndItemList();
}
endArgumentList();
if (inBlock()) endBlock();
currentListIndent.push("P");
outDoc->startSimpleSect(BaseOutputDocInterface::Test,"test",item->listAnchor,theTranslator->trTest()+": ");
outDoc->writeDescItem();
internalParseDocument(item->text);
outDoc->endSimpleSect();
currentListIndent.pop();
}
}
<DocScan>"\\bug "[0-9]+ { // this tag is generated in an earlier pass
if (Config_getBool("GENERATE_BUGLIST"))
{
QCString numStr=yytext;
numStr=numStr.right(numStr.length()-5);
bool ok; int num = numStr.toUInt(&ok);
RefItem *item = bugList.getRefItem(num);
ASSERT(item!=0);
if (insideItemList)
{
forceEndItemList();
}
endArgumentList();
if (inBlock()) endBlock();
currentListIndent.push("P");
outDoc->startSimpleSect(BaseOutputDocInterface::Bug,"bug",item->listAnchor,theTranslator->trBug()+": ");
outDoc->writeDescItem();
internalParseDocument(item->text);
outDoc->endSimpleSect();
currentListIndent.pop();
}
<DocScan>"\\todo "[0-9]+ | /* generated labels */
<DocScan>"\\test "[0-9]+ |
<DocScan>"\\bug "[0-9]+ {
writeSpecialItem(yytext);
}
<DocScan>{CMD}"deprecated"{BSEP} {
if (insideItemList)
...
...
src/doxygen.cpp
View file @
977ad9d3
This diff is collapsed.
Click to expand it.
src/doxygen.h
View file @
977ad9d3
...
...
@@ -32,6 +32,7 @@
#include "formula.h"
#include "section.h"
#include "membergroup.h"
#include "reflist.h"
//#include "packagedef.h"
class
PageSList
;
...
...
@@ -81,7 +82,6 @@ class Doxygen
static
QTextStream
tagFile
;
static
SectionDict
sectionDict
;
static
StringDict
namespaceAliasDict
;
//static GroupList groupList;
static
GroupSDict
groupSDict
;
static
NamespaceSDict
namespaceSDict
;
static
FormulaList
formulaList
;
...
...
@@ -92,8 +92,8 @@ class Doxygen
static
QIntDict
<
QCString
>
memberHeaderDict
;
// dictionary of the member groups heading
static
QIntDict
<
QCString
>
memberDocDict
;
// dictionary of the member groups heading
static
QDict
<
void
>
expandAsDefinedDict
;
//static PackageSDict packageDict;
static
NamespaceDef
*
globalScope
;
static
QDict
<
RefList
>
*
specialLists
;
// array of special lists: todo, test, bug ...
};
void
initDoxygen
();
...
...
src/entry.cpp
View file @
977ad9d3
...
...
@@ -41,6 +41,7 @@ Entry::Entry()
//mtArgList = 0;
mGrpId
=
-
1
;
tagInfo
=
0
;
sli
=
0
;
groupDocType
=
GROUPDOC_NORMAL
;
reset
();
}
...
...
@@ -80,9 +81,9 @@ Entry::Entry(const Entry &e)
memSpec
=
e
.
memSpec
;
initializer
=
e
.
initializer
;
initLines
=
e
.
initLines
;
todoId
=
e
.
todoId
;
testId
=
e
.
testId
;
bugId
=
e
.
bugId
;
//
todoId = e.todoId;
//
testId = e.testId;
//
bugId = e.bugId;
tagInfo
=
e
.
tagInfo
;
sublist
=
new
QList
<
Entry
>
;
sublist
->
setAutoDelete
(
TRUE
);
...
...
@@ -158,7 +159,21 @@ Entry::Entry(const Entry &e)
// //printf("appending argument %s %s\n",a->type.data(),a->name.data());
// }
//}
if
(
e
.
sli
)
{
sli
=
new
QList
<
ListItemInfo
>
;
sli
->
setAutoDelete
(
TRUE
);
QListIterator
<
ListItemInfo
>
slii
(
*
e
.
sli
);
ListItemInfo
*
ili
;
for
(
slii
.
toFirst
();(
ili
=
slii
.
current
());
++
slii
)
{
sli
->
append
(
new
ListItemInfo
(
*
ili
));
}
}
else
{
sli
=
0
;
}
}
Entry
::~
Entry
()
...
...
@@ -173,6 +188,7 @@ Entry::~Entry()
delete
tArgLists
;
//delete mtArgList;
delete
tagInfo
;
delete
sli
;
num
--
;
}
...
...
@@ -224,9 +240,9 @@ void Entry::reset()
bodyLine
=
-
1
;
endBodyLine
=
-
1
;
mGrpId
=
-
1
;
todoId
=
0
;
testId
=
0
;
bugId
=
0
;
//
todoId = 0;
//
testId = 0;
//
bugId = 0;
section
=
EMPTY_SEC
;
mtype
=
Method
;
virt
=
Normal
;
...
...
@@ -244,6 +260,7 @@ void Entry::reset()
argList
->
clear
();
if
(
tagInfo
)
{
delete
tagInfo
;
tagInfo
=
0
;
}
if
(
tArgLists
)
{
delete
tArgLists
;
tArgLists
=
0
;
}
if
(
sli
)
{
delete
sli
;
sli
=
0
;
}
//if (mtArgList) { delete mtArgList; mtArgList=0; }
}
...
...
@@ -351,3 +368,17 @@ bool ArgumentList::hasDocumentation() const
}
return
hasDocs
;
}
void
Entry
::
addSpecialListItem
(
const
char
*
listName
,
int
itemId
)
{
if
(
sli
==
0
)
{
sli
=
new
QList
<
ListItemInfo
>
;
sli
->
setAutoDelete
(
TRUE
);
}
ListItemInfo
*
ili
=
new
ListItemInfo
;
ili
->
type
=
listName
;
ili
->
itemId
=
itemId
;
sli
->
append
(
ili
);
}
src/entry.h
View file @
977ad9d3
...
...
@@ -25,6 +25,12 @@ enum Protection { Public, Protected, Private } ;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
enum
MethodTypes
{
Method
,
Signal
,
Slot
,
DCOP
,
Property
};
struct
ListItemInfo
{
const
char
*
type
;
int
itemId
;
};
/*! \brief This class stores information about an inheritance relation
*/
struct
BaseInfo
...
...
@@ -229,6 +235,7 @@ class Entry
Entry
(
const
Entry
&
);
~
Entry
();
int
getSize
();
void
addSpecialListItem
(
const
char
*
listName
,
int
index
);
/*! Adds entry \e as a child to this entry */
void
addSubEntry
(
Entry
*
e
)
;
...
...
@@ -276,9 +283,10 @@ class Entry
QList
<
QCString
>
*
anchors
;
//!< list of anchors defined in this entry
QCString
fileName
;
//!< file this entry was extracted from
int
startLine
;
//!< start line of entry in the source
int
todoId
;
//!< id of the todo list item of this entry
int
testId
;
//!< id of the test list item of this entry
int
bugId
;
//!< id of the bug list item of this entry
//int todoId; //!< id of the todo list item of this entry
//int testId; //!< id of the test list item of this entry
//int bugId; //!< id of the bug list item of this entry
QList
<
ListItemInfo
>
*
sli
;
//!< special lists (test/todo/bug/..) this entry is in
TagInfo
*
tagInfo
;
//!< tag file info
static
int
num
;
//!< counts the total number of entries
enum
...
...
src/filedef.cpp
View file @
977ad9d3
...
...
@@ -660,7 +660,7 @@ bool FileDef::generateSourceFile() const
void
FileDef
::
addListReferences
()
{
addRefItem
(
todoId
(),
testId
(),
bugId
(),
addRefItem
(
specialListItems
(),
theTranslator
->
trFile
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
...
...
src/groupdef.cpp
View file @
977ad9d3
...
...
@@ -754,7 +754,7 @@ QCString GroupDef::getOutputFileBase() const
void
GroupDef
::
addListReferences
()
{
addRefItem
(
todoId
(),
testId
(),
bugId
(),
addRefItem
(
specialListItems
(),
theTranslator
->
trGroup
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
...
...
src/memberdef.cpp
View file @
977ad9d3
...
...
@@ -1703,7 +1703,7 @@ void MemberDef::addListReference(Definition *d)
}
}
//printf("*** addListReference %s todo=%d test=%d bug=%d\n",name().data(),todoId(),testId(),bugId());
addRefItem
(
todoId
(),
testId
(),
bugId
(),
memLabel
,
addRefItem
(
specialListItems
(),
memLabel
,
d
->
getOutputFileBase
()
+
":"
+
anchor
(),
memName
,
argsString
());
}
...
...
src/namespacedef.cpp
View file @
977ad9d3
...
...
@@ -364,7 +364,7 @@ Definition *NamespaceDef::findInnerCompound(const char *n)
void
NamespaceDef
::
addListReferences
()
{
addRefItem
(
todoId
(),
testId
(),
bugId
(),
addRefItem
(
specialListItems
(),
theTranslator
->
trNamespace
(
TRUE
,
TRUE
),
getOutputFileBase
(),
name
()
);
...
...
src/outputgen.h
View file @
977ad9d3
...
...
@@ -224,8 +224,6 @@ class BaseOutputDocInterface
virtual
void
writeRing
(
char
)
=
0
;
virtual
void
writeSharpS
()
=
0
;
virtual
void
writeCCedil
(
char
)
=
0
;
virtual
void
startDescList
(
SectionTypes
t
)
=
0
;
virtual
void
endDescList
()
=
0
;
virtual
void
startSimpleSect
(
SectionTypes
t
,
const
char
*
file
,
const
char
*
anchor
,
const
char
*
title
)
=
0
;
virtual
void
endSimpleSect
()
=
0
;
...
...
src/outputlist.h
View file @
977ad9d3
...
...
@@ -327,10 +327,6 @@ class OutputList : public OutputDocInterface
{
forall
(
&
OutputGenerator
::
startMemberDescription
);
}
void
endMemberDescription
()
{
forall
(
&
OutputGenerator
::
endMemberDescription
);
}
void
startDescList
(
SectionTypes
t
)
{
forall
(
&
OutputGenerator
::
startDescList
,
t
);
}
void
endDescList
()
{
forall
(
&
OutputGenerator
::
endDescList
);
}
void
startSimpleSect
(
SectionTypes
t
,
const
char
*
file
,
const
char
*
anchor
,
const
char
*
title
)
{
forall
(
&
OutputGenerator
::
startSimpleSect
,
t
,
file
,
anchor
,
title
);
}
...
...
src/page.h
View file @
977ad9d3
...
...
@@ -25,7 +25,7 @@ class PageInfo
public
:
PageInfo
(
const
char
*
f
,
int
l
,
const
char
*
n
,
const
char
*
d
,
const
char
*
t
)
:
defFileName
(
f
),
defLine
(
l
),
name
(
n
),
doc
(
d
),
title
(
t
),
todoId
(
0
),
testId
(
0
),
sectionDict
(
0
),
m_inGroup
(
0
)
{}
doc
(
d
),
title
(
t
),
sectionDict
(
0
),
specialListItems
(
0
),
m_inGroup
(
0
)
{}
// where the page definition was found
QCString
defFileName
;
...
...
@@ -87,16 +87,13 @@ class PageInfo
}
}
// ids
int
todoId
;
int
testId
;
int
bugId
;
void
makePartOfGroup
(
GroupDef
*
gd
)
{
m_inGroup
=
gd
;
}
GroupDef
*
getGroupDef
()
const
{
return
m_inGroup
;
}
// is this page part of a group
SectionDict
*
sectionDict
;
QList
<
ListItemInfo
>
*
specialListItems
;
private
:
GroupDef
*
m_inGroup
;
...
...
src/pre.l
View file @
977ad9d3
...
...
@@ -1106,7 +1106,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
BEGIN(CopyLine);
}
}
<CopyLine>"extern"{BN}
*"\"C\""*{BN}*
"{" {
<CopyLine>"extern"{BN}
{0,80}"\"C\""*{BN}{0,80}
"{" {
QCString text=yytext;
g_yyLineNr+=text.contains('\n');
outputArray(yytext,yyleng);
...
...
@@ -1148,7 +1148,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
outputChar(*yytext);
BEGIN( CopyLine );
}
<CopyLine>{ID}/{BN}
*
"(" {
<CopyLine>{ID}/{BN}
{0,80}
"(" {
Define *def=0;
//def=g_fileDefineDict->find(yytext);
//printf("Search for define %s found=%d g_includeStack.isEmpty()=%d "
...
...
src/reflist.cpp
View file @
977ad9d3
...
...
@@ -18,19 +18,33 @@
#include "reflist.h"
#if 0
/*! The one and only todo list */
RefList todoList;
/*! The test criteria list */
RefList testList;
/*! The bug list */
RefList bugList;
#endif
/*! Create a todo list */
RefList
::
RefList
()
/*! Create a list of items that are cross referenced with documentation blocks
* @param listName String representing the name of the list.
* @param optionName String representation of the option enabling the list.
* @param pageTitle String representing the title of the list page.
* @param secTitle String representing the title of the section.
* @param type Type of the section.
*/
RefList
::
RefList
(
const
char
*
listName
,
const
char
*
optionName
,
const
char
*
pageTitle
,
const
char
*
secTitle
,
BaseOutputDocInterface
::
SectionTypes
type
)
{
m_dict
=
0
;
m_dictIterator
=
0
;
m_id
=
0
;
m_listName
=
listName
;
m_optionName
=
optionName
;
m_pageTitle
=
pageTitle
;
m_secTitle
=
secTitle
;
m_type
=
type
;
}
/*! Destroy the todo list. Currently not called! */
...
...
@@ -84,3 +98,29 @@ RefItem *RefList::getNextRefItem()
return
m_dictIterator
?
m_dictIterator
->
operator
++
()
:
0
;
}
/*! Returns the name of the list as set in the constructor. */
QCString
RefList
::
listName
()
const
{
return
m_listName
;
}
QCString
RefList
::
optionName
()
const
{
return
m_optionName
;
}
QCString
RefList
::
pageTitle
()
const
{
return
m_pageTitle
;
}
QCString
RefList
::
sectionTitle
()
const
{
return
m_secTitle
;
}
BaseOutputDocInterface
::
SectionTypes
RefList
::
sectionType
()
const
{
return
m_type
;
}
src/reflist.h
View file @
977ad9d3
...
...
@@ -21,6 +21,7 @@
#include "qtbc.h"
#include <qintdict.h>
#include "outputgen.h"
/*! This struct represents an item in the list of references. */
struct
RefItem
...
...
@@ -39,18 +40,31 @@ class RefList
RefItem
*
getRefItem
(
int
todoItemId
);
RefItem
*
getFirstRefItem
();
RefItem
*
getNextRefItem
();
QCString
listName
()
const
;
QCString
optionName
()
const
;
QCString
pageTitle
()
const
;
QCString
sectionTitle
()
const
;
BaseOutputDocInterface
::
SectionTypes
sectionType
()
const
;
RefList
();
RefList
(
const
char
*
listName
,
const
char
*
optionName
,
const
char
*
pageTitle
,
const
char
*
secTitle
,
BaseOutputDocInterface
::
SectionTypes
type
);
~
RefList
();
private
:
int
m_id
;
QCString
m_listName
;
QCString
m_optionName
;
QCString
m_pageTitle
;
QCString
m_secTitle
;
QIntDict
<
RefItem
>
*
m_dict
;
QIntDictIterator
<
RefItem
>
*
m_dictIterator
;
BaseOutputDocInterface
::
SectionTypes
m_type
;
};
extern
RefList
todoList
;
extern
RefList
testList
;
extern
RefList
bugList
;
//
extern RefList todoList;
//
extern RefList testList;
//
extern RefList bugList;
#endif
src/rtfgen.cpp
View file @
977ad9d3
...
...
@@ -42,13 +42,13 @@
const
int
indentLevels
=
10
;
struct
ListItemInfo
struct
RTF
ListItemInfo
{
bool
isEnum
;
int
number
;
};
static
ListItemInfo
listItemInfo
[
indentLevels
];
static
RTF
ListItemInfo
listItemInfo
[
indentLevels
];
static
QCString
title
;
static
QCString
subject
;
static
QCString
comments
;
...
...
src/scanner.l
View file @
977ad9d3
This diff is collapsed.
Click to expand it.
src/util.cpp
View file @
977ad9d3
...
...
@@ -3375,7 +3375,8 @@ found:
void
addRelatedPage
(
const
char
*
name
,
const
QCString
&
ptitle
,
const
QCString
&
doc
,
QList
<
QCString
>
*
anchors
,
const
char
*
fileName
,
int
startLine
,
int
todoId
,
int
testId
,
int
bugId
,
GroupDef
*
gd
,
const
QList
<
ListItemInfo
>
*
sli
,
GroupDef
*
gd
,
TagInfo
*
tagInfo
)
{
...
...
@@ -3395,9 +3396,22 @@ void addRelatedPage(const char *name,const QCString &ptitle,
QCString
title
=
ptitle
.
stripWhiteSpace
();
pi
=
new
PageInfo
(
fileName
,
startLine
,
baseName
,
doc
,
title
);
pi
->
todoId
=
todoId
;
pi
->
testId
=
testId
;
pi
->
bugId
=
bugId
;
if
(
sli
)
{
if
(
pi
->
specialListItems
==
0
)
{
pi
->
specialListItems
=
new
QList
<
ListItemInfo
>
;
pi
->
specialListItems
->
setAutoDelete
(
TRUE
);
}
QListIterator
<
ListItemInfo
>
slii
(
*
sli
);
ListItemInfo
*
lii
;
for
(
slii
.
toFirst
();(
lii
=
slii
.
current
());
++
slii
)
{
pi
->
specialListItems
->
append
(
new
ListItemInfo
(
*
lii
));
}
}
if
(
tagInfo
)
{
pi
->
reference
=
tagInfo
->
tagName
;
...
...
@@ -3447,100 +3461,45 @@ void addRelatedPage(const char *name,const QCString &ptitle,
//----------------------------------------------------------------------------
void
addRefItem
(
int
todoId
,
int
testId
,
int
bugId
,
const
char
*
prefix
,
const
char
*
name
,
const
char
*
title
,
const
char
*
args
)
{
//printf("addRefItem(%s) todoId=%d testId=%d bugId=%d\n",name,todoId,testId,bugId);
////////////////////////////////////////////////////////////
// add item to the todo list
////////////////////////////////////////////////////////////
if
(
todoId
>
0
&&
Config_getBool
(
"GENERATE_TODOLIST"
))
{
RefItem
*
item
=
todoList
.
getRefItem
(
todoId
);
ASSERT
(
item
!=
0
);
if
(
item
->
written
)
return
;
QCString
doc
;
doc
+=
"<dl><dt>
\\
anchor "
;
doc
+=
item
->
listAnchor
;
doc
+=
"
\n
"
;
doc
+=
prefix
;
doc
+=
"
\\
_internalref "
;
doc
+=
name
;
doc
+=
"
\"
"
;
doc
+=
title
;
doc
+=
"
\"
"
;
if
(
args
)
doc
+=
args
;
doc
+=
"</dt>
\n
<dd>"
;
doc
+=
item
->
text
;
doc
+=
"</dd></dl>
\n
"
;
//printf("Todo page: %s\n",doc.data());
addRelatedPage
(
"todo"
,
theTranslator
->
trTodoList
(),
doc
,
0
,
"generated"
,
1
,
0
,
0
,
0
);
item
->
written
=
TRUE
;
}
////////////////////////////////////////////////////////////
// add item to the test list
////////////////////////////////////////////////////////////
if
(
testId
>
0
&&
Config_getBool
(
"GENERATE_TESTLIST"
))
{
RefItem
*
item
=
testList
.
getRefItem
(
testId
);
ASSERT
(
item
!=
0
);
if
(
item
->
written
)
return
;
QCString
doc
;
doc
+=
"<dl><dt>
\\
anchor "
;
doc
+=
item
->
listAnchor
;
doc
+=
"
\n
"
;
doc
+=
prefix
;
doc
+=
"
\\
_internalref "
;
doc
+=
name
;
doc
+=
"
\"
"
;
doc
+=
title
;
doc
+=
"
\"
"
;
if
(
args
)
doc
+=
args
;
doc
+=
"</dt>
\n
<dd>"
;
doc
+=
item
->
text
;
doc
+=
"</dd></dl>
\n
"
;
//printf("Test page: %s\n",doc.data());
addRelatedPage
(
"test"
,
theTranslator
->
trTestList
(),
doc
,
0
,
"generated"
,
1
,
0
,
0
,
0
);
item
->
written
=
TRUE
;
}
////////////////////////////////////////////////////////////
// add item to the bug list
////////////////////////////////////////////////////////////
if
(
bugId
>
0
&&
Config_getBool
(
"GENERATE_BUGLIST"
))
{
RefItem
*
item
=
bugList
.
getRefItem
(
bugId
);
ASSERT
(
item
!=
0
);
if
(
item
->
written
)
return
;
QCString
doc
;
doc
+=
"<dl><dt>
\\
anchor "
;
doc
+=
item
->
listAnchor
;
doc
+=
"
\n
"
;
doc
+=
prefix
;
doc
+=
"
\\
_internalref "
;
doc
+=
name
;
doc
+=
"
\"
"
;
doc
+=
title
;
doc
+=
"
\"
"
;
if
(
args
)
doc
+=
args
;
doc
+=
"</dt>
\n
<dd>"
;
doc
+=
item
->
text
;
doc
+=
"</dd></dl>
\n
"
;
//printf("Bug page: %s\n",doc.data());
addRelatedPage
(
"bug"
,
theTranslator
->
trBugList
(),
doc
,
0
,
"generated"
,
1
,
0
,
0
,
0
);
item
->
written
=
TRUE
;
void
addRefItem
(
const
QList
<
ListItemInfo
>
*
sli
,
const
char
*
prefix
,
const
char
*
name
,
const
char
*
title
,
const
char
*
args
)
{
if
(
sli
)
{
QListIterator
<
ListItemInfo
>
slii
(
*
sli
);
ListItemInfo
*
lii
;
for
(
slii
.
toFirst
();(
lii
=
slii
.
current
());
++
slii
)
{
RefList
*
refList
=
Doxygen
::
specialLists
->
find
(
lii
->
type
);
ASSERT
(
refList
!=
0
);
//printf("addRefItem(%s) todoId=%d testId=%d bugId=%d\n",name,todoId,testId,bugId);
if
(
Config_getBool
(
refList
->
optionName
()))
{
RefItem
*
item
=
refList
->
getRefItem
(
lii
->
itemId
);
ASSERT
(
item
!=
0
);
if
(
item
->
written
)
return
;
QCString
doc
(
1000
);
doc
+=
"<dl><dt>
\\
anchor "
;
doc
+=
item
->
listAnchor
;
doc
+=
"
\n
"
;
doc
+=
prefix
;
doc
+=
"
\\
_internalref "
;
doc
+=
name
;
doc
+=
"
\"
"
;
doc
+=
title
;
doc
+=
"
\"
"
;
if
(
args
)
doc
+=
args
;
doc
+=
"</dt>
\n
<dd>"
;
doc
+=
item
->
text
;
doc
+=
"</dd></dl>
\n
"
;
//printf("Todo page: %s\n",doc.data());
addRelatedPage
(
refList
->
listName
(),
refList
->
pageTitle
(),
doc
,
0
,
"generated"
,
1
,
0
,
0
,
0
);
item
->
written
=
TRUE
;
}
}
}
}
...
...
src/util.h
View file @
977ad9d3
...
...
@@ -43,6 +43,7 @@ class MemberGroupSDict;
class
Definition
;
struct
TagInfo
;
class
MemberNameInfoSDict
;
class
ListItemInfo
;
//--------------------------------------------------------------------
...
...
@@ -169,12 +170,13 @@ QCString resolveTypeDef(Definition *d,const QCString &name,
QCString
mergeScopes
(
const
QCString
&
leftScope
,
const
QCString
&
rightScope
);
int
getScopeFragment
(
const
QCString
&
s
,
int
p
,
int
*
l
);
int
filterCRLF
(
char
*
buf
,
int
len
);
void
addRefItem
(
int
todoId
,
int
testId
,
int
bugId
,
const
char
*
prefix
,
void
addRefItem
(
const
QList
<
ListItemInfo
>
*
sli
,
const
char
*
prefix
,
const
char
*
name
,
const
char
*
title
,
const
char
*
args
=
0
);
void
addRelatedPage
(
const
char
*
name
,
const
QCString
&
ptitle
,
const
QCString
&
doc
,
QList
<
QCString
>
*
anchors
,
const
char
*
fileName
,
int
startLine
,
int
todoId
,
int
testId
,
int
bugId
,
GroupDef
*
gd
=
0
,
const
QList
<
ListItemInfo
>
*
sli
,
GroupDef
*
gd
=
0
,
TagInfo
*
tagInfo
=
0
);
QCString
escapeCharsInString
(
const
char
*
name
,
bool
allowDots
);
...
...
src/xmlgen.cpp
View file @
977ad9d3
...
...
@@ -429,7 +429,6 @@ class XMLGenerator : public OutputDocInterface
XML_DB
((
"(startSimpleSect)
\n
"
));
m_t
<<
"<simplesect kind=
\"
"
<<
sectionTypeToString
(
st
)
<<
"
\"
>"
;
startNestedPar
();
m_inParStack
.
top
()
=
TRUE
;
}
void
endSimpleSect
()
{
...
...
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