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
1c68fd3f
Commit
1c68fd3f
authored
Oct 30, 2000
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.2.3
parent
a1116d64
Changes
37
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
37 changed files
with
479 additions
and
182 deletions
+479
-182
INSTALL
INSTALL
+2
-2
Makefile.in
Makefile.in
+1
-1
README
README
+2
-2
VERSION
VERSION
+1
-1
config_templ.l
addon/configgen/config_templ.l
+24
-2
configgen.cpp
addon/configgen/configgen.cpp
+20
-2
doxywizard_templ.cpp
addon/doxywizard/doxywizard_templ.cpp
+21
-7
doxywizard_templ.h
addon/doxywizard/doxywizard_templ.h
+1
-0
pixmaps.cpp
addon/doxywizard/pixmaps.cpp
+34
-0
pixmaps.h
addon/doxywizard/pixmaps.h
+1
-0
configure
configure
+5
-5
Makefile.win.in
doc/Makefile.win.in
+2
-1
commands.doc
doc/commands.doc
+4
-2
config.doc
doc/config.doc
+23
-9
index.doc
doc/index.doc
+0
-4
install.doc
doc/install.doc
+105
-63
language.doc
doc/language.doc
+3
-3
preprocessing.doc
doc/preprocessing.doc
+3
-1
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
classdef.cpp
src/classdef.cpp
+1
-1
code.l
src/code.l
+31
-28
config.h
src/config.h
+3
-1
config.l
src/config.l
+55
-3
declinfo.l
src/declinfo.l
+1
-1
define.h
src/define.h
+1
-1
doxygen.cpp
src/doxygen.cpp
+1
-0
filedef.cpp
src/filedef.cpp
+1
-8
index.cpp
src/index.cpp
+1
-1
language.cpp
src/language.cpp
+1
-0
memberdef.cpp
src/memberdef.cpp
+3
-3
memberlist.cpp
src/memberlist.cpp
+3
-4
pre.l
src/pre.l
+40
-2
scanner.l
src/scanner.l
+13
-7
translator_cz.h
src/translator_cz.h
+18
-0
translator_jp.h
src/translator_jp.h
+3
-0
util.cpp
src/util.cpp
+49
-15
util.h
src/util.h
+1
-1
No files found.
INSTALL
View file @
1c68fd3f
DOXYGEN Version 1.2.
2-20001015
DOXYGEN Version 1.2.
3
Please read the installation section of the manual for instructions.
--------
Dimitri van Heesch (
15
October 2000)
Dimitri van Heesch (
30
October 2000)
Makefile.in
View file @
1c68fd3f
...
...
@@ -24,7 +24,7 @@ distclean: clean
-
rm
-f
src/Makefile.doxygen src/Makefile.doxytag src/Makefile.doxysearch qtools/Makefile.qtools
-
rm
-f
Makefile qtools/Makefile src/Makefile examples/Makefile doc/Makefile
-
rm
-f
.makeconfig .tmakeconfig
-
rm
-f
src/doxygen.pro src/doxytag.pro src/doxysearch.pro
-
rm
-f
src/doxygen.pro src/doxytag.pro src/doxysearch.pro
qtools/qtools.pro
-
rm
-f
src/version.cpp
-
rm
-r
addon/configgen/Makefile addon/doxywizard/Makefile
-
rm
-f
addon/configgen/Makefile.configgen
...
...
README
View file @
1c68fd3f
DOXYGEN Version 1.2.
2-20001015
DOXYGEN Version 1.2.
3
Please read INSTALL for compilation instructions.
...
...
@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
Enjoy,
Dimitri van Heesch (
15
October 2000)
Dimitri van Heesch (
30
October 2000)
VERSION
View file @
1c68fd3f
1.2.
2-20001015
1.2.
3
addon/configgen/config_templ.l
View file @
1c68fd3f
...
...
@@ -140,8 +140,12 @@ static FILE *tryPath(const char *path,const char *fileName)
return 0;
}
static void substEnvVarsInStrList(QStrList &sl);
static void substEnvVarsInString(QCString &s);
static FILE *findFile(const char *fileName)
{
substEnvVarsInStrList(includePathList);
char *s=includePathList.first();
while (s) // try each of the include paths
{
...
...
@@ -162,6 +166,7 @@ static void readIncludeFile(const char *incName)
}
QCString inc = incName;
substEnvVarsInString(inc);
inc = inc.stripWhiteSpace();
uint incLen = inc.length();
if (inc.at(0)=='"' && inc.at(incLen-1)=='"') // strip quotes
...
...
@@ -430,6 +435,23 @@ void configStrToVal()
}
Config::colsInAlphaIndex=cols;
}
if (enumValuesPerLineString.isEmpty())
{
Config::enumValuesPerLine=4;
}
else
{
bool ok;
int cols = enumValuesPerLineString.toInt(&ok);
if (!ok || cols<1 || cols>20)
{
warn_cont("Warning: argument of ENUM_VALUES_PER_LINE is not a valid number in the range [1..20]!\n"
"Using the default of 4!\n");
cols = 4;
}
Config::enumValuesPerLine=cols;
}
if (maxDotGraphWidthString.isEmpty())
{
...
...
@@ -441,7 +463,7 @@ void configStrToVal()
int width =maxDotGraphWidthString.toInt(&ok);
if (!ok)
{
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
..2
0]!\n"
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
00..3000
0]!\n"
"Using the default of 1024 pixels!\n");
width=1024;
}
...
...
@@ -466,7 +488,7 @@ void configStrToVal()
int height =maxDotGraphHeightString.toInt(&ok);
if (!ok)
{
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
..2
0]!\n"
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
00..3000
0]!\n"
"Using the default of 1024 pixels!\n");
height=1024;
}
...
...
addon/configgen/configgen.cpp
View file @
1c68fd3f
...
...
@@ -775,8 +775,8 @@ void init()
"information to generate all constant output in the proper language.
\n
"
"The default language is English, other supported languages are:
\n
"
"Dutch, French, Italian, Czech, Swedish, German, Finnish, Japanese,
\n
"
"Korean, Hungarian,
Spanish, Romanian, Russian, Croatian, Polish
,
\n
"
"Portuguese and Slovene.
\n
"
"Korean, Hungarian,
Norwegian, Spanish, Romanian, Russian, Croatian
,
\n
"
"Po
lish, Po
rtuguese and Slovene.
\n
"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Croatian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Czech"
);
...
...
@@ -789,6 +789,7 @@ void init()
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Italian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Japanese"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Korean"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Norwegian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Romanian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Russian"
);
ConfigString
::
addFixedValue
(
"outputLanguage"
,
"Polish"
);
...
...
@@ -1169,6 +1170,14 @@ void init()
"to standard output.
\n
"
,
ConfigString
::
File
);
ConfigBool
::
add
(
"filterForSourceFlag"
,
"FILTER_SOURCE_FILES"
,
"FALSE"
,
"do we filter source files?"
,
"If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
\n
"
"INPUT_FILTER) will be used to filter the input files when producing source
\n
"
"files to browse.
\n
"
);
//-----------------------------------------------------------------------------------------------
ConfigInfo
::
add
(
"Index"
,
"configuration options related to the alphabetical class index"
);
...
...
@@ -1279,6 +1288,15 @@ void init()
"the value YES disables it.
\n
"
);
addDependency
(
"noIndexFlag"
,
"generateHtml"
);
ConfigInt
::
add
(
"enumValuesPerLine"
,
"ENUM_VALUES_PER_LINE"
,
"4"
,
"number of enum values that are put on one line"
,
"This tag can be used to set the number of enum values (range [1..20])
\n
"
"that doxygen will group on one line in the generated HTML documentation.
\n
"
,
1
,
20
);
addDependency
(
"enumValuesPerLine"
,
"generateHtml"
);
//-----------------------------------------------------------------------------------------------
ConfigInfo
::
add
(
"LaTeX"
,
"configuration options related to the LaTeX output"
);
//-----------------------------------------------------------------------------------------------
...
...
addon/doxywizard/doxywizard_templ.cpp
View file @
1c68fd3f
...
...
@@ -126,6 +126,10 @@ Wizard::Wizard(int argc,char **argv) :
new
QToolButton
(
QPixmap
(
filesave_xpm
),
"Save File"
,
QString
::
null
,
this
,
SLOT
(
saveFile
()),
fileTools
,
"save file"
);
//Micha: QToolButton * =
new
QToolButton
(
QPixmap
(
rundoxygen_xpm
),
"Save and Run doxygen"
,
QString
::
null
,
this
,
SLOT
(
runDoxygen
()),
fileTools
,
"save and run doxygen"
);
QWhatsThis
::
whatsThisButton
(
fileTools
);
...
...
@@ -142,10 +146,10 @@ Wizard::Wizard(int argc,char **argv) :
file
->
insertItem
(
"&Quit"
,
this
,
SLOT
(
quit
()),
CTRL
+
Key_Q
);
// Doxygen popupmenu
//
QPopupMenu* doxygen = new QPopupMenu;
//int itemIndex = doxygen->insertItem( "&Run" );
//doxygen->setWhatsThis ( itemIndex, "Run doxygen with the current configuration file..."
);
//doxygen->setItemEnabled( itemIndex, FALSE
);
QPopupMenu
*
doxygen
=
new
QPopupMenu
;
int
itemIndex
=
doxygen
->
insertItem
(
QIconSet
(
QPixmap
(
rundoxygen_xpm
)),
"&Run"
,
this
,
SLOT
(
runDoxygen
()),
CTRL
+
Key_R
);
doxygen
->
setWhatsThis
(
itemIndex
,
"Run doxygen with the current configuration file..."
);
// Help popupmenu
QPopupMenu
*
help
=
new
QPopupMenu
;
...
...
@@ -154,7 +158,7 @@ Wizard::Wizard(int argc,char **argv) :
// menubar definition
menuBar
()
->
insertItem
(
"&File"
,
file
);
//
menuBar()->insertItem( "&Doxygen", doxygen );
menuBar
()
->
insertItem
(
"&Doxygen"
,
doxygen
);
menuBar
()
->
insertSeparator
();
menuBar
()
->
insertItem
(
"&Help"
,
help
);
...
...
@@ -262,10 +266,20 @@ void Wizard::saveAsFile()
}
saveConfig
(
configFileName
);
statusBar
()
->
message
(
"Saved as "
+
configFileName
,
messageTimeout
);
statusBar
()
->
message
(
"Saved as "
+
configFileName
,
messageTimeout
);
}
//Micha
void
Wizard
::
runDoxygen
()
{
saveFile
();
QString
s
=
"doxygen "
+
configFileName
;
system
((
const
char
*
)
s
);
statusBar
()
->
message
(
"doxygen completed: "
+
configFileName
,
messageTimeout
);
hasChanged
=
FALSE
;
refreshCaption
();
}
}
void
Wizard
::
quit
()
{
...
...
addon/doxywizard/doxywizard_templ.h
View file @
1c68fd3f
...
...
@@ -43,6 +43,7 @@ class Wizard : public QMainWindow
void
quit
();
void
changed
();
void
about
();
void
runDoxygen
();
// Micha
signals
:
...
...
addon/doxywizard/pixmaps.cpp
View file @
1c68fd3f
...
...
@@ -201,4 +201,38 @@ static const char *filesave_xpm_data[] =
"b............."
};
const
char
**
filesave_xpm
=
(
const
char
**
)
filesave_xpm_data
;
/* XPM */
static
const
char
*
rundoxygen_xpm_data
[]
=
{
"16 16 11 1"
,
" c None"
,
". c #000000"
,
"+ c #DCDCDC"
,
"@ c #A0A0A0"
,
"# c #C3C3C3"
,
"$ c #808080"
,
"% c #FFA858"
,
"& c #FFDCA8"
,
"* c #FFFFC0"
,
"= c #FFFFFF"
,
"- c #585858"
,
" .. "
,
" .. .++. .. "
,
" .+@.@##@.@+. "
,
" .@+$@%%@$+@. "
,
" .$%%&%&%$. "
,
" ..+@%&$$%&@+.. "
,
".+#@%&%@@&*%@#+."
,
".$@+$&*&&=*$+@$."
,
" .--+$&*=&$+--. "
,
" .$#++$$++#$. "
,
" .@=$-$++$-$=@. "
,
" .+@-..@@..-@+. "
,
" ... .+=. ... "
,
" .-$. "
,
" .. "
,
" "
};
const
char
**
rundoxygen_xpm
=
(
const
char
**
)
rundoxygen_xpm_data
;
addon/doxywizard/pixmaps.h
View file @
1c68fd3f
...
...
@@ -22,5 +22,6 @@ extern const char** del_xpm;
extern
const
char
**
update_xpm
;
extern
const
char
**
fileopen_xpm
;
extern
const
char
**
filesave_xpm
;
extern
const
char
**
rundoxygen_xpm
;
#endif
configure
View file @
1c68fd3f
...
...
@@ -351,26 +351,26 @@ touch .tmakeconfig
if
test
"
$f_shared
"
=
NO
;
then
if
test
"
$f_platform
"
=
"osf1-cxx"
-o
"
$f_platform
"
=
"irix-n32"
;
then
cat
>>
.tmakeconfig
<<
EOF
TMAKE_LFLAGS = -non_shared
TMAKE_LFLAGS
+
= -non_shared
EOF
elif
test
"
$f_platform
"
=
"solaris-cc"
;
then
cat
>>
.tmakeconfig
<<
EOF
TMAKE_LFLAGS = -Bstatic
TMAKE_LFLAGS
+
= -Bstatic
EOF
elif
test
"
$f_platform
"
=
"hpux-cc"
;
then
cat
>>
.tmakeconfig
<<
EOF
TMAKE_LFLAGS = -noshared
TMAKE_LFLAGS
+
= -noshared
EOF
else
cat
>>
.tmakeconfig
<<
EOF
TMAKE_LFLAGS = -static
TMAKE_LFLAGS
+
= -static
EOF
fi
fi
if
test
"
$f_english
"
=
YES
;
then
cat
>>
.tmakeconfig
<<
EOF
TMAKE_CXXFLAGS = -DENGLISH_ONLY
TMAKE_CXXFLAGS
+
= -DENGLISH_ONLY
EOF
fi
...
...
doc/Makefile.win.in
View file @
1c68fd3f
...
...
@@ -13,7 +13,8 @@
# input used in their production; they are not affected by this license.
all
:
FORCE
set
DOXYGEN_DOCDIR
=
file:///
$(DOXYGEN)
@
xcopy /s /q ..
\e
xamples ..
\h
tml
\e
xamples
set
DOXYGEN_DOCDIR
=
.
set
VERSION
=
$(VERSION)
$(DOXYGEN)
\b
in
\d
oxygen
@
del ..
\l
atex
\r
efman.tex
...
...
doc/commands.doc
View file @
1c68fd3f
...
...
@@ -952,7 +952,8 @@ Public/Protected/Private/... section.
\e not in other documentation blocks!
\sa
Section \ref cmdpage "\\page" for an example of the \\cmdsection command.
Section \ref cmdpage "\\page" for an example of the
\ref cmdsection "\\section" command.
<hr>
\subsection cmdsubsection \subsection <subsection-name> (subsection title)
...
...
@@ -966,7 +967,8 @@ Public/Protected/Private/... section.
\e not in other documentation blocks!
\sa
Section \ref cmdpage "\\page" for an example of the \\cmdsubsection command.
Section \ref cmdpage "\\page" for an example of the
\ref cmdsubsection "\\cmdsubsection" command.
<hr>
...
...
doc/config.doc
View file @
1c68fd3f
...
...
@@ -87,6 +87,7 @@ followed by the descriptions of the tags grouped by category.
<
li
>
\
refitem
cfg_doc_url
DOC_URL
<
li
>
\
refitem
cfg_dot_path
DOT_PATH
<
li
>
\
refitem
cfg_enable_preprocessing
ENABLE_PREPROCESSING
<
li
>
\
refitem
cfg_enum_values_per_line
ENUM_VALUES_PER_LINE
<
li
>
\
refitem
cfg_enabled_sections
ENABLED_SECTIONS
<
li
>
\
refitem
cfg_example_path
EXAMPLE_PATH
<
li
>
\
refitem
cfg_example_patterns
EXAMPLE_PATTERNS
...
...
@@ -212,15 +213,6 @@ followed by the descriptions of the tags grouped by category.
Dutch
,
French
,
Italian
,
Czech
,
Swedish
,
German
,
Finnish
,
Hungarian
,
Japanese
,
Korean
,
Spanish
,
Russian
,
Croatian
,
Polish
and
Portuguese
.
\
anchor
cfg_disable_index
<
dt
>\
c
DISABLE_INDEX
<
dd
>
\
addindex
DISABLE_INDEX
If
you
want
full
control
over
the
layout
of
the
generated
HTML
pages
it
might
be
necessary
to
disable
the
index
and
replace
it
with
your
own
.
The
\
c
DISABLE_INDEX
tag
can
be
used
to
turn
on
/
off
the
condensed
index
at
top
of
each
page
.
A
value
of
NO
(
the
default
)
enables
the
index
and
the
value
YES
disables
it
.
\
anchor
cfg_extract_all
<
dt
>\
c
EXTRACT_ALL
<
dd
>
\
addindex
EXTRACT_ALL
...
...
@@ -578,6 +570,13 @@ followed by the descriptions of the tags grouped by category.
input file. Doxygen will then use the output that the filter program writes
to standard output.
\anchor cfg_filter_source_files
<dt>\c FILTER_SOURCE_FILES <dd>
\addindex FILTER_SOURCE_FILES
If the \c FILTER_SOURCE_FILES tag is set to \c YES, the input filter (if set using
\c INPUT_FILTER ) will be used to filter the input files when producing source
files to browse.
</dl>
\subsection alphabetical_index Alphabetical index options
...
...
@@ -723,6 +722,21 @@ followed by the descriptions of the tags grouped by category.
(
which
basically
renders
\
c
doxysearch
obsolete
on
Windows
).
The
HTML
workshop
also
contains
a
viewer
for
compressed
HTML
files
.
\
anchor
cfg_disable_index
<
dt
>\
c
DISABLE_INDEX
<
dd
>
\
addindex
DISABLE_INDEX
If
you
want
full
control
over
the
layout
of
the
generated
HTML
pages
it
might
be
necessary
to
disable
the
index
and
replace
it
with
your
own
.
The
\
c
DISABLE_INDEX
tag
can
be
used
to
turn
on
/
off
the
condensed
index
at
top
of
each
page
.
A
value
of
NO
(
the
default
)
enables
the
index
and
the
value
YES
disables
it
.
\
anchor
cfg_enum_values_per_line
<
dt
>\
c
ENUM_VALUES_PER_LINE
<
dd
>
\
addindex
ENUM_VALUES_PER_LINE
This
tag
can
be
used
to
set
the
number
of
enum
values
(
range
[
1..20
])
that
doxygen
will
group
on
one
line
in
the
generated
HTML
documentation
.
</
dl
>
\
subsection
latex_output
LaTeX
related
options
\
anchor
cfg_generate_latex
...
...
doc/index.doc
View file @
1c68fd3f
...
...
@@ -41,10 +41,6 @@ See the
GNU General Public License</a>
for more details.
<p>
It is hereby explicitly allowed that this program may be linked against
<a href="http://www.trolltech.com/products/qt.html">Troll Tech's Qt library</a>,
and distributed, without the GPL applying to Qt.
<p>
Documents produced by Doxygen are derivative works derived from the
input used in their production; they are not affected by this license.
...
...
doc/install.doc
View file @
1c68fd3f
This diff is collapsed.
Click to expand it.
doc/language.doc
View file @
1c68fd3f
...
...
@@ -46,8 +46,8 @@ Here is a list of the languages and their current maintainers:
Jens Breitenstein
</TD>
<TD>
<a href="mailto:
j@NOSPAM.js-b
.de">
j@NOSPAM.js-b
.de</a>
<a href="mailto:
Jens.Breitenstein@NOSPAM.tlc
.de">
Jens.Breitenstein@NOSPAM.tlc
.de</a>
</TD>
</TR>
<TR BGCOLOR="#ffffff">
...
...
@@ -227,7 +227,7 @@ Here is a list of the languages and their current maintainers:
\hline
{\bf Language} & {\bf Maintainer} & {Contact address} \\
\hline
German & Jens Breitenstein & {\tt
j@jb-s
.de} \\
German & Jens Breitenstein & {\tt
Jens.Breitenstein@tlc
.de} \\
\hline
French & Christophe Bordeux & {\tt bordeux@lig.di.epfl.ch} \\
\hline
...
...
doc/preprocessing.doc
View file @
1c68fd3f
...
...
@@ -168,7 +168,9 @@ PREDEFINED = DECLARE_REGISTRY_RESOURCEID=// \
"ATL_NO_VTABLE= "\
"__declspec(a)= "\
BEGIN_CONNECTION_POINT_MAP=/* \
END_CONNECTION_POINT_MAP=*///
END_CONNECTION_POINT_MAP=*/// \
"DECLARE_AGGREGATABLE(Class)= " \
"DECLARE_REGISTRY_RESOURCEID(id)= "
\endverbatim
As you can see doxygen's preprocessor is quite powerful, but if you want
...
...
packages/rpm/doxygen.spec
View file @
1c68fd3f
Name: doxygen
Version: 1.2.
2-20001015
Version: 1.2.
3
Summary: documentation system for C, C++ and IDL
Release: 1
Source0: doxygen-%{version}.src.tar.gz
...
...
src/classdef.cpp
View file @
1c68fd3f
...
...
@@ -727,7 +727,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
ClassDef
*
cd
=
bcd
->
classDef
;
if
(
cd
->
isLinkable
())
{
if
(
!
Config
::
genTagFile
.
isEmpty
())
tagFile
<<
cd
->
getOutputFileBas
e
()
<<
"?"
;
if
(
!
Config
::
genTagFile
.
isEmpty
())
tagFile
<<
cd
->
nam
e
()
<<
"?"
;
ol
.
writeObjectLink
(
cd
->
getReference
(),
cd
->
getOutputFileBase
(),
0
,
cd
->
name
()
+
bcd
->
templSpecifiers
);
}
else
...
...
src/code.l
View file @
1c68fd3f
...
...
@@ -127,12 +127,9 @@ static QCString g_saveType;
* is TRUE. If a definition starts at the current line, then the line
* number is linked to the documentation of that definition.
*/
static void startCodeLine(
OutputList &ol
)
static void startCodeLine()
{
if (g_currentFontClass)
{
g_code->endFontClass();
}
//if (g_currentFontClass) { g_code->endFontClass(); }
if (g_sourceFileDef)
{
QCString lineNumber,lineAnchor;
...
...
@@ -149,25 +146,32 @@ static void startCodeLine(OutputList &ol)
g_searchingForBody = TRUE;
g_bodyCurlyCount = 0;
if (g_currentMemberDef) anchor=g_currentMemberDef->anchor();
ol.
startCodeAnchor(lineAnchor);
ol.
writeCodeLink(d->getReference(),d->getOutputFileBase(),
g_code->
startCodeAnchor(lineAnchor);
g_code->
writeCodeLink(d->getReference(),d->getOutputFileBase(),
anchor,lineNumber);
ol.
endCodeAnchor();
ol.
codify(" ");
g_code->
endCodeAnchor();
g_code->
codify(" ");
}
else
{
ol.
codify(lineNumber);
ol.
codify(" ");
g_code->
codify(lineNumber);
g_code->
codify(" ");
}
}
ol.
startCodeLine();
g_code->
startCodeLine();
if (g_currentFontClass)
{
g_code->startFontClass(g_currentFontClass);
}
}
static void endCodeLine()
{
if (g_currentFontClass) { g_code->endFontClass(); }
g_code->endCodeLine();
}
/*! write a code fragment `text' that may span multiple lines, inserting
* line numbers for each line.
*/
...
...
@@ -185,10 +189,10 @@ static void codifyLines(char *text)
g_yyLineNr++;
*(p-1)='\0';
g_code->codify(sp);
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
}
else
...
...
@@ -219,10 +223,10 @@ static void writeMultiLineCodeLink(OutputList &ol,
g_yyLineNr++;
*(p-1)='\0';
ol.writeCodeLink(ref,file,anchor,sp);
ol.
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
ol
);
startCodeLine();
}
}
else
...
...
@@ -1241,10 +1245,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
}
<RemoveSpecialCComment>"*/"{B}*\n({B}*\n)*({B}*(("//@"[{}])|("/*@"[{}]"*/")){B}*\n)? {
g_yyLineNr+=QCString(yytext).contains('\n');
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
if (g_lastSpecialCContext==SkipCxxComment)
{ // force end of C++ comment here
...
...
@@ -1267,10 +1271,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
if (Config::stripCommentsFlag)
{
g_yyLineNr+=((QCString)yytext).contains('\n');
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
}
else
...
...
@@ -1284,10 +1288,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
if (Config::stripCommentsFlag)
{
g_yyLineNr+=2;
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
}
else
...
...
@@ -1320,10 +1324,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
if (Config::stripCommentsFlag)
{
g_yyLineNr++;
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
}
else
...
...
@@ -1355,10 +1359,10 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
if (Config::stripCommentsFlag)
{
g_yyLineNr++;
g_code->
endCodeLine();
endCodeLine();
if (g_yyLineNr<g_inputLines)
{
startCodeLine(
*g_code
);
startCodeLine();
}
}
else
...
...
@@ -1527,7 +1531,7 @@ void parseCode(OutputList &ol,const char *className,const QCString &s,
g_bracketCount = 0;
g_exampleFile = convertFileName(g_exampleName)+"-example";
g_includeCodeFragment = inlineFragment;
startCodeLine(
*g_code
);
startCodeLine();
g_type.resize(0);
g_name.resize(0);
g_args.resize(0);
...
...
@@ -1537,7 +1541,6 @@ void parseCode(OutputList &ol,const char *className,const QCString &s,
BEGIN( Body );
codeYYlex();
endFontClass();
//if (g_yyLineNr<=g_inputLines) code->endCodeLine();
ol+=*g_code;
delete g_code;
return;
...
...
src/config.h
View file @
1c68fd3f
/* This file was generated by configgen on
Tue Oct 10 22:16:03
2000
/* This file was generated by configgen on
Sat Oct 28 15:42:39
2000
* from config_templ.h
*
* DO NOT EDIT!
...
...
@@ -84,6 +84,7 @@ struct Config
static
QStrList
examplePatternList
;
// list of example patterns
static
QStrList
imagePath
;
// list of image paths
static
QCString
inputFilter
;
// a filter command that is applied to input files
static
bool
filterForSourceFlag
;
// do we filter source files?
static
bool
alphaIndexFlag
;
// should an alphabetical index be generated?
static
int
colsInAlphaIndex
;
// number of columns in the alphabetical index
static
QStrList
ignorePrefixList
;
// list of prefixes to ignore for the alphabetical index
...
...
@@ -95,6 +96,7 @@ struct Config
static
bool
htmlAlignMemberFlag
;
// align members in HTML using tables.
static
bool
htmlHelpFlag
;
// should html help files be generated?
static
bool
noIndexFlag
;
// generate condensed index flag
static
int
enumValuesPerLine
;
// number of enum values that are put on one line
static
bool
generateLatex
;
// generate Latex output
static
QCString
latexOutputDir
;
// the directory to put the Latex files
static
bool
compactLatexFlag
;
// generate compact LaTeX documentation.
...
...
src/config.l
View file @
1c68fd3f
/* This file was generated by configgen on
Tue Oct 10 22:16:03
2000
/* This file was generated by configgen on
Sat Oct 28 15:42:39
2000
* from config_templ.l
*
* DO NOT EDIT!
...
...
@@ -121,6 +121,7 @@ QStrList Config::examplePath;
QStrList Config::examplePatternList;
QStrList Config::imagePath;
QCString Config::inputFilter;
bool Config::filterForSourceFlag = FALSE;
bool Config::alphaIndexFlag = FALSE;
int Config::colsInAlphaIndex = 5;
QStrList Config::ignorePrefixList;
...
...
@@ -132,6 +133,7 @@ QCString Config::htmlStyleSheet;
bool Config::htmlAlignMemberFlag = TRUE;
bool Config::htmlHelpFlag = FALSE;
bool Config::noIndexFlag = FALSE;
int Config::enumValuesPerLine = 4;
bool Config::generateLatex = TRUE;
QCString Config::latexOutputDir = "latex";
bool Config::compactLatexFlag = FALSE;
...
...
@@ -211,6 +213,7 @@ static int includeDepth;
static QCString tabSizeString;
static QCString colsInAlphaIndexString;
static QCString enumValuesPerLineString;
static QCString maxDotGraphWidthString;
static QCString maxDotGraphHeightString;
...
...
@@ -253,8 +256,12 @@ static FILE *tryPath(const char *path,const char *fileName)
return 0;
}
static void substEnvVarsInStrList(QStrList &sl);
static void substEnvVarsInString(QCString &s);
static FILE *findFile(const char *fileName)
{
substEnvVarsInStrList(includePathList);
char *s=includePathList.first();
while (s) // try each of the include paths
{
...
...
@@ -275,6 +282,7 @@ static void readIncludeFile(const char *incName)
}
QCString inc = incName;
substEnvVarsInString(inc);
inc = inc.stripWhiteSpace();
uint incLen = inc.length();
if (inc.at(0)=='"' && inc.at(incLen-1)=='"') // strip quotes
...
...
@@ -389,6 +397,7 @@ static void readIncludeFile(const char *incName)
<Start>"IMAGE_PATH"[ \t]*"=" { BEGIN(GetStrList); l=&Config::imagePath; l->clear(); elemStr=""; }
<Start>"IMAGE_PATH"[ \t]*"+=" { BEGIN(GetStrList); l=&Config::imagePath; elemStr=""; }
<Start>"INPUT_FILTER"[ \t]*"=" { BEGIN(GetString); s=&Config::inputFilter; s->resize(0); }
<Start>"FILTER_SOURCE_FILES"[ \t]*"=" { BEGIN(GetBool); b=&Config::filterForSourceFlag; }
<Start>"ALPHABETICAL_INDEX"[ \t]*"=" { BEGIN(GetBool); b=&Config::alphaIndexFlag; }
<Start>"COLS_IN_ALPHA_INDEX"[ \t]*"=" { BEGIN(GetString); s=&colsInAlphaIndexString; s->resize(0); }
<Start>"IGNORE_PREFIX"[ \t]*"=" { BEGIN(GetStrList); l=&Config::ignorePrefixList; l->clear(); elemStr=""; }
...
...
@@ -401,6 +410,7 @@ static void readIncludeFile(const char *incName)
<Start>"HTML_ALIGN_MEMBERS"[ \t]*"=" { BEGIN(GetBool); b=&Config::htmlAlignMemberFlag; }
<Start>"GENERATE_HTMLHELP"[ \t]*"=" { BEGIN(GetBool); b=&Config::htmlHelpFlag; }
<Start>"DISABLE_INDEX"[ \t]*"=" { BEGIN(GetBool); b=&Config::noIndexFlag; }
<Start>"ENUM_VALUES_PER_LINE"[ \t]*"=" { BEGIN(GetString); s=&enumValuesPerLineString; s->resize(0); }
<Start>"GENERATE_LATEX"[ \t]*"=" { BEGIN(GetBool); b=&Config::generateLatex; }
<Start>"LATEX_OUTPUT"[ \t]*"=" { BEGIN(GetString); s=&Config::latexOutputDir; s->resize(0); }
<Start>"COMPACT_LATEX"[ \t]*"=" { BEGIN(GetBool); b=&Config::compactLatexFlag; }
...
...
@@ -678,6 +688,7 @@ void dumpConfig()
}
}
printf("inputFilter=`%s'\n",Config::inputFilter.data());
printf("filterForSourceFlag=`%d'\n",Config::filterForSourceFlag);
printf("# configuration options related to the alphabetical class index\n");
printf("alphaIndexFlag=`%d'\n",Config::alphaIndexFlag);
printf("colsInAlphaIndex=`%d'\n",Config::colsInAlphaIndex);
...
...
@@ -698,6 +709,7 @@ void dumpConfig()
printf("htmlAlignMemberFlag=`%d'\n",Config::htmlAlignMemberFlag);
printf("htmlHelpFlag=`%d'\n",Config::htmlHelpFlag);
printf("noIndexFlag=`%d'\n",Config::noIndexFlag);
printf("enumValuesPerLine=`%d'\n",Config::enumValuesPerLine);
printf("# configuration options related to the LaTeX output\n");
printf("generateLatex=`%d'\n",Config::generateLatex);
printf("latexOutputDir=`%s'\n",Config::latexOutputDir.data());
...
...
@@ -853,6 +865,7 @@ void Config::init()
Config::examplePatternList.clear();
Config::imagePath.clear();
Config::inputFilter.resize(0);
Config::filterForSourceFlag = FALSE;
Config::alphaIndexFlag = FALSE;
Config::colsInAlphaIndex = 5;
Config::ignorePrefixList.clear();
...
...
@@ -864,6 +877,7 @@ void Config::init()
Config::htmlAlignMemberFlag = TRUE;
Config::htmlHelpFlag = FALSE;
Config::noIndexFlag = FALSE;
Config::enumValuesPerLine = 4;
Config::generateLatex = TRUE;
Config::latexOutputDir = "latex";
Config::compactLatexFlag = FALSE;
...
...
@@ -1534,6 +1548,17 @@ void writeTemplateConfig(QFile *f,bool sl)
writeStringValue(t,Config::inputFilter);
t << "\n";
if (!sl)
{
t << "\n";
t << "# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using \n";
t << "# INPUT_FILTER) will be used to filter the input files when producing source \n";
t << "# files to browse. \n";
t << "\n";
}
t << "FILTER_SOURCE_FILES = ";
writeBoolValue(t,Config::filterForSourceFlag);
t << "\n";
if (!sl)
{
t << "\n";
}
...
...
@@ -1671,6 +1696,16 @@ void writeTemplateConfig(QFile *f,bool sl)
writeBoolValue(t,Config::noIndexFlag);
t << "\n";
if (!sl)
{
t << "\n";
t << "# This tag can be used to set the number of enum values (range [1..20]) \n";
t << "# that doxygen will group on one line in the generated HTML documentation. \n";
t << "\n";
}
t << "ENUM_VALUES_PER_LINE = ";
writeIntValue(t,Config::enumValuesPerLine);
t << "\n";
if (!sl)
{
t << "\n";
}
...
...
@@ -2286,6 +2321,23 @@ void configStrToVal()
}
Config::colsInAlphaIndex=cols;
}
if (enumValuesPerLineString.isEmpty())
{
Config::enumValuesPerLine=4;
}
else
{
bool ok;
int cols = enumValuesPerLineString.toInt(&ok);
if (!ok || cols<1 || cols>20)
{
warn_cont("Warning: argument of ENUM_VALUES_PER_LINE is not a valid number in the range [1..20]!\n"
"Using the default of 4!\n");
cols = 4;
}
Config::enumValuesPerLine=cols;
}
if (maxDotGraphWidthString.isEmpty())
{
...
...
@@ -2297,7 +2349,7 @@ void configStrToVal()
int width =maxDotGraphWidthString.toInt(&ok);
if (!ok)
{
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
..2
0]!\n"
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
00..3000
0]!\n"
"Using the default of 1024 pixels!\n");
width=1024;
}
...
...
@@ -2322,7 +2374,7 @@ void configStrToVal()
int height =maxDotGraphHeightString.toInt(&ok);
if (!ok)
{
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
..2
0]!\n"
warn_cont("Warning: argument of MAX_DOT_GRAPH_WIDTH is not a valid number in the range [1
00..3000
0]!\n"
"Using the default of 1024 pixels!\n");
height=1024;
}
...
...
src/declinfo.l
View file @
1c68fd3f
...
...
@@ -136,7 +136,7 @@ ID ([a-z_A-Z][a-z_A-Z0-9]*)|(@[0-9]+)
<Start>{B}+ {
addType();
}
<Start>{B}*"("({ID}"::")*{B}*"*" {
<Start>{B}*"("({ID}"::")*{B}*"*"
({B}*("const"|"volatile"){B}+)?
{
addType();
QCString text=yytext;
type+=text.stripWhiteSpace();
...
...
src/define.h
View file @
1c68fd3f
...
...
@@ -20,7 +20,7 @@
#include "qtbc.h"
#include <qdict.h>
#include
"util.h"
#include
<qlist.h>
class
FileDef
;
...
...
src/doxygen.cpp
View file @
1c68fd3f
...
...
@@ -1307,6 +1307,7 @@ void buildVarList(Entry *root)
)
||
(
root
->
section
==
Entry
::
FUNCTION_SEC
&&
// function variable
!
root
->
type
.
isEmpty
()
&&
root
->
type
.
find
(
re
,
0
)
!=-
1
&&
// special case to catch function pointers
root
->
type
.
find
(
"operator"
)
==-
1
&&
root
->
type
.
find
(
")("
)
==-
1
)
)
...
...
src/filedef.cpp
View file @
1c68fd3f
...
...
@@ -422,11 +422,6 @@ void FileDef::writeDocumentation(OutputList &ol)
/*! Write a source listing of this file to the output */
void
FileDef
::
writeSource
(
OutputList
&
ol
)
{
//QCString fn=name();
//if (Config::fullPathNameFlag)
//{
// fn.prepend(stripFromPath(getPath().copy()));
//}
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
startFile
(
ol
,
sourceName
(),
docname
+
" Source File"
);
startTitle
(
ol
,
0
);
...
...
@@ -440,11 +435,9 @@ void FileDef::writeSource(OutputList &ol)
ol
.
endTextLink
();
}
//parseText(ol,theTranslator->trVerbatimText(incFile->name()));
//ol.writeRuler();
initParseCodeContext
();
ol
.
startCodeFragment
();
parseCode
(
ol
,
0
,
fileToString
(
absFilePath
()),
FALSE
,
0
,
this
);
parseCode
(
ol
,
0
,
fileToString
(
absFilePath
()
,
TRUE
),
FALSE
,
0
,
this
);
ol
.
endCodeFragment
();
endFile
(
ol
);
ol
.
enableAll
();
...
...
src/index.cpp
View file @
1c68fd3f
...
...
@@ -1199,7 +1199,7 @@ void writeNamespaceMemberList(OutputList &ol,bool useSections)
{
char
lastChar
=
0
;
bool
first
=
TRUE
;
ol
.
startItemList
();
//
ol.startItemList();
MemberName
*
mn
=
functionNameList
.
first
();
while
(
mn
)
{
...
...
src/language.cpp
View file @
1c68fd3f
...
...
@@ -36,6 +36,7 @@
#include "translator_ro.h"
#include "translator_si.h"
#include "translator_cn.h"
#include "translator_no.h"
#endif
#define L_EQUAL(a) !stricmp(langName,a)
...
...
src/memberdef.cpp
View file @
1c68fd3f
...
...
@@ -1198,7 +1198,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
bmd
->
anchor
(),
bcd
->
name
());
if
(
bcd
->
isLinkableInProject
()
/* && !Config::pdfHyperFlag*/
)
{
writePageRef
(
ol
,
bcd
->
nam
e
(),
bmd
->
anchor
());
writePageRef
(
ol
,
bcd
->
getOutputFileBas
e
(),
bmd
->
anchor
());
}
}
else
...
...
@@ -1207,7 +1207,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
0
,
bcd
->
name
());
if
(
bcd
->
isLinkableInProject
()
/* && !Config::pdfHyperFlag*/
)
{
writePageRef
(
ol
,
bcd
->
nam
e
(),
0
);
writePageRef
(
ol
,
bcd
->
getOutputFileBas
e
(),
0
);
}
}
parseText
(
ol
,
reimplFromLine
.
right
(
...
...
@@ -1273,7 +1273,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
bmd
->
anchor
(),
bcd
->
name
());
if
(
bcd
->
isLinkableInProject
()
/* && !Config::pdfHyperFlag*/
)
{
writePageRef
(
ol
,
bcd
->
nam
e
(),
bmd
->
anchor
());
writePageRef
(
ol
,
bcd
->
getOutputFileBas
e
(),
bmd
->
anchor
());
}
}
++
mli
;
...
...
src/memberlist.cpp
View file @
1c68fd3f
...
...
@@ -302,7 +302,6 @@ void MemberList::writePlainDeclarations(OutputList &ol,
typeDecl
.
writeChar
(
' '
);
}
const
uint
MAX_ENUM_VALUES_FOR_ONE_LINE
=
4
;
int
enumMemCount
=
0
;
typeDecl
.
docify
(
"{ "
);
...
...
@@ -313,8 +312,8 @@ void MemberList::writePlainDeclarations(OutputList &ol,
while
(
fmd
)
{
/* in html we start a new line after a number of items */
if
(
fmdl
->
count
()
>
MAX_ENUM_VALUES_FOR_ONE_LINE
&&
(
enumMemCount
%
MAX_ENUM_VALUES_FOR_ONE_LINE
)
==
0
if
(
fmdl
->
count
()
>
(
uint
)
Config
::
enumValuesPerLine
&&
(
enumMemCount
%
(
uint
)
Config
::
enumValuesPerLine
)
==
0
)
{
typeDecl
.
pushGeneratorState
();
...
...
@@ -348,7 +347,7 @@ void MemberList::writePlainDeclarations(OutputList &ol,
typeDecl
.
enable
(
OutputGenerator
::
Man
);
enumMemCount
++
;
}
if
(
fmdl
->
count
()
>
MAX_ENUM_VALUES_FOR_ONE_LINE
)
if
(
fmdl
->
count
()
>
(
uint
)
Config
::
enumValuesPerLine
)
{
typeDecl
.
pushGeneratorState
();
typeDecl
.
disableAllBut
(
OutputGenerator
::
Html
);
...
...
src/pre.l
View file @
1c68fd3f
...
...
@@ -92,6 +92,7 @@ static int g_findDefArgContext;
static QCString g_lastGuardName;
static QCString g_incName;
static QCString g_guardExpr;
static int g_curlyCount;
static void setFileName(const char *name)
{
...
...
@@ -818,12 +819,12 @@ void addDefine()
static void outputChar(char c)
{
if (g_includeStack.isEmpty()) g_outputBuf->addChar(c);
if (g_includeStack.isEmpty()
|| g_curlyCount>0
) g_outputBuf->addChar(c);
}
static void outputArray(const char *a,int len)
{
if (g_includeStack.isEmpty()) g_outputBuf->addArray(a,len);
if (g_includeStack.isEmpty()
|| g_curlyCount>0
) g_outputBuf->addArray(a,len);
}
static void readIncludeFile(const QCString &inc)
...
...
@@ -917,6 +918,7 @@ BN [ \t\r\n]
%x SkipCommand
%x SkipLine
%x CopyLine
%x CopyString
%x Include
%x IncludeID
%x DefName
...
...
@@ -967,6 +969,41 @@ BN [ \t\r\n]
outputArray(yytext,yyleng);
}
*/
<CopyLine>"{" { // count brackets inside the main file
if (g_includeStack.isEmpty())
g_curlyCount++;
outputChar(*yytext);
}
<CopyLine>"}" { // count brackets inside the main file
if (g_includeStack.isEmpty())
g_curlyCount--;
outputChar(*yytext);
ASSERT(g_curlyCount>=0);
}
<CopyLine>"'"\\[0-7]{1,3}"'" {
outputArray(yytext,yyleng);
}
<CopyLine>"'"\\."'" {
outputArray(yytext,yyleng);
}
<CopyLine>"'"."'" {
outputArray(yytext,yyleng);
}
<CopyLine>\" {
outputChar(*yytext);
BEGIN( CopyString );
}
<CopyString>[^\"\\]+ {
outputArray(yytext,yyleng);
}
<CopyString>\\. {
outputArray(yytext,yyleng);
}
<CopyString>\" {
outputChar(*yytext);
BEGIN( CopyLine );
}
<CopyLine>{ID}/{BN}*"(" {
Define *def=0;
//printf("Search for define %s\n",yytext);
...
...
@@ -1726,6 +1763,7 @@ void preprocessFile(const char *fileName,BufStr &output)
uint orgOffset=output.curPos();
//#endif
g_curlyCount=0;
g_outputBuf=&output;
g_includeStack.setAutoDelete(TRUE);
g_includeStack.clear();
...
...
src/scanner.l
View file @
1c68fd3f
...
...
@@ -1615,7 +1615,14 @@ TITLE [tT][iI][tT][lL][eE]
}
<FuncPtr>{SCOPENAME} {
current->name = yytext;
BEGIN( EndFuncPtr );
if (current->name=="const" || current->name=="volatile")
{
funcPtrType += current->name;
}
else
{
BEGIN( EndFuncPtr );
}
}
<FuncPtr>. {
//printf("Error: FuncPtr `%c' unexpected at line %d of %s\n",*yytext,yyLineNr,yyFileName);
...
...
@@ -2337,7 +2344,7 @@ TITLE [tT][iI][tT][lL][eE]
}
<Comment>. { current->program += *yytext ; }
<FindMembers,FindFields,MemberSpec,FuncQual,SkipCurly,Operator,ClassVar,SkipInits>("//"{B}*)?"/*!" {
<FindMembers,FindFields,MemberSpec,FuncQual,SkipCurly,Operator,ClassVar,SkipInits
,Bases
>("//"{B}*)?"/*!" {
//printf("Start doc block at %d\n",yyLineNr);
removeSlashes=(yytext[1]=='/');
tmpDocType=-1;
...
...
@@ -2350,7 +2357,7 @@ TITLE [tT][iI][tT][lL][eE]
current->inside = current_root->name+"::";
BEGIN( Doc );
}
<FindMembers,FindFields,MemberSpec,FuncQual,SkipCurly,Operator,ClassVar,SkipInits>("//"{B}*)?"/**"/[^/*] {
<FindMembers,FindFields,MemberSpec,FuncQual,SkipCurly,Operator,ClassVar,SkipInits
,Bases
>("//"{B}*)?"/**"/[^/*] {
removeSlashes=(yytext[1]=='/');
lastDocContext = YY_START;
if (current_root->section & Entry::SCOPE_MASK)
...
...
@@ -2382,7 +2389,7 @@ TITLE [tT][iI][tT][lL][eE]
}
}
}
<FindMembers,FindFields,MemberSpec,FuncQual,Operator,ClassVar>"//!" {
<FindMembers,FindFields,MemberSpec,FuncQual,Operator,ClassVar
,Bases
>"//!" {
current->brief.resize(0);
tmpDocType=-1;
lastDocContext = YY_START;
...
...
@@ -2390,7 +2397,7 @@ TITLE [tT][iI][tT][lL][eE]
current->inside = current_root->name+"::";
BEGIN( LineDoc );
}
<FindMembers,FindFields,MemberSpec,FuncQual,Operator,ClassVar>"///"/[^/] {
<FindMembers,FindFields,MemberSpec,FuncQual,Operator,ClassVar
,Bases
>"///"/[^/] {
current->brief.resize(0);
tmpDocType=-1;
lastDocContext = YY_START;
...
...
@@ -3181,9 +3188,8 @@ TITLE [tT][iI][tT][lL][eE]
current->brief=current->brief.stripWhiteSpace();
BEGIN( lastBriefContext );
}
<ClassDocBrief>{BS}
/
{CMD}("brief"|"short"){BN}+ {
<ClassDocBrief>{BS}{CMD}("brief"|"short"){BN}+ {
lastBriefContext=YY_START;
BEGIN( ClassDocBrief );
}
<ClassDocBrief>. { current->brief += *yytext; }
<ClassDocDefine>{ID}/"(" {
...
...
src/translator_cz.h
View file @
1c68fd3f
...
...
@@ -70,6 +70,9 @@
// - Update for "new since 1.2.1" version. The text of trDCOPMethods()
// was translated rather blindly (not knowing what exactly
// the DCOP means).
//
// 2000/10/17 (Petr Prikryl)
// - Update for "new since 1.2.2" version.
//
// Notices:
// --------
...
...
@@ -1108,6 +1111,21 @@ class TranslatorCzech : public Translator
{
return
Decode
(
"Metody DCOP"
);
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.2
//////////////////////////////////////////////////////////////////////////
/*! Used as a section header for IDL properties */
virtual
QCString
trProperties
()
{
return
Decode
(
"Vlastnosti"
);
}
/*! Used as a section header for IDL property documentation */
virtual
QCString
trPropertyDocumentation
()
{
return
Decode
(
"Dokumentace k vlastnosti"
);
}
};
#endif // TRANSLATOR_CZ_H
src/translator_jp.h
View file @
1c68fd3f
...
...
@@ -25,6 +25,9 @@ class TranslatorJapanese : public Translator
public
:
QCString
idLanguage
()
{
return
"japanese"
;
}
QCString
idLanguageCharset
()
{
return
"euc-jp"
;
}
/*! returns the name of the package that is included by LaTeX */
QCString
latexBabelPackage
()
{
return
"a4j"
;
}
...
...
src/util.cpp
View file @
1c68fd3f
...
...
@@ -48,6 +48,11 @@
extern
char
**
environ
;
#endif
#if defined(_MSC_VER) || defined(__BORLANDC__)
#define popen _popen
#define pclose _pclose
#endif
//------------------------------------------------------------------------
// TextGeneratorOLImpl implementation
//------------------------------------------------------------------------
...
...
@@ -954,7 +959,7 @@ void setAnchors(char id,MemberList *ml,int groupId)
//----------------------------------------------------------------------------
// read a file with `name' to a string.
QCString
fileToString
(
const
char
*
name
)
QCString
fileToString
(
const
char
*
name
,
bool
filter
)
{
if
(
name
==
0
||
name
[
0
]
==
0
)
return
0
;
QFile
f
;
...
...
@@ -989,19 +994,47 @@ QCString fileToString(const char *name)
err
(
"Error: file `%s' not found
\n
"
,
name
);
return
""
;
}
f
.
setName
(
name
);
fileOpened
=
f
.
open
(
IO_ReadOnly
);
if
(
fileOpened
)
if
(
Config
::
inputFilter
.
isEmpty
()
||
!
filter
)
{
int
fsize
=
f
.
size
();
QCString
contents
(
fsize
+
2
);
f
.
readBlock
(
contents
.
data
(),
fsize
);
if
(
fsize
==
0
||
contents
[
fsize
-
1
]
==
'\n'
)
contents
[
fsize
]
=
'\0'
;
else
contents
[
fsize
]
=
'\n'
;
// to help the scanner
contents
[
fsize
+
1
]
=
'\0'
;
f
.
close
();
f
.
setName
(
name
);
fileOpened
=
f
.
open
(
IO_ReadOnly
);
if
(
fileOpened
)
{
int
fsize
=
f
.
size
();
QCString
contents
(
fsize
+
2
);
f
.
readBlock
(
contents
.
data
(),
fsize
);
if
(
fsize
==
0
||
contents
[
fsize
-
1
]
==
'\n'
)
contents
[
fsize
]
=
'\0'
;
else
contents
[
fsize
]
=
'\n'
;
// to help the scanner
contents
[
fsize
+
1
]
=
'\0'
;
f
.
close
();
return
contents
;
}
}
else
// filter the input
{
QCString
cmd
=
Config
::
inputFilter
+
" "
+
name
;
FILE
*
f
=
popen
(
cmd
,
"r"
);
if
(
!
f
)
{
err
(
"Error: could not execute filter %s
\n
"
,
Config
::
inputFilter
.
data
());
return
""
;
}
const
int
bSize
=
4096
;
QCString
contents
(
bSize
);
int
totalSize
=
0
;
int
size
;
while
((
size
=
fread
(
contents
.
data
()
+
totalSize
,
1
,
bSize
,
f
))
==
bSize
)
{
totalSize
+=
bSize
;
contents
.
resize
(
totalSize
+
bSize
);
}
totalSize
+=
size
+
2
;
contents
.
resize
(
totalSize
);
contents
.
at
(
totalSize
-
2
)
=
'\n'
;
// to help the scanner
contents
.
at
(
totalSize
-
1
)
=
'\0'
;
pclose
(
f
);
return
contents
;
}
}
...
...
@@ -2340,7 +2373,8 @@ bool generateRef(OutputList &ol,const char *scName,
if
(
!
rt
&&
(
md
->
isFunction
()
||
md
->
isPrototype
()
||
md
->
isSignal
()
||
md
->
isSlot
()
||
md
->
isDefine
()))
{
if
(
argsStr
.
isEmpty
()
&&
(
!
md
->
isDefine
()
||
md
->
argsString
()
!=
0
))
ol
.
writeString
(
"()"
);
// ol.writeString("()")
;
else
ol
.
docify
(
argsStr
);
}
...
...
@@ -2732,7 +2766,7 @@ void extractNamespaceName(const QCString &scopeName,
{
QCString
clName
=
scopeName
.
copy
();
//QCString nsName;
NamespaceDef
*
nd
;
NamespaceDef
*
nd
=
0
;
if
(
!
clName
.
isEmpty
()
&&
(
nd
=
getResolvedNamespace
(
clName
))
&&
getClass
(
clName
)
==
0
)
{
// the whole name is a namespace (and not a class)
namespaceName
=
nd
->
name
().
copy
();
...
...
src/util.h
View file @
1c68fd3f
...
...
@@ -83,7 +83,7 @@ extern void linkifyText(const TextGeneratorIntf &ol,const char *clName,const cha
const
char
*
text
,
bool
autoBreak
=
FALSE
,
bool
external
=
TRUE
);
extern
void
setAnchors
(
char
id
,
MemberList
*
ml
,
int
groupId
=-
1
);
extern
QCString
fileToString
(
const
char
*
name
);
extern
QCString
fileToString
(
const
char
*
name
,
bool
filter
=
FALSE
);
extern
QCString
dateToString
(
bool
);
extern
bool
getDefs
(
const
QCString
&
scopeName
,
const
QCString
&
memberName
,
...
...
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