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
5a640083
Commit
5a640083
authored
Mar 07, 2005
by
dimitri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.4.1-20050307
parent
d745dd37
Changes
40
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
40 changed files
with
1005 additions
and
665 deletions
+1005
-665
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
doxywizard.cpp
addon/doxywizard/doxywizard.cpp
+6
-6
language.doc
doc/language.doc
+33
-33
maintainers.txt
doc/maintainers.txt
+1
-1
translator.py
doc/translator.py
+30
-5
translator_report.txt
doc/translator_report.txt
+136
-106
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
code.l
src/code.l
+16
-8
commentcnv.l
src/commentcnv.l
+41
-34
commentscan.l
src/commentscan.l
+48
-13
doxygen.cpp
src/doxygen.cpp
+35
-110
htmlgen.cpp
src/htmlgen.cpp
+7
-2
index.cpp
src/index.cpp
+28
-49
memberdef.cpp
src/memberdef.cpp
+26
-7
memberdef.h
src/memberdef.h
+4
-0
pre.l
src/pre.l
+8
-3
scanner.l
src/scanner.l
+14
-11
tagreader.cpp
src/tagreader.cpp
+96
-26
translator.h
src/translator.h
+6
-0
translator_adapter.h
src/translator_adapter.h
+11
-1
translator_br.h
src/translator_br.h
+1
-1
translator_cn.h
src/translator_cn.h
+9
-60
translator_cz.h
src/translator_cz.h
+1
-1
translator_de.h
src/translator_de.h
+1
-1
translator_en.h
src/translator_en.h
+13
-0
translator_fr.h
src/translator_fr.h
+1
-1
translator_hr.h
src/translator_hr.h
+6
-41
translator_hu.h
src/translator_hu.h
+1
-1
translator_it.h
src/translator_it.h
+1
-1
translator_nl.h
src/translator_nl.h
+13
-0
translator_pl.h
src/translator_pl.h
+1
-1
translator_ro.h
src/translator_ro.h
+243
-33
translator_ru.h
src/translator_ru.h
+1
-1
translator_se.h
src/translator_se.h
+1
-1
translator_sr.h
src/translator_sr.h
+1
-1
translator_ua.h
src/translator_ua.h
+1
-1
util.cpp
src/util.cpp
+156
-99
util.h
src/util.h
+2
-0
No files found.
INSTALL
View file @
5a640083
DOXYGEN Version 1.4.1-20050
22
7
DOXYGEN Version 1.4.1-20050
30
7
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (
27 February
2005)
Dimitri van Heesch (
07 March
2005)
README
View file @
5a640083
DOXYGEN Version 1.4.1_20050
22
7
DOXYGEN Version 1.4.1_20050
30
7
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) (
27 February
2005)
Dimitri van Heesch (dimitri@stack.nl) (
07 March
2005)
VERSION
View file @
5a640083
1.4.1-20050
22
7
1.4.1-20050
30
7
addon/doxywizard/doxywizard.cpp
View file @
5a640083
...
...
@@ -823,12 +823,12 @@ MainWidget::MainWidget(QWidget *parent)
// load default settings
m_settings
.
setPath
(
"www.doxygen.org"
,
"Doxygen GUI"
);
bool
ok
;
QString
config
=
m_settings
.
readEntry
(
"/config/default"
,
QString
::
null
,
&
ok
);
QString
config
=
m_settings
.
readEntry
(
"/
doxywizard/
config/default"
,
QString
::
null
,
&
ok
);
if
(
ok
&&
!
config
.
isEmpty
())
{
Config
::
instance
()
->
parseString
(
"default settings"
,
config
);
}
QString
workingDir
=
m_settings
.
readEntry
(
"/config/workingdir"
,
QString
::
null
,
&
ok
);
QString
workingDir
=
m_settings
.
readEntry
(
"/
doxywizard/
config/workingdir"
,
QString
::
null
,
&
ok
);
if
(
ok
&&
!
workingDir
.
isEmpty
())
{
m_workingDir
->
setText
(
workingDir
);
...
...
@@ -836,7 +836,7 @@ MainWidget::MainWidget(QWidget *parent)
setConfigSaved
(
FALSE
);
for
(
int
i
=
0
;
i
<
10
;
i
++
)
{
QString
entry
=
m_settings
.
readEntry
(
QString
().
sprintf
(
"/recent/config%d"
,
i
));
QString
entry
=
m_settings
.
readEntry
(
QString
().
sprintf
(
"/
doxywizard/
recent/config%d"
,
i
));
if
(
!
entry
.
isEmpty
())
{
addRecentFile
(
entry
);
...
...
@@ -1178,8 +1178,8 @@ void MainWidget::saveDefaults()
QString
newConfig
;
QTextStream
t
(
&
newConfig
,
IO_WriteOnly
);
Config
::
instance
()
->
writeTemplate
(
t
,
TRUE
,
FALSE
);
m_settings
.
writeEntry
(
"/config/default"
,
newConfig
);
m_settings
.
writeEntry
(
"/config/workingdir"
,
m_workingDir
->
text
());
m_settings
.
writeEntry
(
"/
doxywizard/
config/default"
,
newConfig
);
m_settings
.
writeEntry
(
"/
doxywizard/
config/workingdir"
,
m_workingDir
->
text
());
statusBar
()
->
message
(
"Current configuration saved as default"
,
messageTimeout
);
}
}
...
...
@@ -1361,7 +1361,7 @@ void MainWidget::addRecentFile(const QString &file)
for
(
it
=
m_recentFiles
.
begin
();
it
!=
m_recentFiles
.
end
();
++
it
,
++
i
)
{
m_recentMenu
->
insertItem
(
*
it
);
m_settings
.
writeEntry
(
QString
().
sprintf
(
"/recent/config%d"
,
i
),
*
it
);
m_settings
.
writeEntry
(
QString
().
sprintf
(
"/
doxywizard/
recent/config%d"
,
i
),
*
it
);
}
}
...
...
doc/language.doc
View file @
5a640083
...
...
@@ -60,7 +60,7 @@ when the translator was updated.
<td>Brazilian Portuguese</td>
<td>Fabio "FJTC" Jun Takada Chino</td>
<td>jun-chino at uol dot com dot br</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Catalan</td>
...
...
@@ -72,7 +72,7 @@ when the translator was updated.
<td>Chinese</td>
<td>Li Daobing<br>Wei Liu</td>
<td>lidaobing at gmail dot com<br>liuwei at asiainfo dot com</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Chinese Traditional</td>
...
...
@@ -84,13 +84,13 @@ when the translator was updated.
<td>Croatian</td>
<td>Boris Bralo</td>
<td>boris.bralo at zg dot htnet dot hr</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Czech</td>
<td>Petr Přikryl</td>
<td>prikrylp at skil dot cz</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Danish</td>
...
...
@@ -120,13 +120,13 @@ when the translator was updated.
<td>French</td>
<td>Xavier Outhier</td>
<td>xouthier at yahoo dot fr</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>German</td>
<td>Jens Seidel</td>
<td>jensseidel at users dot sf dot net</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Greek</td>
...
...
@@ -136,15 +136,15 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Hungarian</td>
<td>
Földvári György<br>Ákos Kiss
</td>
<td>
foldvari lost at cyberspace<br>akiss at users dot sourceforge dot net
</td>
<td>
up-to-date
</td>
<td>
Ákos Kiss<br>Földvári György
</td>
<td>
akiss at users dot sourceforge dot net<br>foldvari lost at cyberspace
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Italian</td>
<td>Alessandro Falappa<br>Ahmed Aldo Faisal</td>
<td>alessandro at falappa dot net<br>aaf23 at cam dot ac dot uk</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Japanese</td>
...
...
@@ -162,7 +162,7 @@ when the translator was updated.
<td>Korean</td>
<td>SooYoung Jung<br>Richard Kim</td>
<td>jung5000 at gmail dot com<br>ryk at dspwiz dot com</td>
<td>
up-to-date
</td>
<td>
1.4.01
</td>
</tr>
<tr bgcolor="#ffffff">
<td>KoreanEn</td>
...
...
@@ -186,7 +186,7 @@ when the translator was updated.
<td>Polish</td>
<td>Piotr Kaminski<br>Grzegorz Kowal</td>
<td>Piotr.Kaminski at ctm dot gdynia dot pl<br>g_kowal at poczta dot onet dot pl</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Portuguese</td>
...
...
@@ -198,19 +198,19 @@ when the translator was updated.
<td>Romanian</td>
<td>Alexandru Iosup</td>
<td>aiosup at yahoo dot com</td>
<td>1.
2.16
</td>
<td>1.
4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Russian</td>
<td>Alexandr Chelpanov</td>
<td>cav at cryptopro dot ru</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Serbian</td>
<td>Dejan Milosavljevic</td>
<td>dmilos at email dot com</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Slovak</td>
...
...
@@ -234,13 +234,13 @@ when the translator was updated.
<td>Swedish</td>
<td>Mikael Hallin</td>
<td>mikaelhallin at yahoo dot se</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<tr bgcolor="#ffffff">
<td>Ukrainian</td>
<td>Olexij Tkatchenko</td>
<td>olexij.tkatchenko at parcs dot de</td>
<td>
up-to-date
</td>
<td>
1.4.1
</td>
</tr>
<!-- table content end -->
</table>
...
...
@@ -259,19 +259,19 @@ when the translator was updated.
\hline
Afrikaans & Johan Prinsloo & {\tt\tiny johan@zippysnoek.com} & 1.3.9 \\
\hline
Brazilian Portuguese & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino@uol.com.br} &
up-to-date
\\
Brazilian Portuguese & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino@uol.com.br} &
1.4.1
\\
\hline
Catalan & Albert Mora & {\tt\tiny amora@iua.upf.es} & 1.2.17 \\
\hline
Chinese & Li Daobing & {\tt\tiny lidaobing@gmail.com} &
up-to-date
\\
Chinese & Li Daobing & {\tt\tiny lidaobing@gmail.com} &
1.4.1
\\
~ & Wei Liu & {\tt\tiny liuwei@asiainfo.com} & ~ \\
\hline
Chinese Traditional & Daniel YC Lin & {\tt\tiny daniel@twpda.com} & 1.3.8 \\
~ & Gary Lee & {\tt\tiny garylee@ecosine.com.tw} & ~ \\
\hline
Croatian & Boris Bralo & {\tt\tiny boris.bralo@zg.htnet.hr} &
up-to-date
\\
Croatian & Boris Bralo & {\tt\tiny boris.bralo@zg.htnet.hr} &
1.4.1
\\
\hline
Czech & Petr P\v{r}ikryl & {\tt\tiny prikrylp@skil.cz} &
up-to-date
\\
Czech & Petr P\v{r}ikryl & {\tt\tiny prikrylp@skil.cz} &
1.4.1
\\
\hline
Danish & Erik S\o{}e S\o{}rensen & {\tt\tiny eriksoe+doxygen@daimi.au.dk} & 1.3.9 \\
\hline
...
...
@@ -281,16 +281,16 @@ when the translator was updated.
\hline
Finnish & Olli Korhonen & {\tt\tiny olli.korhonen lost@cyberspace} & obsolete \\
\hline
French & Xavier Outhier & {\tt\tiny xouthier@yahoo.fr} &
up-to-date
\\
French & Xavier Outhier & {\tt\tiny xouthier@yahoo.fr} &
1.4.1
\\
\hline
German & Jens Seidel & {\tt\tiny jensseidel@users.sf.net} &
up-to-date
\\
German & Jens Seidel & {\tt\tiny jensseidel@users.sf.net} &
1.4.1
\\
\hline
Greek & Harry Kalogirou & {\tt\tiny harkal@rainbow.cs.unipi.gr} & 1.2.11 \\
\hline
Hungarian &
F\"{o}ldv\'{a}ri Gy\"{o}rgy & {\tt\tiny foldvari lost@cyberspace} & up-to-date
\\
~ &
\'{A}kos Kiss & {\tt\tiny akiss@users.sourceforge.net
} & ~ \\
Hungarian &
\'{A}kos Kiss & {\tt\tiny akiss@users.sourceforge.net} & 1.4.1
\\
~ &
F\"{o}ldv\'{a}ri Gy\"{o}rgy & {\tt\tiny foldvari lost@cyberspace
} & ~ \\
\hline
Italian & Alessandro Falappa & {\tt\tiny alessandro@falappa.net} &
up-to-date
\\
Italian & Alessandro Falappa & {\tt\tiny alessandro@falappa.net} &
1.4.1
\\
~ & Ahmed Aldo Faisal & {\tt\tiny aaf23@cam.ac.uk} & ~ \\
\hline
Japanese & Ryunosuke Satoh & {\tt\tiny sun594@hotmail.com} & 1.3.9 \\
...
...
@@ -299,7 +299,7 @@ when the translator was updated.
\hline
JapaneseEn & see the Japanese language & {\tt\tiny ~} & English based \\
\hline
Korean & SooYoung Jung & {\tt\tiny jung5000@gmail.com} &
up-to-date
\\
Korean & SooYoung Jung & {\tt\tiny jung5000@gmail.com} &
1.4.01
\\
~ & Richard Kim & {\tt\tiny ryk@dspwiz.com} & ~ \\
\hline
KoreanEn & see the Korean language & {\tt\tiny ~} & English based \\
...
...
@@ -310,16 +310,16 @@ when the translator was updated.
\hline
Norwegian & Lars Erik Jordet & {\tt\tiny lejordet@gmail.com} & 1.3.9 \\
\hline
Polish & Piotr Kaminski & {\tt\tiny Piotr.Kaminski@ctm.gdynia.pl} &
up-to-date
\\
Polish & Piotr Kaminski & {\tt\tiny Piotr.Kaminski@ctm.gdynia.pl} &
1.4.1
\\
~ & Grzegorz Kowal & {\tt\tiny g\_kowal@poczta.onet.pl} & ~ \\
\hline
Portuguese & Rui Godinho Lopes & {\tt\tiny ruiglopes@yahoo.com} & 1.3.3 \\
\hline
Romanian & Alexandru Iosup & {\tt\tiny aiosup@yahoo.com} & 1.
2.16
\\
Romanian & Alexandru Iosup & {\tt\tiny aiosup@yahoo.com} & 1.
4.1
\\
\hline
Russian & Alexandr Chelpanov & {\tt\tiny cav@cryptopro.ru} &
up-to-date
\\
Russian & Alexandr Chelpanov & {\tt\tiny cav@cryptopro.ru} &
1.4.1
\\
\hline
Serbian & Dejan Milosavljevic & {\tt\tiny dmilos@email.com} &
up-to-date
\\
Serbian & Dejan Milosavljevic & {\tt\tiny dmilos@email.com} &
1.4.1
\\
\hline
Slovak & Stanislav Kudl\'{a}\v{c} & {\tt\tiny skudlac@pobox.sk} & 1.2.18 \\
\hline
...
...
@@ -327,9 +327,9 @@ when the translator was updated.
\hline
Spanish & Francisco Oltra Thennet & {\tt\tiny foltra@puc.cl} & 1.3.8 \\
\hline
Swedish & Mikael Hallin & {\tt\tiny mikaelhallin@yahoo.se} &
up-to-date
\\
Swedish & Mikael Hallin & {\tt\tiny mikaelhallin@yahoo.se} &
1.4.1
\\
\hline
Ukrainian & Olexij Tkatchenko & {\tt\tiny olexij.tkatchenko@parcs.de} &
up-to-date
\\
Ukrainian & Olexij Tkatchenko & {\tt\tiny olexij.tkatchenko@parcs.de} &
1.4.1
\\
\hline
\end{tabular}
\endlatexonly
...
...
doc/maintainers.txt
View file @
5a640083
...
...
@@ -54,8 +54,8 @@ TranslatorGreek
Harry Kalogirou: harkal@rainbow.cs.unipi.gr
TranslatorHungarian
Földvári György: foldvari lost@cyberspace
Ákos Kiss: akiss@users.sourceforge.net
Földvári György: foldvari lost@cyberspace
TranslatorItalian
Alessandro Falappa: alessandro@falappa.net
...
...
doc/translator.py
View file @
5a640083
...
...
@@ -45,6 +45,7 @@
2004/07/26 - Better reporting of not-needed adapters.
2004/10/04 - Reporting of not called translator methods added.
2004/10/05 - Modified to check only doxygen/src sources for the previous report.
2005/02/28 - Slight modification to generate "mailto.txt" auxiliary file.
"""
from
__future__
import
generators
...
...
@@ -1435,6 +1436,13 @@ class TrManager:
return
trdic
def
__email
(
self
,
classId
):
"""Returns the first maintainer for the translator class"""
return
self
.
__maintainersDic
[
classId
][
0
][
1
]
def
generateTranslatorReport
(
self
):
"""Generates the translator report."""
...
...
@@ -1466,7 +1474,12 @@ class TrManager:
s
+=
'and
%
d are English based.'
%
len
(
self
.
EnBasedIdLst
)
f
.
write
(
fill
(
s
)
+
'
\n\n
'
)
# Write the list of up-to-date translator classes.
# The e-mail addresses of the maintainers will be collected to
# the auxiliary file in the order of translator classes listed
# in the translator report.
fmail
=
file
(
'mailto.txt'
,
'w'
)
# Write the list of up-to-date translator classes.
if
self
.
upToDateIdLst
:
s
=
'''The following translator classes are up-to-date (sorted
alphabetically). This means that they derive from the
...
...
@@ -1476,12 +1489,18 @@ class TrManager:
s
=
s
%
len
(
self
.
requiredMethodsDic
)
f
.
write
(
'-'
*
70
+
'
\n
'
)
f
.
write
(
fill
(
s
)
+
'
\n\n
'
)
mailtoLst
=
[]
for
x
in
self
.
upToDateIdLst
:
obj
=
self
.
__translDic
[
x
]
f
.
write
(
' '
+
obj
.
classId
)
if
obj
.
note
:
f
.
write
(
' -- '
+
obj
.
note
)
f
.
write
(
'
\n
'
)
mailtoLst
.
append
(
self
.
__email
(
obj
.
classId
))
fmail
.
write
(
'up-to-date
\n
'
)
fmail
.
write
(
'; '
.
join
(
mailtoLst
))
# Write the list of the adapter based classes. The very obsolete
# translators that derive from TranslatorEnglish are included.
...
...
@@ -1497,6 +1516,7 @@ class TrManager:
# Find also whether some adapter classes may be removed.
adaptMinVersion
=
'9.9.99'
mailtoLst
=
[]
for
x
in
self
.
adaptIdLst
:
obj
=
self
.
__translDic
[
x
]
f
.
write
(
'
%-30
s'
%
obj
.
classId
)
...
...
@@ -1508,10 +1528,14 @@ class TrManager:
if
obj
.
note
:
f
.
write
(
'
\n\t
Note: '
+
obj
.
note
+
'
\n
'
)
f
.
write
(
'
\n
'
)
mailtoLst
.
append
(
self
.
__email
(
obj
.
classId
))
# to maintainer
# Check the level of required adapter classes.
if
obj
.
status
!=
'0.0.00'
and
obj
.
status
<
adaptMinVersion
:
adaptMinVersion
=
obj
.
status
fmail
.
write
(
'
\n\n
translator based
\n
'
)
fmail
.
write
(
'; '
.
join
(
mailtoLst
))
# Set the note if some old translator adapters are not needed
# any more. Do it only when the script is called without arguments,
...
...
@@ -1588,8 +1612,9 @@ class TrManager:
assert
(
obj
.
classId
!=
'Translator'
)
obj
.
report
(
f
)
# Close the report file
.
# Close the report file
and the auxiliary file with e-mails.
f
.
close
()
fmail
.
close
()
def
__loadMaintainers
(
self
):
...
...
@@ -1599,7 +1624,7 @@ class TrManager:
fname
=
os
.
path
.
join
(
self
.
script_path
,
self
.
maintainersFileName
)
# Include the maintainers file to the
checked group of files
with
# Include the maintainers file to the
group of files checked
with
# respect to the modification time.
tim
=
os
.
path
.
getmtime
(
fname
)
if
tim
>
self
.
lastModificationTime
:
...
...
@@ -1625,7 +1650,7 @@ class TrManager:
classId
=
line
maintainersLst
=
[]
inside
=
True
# Otherwise skip empty line that do not act as separator
s
.
# Otherwise skip empty line that do not act as separator.
else
:
# if inside the record
if
line
==
''
:
# separator found
...
...
@@ -1642,8 +1667,8 @@ class TrManager:
t
=
(
lst
[
0
]
.
strip
(),
lst
[
1
]
.
strip
())
self
.
__maintainersDic
[
classId
]
.
append
(
t
)
f
.
close
()
def
generateLanguageDoc
(
self
):
"""Checks the modtime of files and generates language.doc."""
self
.
__loadMaintainers
()
...
...
doc/translator_report.txt
View file @
5a640083
This diff is collapsed.
Click to expand it.
packages/rpm/doxygen.spec
View file @
5a640083
Summary: A documentation system for C/C++.
Name: doxygen
Version: 1.4.1_20050
22
7
Version: 1.4.1_20050
30
7
Release: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
...
...
src/code.l
View file @
5a640083
...
...
@@ -133,6 +133,8 @@ static int g_braceCount=0;
static void saveObjCContext();
static void restoreObjCContext();
//-------------------------------------------------------------------
/*! Represents a stack of variable to class mappings as found in the
...
...
@@ -252,10 +254,15 @@ void VariableContext::addVariable(const QCString &type,const QCString &name)
addVariable(typeName,name);
}
}
else
// add a dummy entry so the name is hidden to avoid false links
else
{
DBG_CTX((stderr,"** addVariable: dummy context\n"));
scope->append(lname,dummyContext);
if (m_scopes.count()>0) // for local variables add a dummy entry so the name
// is hidden to avoid false links to global variables with the same name
// TODO: make this work for namespaces as well!
{
DBG_CTX((stderr,"** addVariable: dummy context\n"));
scope->append(lname,dummyContext);
}
}
}
...
...
@@ -281,9 +288,8 @@ ClassDef *VariableContext::findVariable(const QCString &name)
return result;
}
const ClassDef *VariableContext::dummyContext = (ClassDef*)0x8;
static VariableContext g_theVarContext;
const ClassDef *VariableContext::dummyContext = (ClassDef*)0x8;
//-------------------------------------------------------------------
...
...
@@ -848,6 +854,7 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
}
ClassDef *cd=0,*lcd=0;
MemberDef *md=0;
bool isLocal=FALSE;
//fprintf(stderr,"generateClassOrGlobalLink(className=%s)\n",className.data());
if ((lcd=g_theVarContext.findVariable(className))==0) // not a local variable
...
...
@@ -859,7 +866,7 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
{
cd=getResolvedClass(d,g_sourceFileDef,className.left(i),&md);
}
//print("is found as a type %s\n",cd?cd->name().data():"<null>");
//print
f
("is found as a type %s\n",cd?cd->name().data():"<null>");
if (cd==0 && md==0) // also see if it is variable or enum or enum value
{
if (getLink(g_classScope,clName,ol,clName))
...
...
@@ -874,7 +881,8 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
{
g_theCallContext.setClass(lcd);
}
//fprintf(stderr,"is a local variable!\n");
isLocal=TRUE;
//fprintf(stderr,"is a local variable cd=%p!\n",cd);
}
if (cd && cd->isLinkable()) // is it a linkable class
{
...
...
@@ -907,7 +915,7 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
else // not a class, maybe a global member
{
//printf("class %s not linkable! cd=%p md=%p typeOnly=%d\n",clName,cd,md,typeOnly);
if (
md!=0 || (cd==0 && !typeOnly
)) // not a class, see if it is a global enum/variable/typedef.
if (
!isLocal && (md!=0 || (cd==0 && !typeOnly)
)) // not a class, see if it is a global enum/variable/typedef.
{
if (md==0) // not found as a typedef
{
...
...
src/commentcnv.l
View file @
5a640083
...
...
@@ -57,6 +57,8 @@ static QCString g_fileName;
static int g_lineNr;
static int g_condCtx;
static QStack<CondCtx> g_condStack;
static QCString g_blockName;
static int g_lastCommentContext;
static void replaceCommentMarker(const char *s,int len)
{
...
...
@@ -217,6 +219,32 @@ static QCString handleCondCmdInAliases(const QCString &s)
return result;
}
/** copies string \a s with length \a len to the output, while
* replacing any alias commands found in the string.
*/
static void replaceAliases(const char *s,int len)
{
static QRegExp cmd("[@\\\\][a-z_A-Z][a-z_A-Z0-9]*");
QCString in=s;
int p=0,i,l;
while ((i=cmd.match(in,p,&l))!=-1)
{
copyToOutput(s+p,i-p);
QCString *pValue=Doxygen::aliasDict[in.mid(i+1,l-1)];
if (pValue)
{
QCString val = handleCondCmdInAliases(*pValue);
copyToOutput(val.data(),val.length());
}
else
{
copyToOutput(s+i,l);
}
p=i+l;
}
copyToOutput(s+p,len-p);
}
#undef YY_INPUT
#define YY_INPUT(buf,result,max_size) result=yyread(buf,max_size);
...
...
@@ -245,7 +273,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
%x Verbatim
%x ReadLine
%x CondLine
%x SkipLang
%%
...
...
@@ -271,7 +298,8 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
}
g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
//copyToOutput(yytext+i,yyleng-i);
replaceAliases(yytext+i,yyleng-i);
BEGIN(SComment);
}
<Scan>"//##Documentation".*/\n { /* Start of Rational Rose ANSI C++ comment block */
...
...
@@ -279,7 +307,8 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
int i=17; //=strlen("//##Documentation");
g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
//copyToOutput(yytext+i,yyleng-i);
replaceAliases(yytext+i,yyleng-i);
BEGIN(SComment);
}
<Scan>"//"/.*\n { /* one line C++ comment */
...
...
@@ -291,16 +320,21 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
copyToOutput(yytext,yyleng);
BEGIN(CComment);
}
<
Scan>[\\@]"verbatim"
{ /* start of a verbatim block */
<
CComment>[\\@]("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"rtfonly"|"manonly"|"dot"|"code")
{ /* start of a verbatim block */
copyToOutput(yytext,yyleng);
g_blockName=&yytext[1];
g_lastCommentContext = YY_START;
BEGIN(Verbatim);
}
<Scan>. { /* any other character */
copyToOutput(yytext,yyleng);
}
<Verbatim>[\\@]
"endverbatim"
{ /* end of verbatim block */
<Verbatim>[\\@]
("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode")
{ /* end of verbatim block */
copyToOutput(yytext,yyleng);
BEGIN(Scan);
if (&yytext[4]==g_blockName)
{
BEGIN(g_lastCommentContext);
}
}
<Verbatim>[^@\\\n]* { /* any character not a backslash or new line */
copyToOutput(yytext,yyleng);
...
...
@@ -311,25 +345,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
<Verbatim>. { /* any other character */
copyToOutput(yytext,yyleng);
}
<SkipLang>[\\@]"~"[a-zA-Z]* { /* end of verbatim block */
QCString langId = &yytext[2];
if (langId.isEmpty() ||
stricmp(Config_getEnum("OUTPUT_LANGUAGE"),langId)==0)
{ // enable language specific section
BEGIN(CComment);
}
}
<SkipLang>[^*@\\\n]* { /* any character not a *, @, backslash or new line */
}
<SkipLang>\n { /* new line in verbatim block */
copyToOutput(yytext,yyleng);
}
<SkipLang>"*/" { /* end of comment block */
copyToOutput(yytext,yyleng);
BEGIN(Scan);
}
<SkipLang>. { /* any other character */
}
<SkipString>\\. { /* escaped character in string */
copyToOutput(yytext,yyleng);
}
...
...
@@ -411,14 +426,6 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
<CComment,ReadLine>("\\\\"|"@@")[~a-z_A-Z][a-z_A-Z0-9]*[ \t]* { // escaped command
copyToOutput(yytext,yyleng);
}
<CComment>[@\\]"~"[a-zA-Z]* { // language switch
QCString langId = &yytext[2];
if (!langId.isEmpty() &&
stricmp(Config_getEnum("OUTPUT_LANGUAGE"),langId)!=0)
{
BEGIN(SkipLang);
}
}
<CComment,ReadLine>[\\@]"cond"[ \t]+ { // conditional section
g_condCtx = YY_START;
BEGIN(CondLine);
...
...
@@ -492,7 +499,7 @@ void replaceComment(int offset)
}
}
/*! This function does t
wo
things:
/*! This function does t
hree
things:
* -# It converts multi-line C++ style comment blocks (that are aligned)
* to C style comment blocks (if MULTILINE_CPP_IS_BRIEF is set to NO).
* -# It replaces aliases with their definition (see ALIASES)
...
...
src/commentscan.l
View file @
5a640083
...
...
@@ -161,7 +161,9 @@ static DocCmdMap docCmdMap[] =
{ "verbatim", &handleFormatBlock },
{ "latexonly", &handleFormatBlock },
{ "htmlonly", &handleFormatBlock },
{ "xmlonly", &handleFormatBlock },
{ "rtfonly", &handleFormatBlock },
{ "manonly", &handleFormatBlock },
{ "dot", &handleFormatBlock },
{ "code", &handleFormatBlock },
{ "addindex", &handleAddIndex },
...
...
@@ -316,7 +318,6 @@ static QCString xrefItemTitle;
static QCString xrefListTitle;
static Protection protection;
static bool xrefAppendToPrev;
static bool xrefAppendFlag;
//-----------------------------------------------------------------------------
...
...
@@ -405,8 +406,8 @@ static void addXRefItem(const char *listName,const char *itemTitle,
{
Entry *docEntry = current; // inBody && previous ? previous : current;
if (listName==0) return;
//printf("addXRefItem(%s,%s,%s,%d)\n",listName,itemTitle,listTitle,append);
ListItemInfo *lii=0;
RefList *refList = Doxygen::xrefLists->find(listName);
if (refList==0) // new list
...
...
@@ -539,17 +540,20 @@ static void addSection()
// selects the output to write to
static inline void setOutput(OutputContext ctx)
{
bool xrefAppendToPrev = xrefAppendFlag;
// determine append flag for the next item (i.e. the end of this item)
xrefAppendFlag = ctx==OutputXRef && newXRefKind==xrefKind &&
(xrefKind!=XRef_Item || newXRefItemKey==xrefItemKey);
//printf("refKind=%d newXRefKind=%d xrefAppendToPrev=%d xrefAppendFlag=%d\n",
// xrefKind,newXRefKind,xrefAppendToPrev,xrefAppendFlag);
xrefItemKey = newXRefItemKey;
//printf("setOutput(inContext=%d ctx=%d)\n",inContext,ctx);
if (inContext==OutputXRef) // end of XRef section => add the item
{
// See if we can append this new xref item to the previous one.
// We know this at the start of the next item of the same
// type and need to remember this until the end of that item.
xrefAppendToPrev = xrefAppendFlag;
xrefAppendFlag = ctx==OutputXRef && newXRefKind==xrefKind &&
(xrefKind!=XRef_Item || newXRefItemKey==xrefItemKey);
//printf("refKind=%d newXRefKind=%d xrefAppendToPrev=%d xrefAppendFlag=%d\n",
// xrefKind,newXRefKind,xrefAppendToPrev,xrefAppendFlag);
switch(xrefKind)
{
case XRef_Todo:
...
...
@@ -604,7 +608,7 @@ static inline void setOutput(OutputContext ctx)
case OutputXRef:
pOutputString = &outputXRef;
// first item found, so can't append to previous
xrefAppendFlag = FALSE;
//
xrefAppendFlag = FALSE;
break;
}
}
...
...
@@ -641,8 +645,7 @@ static int yyread(char *buf,int max_size)
/* start command character */
CMD ("\\"|"@")
DETAILEDCMD {CMD}("arg"|"attention"|"author"|"bug"|"code"|"date"|"deprecated"|"dot"|"dotfile"|"example"|"htmlinclude"|"htmlonly"|"image"|"include"|"includelineno"|"internal"|"invariant"|"latexonly"|"li"|"line"|manonly"|"name"|"note"|"par"|"paragraph"|"param"|"post"|"pre"|"remarks"|"relate"[sd]"("also")?|"remarks"|"return"[s]?|"retval"|"sa"|"section"|"see"|"since"|"subsection"|"subsubsection"|"test"|"throw"|"todo"|"until"|"verbatim"|"verbinclude"|"version"|"warning"|"xmlonly"|"xrefitem")
/* ("image"|"author"|"internal"|"version"|"date"|"deprecated"|"param"|"exception"|"return"[s]?|"retval"|"bug"|"warning"|"par"|"sa"|"see"|"pre"|"post"|"invariant"|"note"|"remark"[s]?|"todo"|"test"|"xrefitem"|"ingroup"|"callgraph"|"latexonly"|"htmlonly"|"xmlonly"|"{"|"verbatim"|"dotfile"|"dot"|"defgroup"|"addtogroup"|"weakgroup"|"class"|"namespace"|"union"|"struct"|"fn"|"var"|"details"|"typedef"|"def"|"overload")|("<"{PRE}">") */
DETAILEDCMD {CMD}("arg"|"attention"|"author"|"bug"|"code"|"date"|"deprecated"|"dot"|"dotfile"|"example"|"htmlinclude"|"htmlonly"|"image"|"include"|"includelineno"|"internal"|"invariant"|"latexonly"|"li"|"line"|manonly"|"name"|"note"|"par"|"paragraph"|"param"|"post"|"pre"|"remarks"|"relate"[sd]"("also")?|"remarks"|"return"[s]?|"retval"|"sa"|"section"|"see"|"since"|"subsection"|"subsubsection"|"test"|"throw"|"todo"|"until"|"verbatim"|"verbinclude"|"version"|"warning"|"xrefitem")
PRE [pP][rR][eE]
TABLE [tT][aA][bB][lL][eE]
P [pP]
...
...
@@ -706,6 +709,7 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
%x ReadFormulaLong
%x AnchorLabel
%x HtmlComment
%x SkipLang
%%
...
...
@@ -720,11 +724,15 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
* end of brief description due to some command (@command, or <command>).
* words and whitespace and other characters (#,?!, etc).
* grouping commands (e.g. @{ and @})
* language switch (e.g. \~english or \~).
*/
<Comment>{CMD}{CMD}[a-z_A-Z]+{B}* { // escaped command
addOutput(yytext);
}
<Comment>{CMD}{CMD}"~"[a-z_A-Z]* { // escaped command
addOutput(yytext);
}
<Comment>("\\"[a-z_A-Z]+)+"\\" { // directory (or chain of commands!)
addOutput(yytext);
}
...
...
@@ -757,6 +765,14 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
<Comment>("\\\\"|"@@")"f"[$\[{] { // escaped formula command
addOutput(yytext);
}
<Comment>{CMD}"~"[a-z_A-Z]* { // language switch command
QCString langId = &yytext[2];
if (!langId.isEmpty() &&
stricmp(Config_getEnum("OUTPUT_LANGUAGE"),langId)!=0)
{ // enable language specific section
BEGIN(SkipLang);
}
}
<Comment>{CMD}"f{"[^}\n]+"}" { // start of a formula with custom environment
formulaText="\\begin";
formulaEnv=&yytext[2];
...
...
@@ -793,7 +809,7 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
addOutput(yytext[0]);
addOutput(yytext[2]);
}
<Comment>
\n({B}*\n)+ { // at least one blank line
<Comment>
(\n|\\_linebr)({B}*(\n|\\_linebr))+ { // at least one blank line (or blank line command)
if (inContext)
{
setOutput(OutputDoc);
...
...
@@ -1091,7 +1107,6 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
<XRefItemParam1>{ID} { // first argument
newXRefItemKey=yytext;
setOutput(OutputXRef);
xrefItemKey==yytext;
BEGIN(XRefItemParam2);
}
<XRefItemParam1>{LC} { // line continuation
...
...
@@ -1274,7 +1289,7 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
/* ----- handle arguments of the preformatted block commands ------- */
<FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"enddot"|"endcode")/{NW} { // possible ends
<FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"end
rtfonly"|"endmanonly"|"end
dot"|"endcode")/{NW} { // possible ends
addOutput(yytext);
if (&yytext[4]==blockName) // found end of the block
{
...
...
@@ -1429,6 +1444,7 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
}
<NameParam>. { // ignore other stuff
nameHeader+=*yytext;
current->name+=*yytext;
}
/* ----- handle argument of ingroup command ------- */
...
...
@@ -1523,6 +1539,25 @@ SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
BEGIN(Comment);
}
/* ----- handle language specific sections ------- */
<SkipLang>[\\@]"~"[a-zA-Z]* { /* language switch */
QCString langId = &yytext[2];
if (langId.isEmpty() ||
stricmp(Config_getEnum("OUTPUT_LANGUAGE"),langId)==0)
{ // enable language specific section
BEGIN(Comment);
}
}
<SkipLang>[^*@\\\n]* { /* any character not a *, @, backslash or new line */
}
<SkipLang>{DOCNL} { /* new line in verbatim block */
if (*yytext=='\n') yyLineNr++;
}
<SkipLang>. { /* any other character */
}
%%
//----------------------------------------------------------------------------
...
...
src/doxygen.cpp
View file @
5a640083
This diff is collapsed.
Click to expand it.
src/htmlgen.cpp
View file @
5a640083
...
...
@@ -125,7 +125,8 @@ static const char *defaultStyleSheet =
"A:hover { text-decoration: none; background-color: #f2f2ff }
\n
"
"DL.el { margin-left: -1cm }
\n
"
".fragment {
\n
"
" font-family: monospace
\n
"
" font-family: Fixed, monospace;
\n
"
" font-size: 90%;
\n
"
"}
\n
"
"PRE.fragment {
\n
"
" border: 1px solid #CCCCCC;
\n
"
...
...
@@ -843,8 +844,10 @@ void HtmlGenerator::codify(const char *str)
t
<<
spaces
.
left
(
spacesToNextTabStop
);
col
+=
spacesToNextTabStop
;
break
;
case
'\n'
:
t
<<
'\n'
;
col
=
0
;
case
'\n'
:
t
<<
"
\n
"
;
col
=
0
;
break
;
//case '\n': t << "<br>"; col=0;
// break;
case
'\r'
:
break
;
case
'<'
:
t
<<
"<"
;
col
++
;
break
;
...
...
@@ -852,6 +855,8 @@ void HtmlGenerator::codify(const char *str)
break
;
case
'&'
:
t
<<
"&"
;
col
++
;
break
;
//case ' ': t << " "; col++;
// break;
case
'\\'
:
if
(
*
p
==
'<'
)
{
t
<<
"<"
;
p
++
;
}
...
...
src/index.cpp
View file @
5a640083
...
...
@@ -1707,34 +1707,24 @@ static void writeMemberIndexFiltered(OutputList &ol, ClassMemberHighlight hl)
numPages
=
127
;
}
struct
struct
CmhlInfo
{
CmhlInfo
(
const
char
*
fn
,
const
char
*
t
)
:
fname
(
fn
),
title
(
t
)
{}
const
char
*
fname
;
QCString
title
;
}
cmhlInfo
[]
=
{
{
"functions"
,
0
},
{
"functions_func"
,
0
},
{
"functions_vars"
,
0
},
{
"functions_type"
,
0
},
{
"functions_enum"
,
0
},
{
"functions_eval"
,
0
},
{
"functions_rela"
,
0
},
{
"functions_prop"
,
0
},
{
"functions_evnt"
,
0
},
{
"functions_rela"
,
0
},
CmhlInfo
(
"functions"
,
theTranslator
->
trAll
()),
CmhlInfo
(
"functions_func"
,
theTranslator
->
trFunctions
()),
CmhlInfo
(
"functions_vars"
,
theTranslator
->
trVariables
()),
CmhlInfo
(
"functions_type"
,
theTranslator
->
trTypedefs
()),
CmhlInfo
(
"functions_enum"
,
theTranslator
->
trEnumerations
()),
CmhlInfo
(
"functions_eval"
,
theTranslator
->
trEnumerationValues
()),
CmhlInfo
(
"functions_prop"
,
theTranslator
->
trProperties
()),
CmhlInfo
(
"functions_evnt"
,
theTranslator
->
trEvents
()),
CmhlInfo
(
"functions_rela"
,
theTranslator
->
trRelatedFunctions
())
};
cmhlInfo
[
0
].
title
=
theTranslator
->
trAll
();
cmhlInfo
[
1
].
title
=
theTranslator
->
trFunctions
();
cmhlInfo
[
2
].
title
=
theTranslator
->
trVariables
();
cmhlInfo
[
3
].
title
=
theTranslator
->
trTypedefs
();
cmhlInfo
[
4
].
title
=
theTranslator
->
trEnumerations
();
cmhlInfo
[
5
].
title
=
theTranslator
->
trEnumerationValues
();
cmhlInfo
[
6
].
title
=
theTranslator
->
trProperties
();
cmhlInfo
[
7
].
title
=
theTranslator
->
trEvents
();
cmhlInfo
[
8
].
title
=
theTranslator
->
trRelatedFunctions
();
ol
.
pushGeneratorState
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
...
...
@@ -2114,27 +2104,21 @@ static void writeFileMemberIndexFiltered(OutputList &ol, FileMemberHighlight hl)
numPages
=
127
;
}
struct
struct
FmhlInfo
{
FmhlInfo
(
const
char
*
fn
,
const
char
*
t
)
:
fname
(
fn
),
title
(
t
)
{}
const
char
*
fname
;
QCString
title
;
}
fmhlInfo
[]
=
{
{
"globals"
,
0
}
,
{
"globals_func"
,
0
}
,
{
"globals_vars"
,
0
}
,
{
"globals_type"
,
0
}
,
{
"globals_enum"
,
0
}
,
{
"globals_eval"
,
0
}
,
{
"globals_defs"
,
0
}
FmhlInfo
(
"globals"
,
theTranslator
->
trAll
())
,
FmhlInfo
(
"globals_func"
,
theTranslator
->
trFunctions
())
,
FmhlInfo
(
"globals_vars"
,
theTranslator
->
trVariables
())
,
FmhlInfo
(
"globals_type"
,
theTranslator
->
trTypedefs
())
,
FmhlInfo
(
"globals_enum"
,
theTranslator
->
trEnumerations
())
,
FmhlInfo
(
"globals_eval"
,
theTranslator
->
trEnumerationValues
())
,
FmhlInfo
(
"globals_defs"
,
theTranslator
->
trDefines
())
};
fmhlInfo
[
0
].
title
=
theTranslator
->
trAll
();
fmhlInfo
[
1
].
title
=
theTranslator
->
trFunctions
();
fmhlInfo
[
2
].
title
=
theTranslator
->
trVariables
();
fmhlInfo
[
3
].
title
=
theTranslator
->
trTypedefs
();
fmhlInfo
[
4
].
title
=
theTranslator
->
trEnumerations
();
fmhlInfo
[
5
].
title
=
theTranslator
->
trEnumerationValues
();
fmhlInfo
[
6
].
title
=
theTranslator
->
trDefines
();
ol
.
pushGeneratorState
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
...
...
@@ -2241,25 +2225,20 @@ static void writeNamespaceMemberIndexFiltered(OutputList &ol,
numPages
=
127
;
}
struct
struct
NmhlInfo
{
NmhlInfo
(
const
char
*
fn
,
const
char
*
t
)
:
fname
(
fn
),
title
(
t
)
{}
const
char
*
fname
;
QCString
title
;
}
nmhlInfo
[]
=
{
{
"namespacemembers"
,
0
}
,
{
"namespacemembers_func"
,
0
}
,
{
"namespacemembers_vars"
,
0
}
,
{
"namespacemembers_type"
,
0
}
,
{
"namespacemembers_enum"
,
0
}
,
{
"namespacemembers_eval"
,
0
}
NmhlInfo
(
"namespacemembers"
,
theTranslator
->
trAll
())
,
NmhlInfo
(
"namespacemembers_func"
,
theTranslator
->
trFunctions
())
,
NmhlInfo
(
"namespacemembers_vars"
,
theTranslator
->
trVariables
())
,
NmhlInfo
(
"namespacemembers_type"
,
theTranslator
->
trTypedefs
())
,
NmhlInfo
(
"namespacemembers_enum"
,
theTranslator
->
trEnumerations
())
,
NmhlInfo
(
"namespacemembers_eval"
,
theTranslator
->
trEnumerationValues
())
};
nmhlInfo
[
0
].
title
=
theTranslator
->
trAll
();
nmhlInfo
[
1
].
title
=
theTranslator
->
trFunctions
();
nmhlInfo
[
2
].
title
=
theTranslator
->
trVariables
();
nmhlInfo
[
3
].
title
=
theTranslator
->
trTypedefs
();
nmhlInfo
[
4
].
title
=
theTranslator
->
trEnumerations
();
nmhlInfo
[
5
].
title
=
theTranslator
->
trEnumerationValues
();
ol
.
pushGeneratorState
();
ol
.
disableAllBut
(
OutputGenerator
::
Html
);
...
...
src/memberdef.cpp
View file @
5a640083
...
...
@@ -509,7 +509,11 @@ bool MemberDef::hasExamples()
QCString
MemberDef
::
getOutputFileBase
()
const
{
QCString
baseName
;
if
(
m_templateMaster
)
if
(
explicitOutputFileBase
)
{
return
explicitOutputFileBase
;
}
else
if
(
m_templateMaster
)
{
return
m_templateMaster
->
getOutputFileBase
();
}
...
...
@@ -835,6 +839,10 @@ void MemberDef::writeDeclaration(OutputList &ol,
// hide members whose brief section should not be visible
//if (!isBriefSectionVisible()) return;
Definition
*
d
=
0
;
ASSERT
(
cd
!=
0
||
nd
!=
0
||
fd
!=
0
||
gd
!=
0
);
// member should belong to something
if
(
cd
)
d
=
cd
;
else
if
(
nd
)
d
=
nd
;
else
if
(
fd
)
d
=
fd
;
else
d
=
gd
;
// write tag file information of this member
if
(
!
Config_getString
(
"GENERATE_TAGFILE"
).
isEmpty
())
{
...
...
@@ -875,6 +883,7 @@ void MemberDef::writeDeclaration(OutputList &ol,
Doxygen
::
tagFile
<<
"
\"
>"
<<
endl
;
Doxygen
::
tagFile
<<
" <type>"
<<
convertToXML
(
typeString
())
<<
"</type>"
<<
endl
;
Doxygen
::
tagFile
<<
" <name>"
<<
convertToXML
(
name
())
<<
"</name>"
<<
endl
;
Doxygen
::
tagFile
<<
" <anchorfile>"
<<
convertToXML
(
getOutputFileBase
()
+
Doxygen
::
htmlFileExtension
)
<<
"</anchorfile>"
<<
endl
;
Doxygen
::
tagFile
<<
" <anchor>"
<<
convertToXML
(
anchor
())
<<
"</anchor>"
<<
endl
;
Doxygen
::
tagFile
<<
" <arglist>"
<<
convertToXML
(
argsString
())
<<
"</arglist>"
<<
endl
;
writeDocAnchorsToTagFile
();
...
...
@@ -889,9 +898,6 @@ void MemberDef::writeDeclaration(OutputList &ol,
Doxygen
::
searchIndex
->
addWord
(
qualifiedName
(),
FALSE
);
}
Definition
*
d
=
0
;
ASSERT
(
cd
!=
0
||
nd
!=
0
||
fd
!=
0
||
gd
!=
0
);
// member should belong to something
if
(
cd
)
d
=
cd
;
else
if
(
nd
)
d
=
nd
;
else
if
(
fd
)
d
=
fd
;
else
d
=
gd
;
QCString
cname
=
d
->
name
();
QCString
cfname
=
getOutputFileBase
();
QCString
osname
=
cname
;
...
...
@@ -2080,11 +2086,14 @@ void MemberDef::addListReference(Definition *)
}
QCString
memName
=
name
();
Definition
*
pd
=
getOuterScope
();
if
((
!
Config_getBool
(
"HIDE_SCOPE_NAMES"
)
&&
// there is a scope
if
(
!
isRelated
()
&&
(
(
!
Config_getBool
(
"HIDE_SCOPE_NAMES"
)
&&
// there is a scope
pd
&&
pd
!=
Doxygen
::
globalScope
)
// and we can show it
||
((
pd
=
getClassDef
())
&&
!
isRelated
())
// it's a class so we
||
(
pd
=
getClassDef
())
// it's a class so we
// show the scope anyway
)
)
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_JAVA"
))
...
...
@@ -2328,3 +2337,13 @@ QCString MemberDef::qualifiedName()
}
}
void
MemberDef
::
setTagInfo
(
TagInfo
*
ti
)
{
if
(
ti
)
{
setAnchor
(
ti
->
anchor
);
setReference
(
ti
->
tagName
);
explicitOutputFileBase
=
stripExtension
(
ti
->
fileName
);
}
}
src/memberdef.h
View file @
5a640083
...
...
@@ -182,6 +182,7 @@ class MemberDef : public Definition
void
setHasDocumentedParams
(
bool
b
)
{
m_hasDocumentedParams
=
b
;
}
void
setHasDocumentedReturnType
(
bool
b
)
{
m_hasDocumentedReturnType
=
b
;
}
void
setInheritsDocsFrom
(
MemberDef
*
md
)
{
m_docProvider
=
md
;
}
void
setTagInfo
(
TagInfo
*
i
);
// output generation
void
writeLink
(
OutputList
&
ol
,
...
...
@@ -400,6 +401,9 @@ class MemberDef : public Definition
// documentation inheritance
MemberDef
*
m_docProvider
;
// to store the output file base from tag files
QCString
explicitOutputFileBase
;
};
#endif
src/pre.l
View file @
5a640083
...
...
@@ -100,6 +100,7 @@ static bool g_expandOnlyPredef; // from the configuration
static int g_commentCount;
static bool g_insideComment;
static bool g_isImported;
static QCString g_blockName;
static void setFileName(const char *name)
...
...
@@ -1776,13 +1777,17 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
outputChar('/');outputChar('*');
//g_commentCount++;
}
<SkipCComment>[\\@]
"verbatim"
{BN}+ {
<SkipCComment>[\\@]
("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"rtfonly"|"manonly"|"dot"|"code")
{BN}+ {
outputArray(yytext,yyleng);
g_blockName=&yytext[1];
BEGIN(SkipVerbatim);
}
<SkipVerbatim>[\\@]
"endverbatim" {
<SkipVerbatim>[\\@]
("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode") { /* end of verbatim block */
outputArray(yytext,yyleng);
BEGIN(SkipCComment);
if (&yytext[4]==g_blockName)
{
BEGIN(SkipCComment);
}
}
<SkipCComment,SkipVerbatim>[^*\x06\n\/]+ {
outputArray(yytext,yyleng);
...
...
src/scanner.l
View file @
5a640083
...
...
@@ -2121,7 +2121,12 @@ IDLATTR ("["[^\]]*"]"){BN}*
<FindMembers,FindFields>("//"([!/]?){B}*{CMD}"{")|("/*"([!*]?){B}*{CMD}"{") {
#ifdef COMMENTSCAN
REJECT;
Entry *tmp = current;
current = previous;
handleGroupStartCommand(current->name);
current = tmp;
initEntry();
#else
startGroup();
tmpDocType=-1;
...
...
@@ -2154,7 +2159,7 @@ IDLATTR ("["[^\]]*"]"){BN}*
}
<FindMembers,FindFields,ReadInitializer>"//"([!/]?){B}*{CMD}"}".*|"/*"([!*]?){B}*{CMD}"}".*"*/" {
#ifdef COMMENTSCAN
REJECT
;
handleGroupEndCommand()
;
#else
if (memberGroupId==DOX_NOGROUP && autoGroupStack.isEmpty())
{
...
...
@@ -3266,7 +3271,7 @@ IDLATTR ("["[^\]]*"]"){BN}*
<FuncQual>[{:;,] {
if ( strcmp(yytext,";")==0 &&
insidePHP &&
current->type.left(8) != "function"
)
!containsWord(current->type,"function")
)
{
current->reset();
initEntry();
...
...
@@ -3497,26 +3502,24 @@ IDLATTR ("["[^\]]*"]"){BN}*
//printf("Adding entry `%s'\n",current->name.data());
if ( insidePHP)
{
if (
current->type.left(6) == "final "
)
if (
findAndRemoveWord(current->type,"final")
)
{
current->type = current->type.mid(6);
current->memSpec |= Entry::Final;
}
if (
current->type.left(9) == "abstract "
)
if (
findAndRemoveWord(current->type,"abstract")
)
{
current->type = current->type.mid(9);
current->memSpec |= Entry::Abstract;
}
}
if ( insidePHP &&
current->type.left(8) != "function"
)
if ( insidePHP &&
!containsWord(current->type,"function")
)
{
initEntry();
}
else
{
if ( insidePHP
&& current->type.left(8) == "function"
)
if ( insidePHP)
{
current->type = current->type.mid(8
);
findAndRemoveWord(current->type,"function"
);
}
previous = current;
current_root->addSubEntry(current);
...
...
@@ -4303,7 +4306,7 @@ IDLATTR ("["[^\]]*"]"){BN}*
<FindMembers>"{" {
if (insideCS && !current->name.isEmpty() && !current->type.isEmpty())
{
if (c
urrent->type.left(6)=="event " || current->type.find("event")!=-1
) // event
if (c
ontainsWord(current->type,"event")
) // event
{
current->mtype = mtype = Event;
}
...
...
src/tagreader.cpp
View file @
5a640083
This diff is collapsed.
Click to expand it.
src/translator.h
View file @
5a640083
...
...
@@ -433,6 +433,12 @@ class Translator
virtual
QCString
trDirReference
(
const
char
*
dirName
)
=
0
;
virtual
QCString
trDir
(
bool
first_capital
,
bool
singular
)
=
0
;
//////////////////////////////////////////////////////////////////////////
// new since 1.4.1
//////////////////////////////////////////////////////////////////////////
virtual
QCString
trOverloadText
()
=
0
;
};
#endif
src/translator_adapter.h
View file @
5a640083
...
...
@@ -40,7 +40,17 @@ class TranslatorAdapterBase : public Translator
};
class
TranslatorAdapter_1_3_9
:
public
TranslatorAdapterBase
class
TranslatorAdapter_1_4_1
:
public
TranslatorAdapterBase
{
public
:
virtual
QCString
updateNeededMessage
()
{
return
createUpdateNeededMessage
(
idLanguage
(),
"release 1.4.1"
);
}
virtual
QCString
trOverloadText
()
{
return
english
.
trOverloadText
();
}
};
class
TranslatorAdapter_1_3_9
:
public
TranslatorAdapter_1_4_1
{
public
:
virtual
QCString
updateNeededMessage
()
...
...
src/translator_br.h
View file @
5a640083
...
...
@@ -34,7 +34,7 @@
#ifndef TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
class
TranslatorBrazilian
:
public
Translator
class
TranslatorBrazilian
:
public
Translator
Adapter_1_4_1
{
public
:
...
...
src/translator_cn.h
View file @
5a640083
...
...
@@ -24,7 +24,7 @@
*/
#define CN_SPC
class
TranslatorChinese
:
public
Translator
class
TranslatorChinese
:
public
Translator
Adapter_1_4_1
{
public
:
/*! Used for identification of the language. The identification
...
...
@@ -83,9 +83,6 @@ class TranslatorChinese : public Translator
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
"成员枚举类型文档"
;
}
virtual
QCString
trEnumerationValueDocumentation
()
{
return
"成员枚举值文档"
;
}
/*! header that is put before the list of member function. */
virtual
QCString
trMemberFunctionDocumentation
()
{
return
"成员函数文档"
;
}
...
...
@@ -173,11 +170,6 @@ class TranslatorChinese : public Translator
virtual
QCString
trFileList
()
{
return
"文件列表"
;
}
/*! This is put above each page as a link to the list of all verbatim headers */
virtual
QCString
trHeaderFiles
()
{
return
"头文件"
;
}
/*! This is put above each page as a link to all members of compounds. */
virtual
QCString
trCompoundMembers
()
{
...
...
@@ -286,9 +278,6 @@ class TranslatorChinese : public Translator
return
result
;
}
virtual
QCString
trHeaderFilesDescription
()
{
return
"这里列出组成API的头文件:"
;
}
virtual
QCString
trExamplesDescription
()
{
return
"这里列出所有示例:"
;
}
...
...
@@ -298,9 +287,6 @@ class TranslatorChinese : public Translator
virtual
QCString
trModulesDescription
()
{
return
"这里列出所有模块"
;
}
virtual
QCString
trNoDescriptionAvailable
()
{
return
"无可用文档"
;
}
virtual
QCString
trDocumentation
()
{
return
"文档"
;
}
...
...
@@ -422,16 +408,9 @@ class TranslatorChinese : public Translator
virtual
QCString
trForInternalUseOnly
()
{
return
"仅限内部使用。"
;
}
virtual
QCString
trReimplementedForInternalReasons
()
{
return
"由于内部原因被重载;但不影响API"
;
}
virtual
QCString
trWarning
()
{
return
"警告"
;
}
virtual
QCString
trBugsAndLimitations
()
{
return
"BUG"
CN_SPC
"与局限"
;
}
virtual
QCString
trVersion
()
{
return
"版本"
;
}
...
...
@@ -698,12 +677,7 @@ class TranslatorChinese : public Translator
// new since 0.49-991106
//////////////////////////////////////////////////////////////////////////
virtual
QCString
trSources
()
{
return
"源代码"
;
}
virtual
QCString
trDefinedAtLineInSourceFile
()
virtual
QCString
trDefinedAtLineInSourceFile
()
{
return
"在文件"
CN_SPC
"@1"
CN_SPC
"第"
CN_SPC
"@0"
CN_SPC
"行定义。"
;
}
...
...
@@ -1025,12 +999,6 @@ class TranslatorChinese : public Translator
// new since 1.2.4
//////////////////////////////////////////////////////////////////////////
/*! Used for Java interfaces in the summary section of Java packages */
virtual
QCString
trInterfaces
()
{
return
"接口"
;
}
/*! Used for Java classes in the summary section of Java packages */
virtual
QCString
trClasses
()
{
...
...
@@ -1068,12 +1036,6 @@ class TranslatorChinese : public Translator
return
"包"
;
}
/*! Used as a chapter title for Latex & RTF output */
virtual
QCString
trPackageDocumentation
()
{
return
"包的文档"
;
}
/*! Text shown before a multi-line define */
virtual
QCString
trDefineValue
()
{
...
...
@@ -1228,20 +1190,6 @@ class TranslatorChinese : public Translator
return
"成员"
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
/*
QCString result((first_capital ? "Field" : "field"));
if (!singular) result+="s";
return result;
*/
return
"字段"
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
...
...
@@ -1492,7 +1440,7 @@ class TranslatorChinese : public Translator
virtual
QCString
trDirIndex
()
/* { return "Directory Hierarchy"; } */
{
return
"
$(BL
\\
录结$(DC((B
"
;
return
"
目录结构
"
;
}
/*! This is used as the name of the chapter containing the documentation
...
...
@@ -1501,7 +1449,7 @@ class TranslatorChinese : public Translator
virtual
QCString
trDirDocumentation
()
/* { return "Directory Documentation"; } */
{
return
"
$(BL
\\
录J8[c(B
"
;
return
"
目录文档
"
;
}
/*! This is used as the title of the directory index and also in the
...
...
@@ -1510,7 +1458,7 @@ class TranslatorChinese : public Translator
virtual
QCString
trDirectories
()
/* { return "Directories"; } */
{
return
"
$(BL
\\
录(B
"
;
return
"
目录
"
;
}
/*! This returns a sentences that introduces the directory hierarchy.
...
...
@@ -1521,7 +1469,7 @@ class TranslatorChinese : public Translator
/* "but not completely, alphabetically:"; */
/* } */
{
return
"
$(BL
\\
录结$(DC(仅经过$(BBgCWE*GSNs!$VuL$40A40D;zJl顺=x(B
"
;
return
"
目录结构仅经过粗略的排序
"
;
}
/*! This returns the title of a directory page. The name of the
...
...
@@ -1531,7 +1479,7 @@ class TranslatorChinese : public Translator
/* { QCString result=dirName; result+=" Directory Reference"; return result; } */
{
QCString
result
=
dirName
;
result
+=
CN_SPC
"
$(BL
\\
录;29M(B
"
;
result
+=
CN_SPC
"
目录参考
"
;
return
result
;
}
...
...
@@ -1543,9 +1491,10 @@ class TranslatorChinese : public Translator
/* QCString result((first_capital ? "Director" : "director")); */
/* if (singular) result+="y"; else result+="ies"; */
/* return result; */
return
"
$(BL
\\
录(B
"
;
return
"
目录
"
;
}
};
#endif
src/translator_cz.h
View file @
5a640083
...
...
@@ -151,7 +151,7 @@
// Windows version. The version which does not call the function is
// probably slightly faster.
class
TranslatorCzech
:
public
Translator
class
TranslatorCzech
:
public
Translator
Adapter_1_4_1
{
private
:
/*! The decode() inline assumes the source written in the
...
...
src/translator_de.h
View file @
5a640083
...
...
@@ -102,7 +102,7 @@
#ifndef TRANSLATOR_DE_H
#define TRANSLATOR_DE_H
class
TranslatorGerman
:
public
Translator
class
TranslatorGerman
:
public
Translator
Adapter_1_4_1
{
public
:
...
...
src/translator_en.h
View file @
5a640083
...
...
@@ -1602,6 +1602,19 @@ class TranslatorEnglish : public Translator
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.4.1
//////////////////////////////////////////////////////////////////////////
/*! This text is added to the documentation when the \\overload command
* is used for a overloaded function.
*/
virtual
QCString
trOverloadText
()
{
return
"This is an overloaded member function, "
"provided for convenience. It differs from the above "
"function only in what argument(s) it accepts."
;
}
};
#endif
src/translator_fr.h
View file @
5a640083
...
...
@@ -85,7 +85,7 @@
// Translator class (by the local maintainer) when the localized
// translator is made up-to-date again.
class
TranslatorFrench
:
public
Translator
class
TranslatorFrench
:
public
Translator
Adapter_1_4_1
{
public
:
...
...
src/translator_hr.h
View file @
5a640083
...
...
@@ -58,11 +58,15 @@
//
// 2004/09/15
// - Added strings for 1.3.9
//
// 2005/02/28
// - Removed obsolete (unused) methods
//
#ifndef TRANSLATOR_HR_H
#define TRANSLATOR_HR_H
class
TranslatorCroatian
:
public
Translator
class
TranslatorCroatian
:
public
Translator
Adapter_1_4_1
{
private
:
/*! to avoid macro redefinition from translator_cz.h */
...
...
@@ -104,10 +108,8 @@ class TranslatorCroatian : public Translator
{
return
decode
(
"Dokumentacija typedef lanova"
);
}
QCString
trMemberEnumerationDocumentation
()
{
return
decode
(
"Dokumentacija enumeracijskih lanova"
);
}
QCString
trEnumerationValueDocumentation
()
{
return
"Dokumentacija enumeracijskih vrijednosti"
;
}
QCString
trMemberFunctionDocumentation
()
{
return
"Dokumentacija funkcija"
;
}
{
return
"Dokumentacija funkcija"
;
}
QCString
trMemberDataDocumentation
()
{
return
"Documentacija varijabli"
;
}
QCString
trMore
()
...
...
@@ -149,8 +151,6 @@ class TranslatorCroatian : public Translator
}
QCString
trFileList
()
{
return
"Popis datoteka"
;
}
QCString
trHeaderFiles
()
{
return
"Header datoteke"
;
}
QCString
trCompoundMembers
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
...
...
@@ -217,16 +217,12 @@ class TranslatorCroatian : public Translator
result
+=
"datoteke u kojima se nalaze:"
;
return
decode
(
result
);
}
QCString
trHeaderFilesDescription
()
{
return
decode
(
"Popis header datoteka koje ine API :"
);
}
QCString
trExamplesDescription
()
{
return
"Popis primjera :"
;
}
QCString
trRelatedPagesDescription
()
{
return
"Popis povezanih stranica:"
;
}
QCString
trModulesDescription
()
{
return
"Popis svih modula:"
;
}
QCString
trNoDescriptionAvailable
()
{
return
"Opis nije dostupan"
;
}
QCString
trDocumentation
()
{
return
"Dokumentacija"
;
}
...
...
@@ -314,14 +310,8 @@ class TranslatorCroatian : public Translator
}
QCString
trForInternalUseOnly
()
{
return
decode
(
"Iskljuivo za internu uporabu."
);
}
QCString
trReimplementedForInternalReasons
()
{
return
decode
(
"Reimplementirano zbog internih razloga; "
"Nema utjecaja na API."
);
}
QCString
trWarning
()
{
return
"Upozorenje"
;
}
QCString
trBugsAndLimitations
()
{
return
decode
(
"Greke i ogranienja"
);
}
QCString
trVersion
()
{
return
"Verzija"
;
}
QCString
trDate
()
...
...
@@ -563,10 +553,6 @@ class TranslatorCroatian : public Translator
// new since 0.49-991106
//////////////////////////////////////////////////////////////////////////
QCString
trSources
()
{
return
"Izvorne datoteke"
;
}
QCString
trDefinedAtLineInSourceFile
()
{
return
"Definirano u liniji @0 datoteke @1."
;
...
...
@@ -852,11 +838,6 @@ class TranslatorCroatian : public Translator
// new since 1.2.4
//////////////////////////////////////////////////////////////////////////
/*! Used for Java interfaces in the summary section of Java packages */
virtual
QCString
trInterfaces
()
{
return
decode
(
"Suelja (interfaces)"
);
}
/*! Used for Java classes in the summary section of Java packages */
virtual
QCString
trClasses
()
{
...
...
@@ -882,11 +863,6 @@ class TranslatorCroatian : public Translator
{
return
"Paketi"
;
}
/*! Used as a chapter title for Latex & RTF output */
virtual
QCString
trPackageDocumentation
()
{
return
"Dokumentacija paketa"
;
}
/*! Text shown before a multi-line define */
virtual
QCString
trDefineValue
()
{
...
...
@@ -996,17 +972,6 @@ class TranslatorCroatian : public Translator
return
decode
(
result
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
first_capital
,
bool
singular
)
{
QCString
result
((
first_capital
?
"Polj"
:
"polj"
));
result
+=
(
singular
?
"e"
:
"a"
);
return
result
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* of the category.
...
...
src/translator_hu.h
View file @
5a640083
...
...
@@ -29,7 +29,7 @@
#ifndef TRANSLATOR_HU_H
#define TRANSLATOR_HU_H
class
TranslatorHungarian
:
public
Translator
class
TranslatorHungarian
:
public
Translator
Adapter_1_4_1
{
private
:
const
char
*
zed
(
char
c
)
...
...
src/translator_it.h
View file @
5a640083
...
...
@@ -72,7 +72,7 @@
#ifndef TRANSLATOR_IT_H
#define TRANSLATOR_IT_H
class
TranslatorItalian
:
public
Translator
class
TranslatorItalian
:
public
Translator
Adapter_1_4_1
{
public
:
...
...
src/translator_nl.h
View file @
5a640083
...
...
@@ -1200,6 +1200,19 @@ class TranslatorDutch : public Translator
return
result
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.4.1
//////////////////////////////////////////////////////////////////////////
/*! This text is added to the documentation when the \\overload command
* is used for a function.
*/
virtual
QCString
trOverloadText
()
{
return
"Deze functie is overloaded en is beschikbaar gemaakt om het "
"gebruik te vergemakkelijken. Ze verschilt alleen van de "
"bovenstaande functie wat betreft de parameterlijst."
;
}
};
...
...
src/translator_pl.h
View file @
5a640083
...
...
@@ -20,7 +20,7 @@
#ifndef TRANSLATOR_PL_H
#define TRANSLATOR_PL_H
class
TranslatorPolish
:
public
Translator
class
TranslatorPolish
:
public
Translator
Adapter_1_4_1
{
private
:
/*! to avoid macro redefinition from translator_pl.h */
...
...
src/translator_ro.h
View file @
5a640083
This diff is collapsed.
Click to expand it.
src/translator_ru.h
View file @
5a640083
...
...
@@ -49,7 +49,7 @@
#ifndef TRANSLATOR_RU_H
#define TRANSLATOR_RU_H
class
TranslatorRussian
:
public
Translator
class
TranslatorRussian
:
public
Translator
Adapter_1_4_1
{
private
:
/*! The Decode() inline assumes the source written in the
...
...
src/translator_se.h
View file @
5a640083
...
...
@@ -69,7 +69,7 @@ Problem!
#ifndef TRANSLATOR_SE_H
#define TRANSLATOR_SE_H
class
TranslatorSwedish
:
public
Translator
class
TranslatorSwedish
:
public
Translator
Adapter_1_4_1
{
public
:
...
...
src/translator_sr.h
View file @
5a640083
...
...
@@ -21,7 +21,7 @@
// translation by Dejan D. M. Milosavljevic <dmilos@email.com>;<dmilosx@ptt.yu>;<office@ddmrm.com>
// // 10x 2 Ivana Miletic for gramatical consutation.
class
TranslatorSerbian
:
public
Translator
class
TranslatorSerbian
:
public
Translator
Adapter_1_4_1
{
private
:
QCString
decode
(
const
QCString
&
sInput
)
...
...
src/translator_ua.h
View file @
5a640083
...
...
@@ -20,7 +20,7 @@
#ifndef TRANSLATOR_UA_H
#define TRANSLATOR_UA_H
class
TranslatorUkrainian
:
public
Translator
class
TranslatorUkrainian
:
public
TranslatorAdapter_1_4_1
{
private
:
/*! The Decode() inline assumes the source written in the
...
...
src/util.cpp
View file @
5a640083
This diff is collapsed.
Click to expand it.
src/util.h
View file @
5a640083
...
...
@@ -228,6 +228,8 @@ QCString relativePathToRoot(const char *name);
#define REL_PATH_TO_ROOT "../../"
void
createSubDirs
(
QDir
&
d
);
QCString
stripPath
(
const
char
*
s
);
bool
containsWord
(
const
QCString
&
s
,
const
QCString
&
word
);
bool
findAndRemoveWord
(
QCString
&
s
,
const
QCString
&
word
);
#endif
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