Orb/Doxygen/src/translator_en.h
changeset 3 d8fccb2cd802
parent 0 42188c7ea2d9
child 4 468f4c8d3d5b
equal deleted inserted replaced
2:932c358ece3e 3:d8fccb2cd802
       
     1 /******************************************************************************
       
     2  *
       
     3  * 
       
     4  *
       
     5  * Copyright (C) 1997-2008 by Dimitri van Heesch.
       
     6  *
       
     7  * Permission to use, copy, modify, and distribute this software and its
       
     8  * documentation under the terms of the GNU General Public License is hereby 
       
     9  * granted. No representations are made about the suitability of this software 
       
    10  * for any purpose. It is provided "as is" without express or implied warranty.
       
    11  * See the GNU General Public License for more details.
       
    12  *
       
    13  * Documents produced by Doxygen are derivative works derived from the
       
    14  * input used in their production; they are not affected by this license.
       
    15  *
       
    16  */
       
    17 
       
    18 #ifndef TRANSLATOR_EN_H
       
    19 #define TRANSLATOR_EN_H
       
    20 
       
    21 /*! 
       
    22  When defining a translator class for the new language, follow
       
    23  the description in the documentation.  One of the steps says
       
    24  that you should copy the translator_en.h (this) file to your
       
    25  translator_xx.h new file.  Your new language should use the
       
    26  Translator class as the base class.  This means that you need to
       
    27  implement exactly the same (pure virtual) methods as the
       
    28  TranslatorEnglish does.  Because of this, it is a good idea to
       
    29  start with the copy of TranslatorEnglish and replace the strings
       
    30  one by one.
       
    31 
       
    32  It is not necessary to include "translator.h" or
       
    33  "translator_adapter.h" here.  The files are included in the
       
    34  language.cpp correctly.  Not including any of the mentioned
       
    35  files frees the maintainer from thinking about whether the
       
    36  first, the second, or both files should be included or not, and
       
    37  why.  This holds namely for localized translators because their
       
    38  base class is changed occasionaly to adapter classes when the
       
    39  Translator class changes the interface, or back to the
       
    40  Translator class (by the local maintainer) when the localized
       
    41  translator is made up-to-date again.
       
    42 */
       
    43 class TranslatorEnglish : public Translator
       
    44 {
       
    45   public:
       
    46 
       
    47     // --- Language control methods -------------------
       
    48     
       
    49     /*! Used for identification of the language. The identification 
       
    50      * should not be translated. It should be replaced by the name 
       
    51      * of the language in English using lower-case characters only
       
    52      * (e.g. "czech", "japanese", "russian", etc.). It should be equal to 
       
    53      * the identification used in language.cpp.
       
    54      */
       
    55     virtual QCString idLanguage()
       
    56     { return "english"; }
       
    57     
       
    58     /*! Used to get the LaTeX command(s) for the language support. 
       
    59      *  This method should return string with commands that switch
       
    60      *  LaTeX to the desired language.  For example 
       
    61      *  <pre>"\\usepackage[german]{babel}\n"
       
    62      *  </pre>
       
    63      *  or
       
    64      *  <pre>"\\usepackage{polski}\n"
       
    65      *  "\\usepackage[latin2]{inputenc}\n"
       
    66      *  "\\usepackage[T1]{fontenc}\n"
       
    67      *  </pre>
       
    68      * 
       
    69      * The English LaTeX does not use such commands.  Because of this
       
    70      * the empty string is returned in this implementation.
       
    71      */
       
    72     virtual QCString latexLanguageSupportCommand()
       
    73     {
       
    74       return "";
       
    75     }
       
    76 
       
    77     /*! return the language charset. This will be used for the HTML output */
       
    78     virtual QCString idLanguageCharset()
       
    79     {
       
    80       return "iso-8859-1";
       
    81     }
       
    82 
       
    83     // --- Language translation methods -------------------
       
    84 
       
    85     /*! used in the compound documentation before a list of related functions. */
       
    86     virtual QCString trRelatedFunctions()
       
    87     { return "Related Functions"; }
       
    88 
       
    89     /*! subscript for the related functions. */
       
    90     virtual QCString trRelatedSubscript()
       
    91     { return "(Note that these are not member functions.)"; }
       
    92 
       
    93     /*! header that is put before the detailed description of files, classes and namespaces. */
       
    94     virtual QCString trDetailedDescription()
       
    95     { return "Detailed Description"; }
       
    96 
       
    97     /*! header that is put before the list of typedefs. */
       
    98     virtual QCString trMemberTypedefDocumentation()
       
    99     { return "Member Typedef Documentation"; }
       
   100     
       
   101     /*! header that is put before the list of enumerations. */
       
   102     virtual QCString trMemberEnumerationDocumentation()
       
   103     { return "Member Enumeration Documentation"; }
       
   104     
       
   105     /*! header that is put before the list of member functions. */
       
   106     virtual QCString trMemberFunctionDocumentation()
       
   107     { return "Member Function Documentation"; }
       
   108     
       
   109     /*! header that is put before the list of member attributes. */
       
   110     virtual QCString trMemberDataDocumentation()
       
   111     { 
       
   112       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   113       {
       
   114         return "Field Documentation"; 
       
   115       }
       
   116       else
       
   117       {
       
   118         return "Member Data Documentation"; 
       
   119       }
       
   120     }
       
   121 
       
   122     /*! this is the text of a link put after brief descriptions. */
       
   123     virtual QCString trMore() 
       
   124     { return "More..."; }
       
   125 
       
   126     /*! put in the class documentation */
       
   127     virtual QCString trListOfAllMembers()
       
   128     { return "List of all members."; }
       
   129 
       
   130     /*! used as the title of the "list of all members" page of a class */
       
   131     virtual QCString trMemberList()
       
   132     { return "Member List"; }
       
   133 
       
   134     /*! this is the first part of a sentence that is followed by a class name */
       
   135     virtual QCString trThisIsTheListOfAllMembers()
       
   136     { return "This is the complete list of members for "; }
       
   137 
       
   138     /*! this is the remainder of the sentence after the class name */
       
   139     virtual QCString trIncludingInheritedMembers()
       
   140     { return ", including all inherited members."; }
       
   141     
       
   142     /*! this is put at the author sections at the bottom of man pages.
       
   143      *  parameter s is name of the project name.
       
   144      */
       
   145     virtual QCString trGeneratedAutomatically(const char *s)
       
   146     { QCString result="Generated automatically by Doxygen";
       
   147       if (s) result+=(QCString)" for "+s;
       
   148       result+=" from the source code."; 
       
   149       return result;
       
   150     }
       
   151 
       
   152     /*! put after an enum name in the list of all members */
       
   153     virtual QCString trEnumName()
       
   154     { return "enum name"; }
       
   155     
       
   156     /*! put after an enum value in the list of all members */
       
   157     virtual QCString trEnumValue()
       
   158     { return "enum value"; }
       
   159     
       
   160     /*! put after an undocumented member in the list of all members */
       
   161     virtual QCString trDefinedIn()
       
   162     { return "defined in"; }
       
   163 
       
   164     // quick reference sections
       
   165 
       
   166     /*! This is put above each page as a link to the list of all groups of 
       
   167      *  compounds or files (see the \\group command).
       
   168      */
       
   169     virtual QCString trModules()
       
   170     { return "Modules"; }
       
   171     
       
   172     /*! This is put above each page as a link to the class hierarchy */
       
   173     virtual QCString trClassHierarchy()
       
   174     { return "Class Hierarchy"; }
       
   175     
       
   176     /*! This is put above each page as a link to the list of annotated classes */
       
   177     virtual QCString trCompoundList()
       
   178     { 
       
   179       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   180       {
       
   181         return "Data Structures";
       
   182       }
       
   183       else
       
   184       {
       
   185         return "Class List"; 
       
   186       }
       
   187     }
       
   188     
       
   189     /*! This is put above each page as a link to the list of documented files */
       
   190     virtual QCString trFileList()
       
   191     { return "File List"; }
       
   192 
       
   193     /*! This is put above each page as a link to all members of compounds. */
       
   194     virtual QCString trCompoundMembers()
       
   195     { 
       
   196       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   197       {
       
   198         return "Data Fields"; 
       
   199       }
       
   200       else
       
   201       {
       
   202         return "Class Members"; 
       
   203       }
       
   204     }
       
   205 
       
   206     /*! This is put above each page as a link to all members of files. */
       
   207     virtual QCString trFileMembers()
       
   208     { 
       
   209       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   210       {
       
   211         return "Globals"; 
       
   212       }
       
   213       else
       
   214       {
       
   215         return "File Members"; 
       
   216       }
       
   217     }
       
   218 
       
   219     /*! This is put above each page as a link to all related pages. */
       
   220     virtual QCString trRelatedPages()
       
   221     { return "Related Pages"; }
       
   222 
       
   223     /*! This is put above each page as a link to all examples. */
       
   224     virtual QCString trExamples()
       
   225     { return "Examples"; }
       
   226 
       
   227     /*! This is put above each page as a link to the search engine. */
       
   228     virtual QCString trSearch()
       
   229     { return "Search"; }
       
   230 
       
   231     /*! This is an introduction to the class hierarchy. */
       
   232     virtual QCString trClassHierarchyDescription()
       
   233     { return "This inheritance list is sorted roughly, "
       
   234              "but not completely, alphabetically:";
       
   235     }
       
   236 
       
   237     /*! This is an introduction to the list with all files. */
       
   238     virtual QCString trFileListDescription(bool extractAll)
       
   239     {
       
   240       QCString result="Here is a list of all ";
       
   241       if (!extractAll) result+="documented ";
       
   242       result+="files with brief descriptions:";
       
   243       return result;
       
   244     }
       
   245 
       
   246     /*! This is an introduction to the annotated compound list. */
       
   247     virtual QCString trCompoundListDescription()
       
   248     { 
       
   249       
       
   250       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   251       {
       
   252         return "Here are the data structures with brief descriptions:"; 
       
   253       }
       
   254       else
       
   255       {
       
   256         return "Here are the classes, structs, "
       
   257                "unions and interfaces with brief descriptions:"; 
       
   258       }
       
   259     }
       
   260 
       
   261     /*! This is an introduction to the page with all class members. */
       
   262     virtual QCString trCompoundMembersDescription(bool extractAll)
       
   263     {
       
   264       QCString result="Here is a list of all ";
       
   265       if (!extractAll)
       
   266       {
       
   267         result+="documented ";
       
   268       }
       
   269       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   270       {
       
   271         result+="struct and union fields";
       
   272       }
       
   273       else
       
   274       {
       
   275         result+="class members";
       
   276       }
       
   277       result+=" with links to ";
       
   278       if (!extractAll) 
       
   279       {
       
   280         if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   281         {
       
   282           result+="the struct/union documentation for each field:";
       
   283         }
       
   284         else
       
   285         {
       
   286           result+="the class documentation for each member:";
       
   287         }
       
   288       }
       
   289       else 
       
   290       {
       
   291         if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   292         {
       
   293           result+="the structures/unions they belong to:";
       
   294         }
       
   295         else
       
   296         {
       
   297           result+="the classes they belong to:";
       
   298         }
       
   299       }
       
   300       return result;
       
   301     }
       
   302 
       
   303     /*! This is an introduction to the page with all file members. */
       
   304     virtual QCString trFileMembersDescription(bool extractAll)
       
   305     {
       
   306       QCString result="Here is a list of all ";
       
   307       if (!extractAll) result+="documented ";
       
   308       
       
   309       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   310       {
       
   311         result+="functions, variables, defines, enums, and typedefs";
       
   312       }
       
   313       else
       
   314       {
       
   315         result+="file members";
       
   316       }
       
   317       result+=" with links to ";
       
   318       if (extractAll) 
       
   319         result+="the files they belong to:";
       
   320       else 
       
   321         result+="the documentation:";
       
   322       return result;
       
   323     }
       
   324 
       
   325     /*! This is an introduction to the page with the list of all examples */
       
   326     virtual QCString trExamplesDescription()
       
   327     { return "Here is a list of all examples:"; }
       
   328 
       
   329     /*! This is an introduction to the page with the list of related pages */
       
   330     virtual QCString trRelatedPagesDescription()
       
   331     { return "Here is a list of all related documentation pages:"; }
       
   332 
       
   333     /*! This is an introduction to the page with the list of class/file groups */
       
   334     virtual QCString trModulesDescription()
       
   335     { return "Here is a list of all modules:"; }
       
   336 
       
   337     // index titles (the project name is prepended for these) 
       
   338 
       
   339     /*! This is used in HTML as the title of index.html. */
       
   340     virtual QCString trDocumentation()
       
   341     { return "Documentation"; }
       
   342 
       
   343     /*! This is used in LaTeX as the title of the chapter with the 
       
   344      * index of all groups.
       
   345      */
       
   346     virtual QCString trModuleIndex()
       
   347     { return "Module Index"; }
       
   348 
       
   349     /*! This is used in LaTeX as the title of the chapter with the 
       
   350      * class hierarchy.
       
   351      */
       
   352     virtual QCString trHierarchicalIndex()
       
   353     { return "Hierarchical Index"; }
       
   354 
       
   355     /*! This is used in LaTeX as the title of the chapter with the 
       
   356      * annotated compound index.
       
   357      */
       
   358     virtual QCString trCompoundIndex()
       
   359     {
       
   360       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   361       { 
       
   362         return "Data Structure Index";
       
   363       }
       
   364       else
       
   365       {
       
   366         return "Class Index"; 
       
   367       }
       
   368     }
       
   369 
       
   370     /*! This is used in LaTeX as the title of the chapter with the
       
   371      * list of all files.
       
   372      */
       
   373     virtual QCString trFileIndex() 
       
   374     { return "File Index"; }
       
   375 
       
   376     /*! This is used in LaTeX as the title of the chapter containing
       
   377      *  the documentation of all groups.
       
   378      */
       
   379     virtual QCString trModuleDocumentation()
       
   380     { return "Module Documentation"; }
       
   381 
       
   382     /*! This is used in LaTeX as the title of the chapter containing
       
   383      *  the documentation of all classes, structs and unions.
       
   384      */
       
   385     virtual QCString trClassDocumentation()
       
   386     { 
       
   387       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   388       {
       
   389         return "Data Structure Documentation"; 
       
   390       }
       
   391       else
       
   392       {
       
   393         return "Class Documentation"; 
       
   394       }
       
   395     }
       
   396 
       
   397     /*! This is used in LaTeX as the title of the chapter containing
       
   398      *  the documentation of all files.
       
   399      */
       
   400     virtual QCString trFileDocumentation()
       
   401     { return "File Documentation"; }
       
   402 
       
   403     /*! This is used in LaTeX as the title of the chapter containing
       
   404      *  the documentation of all examples.
       
   405      */
       
   406     virtual QCString trExampleDocumentation()
       
   407     { return "Example Documentation"; }
       
   408 
       
   409     /*! This is used in LaTeX as the title of the chapter containing
       
   410      *  the documentation of all related pages.
       
   411      */
       
   412     virtual QCString trPageDocumentation()
       
   413     { return "Page Documentation"; }
       
   414 
       
   415     /*! This is used in LaTeX as the title of the document */
       
   416     virtual QCString trReferenceManual()
       
   417     { return "Reference Manual"; }
       
   418     
       
   419     /*! This is used in the documentation of a file as a header before the 
       
   420      *  list of defines
       
   421      */
       
   422     virtual QCString trDefines()
       
   423     { return "Defines"; }
       
   424 
       
   425     /*! This is used in the documentation of a file as a header before the 
       
   426      *  list of function prototypes
       
   427      */
       
   428     virtual QCString trFuncProtos()
       
   429     { return "Function Prototypes"; }
       
   430 
       
   431     /*! This is used in the documentation of a file as a header before the 
       
   432      *  list of typedefs
       
   433      */
       
   434     virtual QCString trTypedefs()
       
   435     { return "Typedefs"; }
       
   436 
       
   437     /*! This is used in the documentation of a file as a header before the 
       
   438      *  list of enumerations
       
   439      */
       
   440     virtual QCString trEnumerations()
       
   441     { return "Enumerations"; }
       
   442 
       
   443     /*! This is used in the documentation of a file as a header before the 
       
   444      *  list of (global) functions
       
   445      */
       
   446     virtual QCString trFunctions()
       
   447     { return "Functions"; }
       
   448 
       
   449     /*! This is used in the documentation of a file as a header before the 
       
   450      *  list of (global) variables
       
   451      */
       
   452     virtual QCString trVariables()
       
   453     { return "Variables"; }
       
   454 
       
   455     /*! This is used in the documentation of a file as a header before the 
       
   456      *  list of (global) variables
       
   457      */
       
   458     virtual QCString trEnumerationValues()
       
   459     { return "Enumerator"; }
       
   460     
       
   461     /*! This is used in the documentation of a file before the list of
       
   462      *  documentation blocks for defines
       
   463      */
       
   464     virtual QCString trDefineDocumentation()
       
   465     { return "Define Documentation"; }
       
   466 
       
   467     /*! This is used in the documentation of a file/namespace before the list 
       
   468      *  of documentation blocks for function prototypes
       
   469      */
       
   470     virtual QCString trFunctionPrototypeDocumentation()
       
   471     { return "Function Prototype Documentation"; }
       
   472 
       
   473     /*! This is used in the documentation of a file/namespace before the list 
       
   474      *  of documentation blocks for typedefs
       
   475      */
       
   476     virtual QCString trTypedefDocumentation()
       
   477     { return "Typedef Documentation"; }
       
   478 
       
   479     /*! This is used in the documentation of a file/namespace before the list 
       
   480      *  of documentation blocks for enumeration types
       
   481      */
       
   482     virtual QCString trEnumerationTypeDocumentation()
       
   483     { return "Enumeration Type Documentation"; }
       
   484 
       
   485     /*! This is used in the documentation of a file/namespace before the list 
       
   486      *  of documentation blocks for functions
       
   487      */
       
   488     virtual QCString trFunctionDocumentation()
       
   489     { return "Function Documentation"; }
       
   490 
       
   491     /*! This is used in the documentation of a file/namespace before the list 
       
   492      *  of documentation blocks for variables
       
   493      */
       
   494     virtual QCString trVariableDocumentation()
       
   495     { return "Variable Documentation"; }
       
   496 
       
   497     /*! This is used in the documentation of a file/namespace/group before 
       
   498      *  the list of links to documented compounds
       
   499      */
       
   500     virtual QCString trCompounds()
       
   501     { 
       
   502       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   503       {
       
   504         return "Data Structures"; 
       
   505       }
       
   506       else
       
   507       {
       
   508         return "Classes"; 
       
   509       }
       
   510     }
       
   511 
       
   512     /*! This is used in the standard footer of each page and indicates when 
       
   513      *  the page was generated 
       
   514      */
       
   515     virtual QCString trGeneratedAt(const char *date,const char *projName)
       
   516     { 
       
   517       QCString result=(QCString)"Generated on "+date;
       
   518       if (projName) result+=(QCString)" for "+projName;
       
   519       result+=(QCString)" by";
       
   520       return result;
       
   521     }
       
   522     /*! This is part of the sentence used in the standard footer of each page.
       
   523      */
       
   524     virtual QCString trWrittenBy()
       
   525     {
       
   526       return "written by";
       
   527     }
       
   528 
       
   529     /*! this text is put before a class diagram */
       
   530     virtual QCString trClassDiagram(const char *clName)
       
   531     {
       
   532       return (QCString)"Inheritance diagram for "+clName+":";
       
   533     }
       
   534     
       
   535     /*! this text is generated when the \\internal command is used. */
       
   536     virtual QCString trForInternalUseOnly()
       
   537     { return "For internal use only."; }
       
   538 
       
   539     /*! this text is generated when the \\warning command is used. */
       
   540     virtual QCString trWarning()
       
   541     { return "Warning"; }
       
   542 
       
   543     /*! this text is generated when the \\version command is used. */
       
   544     virtual QCString trVersion()
       
   545     { return "Version"; }
       
   546 
       
   547     /*! this text is generated when the \\date command is used. */
       
   548     virtual QCString trDate()
       
   549     { return "Date"; }
       
   550 
       
   551     /*! this text is generated when the \\return command is used. */
       
   552     virtual QCString trReturns()
       
   553     { return "Returns"; }
       
   554 
       
   555     /*! this text is generated when the \\sa command is used. */
       
   556     virtual QCString trSeeAlso()
       
   557     { return "See also"; }
       
   558 
       
   559     /*! this text is generated when the \\param command is used. */
       
   560     virtual QCString trParameters()
       
   561     { return "Parameters"; }
       
   562 
       
   563     /*! this text is generated when the \\exception command is used. */
       
   564     virtual QCString trExceptions()
       
   565     { return "Exceptions"; }
       
   566     
       
   567     /*! this text is used in the title page of a LaTeX document. */
       
   568     virtual QCString trGeneratedBy()
       
   569     { return "Generated by"; }
       
   570 
       
   571 //////////////////////////////////////////////////////////////////////////
       
   572 // new since 0.49-990307
       
   573 //////////////////////////////////////////////////////////////////////////
       
   574     
       
   575     /*! used as the title of page containing all the index of all namespaces. */
       
   576     virtual QCString trNamespaceList()
       
   577     { return "Namespace List"; }
       
   578 
       
   579     /*! used as an introduction to the namespace list */
       
   580     virtual QCString trNamespaceListDescription(bool extractAll)
       
   581     {
       
   582       QCString result="Here is a list of all ";
       
   583       if (!extractAll) result+="documented ";
       
   584       result+="namespaces with brief descriptions:";
       
   585       return result;
       
   586     }
       
   587 
       
   588     /*! used in the class documentation as a header before the list of all
       
   589      *  friends of a class
       
   590      */
       
   591     virtual QCString trFriends()
       
   592     { return "Friends"; }
       
   593     
       
   594 //////////////////////////////////////////////////////////////////////////
       
   595 // new since 0.49-990405
       
   596 //////////////////////////////////////////////////////////////////////////
       
   597     
       
   598     /*! used in the class documentation as a header before the list of all
       
   599      * related classes 
       
   600      */
       
   601     virtual QCString trRelatedFunctionDocumentation()
       
   602     { return "Friends And Related Function Documentation"; }
       
   603     
       
   604 //////////////////////////////////////////////////////////////////////////
       
   605 // new since 0.49-990425
       
   606 //////////////////////////////////////////////////////////////////////////
       
   607 
       
   608     /*! used as the title of the HTML page of a class/struct/union */
       
   609     virtual QCString trCompoundReference(const char *clName,
       
   610                                     ClassDef::CompoundType compType,
       
   611                                     bool isTemplate)
       
   612     {
       
   613       QCString result=(QCString)clName;
       
   614       switch(compType)
       
   615       {
       
   616         case ClassDef::Class:      result+=" Class"; break;
       
   617         case ClassDef::Struct:     result+=" Struct"; break;
       
   618         case ClassDef::Union:      result+=" Union"; break;
       
   619         case ClassDef::Interface:  result+=" Interface"; break;
       
   620         case ClassDef::Protocol:   result+=" Protocol"; break;
       
   621         case ClassDef::Category:   result+=" Category"; break;
       
   622         case ClassDef::Exception:  result+=" Exception"; break;
       
   623       }
       
   624       if (isTemplate) result+=" Template";
       
   625       result+=" Reference";
       
   626       return result;
       
   627     }
       
   628 
       
   629     /*! used as the title of the HTML page of a file */
       
   630     virtual QCString trFileReference(const char *fileName)
       
   631     {
       
   632       QCString result=fileName;
       
   633       result+=" File Reference"; 
       
   634       return result;
       
   635     }
       
   636 
       
   637     /*! used as the title of the HTML page of a namespace */
       
   638     virtual QCString trNamespaceReference(const char *namespaceName)
       
   639     {
       
   640       QCString result=namespaceName;
       
   641       result+=" Namespace Reference";
       
   642       return result;
       
   643     }
       
   644     
       
   645     virtual QCString trPublicMembers()
       
   646     { return "Public Member Functions"; }
       
   647     virtual QCString trPublicSlots()
       
   648     { return "Public Slots"; }
       
   649     virtual QCString trSignals()
       
   650     { return "Signals"; }
       
   651     virtual QCString trStaticPublicMembers()
       
   652     { return "Static Public Member Functions"; }
       
   653     virtual QCString trProtectedMembers()
       
   654     { return "Protected Member Functions"; }
       
   655     virtual QCString trProtectedSlots()
       
   656     { return "Protected Slots"; }
       
   657     virtual QCString trStaticProtectedMembers()
       
   658     { return "Static Protected Member Functions"; }
       
   659     virtual QCString trPrivateMembers()
       
   660     { return "Private Member Functions"; }
       
   661     virtual QCString trPrivateSlots()
       
   662     { return "Private Slots"; }
       
   663     virtual QCString trStaticPrivateMembers()
       
   664     { return "Static Private Member Functions"; }
       
   665     
       
   666     /*! this function is used to produce a comma-separated list of items.
       
   667      *  use generateMarker(i) to indicate where item i should be put.
       
   668      */
       
   669     virtual QCString trWriteList(int numEntries)
       
   670     {
       
   671       QCString result;
       
   672       int i;
       
   673       // the inherits list contain `numEntries' classes
       
   674       for (i=0;i<numEntries;i++) 
       
   675       {
       
   676         // use generateMarker to generate placeholders for the class links!
       
   677         result+=generateMarker(i); // generate marker for entry i in the list 
       
   678                                    // (order is left to right)
       
   679         
       
   680         if (i!=numEntries-1)  // not the last entry, so we need a separator
       
   681         {
       
   682           if (i<numEntries-2) // not the fore last entry 
       
   683             result+=", ";
       
   684           else                // the fore last entry
       
   685             result+=", and ";
       
   686         }
       
   687       }
       
   688       return result; 
       
   689     }
       
   690     
       
   691     /*! used in class documentation to produce a list of base classes,
       
   692      *  if class diagrams are disabled.
       
   693      */
       
   694     virtual QCString trInheritsList(int numEntries)
       
   695     {
       
   696       return "Inherits "+trWriteList(numEntries)+".";
       
   697     }
       
   698 
       
   699     /*! used in class documentation to produce a list of super classes,
       
   700      *  if class diagrams are disabled.
       
   701      */
       
   702     virtual QCString trInheritedByList(int numEntries)
       
   703     {
       
   704       return "Inherited by "+trWriteList(numEntries)+".";
       
   705     }
       
   706 
       
   707     /*! used in member documentation blocks to produce a list of 
       
   708      *  members that are hidden by this one.
       
   709      */
       
   710     virtual QCString trReimplementedFromList(int numEntries)
       
   711     {
       
   712       return "Reimplemented from "+trWriteList(numEntries)+".";
       
   713     }
       
   714 
       
   715     /*! used in member documentation blocks to produce a list of
       
   716      *  all member that overwrite the implementation of this member.
       
   717      */
       
   718     virtual QCString trReimplementedInList(int numEntries)
       
   719     {
       
   720       return "Reimplemented in "+trWriteList(numEntries)+".";
       
   721     }
       
   722 
       
   723     /*! This is put above each page as a link to all members of namespaces. */
       
   724     virtual QCString trNamespaceMembers()
       
   725     { return "Namespace Members"; }
       
   726 
       
   727     /*! This is an introduction to the page with all namespace members */
       
   728     virtual QCString trNamespaceMemberDescription(bool extractAll)
       
   729     { 
       
   730       QCString result="Here is a list of all ";
       
   731       if (!extractAll) result+="documented ";
       
   732       result+="namespace members with links to ";
       
   733       if (extractAll) 
       
   734         result+="the namespace documentation for each member:";
       
   735       else 
       
   736         result+="the namespaces they belong to:";
       
   737       return result;
       
   738     }
       
   739     /*! This is used in LaTeX as the title of the chapter with the 
       
   740      *  index of all namespaces.
       
   741      */
       
   742     virtual QCString trNamespaceIndex()
       
   743     { return "Namespace Index"; }
       
   744 
       
   745     /*! This is used in LaTeX as the title of the chapter containing
       
   746      *  the documentation of all namespaces.
       
   747      */
       
   748     virtual QCString trNamespaceDocumentation()
       
   749     { return "Namespace Documentation"; }
       
   750 
       
   751 //////////////////////////////////////////////////////////////////////////
       
   752 // new since 0.49-990522
       
   753 //////////////////////////////////////////////////////////////////////////
       
   754 
       
   755     /*! This is used in the documentation before the list of all
       
   756      *  namespaces in a file.
       
   757      */
       
   758     virtual QCString trNamespaces()
       
   759     { return "Namespaces"; }
       
   760 
       
   761 //////////////////////////////////////////////////////////////////////////
       
   762 // new since 0.49-990728
       
   763 //////////////////////////////////////////////////////////////////////////
       
   764 
       
   765     /*! This is put at the bottom of a class documentation page and is
       
   766      *  followed by a list of files that were used to generate the page.
       
   767      */
       
   768     virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
       
   769         bool single)
       
   770     { // single is true implies a single file
       
   771       QCString result=(QCString)"The documentation for this ";
       
   772       switch(compType)
       
   773       {
       
   774         case ClassDef::Class:      result+="class"; break;
       
   775         case ClassDef::Struct:     result+="struct"; break;
       
   776         case ClassDef::Union:      result+="union"; break;
       
   777         case ClassDef::Interface:  result+="interface"; break;
       
   778         case ClassDef::Protocol:   result+="protocol"; break;
       
   779         case ClassDef::Category:   result+="category"; break;
       
   780         case ClassDef::Exception:  result+="exception"; break;
       
   781       }
       
   782       result+=" was generated from the following file";
       
   783       if (single) result+=":"; else result+="s:";
       
   784       return result;
       
   785     }
       
   786 
       
   787     /*! This is in the (quick) index as a link to the alphabetical compound
       
   788      * list.
       
   789      */
       
   790     virtual QCString trAlphabeticalList()
       
   791     { return "Alphabetical List"; }
       
   792 
       
   793 //////////////////////////////////////////////////////////////////////////
       
   794 // new since 0.49-990901
       
   795 //////////////////////////////////////////////////////////////////////////
       
   796 
       
   797     /*! This is used as the heading text for the retval command. */
       
   798     virtual QCString trReturnValues()
       
   799     { return "Return values"; }
       
   800 
       
   801     /*! This is in the (quick) index as a link to the main page (index.html)
       
   802      */
       
   803     virtual QCString trMainPage()
       
   804     { return "Main Page"; }
       
   805 
       
   806     /*! This is used in references to page that are put in the LaTeX 
       
   807      *  documentation. It should be an abbreviation of the word page.
       
   808      */
       
   809     virtual QCString trPageAbbreviation()
       
   810     { return "p."; }
       
   811 
       
   812 //////////////////////////////////////////////////////////////////////////
       
   813 // new since 0.49-991003
       
   814 //////////////////////////////////////////////////////////////////////////
       
   815 
       
   816     virtual QCString trDefinedAtLineInSourceFile()
       
   817     {
       
   818       return "Definition at line @0 of file @1.";
       
   819     }
       
   820     virtual QCString trDefinedInSourceFile()
       
   821     {
       
   822       return "Definition in file @0.";
       
   823     }
       
   824 
       
   825 //////////////////////////////////////////////////////////////////////////
       
   826 // new since 0.49-991205
       
   827 //////////////////////////////////////////////////////////////////////////
       
   828 
       
   829     virtual QCString trDeprecated()
       
   830     {
       
   831       return "Deprecated";
       
   832     }
       
   833 
       
   834 //////////////////////////////////////////////////////////////////////////
       
   835 // new since 1.0.0
       
   836 //////////////////////////////////////////////////////////////////////////
       
   837 
       
   838     /*! this text is put before a collaboration diagram */
       
   839     virtual QCString trCollaborationDiagram(const char *clName)
       
   840     {
       
   841       return (QCString)"Collaboration diagram for "+clName+":";
       
   842     }
       
   843     /*! this text is put before an include dependency graph */
       
   844     virtual QCString trInclDepGraph(const char *fName)
       
   845     {
       
   846       return (QCString)"Include dependency graph for "+fName+":";
       
   847     }
       
   848     /*! header that is put before the list of constructor/destructors. */
       
   849     virtual QCString trConstructorDocumentation()
       
   850     {
       
   851       return "Constructor & Destructor Documentation"; 
       
   852     }
       
   853     /*! Used in the file documentation to point to the corresponding sources. */
       
   854     virtual QCString trGotoSourceCode()
       
   855     {
       
   856       return "Go to the source code of this file.";
       
   857     }
       
   858     /*! Used in the file sources to point to the corresponding documentation. */
       
   859     virtual QCString trGotoDocumentation()
       
   860     {
       
   861       return "Go to the documentation of this file.";
       
   862     }
       
   863     /*! Text for the \\pre command */
       
   864     virtual QCString trPrecondition()
       
   865     {
       
   866       return "Precondition";
       
   867     }
       
   868     /*! Text for the \\post command */
       
   869     virtual QCString trPostcondition()
       
   870     {
       
   871       return "Postcondition";
       
   872     }
       
   873     /*! Text for the \\invariant command */
       
   874     virtual QCString trInvariant()
       
   875     {
       
   876       return "Invariant";
       
   877     }
       
   878     /*! Text shown before a multi-line variable/enum initialization */
       
   879     virtual QCString trInitialValue()
       
   880     {
       
   881       return "Initial value:";
       
   882     }
       
   883     /*! Text used the source code in the file index */
       
   884     virtual QCString trCode()
       
   885     {
       
   886       return "code";
       
   887     }
       
   888     virtual QCString trGraphicalHierarchy()
       
   889     {
       
   890       return "Graphical Class Hierarchy";
       
   891     }
       
   892     virtual QCString trGotoGraphicalHierarchy()
       
   893     {
       
   894       return "Go to the graphical class hierarchy";
       
   895     }
       
   896     virtual QCString trGotoTextualHierarchy()
       
   897     {
       
   898       return "Go to the textual class hierarchy";
       
   899     }
       
   900     virtual QCString trPageIndex()
       
   901     {
       
   902       return "Page Index";
       
   903     }
       
   904 
       
   905 //////////////////////////////////////////////////////////////////////////
       
   906 // new since 1.1.0
       
   907 //////////////////////////////////////////////////////////////////////////
       
   908     
       
   909     virtual QCString trNote()
       
   910     {
       
   911       return "Note";
       
   912     }
       
   913     virtual QCString trPublicTypes()
       
   914     {
       
   915       return "Public Types";
       
   916     }
       
   917     virtual QCString trPublicAttribs()
       
   918     {
       
   919       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
   920       {
       
   921         return "Data Fields";
       
   922       }
       
   923       else
       
   924       {
       
   925         return "Public Attributes";
       
   926       }
       
   927     }
       
   928     virtual QCString trStaticPublicAttribs()
       
   929     {
       
   930       return "Static Public Attributes";
       
   931     }
       
   932     virtual QCString trProtectedTypes()
       
   933     {
       
   934       return "Protected Types";
       
   935     }
       
   936     virtual QCString trProtectedAttribs()
       
   937     {
       
   938       return "Protected Attributes";
       
   939     }
       
   940     virtual QCString trStaticProtectedAttribs()
       
   941     {
       
   942       return "Static Protected Attributes";
       
   943     }
       
   944     virtual QCString trPrivateTypes()
       
   945     {
       
   946       return "Private Types";
       
   947     }
       
   948     virtual QCString trPrivateAttribs()
       
   949     {
       
   950       return "Private Attributes";
       
   951     }
       
   952     virtual QCString trStaticPrivateAttribs()
       
   953     {
       
   954       return "Static Private Attributes";
       
   955     }
       
   956 
       
   957 //////////////////////////////////////////////////////////////////////////
       
   958 // new since 1.1.3
       
   959 //////////////////////////////////////////////////////////////////////////
       
   960 
       
   961     /*! Used as a marker that is put before a \\todo item */
       
   962     virtual QCString trTodo()
       
   963     {
       
   964       return "Todo";
       
   965     }
       
   966     /*! Used as the header of the todo list */
       
   967     virtual QCString trTodoList()
       
   968     {
       
   969       return "Todo List";
       
   970     }
       
   971 
       
   972 //////////////////////////////////////////////////////////////////////////
       
   973 // new since 1.1.4
       
   974 //////////////////////////////////////////////////////////////////////////
       
   975 
       
   976     virtual QCString trReferencedBy()
       
   977     {
       
   978       return "Referenced by";
       
   979     }
       
   980     virtual QCString trRemarks()
       
   981     {
       
   982       return "Remarks";
       
   983     }
       
   984     virtual QCString trAttention()
       
   985     {
       
   986       return "Attention";
       
   987     }
       
   988     virtual QCString trInclByDepGraph()
       
   989     {
       
   990       return "This graph shows which files directly or "
       
   991              "indirectly include this file:";
       
   992     }
       
   993     virtual QCString trSince()
       
   994     {
       
   995       return "Since";
       
   996     }
       
   997     
       
   998 //////////////////////////////////////////////////////////////////////////
       
   999 // new since 1.1.5
       
  1000 //////////////////////////////////////////////////////////////////////////
       
  1001 
       
  1002     /*! title of the graph legend page */
       
  1003     virtual QCString trLegendTitle()
       
  1004     {
       
  1005       return "Graph Legend";
       
  1006     }
       
  1007     /*! page explaining how the dot graph's should be interpreted 
       
  1008      *  The %A in the text below are to prevent link to classes called "A".
       
  1009      */
       
  1010     virtual QCString trLegendDocs()
       
  1011     {
       
  1012       return 
       
  1013         "This page explains how to interpret the graphs that are generated "
       
  1014         "by doxygen.<p>\n"
       
  1015         "Consider the following example:\n"
       
  1016         "\\code\n"
       
  1017         "/*! Invisible class because of truncation */\n"
       
  1018         "class Invisible { };\n\n"
       
  1019         "/*! Truncated class, inheritance relation is hidden */\n"
       
  1020         "class Truncated : public Invisible { };\n\n"
       
  1021         "/* Class not documented with doxygen comments */\n"
       
  1022         "class Undocumented { };\n\n"
       
  1023         "/*! Class that is inherited using public inheritance */\n"
       
  1024         "class PublicBase : public Truncated { };\n\n"
       
  1025         "/*! A template class */\n"
       
  1026         "template<class T> class Templ { };\n\n"
       
  1027         "/*! Class that is inherited using protected inheritance */\n"
       
  1028         "class ProtectedBase { };\n\n"
       
  1029         "/*! Class that is inherited using private inheritance */\n"
       
  1030         "class PrivateBase { };\n\n"
       
  1031         "/*! Class that is used by the Inherited class */\n"
       
  1032         "class Used { };\n\n"
       
  1033         "/*! Super class that inherits a number of other classes */\n"
       
  1034         "class Inherited : public PublicBase,\n"
       
  1035         "                  protected ProtectedBase,\n"
       
  1036         "                  private PrivateBase,\n"
       
  1037         "                  public Undocumented,\n"
       
  1038         "                  public Templ<int>\n"
       
  1039         "{\n"
       
  1040         "  private:\n"
       
  1041         "    Used *m_usedClass;\n"
       
  1042         "};\n"
       
  1043         "\\endcode\n"
       
  1044         "This will result in the following graph:"
       
  1045         "<p><center><img alt=\"\" src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center></p>\n"
       
  1046         "<p>\n"
       
  1047         "The boxes in the above graph have the following meaning:\n"
       
  1048         "</p>\n"
       
  1049         "<ul>\n"
       
  1050         "<li>%A filled gray box represents the struct or class for which the "
       
  1051         "graph is generated.</li>\n"
       
  1052         "<li>%A box with a black border denotes a documented struct or class.</li>\n"
       
  1053         "<li>%A box with a grey border denotes an undocumented struct or class.</li>\n"
       
  1054         "<li>%A box with a red border denotes a documented struct or class for"
       
  1055         "which not all inheritance/containment relations are shown. %A graph is "
       
  1056         "truncated if it does not fit within the specified boundaries.</li>\n"
       
  1057         "</ul>\n"
       
  1058         "<p>\n"
       
  1059         "The arrows have the following meaning:\n"
       
  1060         "</p>\n"
       
  1061         "<ul>\n"
       
  1062         "<li>%A dark blue arrow is used to visualize a public inheritance "
       
  1063         "relation between two classes.</li>\n"
       
  1064         "<li>%A dark green arrow is used for protected inheritance.</li>\n"
       
  1065         "<li>%A dark red arrow is used for private inheritance.</li>\n"
       
  1066         "<li>%A purple dashed arrow is used if a class is contained or used "
       
  1067         "by another class. The arrow is labeled with the variable(s) "
       
  1068         "through which the pointed class or struct is accessible.</li>\n"
       
  1069         "<li>%A yellow dashed arrow denotes a relation between a template instance and "
       
  1070         "the template class it was instantiated from. The arrow is labeled with "
       
  1071         "the template parameters of the instance.</li>\n"
       
  1072         "</ul>\n";
       
  1073     }
       
  1074     /*! text for the link to the legend page */
       
  1075     virtual QCString trLegend()
       
  1076     {
       
  1077       return "legend";
       
  1078     }
       
  1079     
       
  1080 //////////////////////////////////////////////////////////////////////////
       
  1081 // new since 1.2.0
       
  1082 //////////////////////////////////////////////////////////////////////////
       
  1083     
       
  1084     /*! Used as a marker that is put before a test item */
       
  1085     virtual QCString trTest()
       
  1086     {
       
  1087       return "Test";
       
  1088     }
       
  1089     /*! Used as the header of the test list */
       
  1090     virtual QCString trTestList()
       
  1091     {
       
  1092       return "Test List";
       
  1093     }
       
  1094 
       
  1095 //////////////////////////////////////////////////////////////////////////
       
  1096 // new since 1.2.1
       
  1097 //////////////////////////////////////////////////////////////////////////
       
  1098 
       
  1099     /*! Used as a section header for KDE-2 IDL methods */
       
  1100     virtual QCString trDCOPMethods()
       
  1101     {
       
  1102       return "DCOP Member Functions";
       
  1103     }
       
  1104 
       
  1105 //////////////////////////////////////////////////////////////////////////
       
  1106 // new since 1.2.2
       
  1107 //////////////////////////////////////////////////////////////////////////
       
  1108 
       
  1109     /*! Used as a section header for IDL properties */
       
  1110     virtual QCString trProperties()
       
  1111     {
       
  1112       return "Properties";
       
  1113     }
       
  1114     /*! Used as a section header for IDL property documentation */
       
  1115     virtual QCString trPropertyDocumentation()
       
  1116     {
       
  1117       return "Property Documentation";
       
  1118     }
       
  1119 
       
  1120 //////////////////////////////////////////////////////////////////////////
       
  1121 // new since 1.2.4
       
  1122 //////////////////////////////////////////////////////////////////////////
       
  1123 
       
  1124     /*! Used for Java classes in the summary section of Java packages */
       
  1125     virtual QCString trClasses()
       
  1126     {
       
  1127       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
       
  1128       {
       
  1129         return "Data Structures";
       
  1130       }
       
  1131       else
       
  1132       {
       
  1133         return "Classes";
       
  1134       }
       
  1135     }
       
  1136     /*! Used as the title of a Java package */
       
  1137     virtual QCString trPackage(const char *name)
       
  1138     {
       
  1139       return (QCString)"Package "+name;
       
  1140     }
       
  1141     /*! Title of the package index page */
       
  1142     virtual QCString trPackageList()
       
  1143     {
       
  1144       return "Package List";
       
  1145     }
       
  1146     /*! The description of the package index page */
       
  1147     virtual QCString trPackageListDescription()
       
  1148     {
       
  1149       return "Here are the packages with brief descriptions (if available):";
       
  1150     }
       
  1151     /*! The link name in the Quick links header for each page */
       
  1152     virtual QCString trPackages()
       
  1153     {
       
  1154       return "Packages";
       
  1155     }
       
  1156     /*! Text shown before a multi-line define */
       
  1157     virtual QCString trDefineValue()
       
  1158     {
       
  1159       return "Value:";
       
  1160     }
       
  1161     
       
  1162 //////////////////////////////////////////////////////////////////////////
       
  1163 // new since 1.2.5
       
  1164 //////////////////////////////////////////////////////////////////////////
       
  1165     
       
  1166     /*! Used as a marker that is put before a \\bug item */
       
  1167     virtual QCString trBug()
       
  1168     {
       
  1169       return "Bug";
       
  1170     }
       
  1171     /*! Used as the header of the bug list */
       
  1172     virtual QCString trBugList()
       
  1173     {
       
  1174       return "Bug List";
       
  1175     }
       
  1176 
       
  1177 //////////////////////////////////////////////////////////////////////////
       
  1178 // new since 1.2.6
       
  1179 //////////////////////////////////////////////////////////////////////////
       
  1180 
       
  1181     /*! Used as ansicpg for RTF file 
       
  1182      * 
       
  1183      * The following table shows the correlation of Charset name, Charset Value and 
       
  1184      * <pre>
       
  1185      * Codepage number:
       
  1186      * Charset Name       Charset Value(hex)  Codepage number
       
  1187      * ------------------------------------------------------
       
  1188      * DEFAULT_CHARSET           1 (x01)
       
  1189      * SYMBOL_CHARSET            2 (x02)
       
  1190      * OEM_CHARSET             255 (xFF)
       
  1191      * ANSI_CHARSET              0 (x00)            1252
       
  1192      * RUSSIAN_CHARSET         204 (xCC)            1251
       
  1193      * EE_CHARSET              238 (xEE)            1250
       
  1194      * GREEK_CHARSET           161 (xA1)            1253
       
  1195      * TURKISH_CHARSET         162 (xA2)            1254
       
  1196      * BALTIC_CHARSET          186 (xBA)            1257
       
  1197      * HEBREW_CHARSET          177 (xB1)            1255
       
  1198      * ARABIC _CHARSET         178 (xB2)            1256
       
  1199      * SHIFTJIS_CHARSET        128 (x80)             932
       
  1200      * HANGEUL_CHARSET         129 (x81)             949
       
  1201      * GB2313_CHARSET          134 (x86)             936
       
  1202      * CHINESEBIG5_CHARSET     136 (x88)             950
       
  1203      * </pre>
       
  1204      * 
       
  1205      */
       
  1206     virtual QCString trRTFansicp()
       
  1207     {
       
  1208       return "1252";
       
  1209     }
       
  1210     
       
  1211 
       
  1212     /*! Used as ansicpg for RTF fcharset 
       
  1213      *  \see trRTFansicp() for a table of possible values.
       
  1214      */
       
  1215     virtual QCString trRTFCharSet()
       
  1216     {
       
  1217       return "0";
       
  1218     }
       
  1219 
       
  1220     /*! Used as header RTF general index */
       
  1221     virtual QCString trRTFGeneralIndex()
       
  1222     {
       
  1223       return "Index";
       
  1224     }
       
  1225    
       
  1226     /*! This is used for translation of the word that will possibly
       
  1227      *  be followed by a single name or by a list of names 
       
  1228      *  of the category.
       
  1229      */
       
  1230     virtual QCString trClass(bool first_capital, bool singular)
       
  1231     { 
       
  1232       QCString result((first_capital ? "Class" : "class"));
       
  1233       if (!singular)  result+="es";
       
  1234       return result; 
       
  1235     }
       
  1236 
       
  1237     /*! This is used for translation of the word that will possibly
       
  1238      *  be followed by a single name or by a list of names 
       
  1239      *  of the category.
       
  1240      */
       
  1241     virtual QCString trFile(bool first_capital, bool singular)
       
  1242     { 
       
  1243       QCString result((first_capital ? "File" : "file"));
       
  1244       if (!singular)  result+="s";
       
  1245       return result; 
       
  1246     }
       
  1247 
       
  1248     /*! This is used for translation of the word that will possibly
       
  1249      *  be followed by a single name or by a list of names 
       
  1250      *  of the category.
       
  1251      */
       
  1252     virtual QCString trNamespace(bool first_capital, bool singular)
       
  1253     { 
       
  1254       QCString result((first_capital ? "Namespace" : "namespace"));
       
  1255       if (!singular)  result+="s";
       
  1256       return result; 
       
  1257     }
       
  1258 
       
  1259     /*! This is used for translation of the word that will possibly
       
  1260      *  be followed by a single name or by a list of names 
       
  1261      *  of the category.
       
  1262      */
       
  1263     virtual QCString trGroup(bool first_capital, bool singular)
       
  1264     { 
       
  1265       QCString result((first_capital ? "Group" : "group"));
       
  1266       if (!singular)  result+="s";
       
  1267       return result; 
       
  1268     }
       
  1269 
       
  1270     /*! This is used for translation of the word that will possibly
       
  1271      *  be followed by a single name or by a list of names 
       
  1272      *  of the category.
       
  1273      */
       
  1274     virtual QCString trPage(bool first_capital, bool singular)
       
  1275     { 
       
  1276       QCString result((first_capital ? "Page" : "page"));
       
  1277       if (!singular)  result+="s";
       
  1278       return result; 
       
  1279     }
       
  1280 
       
  1281     /*! This is used for translation of the word that will possibly
       
  1282      *  be followed by a single name or by a list of names 
       
  1283      *  of the category.
       
  1284      */
       
  1285     virtual QCString trMember(bool first_capital, bool singular)
       
  1286     { 
       
  1287       QCString result((first_capital ? "Member" : "member"));
       
  1288       if (!singular)  result+="s";
       
  1289       return result; 
       
  1290     }
       
  1291    
       
  1292     /*! This is used for translation of the word that will possibly
       
  1293      *  be followed by a single name or by a list of names 
       
  1294      *  of the category.
       
  1295      */
       
  1296     virtual QCString trGlobal(bool first_capital, bool singular)
       
  1297     { 
       
  1298       QCString result((first_capital ? "Global" : "global"));
       
  1299       if (!singular)  result+="s";
       
  1300       return result; 
       
  1301     }
       
  1302 
       
  1303 //////////////////////////////////////////////////////////////////////////
       
  1304 // new since 1.2.7
       
  1305 //////////////////////////////////////////////////////////////////////////
       
  1306 
       
  1307     /*! This text is generated when the \\author command is used and
       
  1308      *  for the author section in man pages. */
       
  1309     virtual QCString trAuthor(bool first_capital, bool singular)
       
  1310     {                                                                         
       
  1311       QCString result((first_capital ? "Author" : "author"));
       
  1312       if (!singular)  result+="s";
       
  1313       return result; 
       
  1314     }
       
  1315 
       
  1316 //////////////////////////////////////////////////////////////////////////
       
  1317 // new since 1.2.11
       
  1318 //////////////////////////////////////////////////////////////////////////
       
  1319 
       
  1320     /*! This text is put before the list of members referenced by a member
       
  1321      */
       
  1322     virtual QCString trReferences()
       
  1323     {
       
  1324       return "References";
       
  1325     }
       
  1326 
       
  1327 //////////////////////////////////////////////////////////////////////////
       
  1328 // new since 1.2.13
       
  1329 //////////////////////////////////////////////////////////////////////////
       
  1330 
       
  1331     /*! used in member documentation blocks to produce a list of 
       
  1332      *  members that are implemented by this one.
       
  1333      */
       
  1334     virtual QCString trImplementedFromList(int numEntries)
       
  1335     {
       
  1336       return "Implements "+trWriteList(numEntries)+".";
       
  1337     }
       
  1338 
       
  1339     /*! used in member documentation blocks to produce a list of
       
  1340      *  all members that implement this abstract member.
       
  1341      */
       
  1342     virtual QCString trImplementedInList(int numEntries)
       
  1343     {
       
  1344       return "Implemented in "+trWriteList(numEntries)+".";
       
  1345     }
       
  1346 
       
  1347 //////////////////////////////////////////////////////////////////////////
       
  1348 // new since 1.2.16
       
  1349 //////////////////////////////////////////////////////////////////////////
       
  1350 
       
  1351     /*! used in RTF documentation as a heading for the Table
       
  1352      *  of Contents.
       
  1353      */
       
  1354     virtual QCString trRTFTableOfContents()
       
  1355     {
       
  1356       return "Table of Contents";
       
  1357     }
       
  1358 
       
  1359 //////////////////////////////////////////////////////////////////////////
       
  1360 // new since 1.2.17
       
  1361 //////////////////////////////////////////////////////////////////////////
       
  1362 
       
  1363     /*! Used as the header of the list of item that have been 
       
  1364      *  flagged deprecated 
       
  1365      */
       
  1366     virtual QCString trDeprecatedList()
       
  1367     {
       
  1368       return "Deprecated List";
       
  1369     }
       
  1370 
       
  1371 //////////////////////////////////////////////////////////////////////////
       
  1372 // new since 1.2.18
       
  1373 //////////////////////////////////////////////////////////////////////////
       
  1374 
       
  1375     /*! Used as a header for declaration section of the events found in 
       
  1376      * a C# program
       
  1377      */
       
  1378     virtual QCString trEvents()
       
  1379     {
       
  1380       return "Events";
       
  1381     }
       
  1382     /*! Header used for the documentation section of a class' events. */
       
  1383     virtual QCString trEventDocumentation()
       
  1384     {
       
  1385       return "Event Documentation";
       
  1386     }
       
  1387 
       
  1388 //////////////////////////////////////////////////////////////////////////
       
  1389 // new since 1.3
       
  1390 //////////////////////////////////////////////////////////////////////////
       
  1391 
       
  1392     /*! Used as a heading for a list of Java class types with package scope.
       
  1393      */
       
  1394     virtual QCString trPackageTypes()
       
  1395     { 
       
  1396       return "Package Types";
       
  1397     }
       
  1398     /*! Used as a heading for a list of Java class functions with package 
       
  1399      * scope. 
       
  1400      */
       
  1401     virtual QCString trPackageMembers()
       
  1402     { 
       
  1403       return "Package Functions";
       
  1404     }
       
  1405     /*! Used as a heading for a list of static Java class functions with 
       
  1406      *  package scope.
       
  1407      */
       
  1408     virtual QCString trStaticPackageMembers()
       
  1409     { 
       
  1410       return "Static Package Functions";
       
  1411     }
       
  1412     /*! Used as a heading for a list of Java class variables with package 
       
  1413      * scope.
       
  1414      */
       
  1415     virtual QCString trPackageAttribs()
       
  1416     { 
       
  1417       return "Package Attributes";
       
  1418     }
       
  1419     /*! Used as a heading for a list of static Java class variables with 
       
  1420      * package scope.
       
  1421      */
       
  1422     virtual QCString trStaticPackageAttribs()
       
  1423     { 
       
  1424       return "Static Package Attributes";
       
  1425     }
       
  1426     
       
  1427 //////////////////////////////////////////////////////////////////////////
       
  1428 // new since 1.3.1
       
  1429 //////////////////////////////////////////////////////////////////////////
       
  1430 
       
  1431     /*! Used in the quick index of a class/file/namespace member list page 
       
  1432      *  to link to the unfiltered list of all members.
       
  1433      */
       
  1434     virtual QCString trAll()
       
  1435     {
       
  1436       return "All";
       
  1437     }
       
  1438     /*! Put in front of the call graph for a function. */
       
  1439     virtual QCString trCallGraph()
       
  1440     {
       
  1441       return "Here is the call graph for this function:";
       
  1442     }
       
  1443 
       
  1444 //////////////////////////////////////////////////////////////////////////
       
  1445 // new since 1.3.3
       
  1446 //////////////////////////////////////////////////////////////////////////
       
  1447 
       
  1448     /*! When the search engine is enabled this text is put in the header 
       
  1449      *  of each page before the field where one can enter the text to search 
       
  1450      *  for. 
       
  1451      */
       
  1452     virtual QCString trSearchForIndex()
       
  1453     {
       
  1454       return "Search for";
       
  1455     }
       
  1456     /*! This string is used as the title for the page listing the search
       
  1457      *  results.
       
  1458      */
       
  1459     virtual QCString trSearchResultsTitle()
       
  1460     {
       
  1461       return "Search Results";
       
  1462     }
       
  1463     /*! This string is put just before listing the search results. The
       
  1464      *  text can be different depending on the number of documents found.
       
  1465      *  Inside the text you can put the special marker $num to insert
       
  1466      *  the number representing the actual number of search results.
       
  1467      *  The @a numDocuments parameter can be either 0, 1 or 2, where the 
       
  1468      *  value 2 represents 2 or more matches. HTML markup is allowed inside
       
  1469      *  the returned string.
       
  1470      */
       
  1471     virtual QCString trSearchResults(int numDocuments)
       
  1472     {
       
  1473       if (numDocuments==0)
       
  1474       {
       
  1475         return "Sorry, no documents matching your query.";
       
  1476       }
       
  1477       else if (numDocuments==1)
       
  1478       {
       
  1479         return "Found <b>1</b> document matching your query.";
       
  1480       }
       
  1481       else 
       
  1482       {
       
  1483         return "Found <b>$num</b> documents matching your query. "
       
  1484                "Showing best matches first.";
       
  1485       }
       
  1486     }
       
  1487     /*! This string is put before the list of matched words, for each search 
       
  1488      *  result. What follows is the list of words that matched the query.
       
  1489      */
       
  1490     virtual QCString trSearchMatches()
       
  1491     {
       
  1492       return "Matches:";
       
  1493     }
       
  1494 
       
  1495 //////////////////////////////////////////////////////////////////////////
       
  1496 // new since 1.3.8
       
  1497 //////////////////////////////////////////////////////////////////////////
       
  1498 
       
  1499     /*! This is used in HTML as the title of page with source code for file filename
       
  1500      */
       
  1501     virtual QCString trSourceFile(QCString& filename)
       
  1502     {
       
  1503       return filename + " Source File";
       
  1504     }
       
  1505 
       
  1506 //////////////////////////////////////////////////////////////////////////
       
  1507 // new since 1.3.9
       
  1508 //////////////////////////////////////////////////////////////////////////
       
  1509 
       
  1510     /*! This is used as the name of the chapter containing the directory
       
  1511      *  hierarchy.
       
  1512      */
       
  1513     virtual QCString trDirIndex()
       
  1514     { return "Directory Hierarchy"; }
       
  1515 
       
  1516     /*! This is used as the name of the chapter containing the documentation
       
  1517      *  of the directories.
       
  1518      */
       
  1519     virtual QCString trDirDocumentation()
       
  1520     { return "Directory Documentation"; }
       
  1521 
       
  1522     /*! This is used as the title of the directory index and also in the
       
  1523      *  Quick links of an HTML page, to link to the directory hierarchy.
       
  1524      */
       
  1525     virtual QCString trDirectories()
       
  1526     { return "Directories"; }
       
  1527 
       
  1528     /*! This returns a sentences that introduces the directory hierarchy. 
       
  1529      *  and the fact that it is sorted alphabetically per level
       
  1530      */
       
  1531     virtual QCString trDirDescription()
       
  1532     { return "This directory hierarchy is sorted roughly, "
       
  1533              "but not completely, alphabetically:";
       
  1534     }
       
  1535 
       
  1536     /*! This returns the title of a directory page. The name of the
       
  1537      *  directory is passed via \a dirName.
       
  1538      */
       
  1539     virtual QCString trDirReference(const char *dirName)
       
  1540     { QCString result=dirName; result+=" Directory Reference"; return result; }
       
  1541 
       
  1542     /*! This returns the word directory with or without starting capital
       
  1543      *  (\a first_capital) and in sigular or plural form (\a singular).
       
  1544      */
       
  1545     virtual QCString trDir(bool first_capital, bool singular)
       
  1546     { 
       
  1547       QCString result((first_capital ? "Director" : "director"));
       
  1548       if (singular) result+="y"; else result+="ies";
       
  1549       return result; 
       
  1550     }
       
  1551 
       
  1552 //////////////////////////////////////////////////////////////////////////
       
  1553 // new since 1.4.1
       
  1554 //////////////////////////////////////////////////////////////////////////
       
  1555 
       
  1556     /*! This text is added to the documentation when the \\overload command
       
  1557      *  is used for a overloaded function.
       
  1558      */
       
  1559     virtual QCString trOverloadText()
       
  1560     {
       
  1561        return "This is an overloaded member function, "
       
  1562               "provided for convenience. It differs from the above "
       
  1563               "function only in what argument(s) it accepts.";
       
  1564     }
       
  1565 
       
  1566 //////////////////////////////////////////////////////////////////////////
       
  1567 // new since 1.4.6
       
  1568 //////////////////////////////////////////////////////////////////////////
       
  1569 
       
  1570     /*! This is used to introduce a caller (or called-by) graph */
       
  1571     virtual QCString trCallerGraph()
       
  1572     {
       
  1573       return "Here is the caller graph for this function:";
       
  1574     }
       
  1575 
       
  1576     /*! This is used in the documentation of a file/namespace before the list 
       
  1577      *  of documentation blocks for enumeration values
       
  1578      */
       
  1579     virtual QCString trEnumerationValueDocumentation()
       
  1580     { return "Enumerator Documentation"; }
       
  1581 
       
  1582 //////////////////////////////////////////////////////////////////////////
       
  1583 // new since 1.5.4 (mainly for Fortran)
       
  1584 //////////////////////////////////////////////////////////////////////////
       
  1585     
       
  1586     /*! header that is put before the list of member subprograms (Fortran). */
       
  1587     virtual QCString trMemberFunctionDocumentationFortran()
       
  1588     { return "Member Function/Subroutine Documentation"; }
       
  1589 
       
  1590     /*! This is put above each page as a link to the list of annotated data types (Fortran). */    
       
  1591     virtual QCString trCompoundListFortran()
       
  1592     { return "Data Types List"; }
       
  1593 
       
  1594     /*! This is put above each page as a link to all members of compounds (Fortran). */
       
  1595     virtual QCString trCompoundMembersFortran()
       
  1596     { return "Data Fields"; }
       
  1597 
       
  1598     /*! This is an introduction to the annotated compound list (Fortran). */
       
  1599     virtual QCString trCompoundListDescriptionFortran()
       
  1600     { return "Here are the data types with brief descriptions:"; }
       
  1601 
       
  1602     /*! This is an introduction to the page with all data types (Fortran). */
       
  1603     virtual QCString trCompoundMembersDescriptionFortran(bool extractAll)
       
  1604     {
       
  1605       QCString result="Here is a list of all ";
       
  1606       if (!extractAll)
       
  1607       {
       
  1608         result+="documented ";
       
  1609       }
       
  1610       result+="data types members";
       
  1611       result+=" with links to ";
       
  1612       if (!extractAll) 
       
  1613       {
       
  1614          result+="the data structure documentation for each member";
       
  1615       }
       
  1616       else 
       
  1617       {
       
  1618          result+="the data types they belong to:";
       
  1619       }
       
  1620       return result;
       
  1621     }
       
  1622 
       
  1623     /*! This is used in LaTeX as the title of the chapter with the 
       
  1624      * annotated compound index (Fortran).
       
  1625      */
       
  1626     virtual QCString trCompoundIndexFortran()
       
  1627     { return "Data Type Index"; }
       
  1628 
       
  1629     /*! This is used in LaTeX as the title of the chapter containing
       
  1630      *  the documentation of all data types (Fortran).
       
  1631      */
       
  1632     virtual QCString trTypeDocumentation()
       
  1633     { return "Data Type Documentation"; }
       
  1634 
       
  1635     /*! This is used in the documentation of a file as a header before the 
       
  1636      *  list of (global) subprograms (Fortran).
       
  1637      */
       
  1638     virtual QCString trSubprograms()
       
  1639     { return "Functions/Subroutines"; }
       
  1640 
       
  1641     /*! This is used in the documentation of a file/namespace before the list 
       
  1642      *  of documentation blocks for subprograms (Fortran)
       
  1643      */
       
  1644     virtual QCString trSubprogramDocumentation()
       
  1645     { return "Function/Subroutine Documentation"; }
       
  1646 
       
  1647     /*! This is used in the documentation of a file/namespace/group before 
       
  1648      *  the list of links to documented compounds (Fortran)
       
  1649      */
       
  1650      virtual QCString trDataTypes()
       
  1651     { return "Data Types"; }
       
  1652     
       
  1653     /*! used as the title of page containing all the index of all modules (Fortran). */
       
  1654     virtual QCString trModulesList()
       
  1655     { return "Modules List"; }
       
  1656 
       
  1657     /*! used as an introduction to the modules list (Fortran) */
       
  1658     virtual QCString trModulesListDescription(bool extractAll)
       
  1659     {
       
  1660       QCString result="Here is a list of all ";
       
  1661       if (!extractAll) result+="documented ";
       
  1662       result+="modules with brief descriptions:";
       
  1663       return result;
       
  1664     }
       
  1665 
       
  1666     /*! used as the title of the HTML page of a module/type (Fortran) */
       
  1667     virtual QCString trCompoundReferenceFortran(const char *clName,
       
  1668                                     ClassDef::CompoundType compType,
       
  1669                                     bool isTemplate)
       
  1670     {
       
  1671       QCString result=(QCString)clName;
       
  1672       switch(compType)
       
  1673       {
       
  1674         case ClassDef::Class:      result+=" Module"; break;
       
  1675         case ClassDef::Struct:     result+=" Type"; break;
       
  1676         case ClassDef::Union:      result+=" Union"; break;
       
  1677         case ClassDef::Interface:  result+=" Interface"; break;
       
  1678         case ClassDef::Protocol:   result+=" Protocol"; break;
       
  1679         case ClassDef::Category:   result+=" Category"; break;
       
  1680         case ClassDef::Exception:  result+=" Exception"; break;
       
  1681       }
       
  1682       if (isTemplate) result+=" Template";
       
  1683       result+=" Reference";
       
  1684       return result;
       
  1685     }
       
  1686     /*! used as the title of the HTML page of a module (Fortran) */
       
  1687     virtual QCString trModuleReference(const char *namespaceName)
       
  1688     {
       
  1689       QCString result=namespaceName;
       
  1690       result+=" Module Reference";        
       
  1691       return result;
       
  1692     }
       
  1693     
       
  1694     /*! This is put above each page as a link to all members of modules. (Fortran) */
       
  1695     virtual QCString trModulesMembers()
       
  1696     { return "Module Members"; }
       
  1697 
       
  1698     /*! This is an introduction to the page with all modules members (Fortran) */
       
  1699     virtual QCString trModulesMemberDescription(bool extractAll)
       
  1700     { 
       
  1701       QCString result="Here is a list of all ";
       
  1702       if (!extractAll) result+="documented ";
       
  1703       result+="module members with links to ";
       
  1704       if (extractAll) 
       
  1705       {
       
  1706         result+="the module documentation for each member:";
       
  1707       }
       
  1708       else 
       
  1709       {
       
  1710         result+="the modules they belong to:";
       
  1711       }
       
  1712       return result;
       
  1713     }
       
  1714 
       
  1715     /*! This is used in LaTeX as the title of the chapter with the 
       
  1716      *  index of all modules (Fortran).
       
  1717      */
       
  1718     virtual QCString trModulesIndex()
       
  1719     { return "Modules Index"; }
       
  1720     
       
  1721     /*! This is used for translation of the word that will possibly
       
  1722      *  be followed by a single name or by a list of names 
       
  1723      *  of the category.
       
  1724      */
       
  1725     virtual QCString trModule(bool first_capital, bool singular)
       
  1726     {       
       
  1727       QCString result((first_capital ? "Module" : "module"));
       
  1728       if (!singular)  result+="s";
       
  1729       return result; 
       
  1730     }
       
  1731 
       
  1732     /*! This is put at the bottom of a module documentation page and is
       
  1733      *  followed by a list of files that were used to generate the page.
       
  1734      */
       
  1735     virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
       
  1736         bool single)
       
  1737     {
       
  1738       // single is true implies a single file
       
  1739       QCString result=(QCString)"The documentation for this ";
       
  1740       switch(compType)
       
  1741       {
       
  1742         case ClassDef::Class:      result+="module"; break;
       
  1743         case ClassDef::Struct:     result+="type"; break;
       
  1744         case ClassDef::Union:      result+="union"; break;
       
  1745         case ClassDef::Interface:  result+="interface"; break;
       
  1746         case ClassDef::Protocol:   result+="protocol"; break;
       
  1747         case ClassDef::Category:   result+="category"; break;
       
  1748         case ClassDef::Exception:  result+="exception"; break;
       
  1749       }
       
  1750       result+=" was generated from the following file";
       
  1751       if (single) result+=":"; else result+="s:";
       
  1752       return result;
       
  1753     }
       
  1754 
       
  1755     /*! This is used for translation of the word that will possibly
       
  1756      *  be followed by a single name or by a list of names 
       
  1757      *  of the category.
       
  1758      */
       
  1759     virtual QCString trType(bool first_capital, bool singular)
       
  1760     { 
       
  1761       QCString result((first_capital ? "Type" : "type"));
       
  1762       if (!singular)  result+="s";
       
  1763       return result; 
       
  1764     }
       
  1765 
       
  1766     /*! This is used for translation of the word that will possibly
       
  1767      *  be followed by a single name or by a list of names 
       
  1768      *  of the category.
       
  1769      */
       
  1770     virtual QCString trSubprogram(bool first_capital, bool singular)
       
  1771     { 
       
  1772       QCString result((first_capital ? "Subprogram" : "subprogram"));
       
  1773       if (!singular)  result+="s";
       
  1774       return result; 
       
  1775     }
       
  1776 
       
  1777     /*! C# Type Constraint list */
       
  1778     virtual QCString trTypeConstraints()
       
  1779     {
       
  1780       return "Type Constraints";
       
  1781     }
       
  1782 
       
  1783 //////////////////////////////////////////////////////////////////////////
       
  1784 // new since 1.6.0 (mainly for the new search engine)
       
  1785 //////////////////////////////////////////////////////////////////////////
       
  1786 
       
  1787     /*! directory relation for \a name */
       
  1788     virtual QCString trDirRelation(const char *name)
       
  1789     {
       
  1790       return QCString(name)+" Relation";
       
  1791     }
       
  1792 
       
  1793     /*! Loading message shown when loading search results */
       
  1794     virtual QCString trLoading()
       
  1795     {
       
  1796       return "Loading...";
       
  1797     }
       
  1798 
       
  1799     /*! Label used for search results in the global namespace */
       
  1800     virtual QCString trGlobalNamespace()
       
  1801     {
       
  1802       return "Global Namespace";
       
  1803     }
       
  1804 
       
  1805     /*! Message shown while searching */
       
  1806     virtual QCString trSearching()
       
  1807     {
       
  1808       return "Searching...";
       
  1809     }
       
  1810 
       
  1811     /*! Text shown when no search results are found */
       
  1812     virtual QCString trNoMatches()
       
  1813     {
       
  1814       return "No Matches";
       
  1815     }
       
  1816 
       
  1817 };
       
  1818 
       
  1819 #endif