From 8a6cb1baa8edce0b56a07e97bd57f5d5dd756cb5 Mon Sep 17 00:00:00 2001 From: Dimitri van Heesch Date: Tue, 17 Oct 2006 18:03:21 +0000 Subject: Release-1.5.0 --- INSTALL | 4 +- README | 4 +- addon/doxywizard/doxywizard.cpp | 40 +- addon/doxywizard/doxywizard.h | 2 +- configure | 6 +- doc/htmlcmds.doc | 4 + doc/index.doc | 2 +- doc/install.doc | 82 +- doc/language.doc | 16 +- doc/maintainers.txt | 6 +- doc/translator.py | 21 +- doc/translator_report.txt | 114 +- src/docparser.cpp | 30 +- src/doctokenizer.l | 12 +- src/doxygen.cpp | 8 +- src/htmlgen.cpp | 2 +- src/latexdocvisitor.cpp | 8 +- src/memberdef.cpp | 8 +- src/objcache.cpp | 10 +- src/pyscanner.l | 8 +- src/translator_br.h | 50 - src/translator_dk.h | 50 +- src/translator_en.h | 48 - src/translator_fr.h | 2387 ++++++++++++++++++++------------------- src/translator_it.h | 3 +- src/translator_nl.h | 37 - src/util.cpp | 8 +- winbuild/Doxygen.vcproj | 12 +- winbuild/Doxytag.vcproj | 12 +- winbuild/Doxywizard.vcproj | 10 +- winbuild/libpng.vcproj | 8 +- winbuild/qtools.vcproj | 8 +- winbuild/zlib.vcproj | 8 +- 33 files changed, 1447 insertions(+), 1581 deletions(-) diff --git a/INSTALL b/INSTALL index 95f32dc..cda7a83 100644 --- a/INSTALL +++ b/INSTALL @@ -1,7 +1,7 @@ -DOXYGEN Version 1.4.7-20061004 +DOXYGEN Version 1.5.0 Please read the installation section of the manual (http://www.doxygen.org/install.html) for instructions. -------- -Dimitri van Heesch (04 October 2006) +Dimitri van Heesch (17 October 2006) diff --git a/README b/README index 6db30d7..fa5cf00 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -DOXYGEN Version 1.4.7_20061004 +DOXYGEN Version 1.5.0 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) (04 October 2006) +Dimitri van Heesch (dimitri@stack.nl) (17 October 2006) diff --git a/addon/doxywizard/doxywizard.cpp b/addon/doxywizard/doxywizard.cpp index d10ff05..a48058c 100644 --- a/addon/doxywizard/doxywizard.cpp +++ b/addon/doxywizard/doxywizard.cpp @@ -47,35 +47,6 @@ QCString getResourcePath() return result; } -#if 0 -#define GRAPHVIZ_PATH "/Applications/Graphviz.app" -#define DOT_PATH GRAPHVIZ_PATH "/Contents/MacOS" -#define DOT_LOCATION DOT_PATH "/dot" - -bool checkIfDotInstalled() -{ - QFileInfo fi(GRAPHVIZ_PATH); - if (fi.exists() && fi.isDir()) - { - fi.setFile(DOT_LOCATION); - if (fi.exists() && fi.isFile()) - { - return TRUE; - } - } - return FALSE; -} - -void setDotPath() -{ - if (checkIfDotInstalled()) - { - Config_getString("DOT_PATH")=DOT_PATH; - //Config_getBool("HAVE_DOT")=TRUE; - } -} -#endif - void setDotPath() { Config_getString("DOT_PATH")=getResourcePath(); @@ -235,11 +206,12 @@ Step2::Step2(QWidget *parent) : QWidget(parent,"Step2") layout->addWidget(f); m_optimizeLang = new QButtonGroup("Select programming language to optimize the results for",this); - gbox = new QGridLayout( m_optimizeLang, 4, 1, 8, 0 ); + gbox = new QGridLayout( m_optimizeLang, 5, 1, 8, 0 ); gbox->addRowSpacing( 0, fontMetrics().lineSpacing()+2 ); gbox->addWidget(new QRadioButton("Optimize for C++ output",m_optimizeLang),1,0); gbox->addWidget(new QRadioButton("Optimize for Java output",m_optimizeLang),2,0); gbox->addWidget(new QRadioButton("Optimize for C output",m_optimizeLang),3,0); + gbox->addWidget(new QRadioButton("Optimize for C# output",m_optimizeLang),4,0); m_optimizeLang->setButton(0); layout->addWidget(m_optimizeLang); @@ -279,6 +251,7 @@ OptLang Step2::optimizeFor() const case 0: return Lang_Cpp; case 1: return Lang_Java; case 2: return Lang_C; + case 3: return Lang_CS; } return Lang_Cpp; } @@ -302,6 +275,7 @@ void Step2::setOptimizeFor(OptLang lang) case Lang_Cpp: m_optimizeLang->setButton(0); break; case Lang_Java: m_optimizeLang->setButton(1); break; case Lang_C: m_optimizeLang->setButton(2); break; + case Lang_CS: m_optimizeLang->setButton(3); break; } } @@ -1048,6 +1022,12 @@ void MainWidget::launchWizard() Config_getBool("OPTIMIZE_OUTPUT_FOR_C")=TRUE; Config_getBool("OPTIMIZE_OUTPUT_JAVA")=FALSE; break; + case Lang_CS: + Config_getBool("OPTIMIZE_OUTPUT_FOR_C")=FALSE; + Config_getBool("OPTIMIZE_OUTPUT_JAVA")=TRUE; + Config_getBool("EXTRACT_STATIC")=TRUE; + Config_getBool("EXTRACT_LOCAL_CLASSES")=TRUE; + break; } // step3 diff --git a/addon/doxywizard/doxywizard.h b/addon/doxywizard/doxywizard.h index c937dae..115a70b 100644 --- a/addon/doxywizard/doxywizard.h +++ b/addon/doxywizard/doxywizard.h @@ -18,7 +18,7 @@ class QProcess; class QTimer; class QPopupMenu; -enum OptLang { Lang_Cpp, Lang_C, Lang_Java }; +enum OptLang { Lang_Cpp, Lang_C, Lang_Java, Lang_CS }; enum HtmlStyle { HS_Plain, HS_TreeView, HS_CHM }; enum TexStyle { TS_PDFHyper, TS_PDF, TS_PS }; enum DiagramMode { DM_None, DM_Builtin, DM_Dot }; diff --git a/configure b/configure index 38410e3..839a2df 100755 --- a/configure +++ b/configure @@ -16,11 +16,11 @@ # shell script to configure doxygen doxygen_version_major=1 -doxygen_version_minor=4 -doxygen_version_revision=7 +doxygen_version_minor=5 +doxygen_version_revision=0 #NOTE: Setting version_mmn to "NO" will omit mmn info from the package. -doxygen_version_mmn=20061004 +doxygen_version_mmn=NO bin_dirs=`echo $PATH | sed -e "s/:/ /g"` diff --git a/doc/htmlcmds.doc b/doc/htmlcmds.doc index 0403edb..08a6b1a 100644 --- a/doc/htmlcmds.doc +++ b/doc/htmlcmds.doc @@ -36,7 +36,11 @@ of a HTML tag are passed on to the HTML output only
  • \ Starts a caption. Use within a table only.
  • \ Ends a caption. Use within a table only.
  • \ Starts a piece of text displayed in a typewriter font. + Note that for C# code, this command is equivalent to + \ref cmdcode "\\code".
  • \ End a \ section. + Note that for C# code, this command is equivalent to + \ref cmdendcode "\\endcode".
  • \ Starts an item description.
  • \ Starts a piece of text displayed in a typewriter font.
  • \ Ends a \ section. diff --git a/doc/index.doc b/doc/index.doc index bb91d59..921624b 100644 --- a/doc/index.doc +++ b/doc/index.doc @@ -97,7 +97,7 @@ The second part forms a reference manual: used within the documentation.
  • Section \ref htmlcmds shows an overview of the HTML commands that can be used within the documentation. -
  • Section \ref xmlcmds shows an overview of the XML commands that +
  • Section \ref xmlcmds shows an overview of the C# style XML commands that can be used within the documentation. diff --git a/doc/install.doc b/doc/install.doc index ad32d26..67eac06 100644 --- a/doc/install.doc +++ b/doc/install.doc @@ -344,6 +344,8 @@ of doxygen (\<=1.2.17) will not work correctly with newer versions of graphviz (\>=1.8.8). The effect of this incompatibility is that generated graphs in HTML are not properly clickable. For doxygen 1.3 it is recommended to use at least graphviz 1.8.10 or higher. +For doxygen 1.4.7 or higher it is recommended to +use GraphViz 2.8 or higher to avoid font issues. Red Hat 9.0 problems @@ -359,6 +361,39 @@ before running make. \section install_src_windows Compiling from source on Windows +From version 1.5.0 onwards, build files are provided for Visual Studio 2005. +Also the free "Express" version of Developer Studio can be used to compile doxygen. +Alternatively, you can compile doxygen \ref install_src_unix "the Unix way" using +Cygwin +or MinGW. + +Before you can compile doxygen you need to download and install the C++ compiler of +Visual Studio. Since Microsoft apparently wants to lure everyone into using their +.NET stuff, you need to + +do some manual steps in order to setup a proper working environment for building +native win32 applications. + +Once your environment is setup, you +can download +the source distribution of doxygen and unpack it. +If you don't have a tool like WinZip, then I suggest to download +unxutils +and untar the archive from within a command box using +\verbatim + tar zxvf doxygen-version.src.tar.gz +\endverbatim +Inside the archive you will find a \c winbuild directory containing a \c Doxygen.sln +file. Just open this file in Visual Studio. You can now build the Doxygen, Doxytag, +and Doxywizard projects for Release or Debug to compile the executables. + +Note that compiling Doxywizard currently requires a +commercial license for Qt 3. + +Also read the next section for additional tools you may need to install. + + + \section install_bin_windows Installing the binaries on Windows +Doxygen comes as a self-installing archive, so installation is extremely simple. +Just follow the dialogs. + +After installation it is recommended to also download and install GraphViz +(version 2.8 or better is highly recommended). Doxygen can use the \c dot tool +of the GraphViz package to render nicer diagrams, see the +\ref cfg_have_dot "HAVE_DOT" option in the configuration file. + +If you want to produce compressed HTML files (see \ref +cfg_generate_htmlhelp "GENERATE_HTMLHELP") in the config file, then +you need the Microsoft HTML help workshop. +You can download it from +Microsoft. + +In order to generate PDF output or use scientific formulas you will also need to +install LaTeX and +Ghostscript. + +For LaTeX a number of distributions exists. Popular onces that should work with +doxygen are MikTex +and XemTex. + +Ghostscript can be downloaded +from Sourceforge. + +After installing LaTeX and Ghostscript you'll need to make sure the tools +latex.exe, pdflatex.exe, and gswin32c.exe are present in the search path of a +command box. Follow these +instructions if you are unsure and run the commands from a command box to verify it works. + + + \section build_tools Tools used to develop doxygen -Doxygen was developed and tested under Linux using the following +Doxygen was developed and tested under Linux & MacOSX using the following open-source tools: \htmlonly diff --git a/doc/language.doc b/doc/language.doc index 7700f7c..73316d4 100644 --- a/doc/language.doc +++ b/doc/language.doc @@ -59,7 +59,7 @@ when the translator was updated. Arabic Moaz Reyad - + moazreyad at yahoo dot com 1.4.6 @@ -126,7 +126,7 @@ when the translator was updated. French Xavier Outhier xouthier at yahoo dot fr - 1.4.6 + up-to-date German @@ -197,7 +197,7 @@ when the translator was updated. Persian Ali Nadalizadeh - + nadalisoft at yahoo dot com 1.4.6 @@ -239,7 +239,7 @@ when the translator was updated. Slovene Matjaž Ostroveršnik - matjaz.ostroversnik at ztm dot si + matjaz.ostroversnik at ostri dot org 1.4.6 @@ -277,7 +277,7 @@ when the translator was updated. \hline Afrikaans & Johan Prinsloo & {\tt\tiny johan@zippysnoek.com} & 1.4.6 \\ \hline - Arabic & Moaz Reyad & {\tt\tiny } & 1.4.6 \\ + Arabic & Moaz Reyad & {\tt\tiny moazreyad@yahoo.com} & 1.4.6 \\ \hline Brazilian Portuguese & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino@uol.com.br} & up-to-date \\ \hline @@ -302,7 +302,7 @@ 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} & 1.4.6 \\ + French & Xavier Outhier & {\tt\tiny xouthier@yahoo.fr} & up-to-date \\ \hline German & Jens Seidel & {\tt\tiny jensseidel@users.sf.net} & up-to-date \\ \hline @@ -333,7 +333,7 @@ when the translator was updated. \hline Norwegian & Lars Erik Jordet & {\tt\tiny lejordet@gmail.com} & 1.4.6 \\ \hline - Persian & Ali Nadalizadeh & {\tt\tiny } & 1.4.6 \\ + Persian & Ali Nadalizadeh & {\tt\tiny nadalisoft@yahoo.com} & 1.4.6 \\ \hline Polish & Piotr Kaminski & {\tt\tiny Piotr.Kaminski@ctm.gdynia.pl} & 1.4.6 \\ ~ & Grzegorz Kowal & {\tt\tiny g\_kowal@poczta.onet.pl} & ~ \\ @@ -348,7 +348,7 @@ when the translator was updated. \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} & 1.4.6 \\ + Slovene & Matja\v{z} Ostrover\v{s}nik & {\tt\tiny matjaz.ostroversnik@ostri.org} & 1.4.6 \\ \hline Spanish & Francisco Oltra Thennet & {\tt\tiny foltra@puc.cl} & 1.4.6 \\ \hline diff --git a/doc/maintainers.txt b/doc/maintainers.txt index bc6bb22..3687a02 100644 --- a/doc/maintainers.txt +++ b/doc/maintainers.txt @@ -13,7 +13,7 @@ TranslatorAfrikaans Johan Prinsloo: johan@zippysnoek.com TranslatorArabic -Moaz Reyad: +Moaz Reyad: moazreyad@yahoo.com TranslatorBrazilian Fabio "FJTC" Jun Takada Chino: jun-chino@uol.com.br @@ -86,7 +86,7 @@ TranslatorNorwegian Lars Erik Jordet: lejordet@gmail.com TranslatorPersian -Ali Nadalizadeh: +Ali Nadalizadeh: nadalisoft@yahoo.com TranslatorPolish Piotr Kaminski: Piotr.Kaminski@ctm.gdynia.pl @@ -108,7 +108,7 @@ TranslatorSlovak Stanislav Kudláč: skudlac@pobox.sk TranslatorSlovene -Matjaž Ostroveršnik: matjaz.ostroversnik@ztm.si +Matjaž Ostroveršnik: matjaz.ostroversnik@ostri.org TranslatorSpanish Francisco Oltra Thennet: foltra@puc.cl diff --git a/doc/translator.py b/doc/translator.py index 7795cdc..96ea736 100644 --- a/doc/translator.py +++ b/doc/translator.py @@ -46,6 +46,8 @@ 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. + 2005/08/15 - Doxygen's root directory determined primarily from DOXYGEN + environment variable. When not found, then relatively to the script. """ from __future__ import generators @@ -1177,12 +1179,16 @@ class TrManager: this will process only translator_cz.h source. """ - # Determine the path to the script and the absolute path to the - # Doxygen's root subdirectory. + # Determine the path to the script and its name. self.script = os.path.abspath(sys.argv[0]) self.script_path, self.script_name = os.path.split(self.script) self.script_path = os.path.abspath(self.script_path) - self.doxy_path = os.path.abspath(os.path.join(self.script_path, '..')) + + # Determine the absolute path to the Doxygen's root subdirectory. + # If DOXYGEN environment variable is not found, the directory is + # determined from the path of the script. + doxy_default = os.path.join(self.script_path, '..') + self.doxy_path = os.path.abspath(os.getenv('DOXYGEN', doxy_default)) # Get the explicit arguments of the script. self.script_argLst = sys.argv[1:] @@ -1369,9 +1375,8 @@ class TrManager: the translator methods are included in the list. The file names are searched in doxygen/src directory. """ - srcdir = os.path.join(self.doxy_path, 'src') files = [] - for item in os.listdir(srcdir): + for item in os.listdir(self.src_path): # Split the bare name to get the extension. name, ext = os.path.splitext(item) ext = ext.lower() @@ -1379,7 +1384,7 @@ class TrManager: # Include only .cpp and .h files (case independent) and exclude # the files where the checked identifiers are defined. if ext == '.cpp' or (ext == '.h' and name.find('translator') == -1): - fname = os.path.join(srcdir, item) + fname = os.path.join(self.src_path, item) assert os.path.isfile(fname) # assumes no directory with the ext files.append(fname) # full name return files @@ -1624,7 +1629,7 @@ class TrManager: Fills the dictionary classId -> [(name, e-mail), ...].""" - fname = os.path.join(self.script_path, self.maintainersFileName) + fname = os.path.join(self.doc_path, self.maintainersFileName) # Include the maintainers file to the group of files checked with # respect to the modification time. @@ -1678,7 +1683,7 @@ class TrManager: # Check the last modification time of the template file. It is the # last file from the group that decide whether the documentation # should or should not be generated. - fTplName = os.path.join(self.script_path, self.languageTplFileName) + fTplName = os.path.join(self.doc_path, self.languageTplFileName) tim = os.path.getmtime(fTplName) if tim > self.lastModificationTime: self.lastModificationTime = tim diff --git a/doc/translator_report.txt b/doc/translator_report.txt index 5eace54..6d46178 100644 --- a/doc/translator_report.txt +++ b/doc/translator_report.txt @@ -8,7 +8,7 @@ German, Greek, Hungarian, Indonesian, Italian, Japanese (+En), Korean (+En), Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. -Of them, 12 translators are up-to-date, 21 translators are based on +Of them, 13 translators are up-to-date, 20 translators are based on some adapter class, and 2 are English based. ---------------------------------------------------------------------- @@ -17,16 +17,17 @@ alphabetically). This means that they derive from the Translator class and they implement all 194 of the required methods. Anyway, there still may be some details listed even for them: - TranslatorBrazilian -- Remove the obsolete methods (never used). + TranslatorBrazilian TranslatorCatalan TranslatorChinese TranslatorCroatian TranslatorCzech - TranslatorDanish -- Change the base class to Translator. - TranslatorDutch -- Remove the obsolete methods (never used). - TranslatorEnglish -- Remove the obsolete methods (never used). + TranslatorDanish + TranslatorDutch + TranslatorEnglish + TranslatorFrench TranslatorGerman - TranslatorItalian -- Change the base class to Translator. + TranslatorItalian TranslatorJapanese -- Remove the obsolete methods (never used). TranslatorRussian @@ -46,7 +47,6 @@ must be implemented to become up-to-date: TranslatorKorean 1.4.6 2 methods to implement TranslatorIndonesian 1.4.6 1 method to implement TranslatorHungarian 1.4.6 2 methods to implement - TranslatorFrench 1.4.6 1 method to implement TranslatorChinesetraditional 1.4.6 1 method to implement TranslatorArabic 1.4.6 1 method to implement TranslatorAfrikaans 1.4.6 2 methods to implement @@ -105,24 +105,6 @@ TranslatorArabic (TranslatorAdapter_1_4_6) 1 method to implement virtual QCString trNoDescriptionAvailable() -TranslatorBrazilian (Translator) -------------------- - - Implements 194 of the required methods. - - Obsolete methods (should be removed, never used): - - virtual QCString trHeaderFilesDescription() - virtual QCString trField(bool first_capital, bool singular) - virtual QCString trPackageDocumentation() - virtual QCString trSources() - virtual QCString trReimplementedForInternalReasons() - virtual QCString trInterfaces() - virtual QCString trHeaderFiles() - virtual QCString trBugsAndLimitations() - virtual QCString trNoDescriptionAvailable() - - TranslatorChinesetraditional (TranslatorAdapter_1_4_6) 1 method to implement ---------------------------- @@ -145,60 +127,6 @@ TranslatorChinesetraditional (TranslatorAdapter_1_4_6) 1 method to implement virtual QCString trNoDescriptionAvailable() -TranslatorDanish (TranslatorAdapter_1_3_9) ----------------- - - Implements 194 of the required methods. - - Obsolete methods (should be removed, never used): - - virtual QCString trHeaderFilesDescription() - virtual QCString trField(bool first_capital, bool singular) - virtual QCString trPackageDocumentation() - virtual QCString trSources() - virtual QCString trReimplementedForInternalReasons() - virtual QCString trInterfaces() - virtual QCString trHeaderFiles() - virtual QCString trBugsAndLimitations() - virtual QCString trNoDescriptionAvailable() - - -TranslatorDutch (Translator) ---------------- - - Implements 194 of the required methods. - - Obsolete methods (should be removed, never used): - - QCString trHeaderFilesDescription() - virtual QCString trField(bool first_capital, bool singular) - QCString trPackageDocumentation() - QCString trSources() - QCString trReimplementedForInternalReasons() - QCString trInterfaces() - QCString trHeaderFiles() - QCString trBugsAndLimitations() - QCString trNoDescriptionAvailable() - - -TranslatorEnglish (Translator) ------------------ - - Implements 194 of the required methods. - - Obsolete methods (should be removed, never used): - - virtual QCString trHeaderFilesDescription() - virtual QCString trField(bool first_capital, bool singular) - virtual QCString trPackageDocumentation() - virtual QCString trSources() - virtual QCString trReimplementedForInternalReasons() - virtual QCString trInterfaces() - virtual QCString trHeaderFiles() - virtual QCString trBugsAndLimitations() - virtual QCString trNoDescriptionAvailable() - - TranslatorFinnish (TranslatorEnglish) 96 methods to implement ----------------- @@ -315,28 +243,6 @@ TranslatorFinnish (TranslatorEnglish) 96 methods to implement QCString trNoDescriptionAvailable() -TranslatorFrench (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() - virtual QCString trField(bool first_capital, bool singular) - virtual QCString trPackageDocumentation() - virtual QCString trSources() - virtual QCString trReimplementedForInternalReasons() - virtual QCString trInterfaces() - virtual QCString trHeaderFiles() - virtual QCString trBugsAndLimitations() - virtual QCString trNoDescriptionAvailable() - - TranslatorGreek (TranslatorAdapter_1_2_11) 27 methods to implement --------------- @@ -418,12 +324,6 @@ TranslatorIndonesian (TranslatorAdapter_1_4_6) 1 method to implement virtual QCString trNoDescriptionAvailable() -TranslatorItalian (TranslatorAdapter_1_4_6) ------------------ - - Implements 194 of the required methods. - - TranslatorJapanese (Translator) ------------------ diff --git a/src/docparser.cpp b/src/docparser.cpp index 0cfeb88..c7a621a 100644 --- a/src/docparser.cpp +++ b/src/docparser.cpp @@ -158,7 +158,8 @@ static QCString findAndCopyImage(const char *fileName,DocImage::Type type) //printf("Search for %s\n",fileName); if ((fd=findFileDef(Doxygen::imageNameDict,fileName,ambig))) { - QFile inImage(QString(fd->absFilePath().data())); + QCString inputFile = fd->absFilePath(); + QFile inImage(inputFile); if (inImage.open(IO_ReadOnly)) { result = fileName; @@ -185,19 +186,22 @@ static QCString findAndCopyImage(const char *fileName,DocImage::Type type) break; } QCString outputFile = outputDir+"/"+result; - QFile outImage(QString(outputFile.data())); - if (outImage.open(IO_WriteOnly)) // copy the image + if (outputFile!=inputFile) // prevent copying to ourself { - char *buffer = new char[inImage.size()]; - inImage.readBlock(buffer,inImage.size()); - outImage.writeBlock(buffer,inImage.size()); - outImage.flush(); - delete buffer; - } - else - { - warn_doc_error(g_fileName,doctokenizerYYlineno, - "Warning: could not write output image %s",outputFile.data()); + QFile outImage(outputFile.data()); + if (outImage.open(IO_WriteOnly)) // copy the image + { + char *buffer = new char[inImage.size()]; + inImage.readBlock(buffer,inImage.size()); + outImage.writeBlock(buffer,inImage.size()); + outImage.flush(); + delete buffer; + } + else + { + warn_doc_error(g_fileName,doctokenizerYYlineno, + "Warning: could not write output image %s",outputFile.data()); + } } } else diff --git a/src/doctokenizer.l b/src/doctokenizer.l index 5b46523..c3aafba 100644 --- a/src/doctokenizer.l +++ b/src/doctokenizer.l @@ -195,7 +195,7 @@ static void handleHtmlTag() { char c=tagText.at(i); // skip spaces - while (i') break; // Check for XML style "empty" tag. @@ -206,17 +206,17 @@ static void handleHtmlTag() } startName=i; // search for end of name - while (iparent()->name(); } - // name without parent's scope + // name without parent's scope: TODO: is this still true? QCString fullName = root->name; // strip off any template parameters (but not those for specializations) fullName=stripTemplateSpecifiersFromScope(fullName); // name with scope - QCString qualifiedName = scName.isEmpty() ? fullName : scName+"::"+fullName; + QCString qualifiedName = fullName; + if (!scName.isEmpty() && !leftScopeMatch(fullName,scName)) + { + qualifiedName.prepend(scName+"::"); + } ClassDef *cd = getClass(qualifiedName); diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp index e96d1a8..0f4d242 100644 --- a/src/htmlgen.cpp +++ b/src/htmlgen.cpp @@ -1825,7 +1825,7 @@ static void writeDefaultQuickLinks(QTextStream &t,bool compact, QCString searchFor = fixSpaces(theTranslator->trSearchForIndex()); if (searchFor.at(0)=='S') searchFor="S"+searchFor.mid(1); t << "
  • \n"; - t << "
    \n"; + t << " \n"; t << " \n"; t << " \n"; t << " \n"; diff --git a/src/latexdocvisitor.cpp b/src/latexdocvisitor.cpp index f2d086b..8c1e757 100644 --- a/src/latexdocvisitor.cpp +++ b/src/latexdocvisitor.cpp @@ -36,7 +36,7 @@ static QString escapeLabelName(const char *s) switch (c) { case '%': result+="\\%"; break; - case '|': result+="\\tt{\"|}"; break; + case '|': result+="\\texttt{\"|}"; break; case '!': result+="\"!"; break; default: result+=c; } @@ -69,7 +69,7 @@ QString LatexDocVisitor::escapeMakeIndexChars(const char *s) case '!': m_t << "\"!"; break; case '"': m_t << "\"\""; break; case '@': m_t << "\"@"; break; - case '|': m_t << "\\tt{\"|}"; break; + case '|': m_t << "\\texttt{\"|}"; break; case '[': m_t << "["; break; case ']': m_t << "]"; break; default: str[0]=c; filter(str); break; @@ -191,7 +191,7 @@ void LatexDocVisitor::visit(DocURL *u) if (u->isEmail()) m_t << "mailto:"; m_t << u->url() << "}"; } - m_t << "\\tt{"; + m_t << "{\\tt "; filter(u->url()); m_t << "}"; } @@ -972,7 +972,7 @@ void LatexDocVisitor::visitPre(DocXRefItem *x) } else { - m_t << "\\bf{"; + m_t << "{\\bf "; } m_insideItem=TRUE; filter(x->title()); diff --git a/src/memberdef.cpp b/src/memberdef.cpp index 976fdc8..a450ba3 100644 --- a/src/memberdef.cpp +++ b/src/memberdef.cpp @@ -963,12 +963,14 @@ void MemberDef::setDefinitionTemplateParameterLists(QList *lists) void MemberDef::writeLink(OutputList &ol,ClassDef *,NamespaceDef *, FileDef *fd,GroupDef *gd,bool onlyText) { + static bool optimizeOutputJava = Config_getBool("OPTIMIZE_OUTPUT_JAVA"); + static bool hideScopeNames = Config_getBool("HIDE_SCOPE_NAMES"); makeResident(); LockingPtr lock(this,this); - QCString sep = Config_getBool("OPTIMIZE_OUTPUT_JAVA") ? "." : "::"; + QCString sep = optimizeOutputJava ? "." : "::"; QCString n = name(); - if (m_impl->classDef && gd) n.prepend(m_impl->classDef->name()+sep); - else if (m_impl->nspace && (gd || fd)) n.prepend(m_impl->nspace->name()+sep); + if (!hideScopeNames && m_impl->classDef && gd) n.prepend(m_impl->classDef->name()+sep); + else if (!hideScopeNames && m_impl->nspace && (gd || fd)) n.prepend(m_impl->nspace->name()+sep); if (isObjCMethod()) { if (isStatic()) ol.docify("+ "); else ol.docify("- "); diff --git a/src/objcache.cpp b/src/objcache.cpp index 63e7eb7..f45a0e7 100644 --- a/src/objcache.cpp +++ b/src/objcache.cpp @@ -17,6 +17,7 @@ #include #include +#include #include "objcache.h" //---------------------------------------------------------------------- @@ -176,11 +177,10 @@ void ObjCache::moveToFront(int index) unsigned int ObjCache::hash(void *addr) { - static bool isPtr64 = sizeof(addr)==8 && sizeof(long)==8; - - unsigned long key = (unsigned long)addr; + static bool isPtr64 = sizeof(addr)==8; if (isPtr64) { + uint64 key = (uint64)addr; // Thomas Wang's 64 bit Mix Function key += ~(key << 32); key ^= (key >> 22); @@ -190,18 +190,20 @@ unsigned int ObjCache::hash(void *addr) key ^= (key >> 15); key += ~(key << 27); key ^= (key >> 31); + return key & (m_size-1); } else { // Thomas Wang's 32 bit Mix Function + unsigned long key = (unsigned long)addr; key += ~(key << 15); key ^= (key >> 10); key += (key << 3); key ^= (key >> 6); key += ~(key << 11); key ^= (key >> 16); + return key & (m_size-1); } - return key & (m_size-1); } ObjCache::HashNode *ObjCache::hashFind(void *obj) diff --git a/src/pyscanner.l b/src/pyscanner.l index 5f7abb0..0a4fbcf 100644 --- a/src/pyscanner.l +++ b/src/pyscanner.l @@ -290,8 +290,8 @@ static void appendDocBlock() { static void handleCommentBlock(const QCString &doc,bool brief) { - //printf("handleCommentBlock(doc=[%s] brief=%d docBlockInBody=%d\n", - // doc.data(),brief,docBlockInBody); + //printf("handleCommentBlock(doc=[%s] brief=%d docBlockInBody=%d docBlockJavaStyle=%d\n", + // doc.data(),brief,docBlockInBody,docBlockJavaStyle); // TODO: Fix me docBlockInBody=FALSE; @@ -310,7 +310,7 @@ static void handleCommentBlock(const QCString &doc,bool brief) yyFileName, // file brief ? current->briefLine : current->docLine, // line of block start docBlockInBody ? FALSE : brief, - docBlockJavaStyle, // javadoc style + FALSE, //docBlockJavaStyle, // javadoc style docBlockInBody, protection, position, @@ -854,7 +854,7 @@ STARTDOCSYMS ^{B}"##"/[^#] ")" { // end of parameter list } - ":" { + ":"{B} { g_specialBlock = TRUE; // expecting a docstring bodyEntry = current; BEGIN( FunctionBody ); diff --git a/src/translator_br.h b/src/translator_br.h index 45cb083..51f426d 100644 --- a/src/translator_br.h +++ b/src/translator_br.h @@ -183,10 +183,6 @@ class TranslatorBrazilian : public Translator virtual QCString trFileList() { return "Lista de Arquivos"; } - /*! This is put above each page as a link to the list of all verbatim headers */ - virtual QCString trHeaderFiles() - { return "Arquivos de Cabeçalho (Headers)"; } - /*! This is put above each page as a link to all members of compounds. */ virtual QCString trCompoundMembers() { @@ -321,10 +317,6 @@ class TranslatorBrazilian : public Translator return result; } - /*! This is an introduction to the page with the list of all header files. */ - virtual QCString trHeaderFilesDescription() - { return "Estes são os arquivos de cabeçalho que compõe a API:"; } - /*! This is an introduction to the page with the list of all examples */ virtual QCString trExamplesDescription() { return "Esta é a lista com todos os exemplos:"; } @@ -337,15 +329,6 @@ class TranslatorBrazilian : public Translator virtual QCString trModulesDescription() { return "Esta é a lista com todos os módulos:"; } - /*! This sentences is used in the annotated class/file lists if no brief - * description is given. - */ - virtual QCString trNoDescriptionAvailable() - { return "Sem descrição disponível"; } - - // index titles (the project name is prepended for these) - - /*! This is used in HTML as the title of index.html. */ virtual QCString trDocumentation() { return "\nDocumentação"; } @@ -546,18 +529,10 @@ class TranslatorBrazilian : public Translator virtual QCString trForInternalUseOnly() { return "Apenas para uso interno."; } - /*! this text is generated when the \\reimp command is used. */ - virtual QCString trReimplementedForInternalReasons() - { return "Reimplementado por razões internas. A API não foi modificada."; } - /*! this text is generated when the \\warning command is used. */ virtual QCString trWarning() { return "Aviso"; } - /*! this text is generated when the \\bug command is used. */ - virtual QCString trBugsAndLimitations() - { return "Problemas e Limitações"; } - /*! this text is generated when the \\version command is used. */ virtual QCString trVersion() { return "Versão"; } @@ -832,10 +807,6 @@ class TranslatorBrazilian : public Translator // new since 0.49-991003 ////////////////////////////////////////////////////////////////////////// - virtual QCString trSources() - { - return "Códigos-Fonte"; - } virtual QCString trDefinedAtLineInSourceFile() { return "Definição na linha @0 do arquivo @1."; @@ -1138,11 +1109,6 @@ class TranslatorBrazilian : public Translator // new since 1.2.4 ////////////////////////////////////////////////////////////////////////// - /*! Used for Java interfaces in the summary section of Java packages */ - virtual QCString trInterfaces() - { - return "Interfaces"; - } /*! Used for Java classes in the summary section of Java packages */ virtual QCString trClasses() { @@ -1175,11 +1141,6 @@ class TranslatorBrazilian : public Translator { return "Pacotes"; } - /*! Used as a chapter title for Latex & RTF output */ - virtual QCString trPackageDocumentation() - { - return "Pacotes"; - } /*! Text shown before a multi-line define */ virtual QCString trDefineValue() { @@ -1320,17 +1281,6 @@ class TranslatorBrazilian : public Translator * 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 ? "Campo" : "campo")); - if (!singular) result+="s"; - 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. - */ virtual QCString trGlobal(bool first_capital, bool singular) { QCString result((first_capital ? "Globa" : "globa")); diff --git a/src/translator_dk.h b/src/translator_dk.h index 98fdea1..1168a38 100644 --- a/src/translator_dk.h +++ b/src/translator_dk.h @@ -79,7 +79,7 @@ #ifndef TRANSLATOR_DK_H #define TRANSLATOR_DK_H -class TranslatorDanish : public TranslatorAdapter_1_3_9 +class TranslatorDanish : public Translator { public: @@ -225,10 +225,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 virtual QCString trFileList() { return "Filoversigt"; } - /*! This is put above each page as a link to the list of all verbatim headers */ - virtual QCString trHeaderFiles() - { return "Headerfiler"; } - /*! This is put above each page as a link to all members of compounds. */ virtual QCString trCompoundMembers() { @@ -338,10 +334,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 return result; } - /*! This is an introduction to the page with the list of all header files. */ - virtual QCString trHeaderFilesDescription() - { return "Her er de headerfiler, der udgør API'en:"; } - /*! This is an introduction to the page with the list of all examples */ virtual QCString trExamplesDescription() { return "Her er en liste over alle eksempler:"; } @@ -354,15 +346,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 virtual QCString trModulesDescription() { return "Her er en liste over alle moduler:"; } - /*! This sentences is used in the annotated class/file lists if no brief - * description is given. - */ - virtual QCString trNoDescriptionAvailable() - { return "Ikke beskrevet"; } - - // index titles (the project name is prepended for these) - - /*! This is used in HTML as the title of index.html. */ virtual QCString trDocumentation() { return "Dokumentation"; } @@ -558,19 +541,10 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 virtual QCString trForInternalUseOnly() { return "Kun til intern brug."; } - /*! this text is generated when the \\reimp command is used. */ - virtual QCString trReimplementedForInternalReasons() - { return "Metoden er genimplementeret af interne grunde; " - "API'en er ikke påvirket."; } - /*! this text is generated when the \\warning command is used. */ virtual QCString trWarning() { return "Advarsel"; } - /*! this text is generated when the \\bug command is used. */ - virtual QCString trBugsAndLimitations() - { return "Fejl og begrænsninger"; } - /*! this text is generated when the \\version command is used. */ virtual QCString trVersion() { return "Version"; } @@ -843,9 +817,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 // new since 0.49-991003 ////////////////////////////////////////////////////////////////////////// - virtual QCString trSources() - { return "Kilder"; /* Tranlation?? */ } - virtual QCString trDefinedAtLineInSourceFile() { return "Defineret på linje @0 i filen @1."; @@ -1122,11 +1093,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 // new since 1.2.4 ////////////////////////////////////////////////////////////////////////// - /*! Used for Java interfaces in the summary section of Java packages */ - virtual QCString trInterfaces() - { - return "Grænseflader"; - } /*! Used for Java classes in the summary section of Java packages */ virtual QCString trClasses() { @@ -1158,11 +1124,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 { return "Pakker"; } - /*! Used as a chapter title for Latex & RTF output */ - virtual QCString trPackageDocumentation() - { - return "Pakke-dokumentation"; - } /*! Text shown before a multi-line define */ virtual QCString trDefineValue() { @@ -1271,15 +1232,6 @@ class TranslatorDanish : public TranslatorAdapter_1_3_9 * be followed by a single name or by a list of names * of the category. */ - virtual QCString trField(bool first_capital, bool singular) - { - return createNoun(first_capital, singular, "felt", "er"); - } - - /*! 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 trGlobal(bool first_capital, bool singular) { return createNoun(first_capital, singular, "global", "e"); diff --git a/src/translator_en.h b/src/translator_en.h index e365835..fda338d 100644 --- a/src/translator_en.h +++ b/src/translator_en.h @@ -194,10 +194,6 @@ class TranslatorEnglish : public Translator virtual QCString trFileList() { return "File List"; } - /*! This is put above each page as a link to the list of all verbatim headers */ - virtual QCString trHeaderFiles() - { return "Header Files"; } - /*! This is put above each page as a link to all members of compounds. */ virtual QCString trCompoundMembers() { @@ -330,10 +326,6 @@ class TranslatorEnglish : public Translator return result; } - /*! This is an introduction to the page with the list of all header files. */ - virtual QCString trHeaderFilesDescription() - { return "Here are the header files that make up the API:"; } - /*! This is an introduction to the page with the list of all examples */ virtual QCString trExamplesDescription() { return "Here is a list of all examples:"; } @@ -346,15 +338,8 @@ class TranslatorEnglish : public Translator virtual QCString trModulesDescription() { return "Here is a list of all modules:"; } - /*! This sentences is used in the annotated class/file lists if no brief - * description is given. - */ - virtual QCString trNoDescriptionAvailable() - { return "No description available"; } - // index titles (the project name is prepended for these) - /*! This is used in HTML as the title of index.html. */ virtual QCString trDocumentation() { return "Documentation"; } @@ -555,18 +540,10 @@ class TranslatorEnglish : public Translator virtual QCString trForInternalUseOnly() { return "For internal use only."; } - /*! this text is generated when the \\reimp command is used. */ - virtual QCString trReimplementedForInternalReasons() - { return "Reimplemented for internal reasons; the API is not affected."; } - /*! this text is generated when the \\warning command is used. */ virtual QCString trWarning() { return "Warning"; } - /*! this text is generated when the \\bug command is used. */ - virtual QCString trBugsAndLimitations() - { return "Bugs and limitations"; } - /*! this text is generated when the \\version command is used. */ virtual QCString trVersion() { return "Version"; } @@ -841,10 +818,6 @@ class TranslatorEnglish : public Translator // new since 0.49-991003 ////////////////////////////////////////////////////////////////////////// - virtual QCString trSources() - { - return "Sources"; - } virtual QCString trDefinedAtLineInSourceFile() { return "Definition at line @0 of file @1."; @@ -1151,11 +1124,6 @@ class TranslatorEnglish : public Translator // new since 1.2.4 ////////////////////////////////////////////////////////////////////////// - /*! Used for Java interfaces in the summary section of Java packages */ - virtual QCString trInterfaces() - { - return "Interfaces"; - } /*! Used for Java classes in the summary section of Java packages */ virtual QCString trClasses() { @@ -1188,11 +1156,6 @@ class TranslatorEnglish : public Translator { return "Packages"; } - /*! Used as a chapter title for Latex & RTF output */ - virtual QCString trPackageDocumentation() - { - return "Package Documentation"; - } /*! Text shown before a multi-line define */ virtual QCString trDefineValue() { @@ -1333,17 +1296,6 @@ class TranslatorEnglish : public Translator * 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; - } - - /*! 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 trGlobal(bool first_capital, bool singular) { QCString result((first_capital ? "Global" : "global")); diff --git a/src/translator_fr.h b/src/translator_fr.h index 3e1d6f9..861c5c4 100644 --- a/src/translator_fr.h +++ b/src/translator_fr.h @@ -62,6 +62,19 @@ * -------------+------------------------------------------------------------ * 2005-07-12 | Update for new since 1.4.1 * -------------+------------------------------------------------------------ + * 2005-10-09 | Update for new since 1.4.6 + * | Added virtual QCString trCallerGraph() + * | Removed virtual QCString trHeaderFilesDescription() + * | Removed virtual QCString trField(bool first_capital, bool singular) + * | Removed virtual QCString trPackageDocumentation() + * | Removed virtual QCString trSources() + * | Removed virtual QCString trReimplementedForInternalReasons() + * | Removed virtual QCString trInterfaces() + * | Removed virtual QCString trHeaderFiles() + * | Removed virtual QCString trBugsAndLimitations() + * | Removed virtual QCString trNoDescriptionAvailable() + * | Corrected some misspelling thanx to Christophe C. + * -------------+------------------------------------------------------------ */ #ifndef TRANSLATOR_FR_H #define TRANSLATOR_FR_H @@ -87,10 +100,10 @@ // Translator class (by the local maintainer) when the localized // translator is made up-to-date again. -class TranslatorFrench : public TranslatorAdapter_1_4_6 +class TranslatorFrench : public Translator { - public: - + public: + // --- Language control methods ------------------- /*! Used for identification of the language. The identification @@ -99,9 +112,10 @@ class TranslatorFrench : public TranslatorAdapter_1_4_6 * (e.g. "czech", "japanese", "russian", etc.). It should be equal to * the identification used in language.cpp. */ - virtual QCString idLanguage() - { return "french"; } - + virtual QCString idLanguage() + { + return "french"; } + /*! Used to get the LaTeX command(s) for the language support. * This method should return string with commands that switch * LaTeX to the desired language. For example @@ -113,1160 +127,1206 @@ class TranslatorFrench : public TranslatorAdapter_1_4_6 * "\\usepackage[T1]{fontenc}\n" * */ - virtual QCString latexLanguageSupportCommand() - { - return "\\usepackage[french]{babel}\n"; - } - + virtual QCString latexLanguageSupportCommand() + { + return "\\usepackage[french]{babel}\n"; + } + /*! return the language charset. This will be used for the HTML output */ - virtual QCString idLanguageCharset() - { - return "iso-8859-1"; - } - + virtual QCString idLanguageCharset() + { + return "iso-8859-1"; + } + // --- Language translation methods ------------------- - + /*! used in the compound documentation before a list of related functions. */ - virtual QCString trRelatedFunctions() - { return "Fonctions associées"; } - + virtual QCString trRelatedFunctions() + { + return "Fonctions associées"; } + /*! subscript for the related functions. */ - virtual QCString trRelatedSubscript() - { return "(Noter que ce ne sont pas des fonctions membres)"; } - + virtual QCString trRelatedSubscript() + { + return "(Noter que ce ne sont pas des fonctions membres)"; } + /*! header that is put before the detailed description of files, classes and namespaces. */ - virtual QCString trDetailedDescription() - { return "Description détaillée"; } - + virtual QCString trDetailedDescription() + { + return "Description détaillée"; } + /*! header that is put before the list of typedefs. */ - virtual QCString trMemberTypedefDocumentation() - { return "Documentation des typedef membres"; } + virtual QCString trMemberTypedefDocumentation() + { + return "Documentation des définition de type membres"; } /*! header that is put before the list of enumerations. */ - virtual QCString trMemberEnumerationDocumentation() - { return "Documentation des énumérations membres"; } + virtual QCString trMemberEnumerationDocumentation() + { + return "Documentation des énumérations membres"; } /*! header that is put before the list of member functions. */ - virtual QCString trMemberFunctionDocumentation() - { return "Documentation des fonctions membres"; } + virtual QCString trMemberFunctionDocumentation() + { + return "Documentation des fonctions membres"; } /*! header that is put before the list of member attributes. */ - virtual QCString trMemberDataDocumentation() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Documentation des champs"; - } - else - { - return "Documentation des données membres"; + virtual QCString trMemberDataDocumentation() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Documentation des champs"; + } + else + { + return "Documentation des données membres"; + } } - } - + /*! this is the text of a link put after brief descriptions. */ - virtual QCString trMore() - { return "Plus de détails..."; } - + virtual QCString trMore() + { + return "Plus de détails..."; } + /*! put in the class documentation */ - virtual QCString trListOfAllMembers() - { return "Liste de tous les membres"; } - + virtual QCString trListOfAllMembers() + { + return "Liste de tous les membres"; } + /*! used as the title of the "list of all members" page of a class */ - virtual QCString trMemberList() - { return "Liste des membres"; } - + virtual QCString trMemberList() + { + return "Liste des membres"; } + /*! this is the first part of a sentence that is followed by a class name */ - virtual QCString trThisIsTheListOfAllMembers() - { return "Liste complète des membres de "; } - + virtual QCString trThisIsTheListOfAllMembers() + { + return "Liste complète des membres de "; } + /*! this is the remainder of the sentence after the class name */ - virtual QCString trIncludingInheritedMembers() - { return ", y compris les membres hérités:"; } + virtual QCString trIncludingInheritedMembers() + { + return ", y compris les membres hérités :"; } /*! this is put at the author sections at the bottom of man pages. * parameter s is name of the project name. */ - virtual QCString trGeneratedAutomatically(const char *s) - { QCString result="Généré automatiquement par Doxygen"; - if (s) result+=(QCString)" pour "+s; - result+=" à partir du code source."; - return result; - } - + virtual QCString trGeneratedAutomatically(const char *s) + { QCString result="Généré automatiquement par Doxygen"; + if (s) result+=(QCString)" pour "+s; + result+=" à partir du code source."; + return result; + } + /*! put after an enum name in the list of all members */ - virtual QCString trEnumName() - { return "énumération"; } + virtual QCString trEnumName() + { + return "énumération"; } /*! put after an enum value in the list of all members */ - virtual QCString trEnumValue() - { return "valeur énumérée"; } + virtual QCString trEnumValue() + { + return "valeur énumérée"; } /*! put after an undocumented member in the list of all members */ - virtual QCString trDefinedIn() - { return "défini dans"; } - + virtual QCString trDefinedIn() + { + return "défini dans"; } + // quick reference sections - + /*! This is put above each page as a link to the list of all groups of * compounds or files (see the \\group command). */ - virtual QCString trModules() - { return "Modules"; } + virtual QCString trModules() + { + return "Modules"; } /*! This is put above each page as a link to the class hierarchy */ - virtual QCString trClassHierarchy() - { return "Hiérarchie des classes"; } + virtual QCString trClassHierarchy() + { + return "Hiérarchie des classes"; } /*! This is put above each page as a link to the list of annotated classes */ - virtual QCString trCompoundList() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Structures de données"; - } - else - { - return "Liste des classes"; + virtual QCString trCompoundList() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Structures de données"; + } + else + { + return "Liste des classes"; + } } - } /*! This is put above each page as a link to the list of documented files */ - virtual QCString trFileList() - { return "Liste des fichiers"; } - - /*! This is put above each page as a link to the list of all verbatim headers */ - virtual QCString trHeaderFiles() - { return "Fichiers d'en-tête"; } - + virtual QCString trFileList() + { + return "Liste des fichiers"; } + /*! This is put above each page as a link to all members of compounds. */ - virtual QCString trCompoundMembers() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Champs de donnée"; - } - else - { - return "Membres de classe"; + virtual QCString trCompoundMembers() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Champs de donnée"; + } + else + { + return "Membres de classe"; + } } - } - + /*! This is put above each page as a link to all members of files. */ - virtual QCString trFileMembers() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Portée globale"; - } - else - { - return "Membres de fichier"; + virtual QCString trFileMembers() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Portée globale"; + } + else + { + return "Membres de fichier"; + } } - } - + /*! This is put above each page as a link to all related pages. */ - virtual QCString trRelatedPages() - { return "Pages associées"; } - + virtual QCString trRelatedPages() + { + return "Pages associées"; } + /*! This is put above each page as a link to all examples. */ - virtual QCString trExamples() - { return "Exemples"; } - + virtual QCString trExamples() + { + return "Exemples"; } + /*! This is put above each page as a link to the search engine. */ - virtual QCString trSearch() - { return "Recherche"; } - + virtual QCString trSearch() + { + return "Recherche"; } + /*! This is an introduction to the class hierarchy. */ - virtual QCString trClassHierarchyDescription() - { return "Cette liste d'héritage est classée " - "approximativement par ordre alphabétique:"; - } - + virtual QCString trClassHierarchyDescription() + { + return "Cette liste d'héritage est classée " + "approximativement par ordre alphabétique :"; + } + /*! This is an introduction to the list with all files. */ - virtual QCString trFileListDescription(bool extractAll) - { - QCString result="Liste de tous les fichiers "; - if (!extractAll) result+="documentés "; - result+="avec une brève description:"; - return result; - } - - /*! This is an introduction to the annotated compound list. */ - virtual QCString trCompoundListDescription() - { - - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + virtual QCString trFileListDescription(bool extractAll) { - return "Liste des structures de données avec une brève description:"; + QCString result="Liste de tous les fichiers "; + if (!extractAll) result+="documentés "; + result+="avec une brève description :"; + return result; } - else + + /*! This is an introduction to the annotated compound list. */ + virtual QCString trCompoundListDescription() { - return "Liste des classes, structures, " - "unions et interfaces avec une brève description:"; + + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Liste des structures de données avec une brève description :"; + } + else + { + return "Liste des classes, structures, " + "unions et interfaces avec une brève description :"; + } } - } - + /*! This is an introduction to the page with all class members. */ - virtual QCString trCompoundMembersDescription(bool extractAll) - { - QCString result="Liste de tous les "; - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - result+="champs de structure et d'union "; - } - else - { - result+="membres de classe "; - } - if (!extractAll) - { - result+="documentés "; - } - result+="avec liens vers "; - if (!extractAll) - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - result+="la documentation de structure/union de chaque champ:"; - } - else - { - result+="la documentation de classe de chaque membre:"; - } - } - else + virtual QCString trCompoundMembersDescription(bool extractAll) { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - result+="les structures/unions auxquelles ils appartiennent:"; - } - else - { - result+="les classes auxquelles ils appartiennent:"; - } + QCString result="Liste de tous les "; + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + result+="champs de structure et d'union "; + } + else + { + result+="membres de classe "; + } + if (!extractAll) + { + result+="documentés "; + } + result+="avec liens vers "; + if (!extractAll) + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + result+="la documentation de structure/union de chaque champ :"; + } + else + { + result+="la documentation de classe de chaque membre :"; + } + } + else + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + result+="les structures/unions auxquelles ils appartiennent :"; + } + else + { + result+="les classes auxquelles ils appartiennent :"; + } + } + return result; } - return result; - } - + /*! This is an introduction to the page with all file members. */ - virtual QCString trFileMembersDescription(bool extractAll) - { - QCString result="Liste "; - - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + virtual QCString trFileMembersDescription(bool extractAll) { - result+="des fonctions, variables, macros, enumérations, et typedefs "; - } - else - { - result+="de tous les membres de fichier "; + QCString result="Liste "; + + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + result+="des fonctions, variables, macros, enumérations, et définitions de type "; + } + else + { + result+="de tous les membres de fichier "; + } + if (!extractAll) result+="documentés "; + result+="avec liens vers "; + if (extractAll) + result+="les fichiers auxquels ils appartiennent :"; + else + result+="la documentation :"; + return result; } - if (!extractAll) result+="documentés "; - result+="avec liens vers "; - if (extractAll) - result+="les fichiers auxquels ils appartiennent:"; - else - result+="la documentation:"; - return result; - } - - /*! This is an introduction to the page with the list of all header files. */ - virtual QCString trHeaderFilesDescription() - { return "Liste des fichiers d'en-tête constituant l'interface de programmation:"; } - + /*! This is an introduction to the page with the list of all examples */ - virtual QCString trExamplesDescription() - { return "Liste de tous les exemples:"; } - + virtual QCString trExamplesDescription() + { + return "Liste de tous les exemples :"; } + /*! This is an introduction to the page with the list of related pages */ - virtual QCString trRelatedPagesDescription() - { return "Liste de toutes les pages de documentation associées:"; } - + virtual QCString trRelatedPagesDescription() + { + return "Liste de toutes les pages de documentation associées :"; } + /*! This is an introduction to the page with the list of class/file groups */ - virtual QCString trModulesDescription() - { return "Liste de tous les modules:"; } - - /*! This sentences is used in the annotated class/file lists if no brief - * description is given. - */ - virtual QCString trNoDescriptionAvailable() - { return "Aucune description disponible"; } - - // index titles (the project name is prepended for these) - - + virtual QCString trModulesDescription() + { + return "Liste de tous les modules :"; } + /*! This is used in HTML as the title of index.html. */ - virtual QCString trDocumentation() - { return "Documentation"; } - + virtual QCString trDocumentation() + { + return "Documentation"; } + /*! This is used in LaTeX as the title of the chapter with the * index of all groups. */ - virtual QCString trModuleIndex() - { return "Index des modules"; } - + virtual QCString trModuleIndex() + { + return "Index des modules"; } + /*! This is used in LaTeX as the title of the chapter with the * class hierarchy. */ - virtual QCString trHierarchicalIndex() - { return "Index hiérarchique"; } - + virtual QCString trHierarchicalIndex() + { + return "Index hiérarchique"; } + /*! This is used in LaTeX as the title of the chapter with the * annotated compound index. */ - virtual QCString trCompoundIndex() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Index des structures de données"; - } - else + virtual QCString trCompoundIndex() { - return "Index des classes"; + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Index des structures de données"; + } + else + { + return "Index des classes"; + } } - } - + /*! This is used in LaTeX as the title of the chapter with the * list of all files. */ - virtual QCString trFileIndex() - { return "Index des fichiers"; } - + virtual QCString trFileIndex() + { + return "Index des fichiers"; } + /*! This is used in LaTeX as the title of the chapter containing * the documentation of all groups. */ - virtual QCString trModuleDocumentation() - { return "Documentation des modules"; } - + virtual QCString trModuleDocumentation() + { + return "Documentation des modules"; } + /*! This is used in LaTeX as the title of the chapter containing * the documentation of all classes, structs and unions. */ - virtual QCString trClassDocumentation() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Documentation des structures de données"; - } - else - { - return "Documentation des classes"; + virtual QCString trClassDocumentation() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Documentation des structures de données"; + } + else + { + return "Documentation des classes"; + } } - } - + /*! This is used in LaTeX as the title of the chapter containing * the documentation of all files. */ - virtual QCString trFileDocumentation() - { return "Documentation des fichiers"; } - + virtual QCString trFileDocumentation() + { + return "Documentation des fichiers"; } + /*! This is used in LaTeX as the title of the chapter containing * the documentation of all examples. */ - virtual QCString trExampleDocumentation() - { return "Documentation des exemples"; } - + virtual QCString trExampleDocumentation() + { + return "Documentation des exemples"; } + /*! This is used in LaTeX as the title of the chapter containing * the documentation of all related pages. */ - virtual QCString trPageDocumentation() - { return "Documentation des pages associées"; } - + virtual QCString trPageDocumentation() + { + return "Documentation des pages associées"; } + /*! This is used in LaTeX as the title of the document */ - virtual QCString trReferenceManual() - { return "Manuel de référence"; } + virtual QCString trReferenceManual() + { + return "Manuel de référence"; } /*! This is used in the documentation of a file as a header before the * list of defines */ - virtual QCString trDefines() - { return "Macros"; } - + virtual QCString trDefines() + { + return "Macros"; } + /*! This is used in the documentation of a file as a header before the * list of function prototypes */ - virtual QCString trFuncProtos() - { return "Prototypes de fonction"; } - + virtual QCString trFuncProtos() + { + return "Prototypes de fonction"; } + /*! This is used in the documentation of a file as a header before the * list of typedefs */ - virtual QCString trTypedefs() - { return "Typedefs"; } - + virtual QCString trTypedefs() + { + return "Définition de type"; } + /*! This is used in the documentation of a file as a header before the * list of enumerations */ - virtual QCString trEnumerations() - { return "Énumérations"; } - + virtual QCString trEnumerations() + { + return "Énumérations"; } + /*! This is used in the documentation of a file as a header before the * list of (global) functions */ - virtual QCString trFunctions() - { return "Fonctions"; } - + virtual QCString trFunctions() + { + return "Fonctions"; } + /*! This is used in the documentation of a file as a header before the * list of (global) variables */ - virtual QCString trVariables() - { return "Variables"; } - + virtual QCString trVariables() + { + return "Variables"; } + /*! This is used in the documentation of a file as a header before the * list of (global) variables */ - virtual QCString trEnumerationValues() - { return "Valeurs énumérées"; } + virtual QCString trEnumerationValues() + { + return "Valeurs énumérées"; } /*! This is used in the documentation of a file before the list of * documentation blocks for defines */ - virtual QCString trDefineDocumentation() - { return "Documentation des macros"; } - + virtual QCString trDefineDocumentation() + { + return "Documentation des macros"; } + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for function prototypes */ - virtual QCString trFunctionPrototypeDocumentation() - { return "Documentation des prototypes de fonction"; } - + virtual QCString trFunctionPrototypeDocumentation() + { + return "Documentation des prototypes de fonction"; } + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for typedefs */ - virtual QCString trTypedefDocumentation() - { return "Documentation des typedef"; } - + virtual QCString trTypedefDocumentation() + { + return "Documentation des définition de type"; } + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for enumeration types */ - virtual QCString trEnumerationTypeDocumentation() - { return "Documentation du type de l'énumération"; } - - /*! This is used in the documentation of a file/namespace before the list - * of documentation blocks for enumeration values - */ - virtual QCString trEnumerationValueDocumentation() - { return "Documentation de la valeur énumérée"; } - + virtual QCString trEnumerationTypeDocumentation() + { return "Documentation du type de l'énumération"; } + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for functions */ - virtual QCString trFunctionDocumentation() - { return "Documentation des fonctions"; } - + virtual QCString trFunctionDocumentation() + { + return "Documentation des fonctions"; } + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for variables */ - virtual QCString trVariableDocumentation() - { return "Documentation des variables"; } - + virtual QCString trVariableDocumentation() + { + return "Documentation des variables"; } + /*! This is used in the documentation of a file/namespace/group before * the list of links to documented compounds */ - virtual QCString trCompounds() - { - if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { - return "Structures de données"; - } - else - { - return "Classes"; + virtual QCString trCompounds() + { + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) + { + return "Structures de données"; + } + else + { + return "Classes"; + } } - } - + /*! This is used in the standard footer of each page and indicates when * the page was generated */ - virtual QCString trGeneratedAt(const char *date,const char *projName) - { - QCString result=(QCString)"Généré le "+date; - if (projName) result+=(QCString)" pour "+projName; - result+=(QCString)" par"; - return result; - } + virtual QCString trGeneratedAt(const char *date,const char *projName) + { + QCString result=(QCString)"Généré le "+date; + if (projName) result+=(QCString)" pour "+projName; + result+=(QCString)" par"; + return result; + } /*! This is part of the sentence used in the standard footer of each page. */ - virtual QCString trWrittenBy() - { - return "écrit par"; - } - + virtual QCString trWrittenBy() + { + return "écrit par"; + } + /*! this text is put before a class diagram */ - virtual QCString trClassDiagram(const char *clName) - { - return (QCString)"Graphe d'héritage de "+clName+":"; - } + virtual QCString trClassDiagram(const char *clName) + { + return (QCString)"Graphe d'héritage de "+clName+":"; + } /*! this text is generated when the \\internal command is used. */ - virtual QCString trForInternalUseOnly() - { return "À usage interne uniquement."; } - - /*! this text is generated when the \\reimp command is used. */ - virtual QCString trReimplementedForInternalReasons() - { return "Réimplémenté pour des raisons internes; " - "l'interface de programmation n'est pas modifiée."; - } - + virtual QCString trForInternalUseOnly() + { + return "À usage interne uniquement."; } + /*! this text is generated when the \\warning command is used. */ - virtual QCString trWarning() - { return "Avertissement"; } - - /*! this text is generated when the \\bug command is used. */ - virtual QCString trBugsAndLimitations() - { return "Bogues et limitations"; } - + virtual QCString trWarning() + { + return "Avertissement"; } + /*! this text is generated when the \\version command is used. */ - virtual QCString trVersion() - { return "Version"; } - + virtual QCString trVersion() + { + return "Version"; } + /*! this text is generated when the \\date command is used. */ - virtual QCString trDate() - { return "Date"; } - + virtual QCString trDate() + { + return "Date"; } + /*! this text is generated when the \\return command is used. */ - virtual QCString trReturns() - { return "Renvoie"; } - + virtual QCString trReturns() + { + return "Renvoie"; } + /*! this text is generated when the \\sa command is used. */ - virtual QCString trSeeAlso() - { return "Voir également"; } - + virtual QCString trSeeAlso() + { + return "Voir également"; } + /*! this text is generated when the \\param command is used. */ - virtual QCString trParameters() - { return "Paramètres"; } - + virtual QCString trParameters() + { + return "Paramètres"; } + /*! this text is generated when the \\exception command is used. */ - virtual QCString trExceptions() - { return "Exceptions"; } + virtual QCString trExceptions() + { + return "Exceptions"; } /*! this text is used in the title page of a LaTeX document. */ - virtual QCString trGeneratedBy() - { return "Généré par"; } - -////////////////////////////////////////////////////////////////////////// -// new since 0.49-990307 -////////////////////////////////////////////////////////////////////////// - + virtual QCString trGeneratedBy() + { + return "Généré par"; } + + ////////////////////////////////////////////////////////////////////////// + // new since 0.49-990307 + ////////////////////////////////////////////////////////////////////////// + /*! used as the title of page containing all the index of all namespaces. */ - virtual QCString trNamespaceList() - { return "Liste des namespaces"; } - + virtual QCString trNamespaceList() + { + return "Liste des espaces de nommage"; } + /*! used as an introduction to the namespace list */ - virtual QCString trNamespaceListDescription(bool extractAll) - { - QCString result="Liste de tous les namespaces "; - if (!extractAll) result+="documentés "; - result+="avec une brève description:"; - return result; - } - + virtual QCString trNamespaceListDescription(bool extractAll) + { + QCString result="Liste de tous les espaces de nommage "; + if (!extractAll) result+="documentés "; + result+="avec une brève description:"; + return result; + } + /*! used in the class documentation as a header before the list of all * friends of a class */ - virtual QCString trFriends() - { return "Amis"; } + virtual QCString trFriends() + { + return "Amis"; } -////////////////////////////////////////////////////////////////////////// -// new since 0.49-990405 -////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////// + // new since 0.49-990405 + ////////////////////////////////////////////////////////////////////////// /*! used in the class documentation as a header before the list of all * related classes */ - virtual QCString trRelatedFunctionDocumentation() - { return "Documentation des fonctions amies et associées"; } + virtual QCString trRelatedFunctionDocumentation() + { + return "Documentation des fonctions amies et associées"; } -////////////////////////////////////////////////////////////////////////// -// new since 0.49-990425 -////////////////////////////////////////////////////////////////////////// - + ////////////////////////////////////////////////////////////////////////// + // new since 0.49-990425 + ////////////////////////////////////////////////////////////////////////// + /*! used as the title of the HTML page of a class/struct/union */ - virtual QCString trCompoundReference(const char *clName, + virtual QCString trCompoundReference(const char *clName, ClassDef::CompoundType compType, bool isTemplate) - { - QCString result="Référence de "; - switch(compType) - { - case ClassDef::Class: result+="la classe "; break; - case ClassDef::Struct: result+="la structure "; break; - case ClassDef::Union: result+="l'union "; break; - case ClassDef::Interface: result+="l'interface "; break; - case ClassDef::Protocol: result+="le protocol "; break; - case ClassDef::Category: result+="la catégorie "; break; - case ClassDef::Exception: result+="l'exception "; break; - } - result+=(QCString)clName; - if (isTemplate) result+=" (modèle)"; - return result; - } - + { + QCString result="Référence de "; + switch(compType) + { + case ClassDef::Class: result+="la classe "; + break; + case ClassDef::Struct: result+="la structure "; + break; + case ClassDef::Union: result+="l'union "; + break; + case ClassDef::Interface: result+="l'interface "; + break; + case ClassDef::Protocol: result+="le protocol "; + break; + case ClassDef::Category: result+="la catégorie "; + break; + case ClassDef::Exception: result+="l'exception "; + break; + } + result+=(QCString)clName; + if (isTemplate) result+=" (modèle)"; + return result; + } + /*! used as the title of the HTML page of a file */ - virtual QCString trFileReference(const char *fileName) - { - QCString result= "Référence du fichier "; - result+=fileName; - return result; - } - + virtual QCString trFileReference(const char *fileName) + { + QCString result= "Référence du fichier "; + result+=fileName; + return result; + } + /*! used as the title of the HTML page of a namespace */ - virtual QCString trNamespaceReference(const char *namespaceName) - { - QCString result= "Référence du namespace "; - result+=namespaceName; - return result; - } + virtual QCString trNamespaceReference(const char *namespaceName) + { + QCString result= "Référence de l'espace de nommage "; + result+=namespaceName; + return result; + } - virtual QCString trPublicMembers() - { return "Fonctions membres publiques"; } - virtual QCString trPublicSlots() - { return "Connecteurs publics"; } - virtual QCString trSignals() - { return "Signaux"; } - virtual QCString trStaticPublicMembers() - { return "Fonctions membres publiques statiques"; } - virtual QCString trProtectedMembers() - { return "Fonctions membres protégées"; } - virtual QCString trProtectedSlots() - { return "Connecteurs protégés"; } - virtual QCString trStaticProtectedMembers() - { return "Fonctions membres protégées statiques"; } - virtual QCString trPrivateMembers() - { return "Fonctions membres privées"; } - virtual QCString trPrivateSlots() - { return "Connecteurs privés"; } - virtual QCString trStaticPrivateMembers() - { return "Fonctions membres privées statiques"; } + virtual QCString trPublicMembers() + { + return "Fonctions membres publiques"; } + virtual QCString trPublicSlots() + { + return "Connecteurs publics"; } + virtual QCString trSignals() + { + return "Signaux"; } + virtual QCString trStaticPublicMembers() + { + return "Fonctions membres publiques statiques"; } + virtual QCString trProtectedMembers() + { + return "Fonctions membres protégées"; } + virtual QCString trProtectedSlots() + { + return "Connecteurs protégés"; } + virtual QCString trStaticProtectedMembers() + { + return "Fonctions membres protégées statiques"; } + virtual QCString trPrivateMembers() + { + return "Fonctions membres privées"; } + virtual QCString trPrivateSlots() + { + return "Connecteurs privés"; } + virtual QCString trStaticPrivateMembers() + { + return "Fonctions membres privées statiques"; } /*! this function is used to produce a comma-separated list of items. * use generateMarker(i) to indicate where item i should be put. */ - virtual QCString trWriteList(int numEntries) - { - QCString result; - int i; - // the inherits list contain `numEntries' classes - for (i=0;i