Commit 9dbdf881 authored by Dimitri van Heesch's avatar Dimitri van Heesch

Release-1.4.7

parent 0674d909
DOXYGEN Version 1.4.6-20060507
DOXYGEN Version 1.4.7
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (07 May 2006)
Dimitri van Heesch (11 June 2006)
......@@ -14,6 +14,7 @@ irix-n32
linux-g++
linux-64
macosx-c++
macosx-uni-c++
m68k-atari-mint-g++
netbsd-g++
openbsd-g++
......
DOXYGEN Version 1.4.6_20060507
DOXYGEN Version 1.4.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) (07 May 2006)
Dimitri van Heesch (dimitri@stack.nl) (11 June 2006)
......@@ -1191,6 +1191,16 @@ void MainWidget::saveConfigFile()
if (!fn.isEmpty())
{
QFile f(fn);
if (f.exists() && QMessageBox::question(this,
"Overwrite file? -- Doxywizard",
"A file called "+fn+" already exists. Do you want to overwrite it?",
"&Yes","&no",
QString::null, 0, 1)
)
{
statusBar()->message("Save request aborted",messageTimeout);
return;
}
if (f.open(IO_WriteOnly))
{
QTextStream t(&f);
......
......@@ -17,10 +17,10 @@
doxygen_version_major=1
doxygen_version_minor=4
doxygen_version_revision=6
doxygen_version_revision=7
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20060507
doxygen_version_mmn=NO
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......@@ -155,6 +155,9 @@ if test -z "$f_platform"; then
if test "$f_insttool" = NO; then
f_insttool=/usr/bin/install
fi
if test -n "`ls /Developer/SDKs/MacOSX10.*u.sdk`"; then
f_platform=macosx-uni-c++
fi
;;
FreeBSD:*)
f_platform=freebsd-g++
......
......@@ -21,8 +21,8 @@
Doxygen can use the "dot" tool from graphviz 1.5 to generate
more advanced diagrams and graphs. Graphviz is an "open-sourced",
cross-platform graph drawing toolkit from AT\&T and Lucent Bell Labs and
can be found at http://www.research.att.com/sw/tools/graphviz/
cross-platform graph drawing toolkit and can be found
at http://www.graphviz.org/
If you have the "dot" tool available in the path, you can set
\ref cfg_have_dot "HAVE_DOT" to \c YES in the configuration file to
......
......@@ -62,9 +62,9 @@ tools should be installed.
<a href="http://www.tug.org/interest.html#free">teTeX 1.0</a>
\latexonly \\par (see {\tt http://www.tug.org/interest.html\#free})\endlatexonly.
This is needed for generating LaTeX, Postscript, and PDF output.
<li><a href="http://www.research.att.com/sw/tools/graphviz/">
<li><a href="http://www.graphviz.org/">
the Graph visualization toolkit version 1.8.10 or higher</a>
\latexonly \\par (see {\tt http://www.research.att.com/sw/tools/graphviz/})\endlatexonly.
\latexonly \\par (see {\tt http://www.graphviz.org/})\endlatexonly.
Needed for the include dependency graphs,
the graphical inheritance graphs, and the collaboration graphs.
If you compile graphviz yourself, make sure you do include
......@@ -559,9 +559,9 @@ features:
You can download it from
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/vsconHH1Start.asp">Microsoft</a>.
<li><a href="http://www.research.att.com/sw/tools/graphviz/">
<li><a href="http://www.graphviz.org/">
the Graph visualization toolkit version 1.8.10</a><br>
\latexonly(see {\tt http://www.research.att.com/sw/tools/graphviz/})\endlatexonly.
\latexonly(see {\tt http://www.graphviz.org/})\endlatexonly.
Needed for the include dependency graphs, the graphical inheritance graphs,
and the collaboration graphs.
</ul>
......
......@@ -23,7 +23,7 @@ text fragments, generated by doxygen, can be produced in languages other
than English (the default). The output language is chosen through the
configuration file (with default name and known as Doxyfile).
Currently (version 1.4.6), 31 languages
Currently (version 1.4.7), 31 languages
are supported (sorted alphabetically):
Afrikaans, Brazilian Portuguese, Catalan, Chinese, Chinese
Traditional, Croatian, Czech, Danish, Dutch, English, Finnish, French,
......@@ -54,19 +54,19 @@ when the translator was updated.
<td>Afrikaans</td>
<td>Johan Prinsloo</td>
<td>johan at zippysnoek dot com</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Catalan</td>
<td>Maximiliano Pin<br>Albert Mora</td>
<td>mcpin at emtesistemas dot com<br>amora at iua dot upf dot es</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Chinese</td>
......@@ -78,19 +78,19 @@ when the translator was updated.
<td>Chinese Traditional</td>
<td>Daniel YC Lin<br>Gary Lee</td>
<td>daniel at twpda dot com<br>garylee at ecosine dot com dot tw</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Czech</td>
<td>Petr P&#x0159;ikryl</td>
<td>prikrylp at skil dot cz</td>
<td>up-to-date</td>
<td>1.4.6</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.6</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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Greek</td>
......@@ -138,25 +138,25 @@ when the translator was updated.
<td>Hungarian</td>
<td>&Aacute;kos Kiss<br>F&ouml;ldv&aacute;ri Gy&ouml;rgy</td>
<td>akiss at users dot sourceforge dot net<br>foldvari lost at cyberspace</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Indonesian</td>
<td>Hendy Irawan</td>
<td>ceefour at gauldong dot net</td>
<td>up-to-date</td>
<td>1.4.6</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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Japanese</td>
<td>Ryunosuke Satoh<br>Kenji Nagamatsu<br>Iwasa Kazmi</td>
<td>sun594 at hotmail dot com<br>naga at joyful dot club dot ne dot jp<br>iwasa at cosmo-system dot jp</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>JapaneseEn</td>
......@@ -168,7 +168,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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>KoreanEn</td>
......@@ -180,19 +180,19 @@ when the translator was updated.
<td>Lithuanian</td>
<td>Tomas Simonaitis<br>Mindaugas Radzius<br>Aidas Berukstis</td>
<td>haden at homelan dot lt<br>mindaugasradzius at takas dot lt<br>aidasber at takas dot lt</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Norwegian</td>
<td>Lars Erik Jordet</td>
<td>lejordet at gmail dot com</td>
<td>1.3.9</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<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.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Portuguese</td>
......@@ -210,7 +210,7 @@ when the translator was updated.
<td>Russian</td>
<td>Alexandr Chelpanov</td>
<td>cav at cryptopro dot ru</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Serbian</td>
......@@ -228,19 +228,19 @@ when the translator was updated.
<td>Slovene</td>
<td>Matja&#x017e; Ostrover&#x0161;nik</td>
<td>matjaz.ostroversnik at ztm dot si</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Spanish</td>
<td>Francisco Oltra Thennet</td>
<td>foltra at puc dot cl</td>
<td>1.3.8</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Swedish</td>
<td>Mikael Hallin</td>
<td>mikaelhallin at yahoo dot se</td>
<td>up-to-date</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Ukrainian</td>
......@@ -263,22 +263,22 @@ when the translator was updated.
\hline
\hline
Afrikaans & Johan Prinsloo & {\tt\tiny johan@zippysnoek.com} & up-to-date \\
Afrikaans & Johan Prinsloo & {\tt\tiny johan@zippysnoek.com} & 1.4.6 \\
\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.6 \\
\hline
Catalan & Maximiliano Pin & {\tt\tiny mcpin@emtesistemas.com} & up-to-date \\
Catalan & Maximiliano Pin & {\tt\tiny mcpin@emtesistemas.com} & 1.4.6 \\
~ & Albert Mora & {\tt\tiny amora@iua.upf.es} & ~ \\
\hline
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} & up-to-date \\
Chinese Traditional & Daniel YC Lin & {\tt\tiny daniel@twpda.com} & 1.4.6 \\
~ & 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.6 \\
\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.6 \\
\hline
Danish & Erik S\o{}e S\o{}rensen & {\tt\tiny eriksoe+doxygen@daimi.au.dk} & 1.3.9 \\
\hline
......@@ -288,55 +288,55 @@ 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.6 \\
\hline
German & Jens Seidel & {\tt\tiny jensseidel@users.sf.net} & up-to-date \\
German & Jens Seidel & {\tt\tiny jensseidel@users.sf.net} & 1.4.6 \\
\hline
Greek & Harry Kalogirou & {\tt\tiny harkal@rainbow.cs.unipi.gr} & 1.2.11 \\
\hline
Hungarian & \'{A}kos Kiss & {\tt\tiny akiss@users.sourceforge.net} & up-to-date \\
Hungarian & \'{A}kos Kiss & {\tt\tiny akiss@users.sourceforge.net} & 1.4.6 \\
~ & F\"{o}ldv\'{a}ri Gy\"{o}rgy & {\tt\tiny foldvari lost@cyberspace} & ~ \\
\hline
Indonesian & Hendy Irawan & {\tt\tiny ceefour@gauldong.net} & up-to-date \\
Indonesian & Hendy Irawan & {\tt\tiny ceefour@gauldong.net} & 1.4.6 \\
\hline
Italian & Alessandro Falappa & {\tt\tiny alessandro@falappa.net} & up-to-date \\
Italian & Alessandro Falappa & {\tt\tiny alessandro@falappa.net} & 1.4.6 \\
~ & Ahmed Aldo Faisal & {\tt\tiny aaf23@cam.ac.uk} & ~ \\
\hline
Japanese & Ryunosuke Satoh & {\tt\tiny sun594@hotmail.com} & up-to-date \\
Japanese & Ryunosuke Satoh & {\tt\tiny sun594@hotmail.com} & 1.4.6 \\
~ & Kenji Nagamatsu & {\tt\tiny naga@joyful.club.ne.jp} & ~ \\
~ & Iwasa Kazmi & {\tt\tiny iwasa@cosmo-system.jp} & ~ \\
\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.6 \\
~ & Richard Kim & {\tt\tiny ryk@dspwiz.com} & ~ \\
\hline
KoreanEn & see the Korean language & {\tt\tiny ~} & English based \\
\hline
Lithuanian & Tomas Simonaitis & {\tt\tiny haden@homelan.lt} & up-to-date \\
Lithuanian & Tomas Simonaitis & {\tt\tiny haden@homelan.lt} & 1.4.6 \\
~ & Mindaugas Radzius & {\tt\tiny mindaugasradzius@takas.lt} & ~ \\
~ & Aidas Berukstis & {\tt\tiny aidasber@takas.lt} & ~ \\
\hline
Norwegian & Lars Erik Jordet & {\tt\tiny lejordet@gmail.com} & 1.3.9 \\
Norwegian & Lars Erik Jordet & {\tt\tiny lejordet@gmail.com} & 1.4.6 \\
\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.6 \\
~ & 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.4.1 \\
\hline
Russian & Alexandr Chelpanov & {\tt\tiny cav@cryptopro.ru} & up-to-date \\
Russian & Alexandr Chelpanov & {\tt\tiny cav@cryptopro.ru} & 1.4.6 \\
\hline
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
Slovene & Matja\v{z} Ostrover\v{s}nik & {\tt\tiny matjaz.ostroversnik@ztm.si} & up-to-date \\
Slovene & Matja\v{z} Ostrover\v{s}nik & {\tt\tiny matjaz.ostroversnik@ztm.si} & 1.4.6 \\
\hline
Spanish & Francisco Oltra Thennet & {\tt\tiny foltra@puc.cl} & 1.3.8 \\
Spanish & Francisco Oltra Thennet & {\tt\tiny foltra@puc.cl} & 1.4.6 \\
\hline
Swedish & Mikael Hallin & {\tt\tiny mikaelhallin@yahoo.se} & up-to-date \\
Swedish & Mikael Hallin & {\tt\tiny mikaelhallin@yahoo.se} & 1.4.6 \\
\hline
Ukrainian & Olexij Tkatchenko & {\tt\tiny olexij.tkatchenko@parcs.de} & 1.4.1 \\
\hline
......
(1.4.6)
(1.4.7)
Doxygen supports the following 31 languages (sorted alphabetically):
......@@ -8,35 +8,17 @@ German, Greek, Hungarian, Indonesian, Italian, Japanese (+En), Korean
(+En), Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian,
Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
Of them, 20 translators are up-to-date, 11 translators are based on
Of them, 2 translators are up-to-date, 29 translators are based on
some adapter class, and 2 are English based.
----------------------------------------------------------------------
The following translator classes are up-to-date (sorted
alphabetically). This means that they derive from the Translator class
and they implement all 192 of the required methods. Anyway, there
and they implement all 194 of the required methods. Anyway, there
still may be some details listed even for them:
TranslatorAfrikaans
TranslatorBrazilian -- Remove the obsolete methods (never used).
TranslatorCatalan
TranslatorChinesetraditional -- Remove the obsolete methods (never used).
TranslatorCroatian
TranslatorCzech
TranslatorDutch -- Remove the obsolete methods (never used).
TranslatorEnglish -- Remove the obsolete methods (never used).
TranslatorFrench -- Remove the obsolete methods (never used).
TranslatorGerman
TranslatorHungarian
TranslatorIndonesian -- Remove the obsolete methods (never used).
TranslatorItalian
TranslatorJapanese -- Remove the obsolete methods (never used).
TranslatorKorean
TranslatorLithuanian
TranslatorPolish -- Remove the obsolete methods (never used).
TranslatorRussian
TranslatorSlovene
TranslatorSwedish
----------------------------------------------------------------------
The following translator classes need some maintenance (the most
......@@ -44,17 +26,35 @@ obsolete at the end). The other info shows the estimation of Doxygen
version when the class was last updated and number of methods that
must be implemented to become up-to-date:
TranslatorUkrainian 1.4.1 1 method to implement
TranslatorSerbian 1.4.1 1 method to implement
TranslatorRomanian 1.4.1 1 method to implement
TranslatorChinese 1.4.1 1 method to implement
TranslatorNorwegian 1.3.9 7 methods to implement
TranslatorDanish 1.3.9 7 methods to implement
TranslatorSpanish 1.3.8 8 methods to implement
TranslatorPortuguese 1.3.3 12 methods to implement
TranslatorSlovak 1.2.18 21 methods to implement
TranslatorGreek 1.2.11 26 methods to implement
TranslatorFinnish obsolete 95 methods to implement
TranslatorSwedish 1.4.6 2 methods to implement
TranslatorSpanish 1.4.6 1 method to implement
TranslatorSlovene 1.4.6 2 methods to implement
TranslatorRussian 1.4.6 2 methods to implement
TranslatorPolish 1.4.6 1 method to implement
TranslatorNorwegian 1.4.6 1 method to implement
TranslatorLithuanian 1.4.6 2 methods to implement
TranslatorKorean 1.4.6 2 methods to implement
TranslatorJapanese 1.4.6 1 method to implement
TranslatorItalian 1.4.6 1 method to implement
TranslatorIndonesian 1.4.6 1 method to implement
TranslatorHungarian 1.4.6 2 methods to implement
TranslatorGerman 1.4.6 2 methods to implement
TranslatorFrench 1.4.6 1 method to implement
TranslatorCzech 1.4.6 1 method to implement
TranslatorCroatian 1.4.6 2 methods to implement
TranslatorChinesetraditional 1.4.6 1 method to implement
TranslatorCatalan 1.4.6 2 methods to implement
TranslatorBrazilian 1.4.6 1 method to implement
TranslatorAfrikaans 1.4.6 2 methods to implement
TranslatorUkrainian 1.4.1 2 methods to implement
TranslatorSerbian 1.4.1 2 methods to implement
TranslatorRomanian 1.4.1 2 methods to implement
TranslatorChinese 1.4.1 3 methods to implement
TranslatorDanish 1.3.9 8 methods to implement
TranslatorPortuguese 1.3.3 13 methods to implement
TranslatorSlovak 1.2.18 22 methods to implement
TranslatorGreek 1.2.11 27 methods to implement
TranslatorFinnish obsolete 96 methods to implement
----------------------------------------------------------------------
The following translator classes derive directly from the
......@@ -70,11 +70,26 @@ Details for translators (classes sorted alphabetically):
TranslatorBrazilian (Translator)
TranslatorAfrikaans (TranslatorAdapter_1_4_6) 2 methods to implement
-------------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorBrazilian (TranslatorAdapter_1_4_6) 1 method to implement
-------------------
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
virtual QCString trHeaderFilesDescription()
......@@ -85,11 +100,21 @@ TranslatorBrazilian (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorChinese (TranslatorAdapter_1_4_1) 1 method to implement
TranslatorCatalan (TranslatorAdapter_1_4_6) 2 methods to implement
-----------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorChinese (TranslatorAdapter_1_4_1) 3 methods to implement
-----------------
Implements 191 of the required methods.
......@@ -97,12 +122,18 @@ TranslatorChinese (TranslatorAdapter_1_4_1) 1 method to implement
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorChinesetraditional (Translator)
TranslatorChinesetraditional (TranslatorAdapter_1_4_6) 1 method to implement
----------------------------
Implements 192 of the required methods.
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -114,14 +145,34 @@ TranslatorChinesetraditional (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorDanish (TranslatorAdapter_1_3_9) 7 methods to implement
TranslatorCroatian (TranslatorAdapter_1_4_6) 2 methods to implement
------------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorCzech (TranslatorAdapter_1_4_6) 1 method to implement
---------------
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trEnumerationValueDocumentation()
TranslatorDanish (TranslatorAdapter_1_3_9) 8 methods to implement
----------------
Implements 185 of the required methods.
Implements 186 of the required methods.
Missing methods (should be implemented):
......@@ -130,6 +181,7 @@ TranslatorDanish (TranslatorAdapter_1_3_9) 7 methods to implement
virtual QCString trDirDocumentation()
virtual QCString trDirectories()
virtual QCString trDirDescription()
virtual QCString trCallerGraph()
virtual QCString trDirReference(const char * dirName)
virtual QCString trDir(bool first_capital, bool singular)
......@@ -143,14 +195,13 @@ TranslatorDanish (TranslatorAdapter_1_3_9) 7 methods to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorDutch (Translator)
---------------
Implements 192 of the required methods.
Implements 194 of the required methods.
Obsolete methods (should be removed, never used):
......@@ -162,14 +213,13 @@ TranslatorDutch (Translator)
QCString trInterfaces()
QCString trHeaderFiles()
QCString trBugsAndLimitations()
QCString trEnumerationValueDocumentation()
QCString trNoDescriptionAvailable()
TranslatorEnglish (Translator)
-----------------
Implements 192 of the required methods.
Implements 194 of the required methods.
Obsolete methods (should be removed, never used):
......@@ -181,14 +231,13 @@ TranslatorEnglish (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorFinnish (TranslatorEnglish) 95 methods to implement
TranslatorFinnish (TranslatorEnglish) 96 methods to implement
-----------------
Implements 97 of the required methods.
Implements 98 of the required methods.
Missing methods (should be implemented):
......@@ -265,6 +314,7 @@ TranslatorFinnish (TranslatorEnglish) 95 methods to implement
virtual QCString latexLanguageSupportCommand()
virtual QCString trBugList()
virtual QCString trRTFGeneralIndex()
virtual QCString trCallerGraph()
virtual QCString trNamespace(bool first_capital, bool singular)
virtual QCString trTestList()
virtual QCString trPrecondition()
......@@ -297,14 +347,17 @@ TranslatorFinnish (TranslatorEnglish) 95 methods to implement
QCString trHeaderFiles()
QCString trAuthors()
QCString trBugsAndLimitations()
QCString trEnumerationValueDocumentation()
QCString trNoDescriptionAvailable()
TranslatorFrench (Translator)
TranslatorFrench (TranslatorAdapter_1_4_6) 1 method to implement
----------------
Implements 192 of the required methods.
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -316,14 +369,24 @@ TranslatorFrench (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorGreek (TranslatorAdapter_1_2_11) 26 methods to implement
TranslatorGerman (TranslatorAdapter_1_4_6) 2 methods to implement
----------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorGreek (TranslatorAdapter_1_2_11) 27 methods to implement
---------------
Implements 166 of the required methods.
Implements 167 of the required methods.
Missing methods (should be implemented):
......@@ -346,6 +409,7 @@ TranslatorGreek (TranslatorAdapter_1_2_11) 26 methods to implement
virtual QCString trPackageAttribs()
virtual QCString trSearchMatches()
virtual QCString trEvents()
virtual QCString trCallerGraph()
virtual QCString trReferences()
virtual QCString trSourceFile(QCString & filename)
virtual QCString trDirReference(const char * dirName)
......@@ -364,15 +428,29 @@ TranslatorGreek (TranslatorAdapter_1_2_11) 26 methods to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorIndonesian (Translator)
--------------------
TranslatorHungarian (TranslatorAdapter_1_4_6) 2 methods to implement
-------------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorIndonesian (TranslatorAdapter_1_4_6) 1 method to implement
--------------------
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
virtual QCString trHeaderFilesDescription()
......@@ -383,14 +461,27 @@ TranslatorIndonesian (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorJapanese (Translator)
TranslatorItalian (TranslatorAdapter_1_4_6) 1 method to implement
-----------------
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trEnumerationValueDocumentation()
TranslatorJapanese (TranslatorAdapter_1_4_6) 1 method to implement
------------------
Implements 192 of the required methods.
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -402,11 +493,10 @@ TranslatorJapanese (Translator)
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorJapaneseEn (TranslatorEnglish) 187 methods to implement
TranslatorJapaneseEn (TranslatorEnglish) 189 methods to implement
--------------------
Implements 5 of the required methods.
......@@ -420,7 +510,18 @@ TranslatorJapaneseEn (TranslatorEnglish) 187 methods to implement
virtual QCString latexLanguageSupportCommand()
TranslatorKoreanEn (TranslatorEnglish) 187 methods to implement
TranslatorKorean (TranslatorAdapter_1_4_6) 2 methods to implement
----------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorKoreanEn (TranslatorEnglish) 189 methods to implement
------------------
Implements 5 of the required methods.
......@@ -434,20 +535,25 @@ TranslatorKoreanEn (TranslatorEnglish) 187 methods to implement
virtual QCString latexLanguageSupportCommand()
TranslatorNorwegian (TranslatorAdapter_1_3_9) 7 methods to implement
TranslatorLithuanian (TranslatorAdapter_1_4_6) 2 methods to implement
--------------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorNorwegian (TranslatorAdapter_1_4_6) 1 method to implement
-------------------
Implements 185 of the required methods.
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trDirIndex()
virtual QCString trDirDocumentation()
virtual QCString trDirectories()
virtual QCString trDirDescription()
virtual QCString trDirReference(const char * dirName)
virtual QCString trDir(bool first_capital, bool singular)
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -459,14 +565,17 @@ TranslatorNorwegian (TranslatorAdapter_1_3_9) 7 methods to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorPolish (Translator)
TranslatorPolish (TranslatorAdapter_1_4_6) 1 method to implement
----------------
Implements 192 of the required methods.
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -478,14 +587,13 @@ TranslatorPolish (Translator)
virtual QCString trInterfaces()
QCString trHeaderFiles()
QCString trBugsAndLimitations()
QCString trEnumerationValueDocumentation()
QCString trNoDescriptionAvailable()
TranslatorPortuguese (TranslatorAdapter_1_3_3) 12 methods to implement
TranslatorPortuguese (TranslatorAdapter_1_3_3) 13 methods to implement
--------------------
Implements 180 of the required methods.
Implements 181 of the required methods.
Missing methods (should be implemented):
......@@ -497,6 +605,7 @@ TranslatorPortuguese (TranslatorAdapter_1_3_3) 12 methods to implement
virtual QCString trDirDescription()
virtual QCString trSearchResults(int numDocuments)
virtual QCString trSearchMatches()
virtual QCString trCallerGraph()
virtual QCString trSourceFile(QCString & filename)
virtual QCString trDirReference(const char * dirName)
virtual QCString trDir(bool first_capital, bool singular)
......@@ -512,18 +621,18 @@ TranslatorPortuguese (TranslatorAdapter_1_3_3) 12 methods to implement
virtual QCString trInterfaces()
QCString trHeaderFiles()
QCString trBugsAndLimitations()
QCString trEnumerationValueDocumentation()
QCString trNoDescriptionAvailable()
TranslatorRomanian (TranslatorAdapter_1_4_1) 1 method to implement
TranslatorRomanian (TranslatorAdapter_1_4_1) 2 methods to implement
------------------
Implements 191 of the required methods.
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -535,18 +644,29 @@ TranslatorRomanian (TranslatorAdapter_1_4_1) 1 method to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorSerbian (TranslatorAdapter_1_4_1) 1 method to implement
TranslatorRussian (TranslatorAdapter_1_4_6) 2 methods to implement
-----------------
Implements 191 of the required methods.
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorSerbian (TranslatorAdapter_1_4_1) 2 methods to implement
-----------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -558,14 +678,13 @@ TranslatorSerbian (TranslatorAdapter_1_4_1) 1 method to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorSlovak (TranslatorAdapter_1_2_18) 21 methods to implement
TranslatorSlovak (TranslatorAdapter_1_2_18) 22 methods to implement
----------------
Implements 171 of the required methods.
Implements 172 of the required methods.
Missing methods (should be implemented):
......@@ -585,6 +704,7 @@ TranslatorSlovak (TranslatorAdapter_1_2_18) 21 methods to implement
virtual QCString trPackageAttribs()
virtual QCString trSearchMatches()
virtual QCString trEvents()
virtual QCString trCallerGraph()
virtual QCString trSourceFile(QCString & filename)
virtual QCString trDirReference(const char * dirName)
virtual QCString trDir(bool first_capital, bool singular)
......@@ -601,25 +721,28 @@ TranslatorSlovak (TranslatorAdapter_1_2_18) 21 methods to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorSpanish (TranslatorAdapter_1_3_8) 8 methods to implement
TranslatorSlovene (TranslatorAdapter_1_4_6) 2 methods to implement
-----------------
Implements 184 of the required methods.
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trDirIndex()
virtual QCString trDirDocumentation()
virtual QCString trDirectories()
virtual QCString trDirDescription()
virtual QCString trSourceFile(QCString & filename)
virtual QCString trDirReference(const char * dirName)
virtual QCString trDir(bool first_capital, bool singular)
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorSpanish (TranslatorAdapter_1_4_6) 1 method to implement
-----------------
Implements 193 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -631,18 +754,29 @@ TranslatorSpanish (TranslatorAdapter_1_3_8) 8 methods to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
TranslatorUkrainian (TranslatorAdapter_1_4_1) 1 method to implement
TranslatorSwedish (TranslatorAdapter_1_4_6) 2 methods to implement
-----------------
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trCallerGraph()
virtual QCString trEnumerationValueDocumentation()
TranslatorUkrainian (TranslatorAdapter_1_4_1) 2 methods to implement
-------------------
Implements 191 of the required methods.
Implements 192 of the required methods.
Missing methods (should be implemented):
virtual QCString trOverloadText()
virtual QCString trCallerGraph()
Obsolete methods (should be removed, never used):
......@@ -654,5 +788,4 @@ TranslatorUkrainian (TranslatorAdapter_1_4_1) 1 method to implement
virtual QCString trInterfaces()
virtual QCString trHeaderFiles()
virtual QCString trBugsAndLimitations()
virtual QCString trEnumerationValueDocumentation()
virtual QCString trNoDescriptionAvailable()
\ No newline at end of file
......@@ -2055,22 +2055,27 @@ bool ClassDef::isLinkable() const
/*! the class is visible in a class diagram, or class hierarchy */
bool ClassDef::isVisibleInHierarchy()
{
static bool allExternals = Config_getBool("ALLEXTERNALS");
static bool extractPrivate = Config_getBool("EXTRACT_PRIVATE");
static bool hideUndocClasses = Config_getBool("HIDE_UNDOC_CLASSES");
static bool extractStatic = Config_getBool("EXTRACT_STATIC");
return // show all classes or a subclass is visible
(Config_getBool("ALLEXTERNALS") || hasNonReferenceSuperClass()) &&
(allExternals || hasNonReferenceSuperClass()) &&
// and not an annonymous compound
name().find('@')==-1 &&
// not an artifically introduced class
!m_artificial &&
// and not privately inherited
(m_prot!=Private || Config_getBool("EXTRACT_PRIVATE")) &&
(m_prot!=Private || extractPrivate) &&
// documented or shown anyway or documentation is external
(hasDocumentation() ||
!Config_getBool("HIDE_UNDOC_CLASSES") ||
!hideUndocClasses ||
(m_templateMaster && m_templateMaster->hasDocumentation()) ||
isReference()
) &&
// is not part of an unnamed namespace or shown anyway
(!m_isStatic || Config_getBool("EXTRACT_STATIC"));
(!m_isStatic || extractStatic);
}
bool ClassDef::hasDocumentation() const
......
......@@ -3152,7 +3152,7 @@ void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
extern "C" { // some bogus code to keep the compiler happy
void codeYYdummy() { yy_flex_realloc(0,0); }
}
#else
#elif YY_FLEX_SUBMINOR_VERSION<33
#error "You seem to be using a version of flex newer than 2.5.4. These are currently incompatible with 2.5.4, and do NOT work with doxygen! Please use version 2.5.4 or expect things to be parsed wrongly! A bug report has been submitted (#732132)."
#endif
......@@ -493,8 +493,9 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
BEGIN(g_condCtx);
}
<CondLine>[ \t]*
<CComment,ReadLine>[\\@]"cond"[ \t]*\n |
<CComment,ReadLine>[\\@]"cond"[ \t\r]*\n |
<CondLine>. { // forgot section id?
if (YY_START!=CondLine) g_condCtx=YY_START;
bool oldSkip=g_skip;
startCondSection(" "); // fake section id causing the section to be hidden unconditionally
if (g_condCtx==CComment && !oldSkip && g_skip)
......
......@@ -42,6 +42,8 @@ class ParserInterface;
* @param[in] isJavaDocStyle TRUE iff this comment block is in "JavaDoc" style.
* This means that it starts as a brief description until the end of
* the sentences is found and then proceeds as a detailed description.
* @param[in] isInbody TRUE iff this comment block is located in the body of
* a function.
* @param[in,out] prot The protection level in which this comment block was
* found. Commands in the comment block may override this.
* @param[in,out] position The character position within \a comment where the
......@@ -63,6 +65,7 @@ bool parseCommentBlock(ParserInterface *parser,
int lineNr,
bool isBrief,
bool isJavaDocStyle,
bool isInbody,
Protection &prot,
int &position,
bool &newEntryNeeded
......
......@@ -261,7 +261,8 @@ enum OutputContext
{
OutputDoc,
OutputBrief,
OutputXRef
OutputXRef,
OutputInbody
};
enum GuardType
......@@ -299,7 +300,7 @@ static QCString inputString; // input string
static int inputPosition; // read pointer
static QCString yyFileName; // file name that is read from
static int yyLineNr; // line number in the input
//static bool inBody; // was the comment found inside the body of a function?
static bool inBody; // was the comment found inside the body of a function?
static OutputContext inContext; // are we inside the brief, details or xref part
static bool briefEndsAtDot; // does the brief description stop at a dot?
static QCString formulaText; // Running text of a formula
......@@ -479,7 +480,14 @@ static void addXRefItem(const char *listName,const char *itemTitle,
docEntry->addSpecialListItem(listName,itemId);
QCString cmdString;
cmdString.sprintf("\\xrefitem %s %d\n",listName,itemId);
if (inBody)
{
docEntry->inbodyDocs += cmdString;
}
else
{
docEntry->doc += cmdString;
}
SectionInfo *si=new SectionInfo(listName,anchorLabel,
sectionTitle,SectionInfo::Anchor);
Doxygen::sectionDict.insert(anchorLabel,si);
......@@ -605,6 +613,7 @@ static inline void setOutput(OutputContext ctx)
}
inContext = ctx;
if (inContext!=OutputXRef && inBody) inContext=OutputInbody;
switch(inContext)
{
case OutputDoc:
......@@ -629,6 +638,9 @@ static inline void setOutput(OutputContext ctx)
// first item found, so can't append to previous
//xrefAppendFlag = FALSE;
break;
case OutputInbody:
pOutputString = &current->inbodyDocs;
break;
}
}
......@@ -780,7 +792,7 @@ MAILADR [a-z_A-Z0-9.+\-]+"@"[a-z_A-Z0-9\-]+("."[a-z_A-Z0-9\-]+)+[a-z_A-Z0-9\-]
<Comment>("\\"[a-z_A-Z]+)+"\\" { // directory (or chain of commands!)
addOutput(yytext);
}
<Comment>{XREFCMD}/[^a-z_A-Z]* { // command that can end a brief description
<Comment>{XREFCMD}/[^a-z_A-Z]* { // xref command
if (inContext!=OutputXRef)
{
briefEndsAtDot=FALSE;
......@@ -826,7 +838,12 @@ MAILADR [a-z_A-Z0-9.+\-]+"@"[a-z_A-Z0-9\-]+("."[a-z_A-Z0-9\-]+)+[a-z_A-Z0-9\-]
// yuk, this is probably not very portable across lex implementations,
// but we need to know the position in the input buffer where this
// rule matched.
// for flex 2.5.33+ we should use YY_CURRENT_BUFFER_LVALUE
#if YY_FLEX_MINOR_VERSION>=5 && YY_FLEX_SUBMINOR_VERSION>=33
inputPosition=prevPosition + yy_bp - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
#else
inputPosition=prevPosition + yy_bp - yy_current_buffer->yy_ch_buf;
#endif
yyterminate();
}
}
......@@ -2177,6 +2194,7 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
/* in */ int lineNr,
/* in */ bool isBrief,
/* in */ bool isJavaDocStyle,
/* in */ bool isInbody,
/* in,out */ Protection &prot,
/* in,out */ int &position,
/* out */ bool &newEntryNeeded
......@@ -2202,10 +2220,15 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
xrefAppendFlag = FALSE;
insidePre = FALSE;
parseMore = FALSE;
inBody = isInbody;
outputXRef.resize(0);
setOutput( isBrief || isJavaDocStyle ? OutputBrief : OutputDoc );
briefEndsAtDot = isJavaDocStyle;
if (!current->inbodyDocs.isEmpty() && isInbody) // separate in body fragments
{
current->inbodyDocs+="\n\n";
}
Debug::print(Debug::CommentScan,0,"-----------\nCommentScanner: %s:%d\n"
"input=[%s]\n",fileName.data(),lineNr,comment.data()
......
......@@ -311,6 +311,7 @@ static int yyread(char *buf,int max_size)
if (includeStack.isEmpty())
{
int c=0;
if (inputString==0) return c;
while( c < max_size && inputString[inputPosition] )
{
*buf = inputString[inputPosition++] ;
......
......@@ -325,7 +325,7 @@ OPMASK ({BLANK}*{OPNORM}{FUNCARG}?)|({OPCAST}{FUNCARG})
LNKWORD1 ("::"|"#")?{SCOPEMASK}
CVSPEC {BLANK}*("const"|"volatile")
LNKWORD2 {SCOPEPRE}*"operator"{OPMASK}
LNKWORD3 [0-9a-z_A-Z]+("."[0-9a-z_A-Z]+)+
LNKWORD3 ([0-9a-z_A-Z\-]+("/"|"\\"))*[0-9a-z_A-Z\-]+("."[0-9a-z_A-Z]+)+
CHARWORD [^ \t\n\r\\@<>()\[\]:;\?{}&%$#,.]
CHARWORDQ [^ \t\n\r\\@<>()\[\]:;\?{}&%$#,."]
WORD1 "%"?{CHARWORD}+|"{"|"}"|("\""[^"\n]*"\"")
......
......@@ -120,7 +120,7 @@ SearchIndex * Doxygen::searchIndex=0;
SDict<DefinitionList> *Doxygen::symbolMap;
bool Doxygen::outputToWizard=FALSE;
QDict<int> * Doxygen::htmlDirMap = 0;
QCache<LookupInfo> Doxygen::lookupCache(20000,20000);
QCache<LookupInfo> Doxygen::lookupCache(50000,50000);
DirSDict Doxygen::directories(17);
SDict<DirRelation> Doxygen::dirRelations(257);
ParserManager *Doxygen::parserManager = 0;
......@@ -4889,7 +4889,6 @@ static void findMember(Entry *root,
else
{
scopeName = mergeScopes(root->parent->name,scopeName);
printf("joinedName=%s\n",scopeName.data());
}
}
else // see if we can prefix a namespace or class that is used from the file
......@@ -6131,7 +6130,7 @@ static void findEnumDocumentation(Entry *root)
md->setMemberGroupId(root->mGrpId);
GroupDef *gd=md->getGroupDef();
if (gd==0 &&root->groups->first()!=0) // member not grouped but out-of-line documentation is
if (gd==0 && root->groups->first()!=0) // member not grouped but out-of-line documentation is
{
addMemberToGroups(root,md);
}
......@@ -7894,6 +7893,7 @@ static int readFileOrDirectory(const char *s,
{
//printf("killDict=%p count=%d\n",killDict,killDict->count());
// strip trailing slashes
if (s==0) return 0;
QCString fs = s;
char lc = fs.at(fs.length()-1);
if (lc=='/' || lc=='\\') fs = fs.left(fs.length()-1);
......
......@@ -71,6 +71,7 @@ GroupDef::GroupDef(const char *df,int dl,const char *na,const char *t,
docProtoMembers.setInGroup(TRUE);
docTypedefMembers.setInGroup(TRUE);
docEnumMembers.setInGroup(TRUE);
docEnumValMembers.setInGroup(TRUE);
docFuncMembers.setInGroup(TRUE);
docVarMembers.setInGroup(TRUE);
......@@ -302,6 +303,18 @@ bool GroupDef::insertMember(MemberDef *md,bool docOnly)
docEnumMembers.append(md);
break;
case MemberDef::EnumValue:
if (!docOnly)
{
//printf("enum value %s!\n",md->name().data());
if (Config_getBool("SORT_BRIEF_DOCS"))
decEnumValMembers.inSort(md);
else
decEnumValMembers.append(md);
}
if (Config_getBool("SORT_MEMBER_DOCS"))
docEnumValMembers.inSort(md);
else
docEnumValMembers.append(md);
break;
case MemberDef::Prototype:
if (!docOnly)
......@@ -381,6 +394,8 @@ void GroupDef::removeMember(MemberDef *md)
docEnumMembers.remove(md);
break;
case MemberDef::EnumValue:
decEnumValMembers.remove(md);
docEnumValMembers.remove(md);
break;
case MemberDef::Prototype:
decProtoMembers.remove(md);
......@@ -654,6 +669,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
decProtoMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trFuncProtos(),0);
decTypedefMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trTypedefs(),0);
decEnumMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trEnumerations(),0);
decEnumValMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trEnumerationValues(),0,TRUE);
decFuncMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trFunctions(),0);
decVarMembers.writeDeclarations(ol,0,0,0,this,theTranslator->trVariables(),0);
}
......@@ -729,6 +745,9 @@ void GroupDef::writeMemberDocumentation(OutputList &ol)
docEnumMembers.writeDocumentation(ol,name(),this,
theTranslator->trEnumerationTypeDocumentation());
docEnumValMembers.writeDocumentation(ol,name(),this,
theTranslator->trEnumerationValueDocumentation(),TRUE);
docFuncMembers.writeDocumentation(ol,name(),this,
theTranslator->trFunctionDocumentation());
......
......@@ -106,6 +106,7 @@ class GroupDef : public Definition
MemberList docProtoMembers;
MemberList docTypedefMembers;
MemberList docEnumMembers;
MemberList docEnumValMembers;
MemberList docFuncMembers;
MemberList docVarMembers;
......
......@@ -624,27 +624,19 @@ static int countClassesInTreeList(const ClassSDict &cl)
if (!hasVisibleRoot(cd->baseClasses())) // filter on root classes
{
if (cd->isVisibleInHierarchy()) // should it be visible
{
if (cd->subClasses()->count()>0) // should have sub classes
{
count++;
}
}
}
}
return count;
}
int countClassHierarchy()
{
#if 0
// TODO: let this function return the real number of items in the hierarchy.
initClassHierarchy(&Doxygen::classSDict);
int count=0;
ClassSDict::Iterator cli(Doxygen::classSDict);
for ( ; cli.current(); ++cli)
{
if (cli.current()->subClasses()->count()>0) count++;
}
return count;
#endif
int count=0;
initClassHierarchy(&Doxygen::classSDict);
initClassHierarchy(&Doxygen::hiddenClasses);
......@@ -657,7 +649,6 @@ int countClassHierarchy()
void writeHierarchicalIndex(OutputList &ol)
{
//printf("writeHierarchicalIndex: %d classes\n",hierarchyClasses);
if (hierarchyClasses==0) return;
ol.pushGeneratorState();
ol.disable(OutputGenerator::Man);
......
......@@ -693,9 +693,20 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *,NamespaceDef *,
if (isStatic()) ol.docify("+ "); else ol.docify("- ");
}
if (!onlyText) // write link
{
if (mtype==EnumValue && getGroupDef()==0 && // enum value is not grouped
getEnumScope() && getEnumScope()->getGroupDef()) // but its container is
{
GroupDef *enumValGroup = getEnumScope()->getGroupDef();
ol.writeObjectLink(enumValGroup->getReference(),
enumValGroup->getOutputFileBase(),
anchor(),n);
}
else
{
ol.writeObjectLink(getReference(),getOutputFileBase(),anchor(),n);
}
}
else // write only text
{
ol.startBold();
......@@ -1029,6 +1040,10 @@ void MemberDef::writeDeclaration(OutputList &ol,
}
}
}
else if (ltype=="@") // rename type from enum values
{
ltype="";
}
else
{
if (isObjCMethod())
......@@ -1291,7 +1306,8 @@ bool MemberDef::isDetailedSectionVisible(bool inGroup,bool inFile) const
void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
const char *scName,
Definition *container,
bool inGroup
bool inGroup,
bool showEnumValues
)
{
// if this member is in a group find the real scope name.
......@@ -1301,7 +1317,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
//printf("MemberDef::writeDocumentation(): name=`%s' hasDocs=`%d' containerType=%d inGroup=%d\n",
// name().data(),hasDocs,container->definitionType(),inGroup);
if ( !hasDocs ) return;
if (isEnumValue()) return;
if (isEnumValue() && !showEnumValues) return;
QCString scopeName = scName;
QCString memAnchor = anchor();
......@@ -1357,6 +1373,13 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
ldef.prepend("enum ");
}
}
else if (isEnumValue())
{
if (ldef.at(0)=='@')
{
ldef=ldef.mid(2);
}
}
int i=0,l;
static QRegExp r("@[0-9]+");
......
......@@ -194,7 +194,7 @@ class MemberDef : public Definition
bool inGroup);
void writeDocumentation(MemberList *ml,OutputList &ol,
const char *scopeName,Definition *container,
bool inGroup);
bool inGroup,bool showEnumValues=FALSE);
void warnIfUndocumented();
// relation to other members
......
......@@ -50,7 +50,7 @@ int MemberList::compareItems(GCI item1, GCI item2)
/*! Count the number of members in this list that are visible in
* the declaration part of a compound's documentation page.
*/
void MemberList::countDecMembers()
void MemberList::countDecMembers(bool countEnumValues)
{
if (m_numDecMembers!=-1) return;
......@@ -77,7 +77,8 @@ void MemberList::countDecMembers()
m_funcCnt++,m_numDecMembers++;
break;
case MemberDef::Enumeration: m_enumCnt++,m_numDecMembers++; break;
case MemberDef::EnumValue: //m_enumValCnt++,m_numDecMembers++;
case MemberDef::EnumValue: if (countEnumValues)
m_enumValCnt++,m_numDecMembers++;
break;
case MemberDef::Typedef: m_typeCnt++,m_numDecMembers++; break;
case MemberDef::Prototype: m_protoCnt++,m_numDecMembers++; break;
......@@ -117,7 +118,7 @@ void MemberList::countDecMembers()
//printf("MemberList::countDecMembers()=%d\n",m_numDecMembers);
}
void MemberList::countDocMembers()
void MemberList::countDocMembers(bool countEnumValues)
{
if (m_numDocMembers!=-1) return; // used cached value
m_numDocMembers=0;
......@@ -128,7 +129,8 @@ void MemberList::countDocMembers()
if (md->isDetailedSectionVisible(m_inGroup,m_inFile))
{
// do not count enum values, since they do not produce entries of their own
if (md->memberType()!=MemberDef::EnumValue) m_numDocMembers++;
if (countEnumValues || md->memberType()!=MemberDef::EnumValue)
m_numDocMembers++;
}
}
if (memberGroupList)
......@@ -181,9 +183,10 @@ void MemberList::writePlainDeclarations(OutputList &ol,
MemberListIterator mli(*this);
for ( ; (md=mli.current()); ++mli )
{
//printf(">>> Member `%s' type=%d visible=%d\n",
// md->name().data(),md->memberType(),md->isBriefSectionVisible());
if (md->isBriefSectionVisible())
{
//printf(">>> Member `%s' type=%d\n",md->name().data(),md->memberType());
switch(md->memberType())
{
case MemberDef::Define: // fall through
......@@ -264,6 +267,10 @@ void MemberList::writePlainDeclarations(OutputList &ol,
break;
}
case MemberDef::EnumValue:
{
if (first) ol.startMemberList(),first=FALSE;
md->writeDeclaration(ol,cd,nd,fd,gd,m_inGroup);
}
break;
}
}
......@@ -298,11 +305,11 @@ void MemberList::writePlainDeclarations(OutputList &ol,
void MemberList::writeDeclarations(OutputList &ol,
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
const char *title,const char *subtitle
const char *title,const char *subtitle, bool showEnumValues
/*, bool inGroup,bool countSubGroups*/)
{
//printf("----- writeDeclaration() ----\n");
countDecMembers(); // count member not in group
countDecMembers(showEnumValues); // count member not in group
if (numDecMembers()==0) return;
//printf("MemberList::writeDeclaration(title=`%s',subtitle=`%s')=%d\n",title,subtitle,numDecMembers());
if (title)
......@@ -355,11 +362,11 @@ void MemberList::writeDeclarations(OutputList &ol,
void MemberList::writeDocumentation(OutputList &ol,
const char *scopeName, Definition *container,
const char *title)
const char *title,bool showEnumValues)
{
//printf("MemberList::writeDocumentation()\n");
countDocMembers();
countDocMembers(showEnumValues);
if (numDocMembers()==0) return;
if (title)
......@@ -375,7 +382,7 @@ void MemberList::writeDocumentation(OutputList &ol,
MemberDef *md;
for ( ; (md=mli.current()) ; ++mli)
{
md->writeDocumentation(this,ol,scopeName,container,m_inGroup);
md->writeDocumentation(this,ol,scopeName,container,m_inGroup,showEnumValues);
}
if (memberGroupList)
{
......
......@@ -45,15 +45,15 @@ class MemberList : public QList<MemberDef>
int friendCount() const { ASSERT(m_numDecMembers!=-1); return m_friendCnt; }
int numDecMembers() const { ASSERT(m_numDecMembers!=-1); return m_numDecMembers; }
int numDocMembers() const { ASSERT(m_numDocMembers!=-1); return m_numDocMembers; }
void countDecMembers(/*bool inGroup,bool countSubGroups,bool sectionPerType*/);
void countDocMembers();
void countDecMembers(bool countEnumValues=FALSE);
void countDocMembers(bool countEnumValues=FALSE);
void writePlainDeclarations(OutputList &ol,
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd);
void writeDeclarations(OutputList &ol,
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
const char *title,const char *subtitle);
const char *title,const char *subtitle,bool showEnumValues=FALSE);
void writeDocumentation(OutputList &ol,const char *scopeName,
Definition *container,const char *title);
Definition *container,const char *title,bool showEnumValues=FALSE);
void writeDocumentationPage(OutputList &ol,
const char *scopeName, Definition *container);
void addMemberGroup(MemberGroup *mg);
......
......@@ -1872,7 +1872,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
outputArray(yytext,yyleng);
BEGIN(g_condCtx);
}
<SkipCComment,SkipCPPComment>[\\@]"cond"[ \t]+\n |
<SkipCComment,SkipCPPComment>[\\@]"cond"[ \t\r]*\n |
<CondLine>. {
outputArray(yytext,yyleng);
startCondSection(" ");
......@@ -1943,7 +1943,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
<SkipCPPComment>"//" {
outputChar('/');outputChar('/');
}
<SkipCPPComment>[^\x06\n]+ {
<SkipCPPComment>[^\x06\@\\\n]+ {
outputArray(yytext,yyleng);
}
<SkipCPPComment>. {
......
......@@ -1431,7 +1431,7 @@ void parsePythonCode(CodeOutputInterface &od,const char *className,
extern "C" { // some bogus code to keep the compiler happy
void pycodeYYdummy() { yy_flex_realloc(0,0); }
}
#else
#elif YY_FLEX_SUBMINOR_VERSION<33
#error "You seem to be using a version of flex newer than 2.5.4. These are currently incompatible with 2.5.4, and do NOT work with doxygen! Please use version 2.5.4 or expect things to be parsed wrongly! A bug report has been submitted (#732132)."
#endif
......@@ -308,6 +308,7 @@ static void handleCommentBlock(const QCString &doc,bool brief)
brief ? current->briefLine : current->docLine, // line of block start
docBlockInBody ? FALSE : brief,
docBlockJavaStyle, // javadoc style
docBlockInBody,
protection,
position,
needsEntry)
......
......@@ -2,7 +2,7 @@
*
*
*
* Copyright (C) 1997-2006 by Dimitri van Heesch.
* Copyright (C) 1997-2005 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......@@ -2569,7 +2569,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
// see if the compound does not have a name or is inside another
// annonymous compound. If so we insert a
// special `annonymous' variable.
Entry *p=current_root;
//Entry *p=current_root;
Entry *p=current;
while (p)
{
// only look for class scopes, not namespace scopes
......@@ -2586,7 +2587,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
break;
}
}
p=p->parent;
//p=p->parent;
if (p==current) p=current_root; else p=p->parent;
}
}
//printf("msName=%s current->name=%s\n",msName.data(),current->name.data());
......@@ -3416,6 +3418,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
else
{
#if 0
if (!Config_getBool("HIDE_IN_BODY_DOCS") &&
!current->doc.isEmpty())
{
......@@ -3430,6 +3433,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
previous->inbodyDocs += current->doc;
current->doc.resize(0);
}
#endif
if (current->sli) // copy special list items
{
QListIterator<ListItemInfo> li(*current->sli);
......@@ -3880,7 +3884,16 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
<Specialization>{BN}+ { lineCount(); *specName +=' '; }
<Specialization>"<<" { *specName += yytext; }
<Specialization>">>" { *specName += yytext; }
<Specialization>">>" {
if (insideCS) // for C# >> ends a nested template
{
REJECT;
}
else // for C++ >> is a bitshift operator and > > would end a nested template
{
*specName += yytext;
}
}
<Specialization>"typename"{BN}+ { lineCount(); }
<Specialization>"(" { *specName += *yytext; roundCount++; }
<Specialization>")" { *specName += *yytext; roundCount--; }
......@@ -3977,7 +3990,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
insideCode=FALSE;
current->program += yytext ;
}
<Comment>[^ \.\n\/\*]+ { current->program += yytext ; }
<Comment>[^ \.\t\r\n\/\*]+ { current->program += yytext ; }
<Comment>"*/" { current->program += yytext ;
if (!insideCode) BEGIN( lastContext ) ;
}
......@@ -4405,6 +4418,7 @@ static void handleCommentBlock(const QCString &doc,bool brief)
int position=0;
bool needsEntry=FALSE;
if (docBlockInBody && hideInBodyDocs) return;
#if 0
if (docBlockInBody)
{
if (previous==0)
......@@ -4417,6 +4431,7 @@ static void handleCommentBlock(const QCString &doc,bool brief)
previous->doc=previous->doc.stripWhiteSpace()+"\n\n";
}
}
#endif
//printf("parseCommentBlock [%s]\n",doc.data());
while (parseCommentBlock(
g_thisParser,
......@@ -4426,6 +4441,7 @@ static void handleCommentBlock(const QCString &doc,bool brief)
brief ? current->briefLine : current->docLine, // line of block start
docBlockInBody ? FALSE : brief,
docBlockInBody ? FALSE : docBlockJavaStyle,
docBlockInBody,
protection,
position,
needsEntry
......@@ -4440,7 +4456,9 @@ static void handleCommentBlock(const QCString &doc,bool brief)
newEntry();
}
#if 0
exit:
#endif
if (docBlockTerm)
{
unput(docBlockTerm);
......@@ -4479,6 +4497,7 @@ static void handleParametersCommentBlocks()
current->docLine, // line of block start
FALSE,
FALSE,
FALSE,
protection,
position,
needsEntry
......
......@@ -135,7 +135,6 @@ class Translator
virtual QCString trFunctionPrototypeDocumentation() = 0;
virtual QCString trTypedefDocumentation() = 0;
virtual QCString trEnumerationTypeDocumentation() = 0;
//virtual QCString trEnumerationValueDocumentation() = 0;
virtual QCString trFunctionDocumentation() = 0;
virtual QCString trVariableDocumentation() = 0;
virtual QCString trCompounds() = 0;
......@@ -446,6 +445,7 @@ class Translator
//////////////////////////////////////////////////////////////////////////
virtual QCString trCallerGraph() = 0;
virtual QCString trEnumerationValueDocumentation() = 0;
};
......
......@@ -51,6 +51,10 @@ class TranslatorAdapter_1_4_6 : public TranslatorAdapterBase
{
return english.trCallerGraph();
}
virtual QCString trEnumerationValueDocumentation()
{
return english.trEnumerationValueDocumentation();
}
};
class TranslatorAdapter_1_4_1 : public TranslatorAdapter_1_4_6
......
......@@ -469,7 +469,7 @@ class TranslatorBrazilian : public TranslatorAdapter_1_4_6
* documentation blocks for defines
*/
virtual QCString trDefineDocumentation()
{ return "Deinições e macros"; }
{ return "Definições e macros"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
......
......@@ -65,6 +65,9 @@
// 2004/09/14 - The new methods "since 1.3.9" implemented.
// 2005/02/11 - The "never used" methods removed.
// 2005/03/08 - Update for "new since 1.4.1" (trOverloadText())
// 2006/05/10 - Update for "new since 1.4.6" -- trCallerGraph(),
// modified trCallGraph() to make the meaning unambiguous
// and clear in the Czech language.
// Todo
// ----
......@@ -1488,7 +1491,7 @@ class TranslatorCzech : public TranslatorAdapter_1_4_6
/*! Put in front of the call graph for a function. */
virtual QCString trCallGraph()
{
return decode("Graf volání pro tuto funkci:");
return decode("Tato funkce volá...");
}
//////////////////////////////////////////////////////////////////////////
......@@ -1620,6 +1623,17 @@ class TranslatorCzech : public TranslatorAdapter_1_4_6
"která má usnadnit používání. Od výše uvedené metody se liší "
"pouze jinak zadávanými argumenty.");
}
//////////////////////////////////////////////////////////////////////////
// new since 1.4.6
//////////////////////////////////////////////////////////////////////////
virtual QCString trCallerGraph()
{
return decode("Tuto funkci volají...");
}
};
#endif // TRANSLATOR_CZ_H
......@@ -501,12 +501,6 @@ class TranslatorEnglish : public Translator
virtual QCString trEnumerationTypeDocumentation()
{ return "Enumeration Type Documentation"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
virtual QCString trEnumerationValueDocumentation()
{ return "Enumerator Documentation"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
......@@ -1624,11 +1618,19 @@ class TranslatorEnglish : public Translator
// new since 1.4.6
//////////////////////////////////////////////////////////////////////////
/*! This is used to introduce a caller (or called-by) graph */
virtual QCString trCallerGraph()
{
return "Here is the caller graph for this function:";
}
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
virtual QCString trEnumerationValueDocumentation()
{ return "Enumerator Documentation"; }
};
#endif
......@@ -20,12 +20,13 @@
* Some notes:
* - It's posible that some sentences haven't got meaning because
* some words haven't got translate in spanish.
* Updated from 1.3.8 to 1.4.6 by Guillermo Ballester Valor (May-05-2006)
*/
#ifndef TRANSLATOR_ES_H
#define TRANSLATOR_ES_H
class TranslatorSpanish : public TranslatorAdapter_1_3_8
class TranslatorSpanish : public TranslatorAdapter_1_4_6
{
public:
virtual QCString idLanguage()
......@@ -1376,6 +1377,76 @@ class TranslatorSpanish : public TranslatorAdapter_1_3_8
return "Coincidencias:";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3.8
//////////////////////////////////////////////////////////////////////////
/*! This is used in HTML as the title of page with source code for file filename
*/
virtual QCString trSourceFile(QCString& filename)
{
return "Fichero Fuente " + filename;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3.9
//////////////////////////////////////////////////////////////////////////
/*! This is used as the name of the chapter containing the directory
* hierarchy.
*/
virtual QCString trDirIndex()
{ return "Jerarquía de Directorio"; }
/*! This is used as the name of the chapter containing the documentation
* of the directories.
*/
virtual QCString trDirDocumentation()
{ return "Documentación de Directorio"; }
/*! This is used as the title of the directory index and also in the
* Quick links of an HTML page, to link to the directory hierarchy.
*/
virtual QCString trDirectories()
{ return "Directorios"; }
/*! This returns a sentences that introduces the directory hierarchy.
* and the fact that it is sorted alphabetically per level
*/
virtual QCString trDirDescription()
{ return "La jeraquía de este directorio está ordenada casi, "
"pero no completamente, de forma alfabética:";
}
/*! This returns the title of a directory page. The name of the
* directory is passed via \a dirName.
*/
virtual QCString trDirReference(const char *dirName)
{ QCString result="Referencia del Directorio "; result+=dirName; return result; }
/*! This returns the word directory with or without starting capital
* (\a first_capital) and in sigular or plural form (\a singular).
*/
virtual QCString trDir(bool first_capital, bool singular)
{
QCString result((first_capital ? "Directori" : "directori"));
if (singular) result+="o"; else result+="os";
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 "Esta es una función miembro sobrecargada que se "
"suministra por conveniencia. Difiere de la anterior "
"función solamente en los argumentos que acepta.";
}
};
......
......@@ -19,6 +19,8 @@
*
* Revision history
*
* 2006/05: translated new items used since version 1.4.6
* corrected typo in trPackageMembers method
* 2005/03: translated new items used since version 1.4.1
* removed unused methods listed in Petr Prikryl February 28 translator report
* 2004/09: translated new items used since version 1.3.9
......@@ -1362,7 +1364,7 @@ class TranslatorItalian : public TranslatorAdapter_1_4_6
*/
virtual QCString trPackageMembers()
{
return "Funczioni con visibilità di package";
return "Funzioni con visibilità di package";
}
/*! Used as a heading for a list of static Java class functions with
* package scope.
......@@ -1524,6 +1526,15 @@ class TranslatorItalian : public TranslatorAdapter_1_4_6
"unicamente per gli argomenti passati.";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.4.6
//////////////////////////////////////////////////////////////////////////
virtual QCString trCallerGraph()
{
return "Questo è il grafo dei chiamanti di questa funzione:";
}
};
#endif
......@@ -8,7 +8,7 @@ TEMPLATE = app
CONFIG = qt warn_on release
TMAKE_CC = cc
TMAKE_CFLAGS = -pipe -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
TMAKE_CFLAGS = -pipe
TMAKE_CFLAGS_WARN_ON = -Wall -W
TMAKE_CFLAGS_WARN_OFF =
TMAKE_CFLAGS_RELEASE = -O2
......@@ -36,7 +36,7 @@ TMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
TMAKE_LINK = c++
TMAKE_LINK_SHLIB = c++
TMAKE_LFLAGS = -Wl,-search_paths_first -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
TMAKE_LFLAGS = -Wl,-search_paths_first
TMAKE_LFLAGS_RELEASE =
TMAKE_LFLAGS_DEBUG =
TMAKE_LFLAGS_SHLIB = -shared
......
#! Use the common Unix template
#$ IncludeTemplate("../unix/app.t");
#! Use the common Unix template
#$ IncludeTemplate("../unix/lib.t");
#! Use the common Unix template
#$ IncludeTemplate("../unix/subdirs.t");
#
#
#
# tmake configuration for macosx-c++
#
TEMPLATE = app
CONFIG = qt warn_on release
TMAKE_CC = cc
TMAKE_CFLAGS = -pipe -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
TMAKE_CFLAGS_WARN_ON = -Wall -W
TMAKE_CFLAGS_WARN_OFF =
TMAKE_CFLAGS_RELEASE = -O2
TMAKE_CFLAGS_DEBUG = -g
TMAKE_CFLAGS_SHLIB = -fPIC
TMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
TMAKE_CXX = c++
TMAKE_CXXFLAGS = $$TMAKE_CFLAGS -D__FreeBSD__=6
TMAKE_CXXFLAGS_WARN_ON = $$TMAKE_CFLAGS_WARN_ON
TMAKE_CXXFLAGS_WARN_OFF = $$TMAKE_CFLAGS_WARN_OFF
TMAKE_CXXFLAGS_RELEASE = $$TMAKE_CFLAGS_RELEASE
TMAKE_CXXFLAGS_DEBUG = $$TMAKE_CFLAGS_DEBUG
TMAKE_CXXFLAGS_SHLIB = $$TMAKE_CFLAGS_SHLIB
TMAKE_CXXFLAGS_YACC = $$TMAKE_CFLAGS_YACC
TMAKE_INCDIR =
TMAKE_LIBDIR =
TMAKE_INCDIR_X11 =
TMAKE_LIBDIR_X11 =
TMAKE_INCDIR_QT = $(QTDIR)/include
TMAKE_LIBDIR_QT = $(QTDIR)/lib
TMAKE_INCDIR_OPENGL = /usr/X11R6/include
TMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
TMAKE_LINK = c++
TMAKE_LINK_SHLIB = c++
TMAKE_LFLAGS = -Wl,-search_paths_first -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
TMAKE_LFLAGS_RELEASE =
TMAKE_LFLAGS_DEBUG =
TMAKE_LFLAGS_SHLIB = -shared
TMAKE_LFLAGS_SONAME = -dynamiclib -install_name
TMAKE_LIBS =
TMAKE_LIBS_X11 =
TMAKE_LIBS_QT = -lqt
TMAKE_LIBS_QT_MT = -lqt-mt
TMAKE_LIBS_QT_OPENGL = -lqgl
TMAKE_LIBS_OPENGL = -lMesaGL -lMesaGLU -lXmu
TMAKE_MOC = moc
TMAKE_AR = ar cq
TMAKE_RANLIB = ranlib
TMAKE_TAR = tar -cf
TMAKE_GZIP = gzip -9f
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment