/******************************************************************************
*
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
*
* The translation into German was provided by
* Jens Seidel (jensseidel@users.sf.net)
* based on work from
* Jens Breitenstein (Jens.Breitenstein@tlc.de)
*/
// Updates:
// --------
// RK (who are you?)
// - Update for "new since 1.1.3" version
//
// 2001/03/23 Jens Seidel (jensseidel@users.sourceforge.net)
// - fixed typos
// - changed trPageDocumentation() "Seitenbeschreibung" to
// "Zusätzliche Informationen"
// - removed old trGeneratedFrom()
// - changed "/*!" to "/*" (documentation is inherited from translator_en.h
// (INHERIT_DOCS = YES), there's no need to make changes twice)
// - Update for "new since 1.2.4" version
//
// 2001/04/17 Jens Seidel (jensseidel@users.sourceforge.net)
// - fixed typos ("Vererbunsbeziehung", "geschützter")
// - use umlauts instead of html code ("ä",...)
// this makes it easier to read and fixes three problems (two in
// \code segment)
//
// 2001/04/23 Jens Seidel (jensseidel@users.sourceforge.net)
// - Update for "new since 1.2.6-20010422" version
//
// 2001/05/06 Jens Seidel (jensseidel@users.sourceforge.net)
// - Update for "new since 1.2.7" version
// - Removed implementation of latexBabelPackage(), trVerbatimText(),
// trFiles(), added latexLanguageSupportCommand().
//
// 2001/05/25 Jens Seidel (jensseidel@users.sourceforge.net)
// - Update for "new since 1.2.7-20010524" version:
// removed trAuthors(), trAuthor(), added trAuthor(bool, bool)
//
// 2001/07/24 Jens Seidel (jensseidel@users.sourceforge.net)
// - trClassDocumentation() updated as in the English translator.
//
// 2001/11/30 Oliver Brandt (o.brandt@tu-bs.de) and
// Jens Seidel (jensseidel@users.sourceforge.net)
// - trReferences() implemented.
// - trCompoundReference(), trLegendDocs() updated
// - Removed some TODO's
//
// 2001/02/13 Oliver Brandt (o.brandt@tu-bs.de)
// - Updated for "new since 1.2.13" version
// - Removed some TODO's
//
// 2002/07/08 Oliver Brandt (o.brandt@tu-bs.de)
// - Updated for "new since 1.2.16" version
//
// 2002/11/25 Jens Seidel (jensseidel@users.sourceforge.net)
// - sync with english version 1.3
// - TranslatorGerman doesn't inherit from TranslatorEnglish anymore,
// so I changed "/* " back to "/*! " as in the English file
// - use ngerman instead of german package in LaTeX
// - changed "Datenelemente" to "Methoden" in
// tr{,Static}{Public,Protected,Private}Members
//
// 2003/04/28 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.3" version
// - translated Java package to Paket
//
// 2003/09/11 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.3.1" version
//
// 2003/09/24 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated a few strings which changed in CVS revision 1.22
// ("compound" vs. "class")
//
// 2004/08/01 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.3.8" version
//
// 2004/09/19 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.3.9" version
//
// 2004/09/25 Jens Seidel (jensseidel@users.sourceforge.net)
// - changed "Typendefinitionen" to "Typdefinitionen" in
// trFileMembersDescription() and trTypedefs()
// - added a dash after (file, ...) names and in front of description
// - changed "Eigenschaften" to "Propertys" (yeah, not ..."ies")
//
// 2005/03/20 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.4.1" version
//
// 2005/04/09 Jens Seidel (jensseidel@users.sourceforge.net)
// - Changed Todo list translation as suggested in
// http://bugzilla.gnome.org/show_bug.cgi?id=172818
//
// 2005/05/09 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.4.3" version (removed unused methods)
//
// 2006/06/12 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.4.6" version
//
// 2008/02/04 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.5.4" version
//
// 2009/01/09 Jens Seidel (jensseidel@users.sourceforge.net)
// - Resynced the trLegendDocs() method
//
// 2010/03/17 Jens Seidel (jensseidel@users.sourceforge.net)
// - Updated for "new since 1.6.0" version
// - Resynced the trLegendDocs() method (added closing HTML tags)
// - Changed file encoding to utf-8, adapted idLanguageCharset()
// - New German orthography (ngerman) is now default in LaTeX
//
// 2012/04/11 Peter Grotrian
// - Updated for "new since 1.8.0" version
// - Some small corrections
//
// Todo:
// - see FIXME
#ifndef TRANSLATOR_DE_H
#define TRANSLATOR_DE_H
class TranslatorGerman : public TranslatorAdapter_1_8_2
{
public:
// --- Language control methods -------------------
/*! Used for identification of the language. The identification
* should not be translated. It should be replaced by the name
* of the language in English using lower-case characters only
* (e.g. "czech", "japanese", "russian", etc.). It should be equal to
* the identification used in language.cpp.
*/
virtual QCString idLanguage()
{ return "german"; }
/*! Used to get the LaTeX command(s) for the language support. This method
* was designed for languages which do wish to use a babel package.
*/
virtual QCString latexLanguageSupportCommand()
{
return "\\usepackage[ngerman]{babel}\n";
}
/*! return the language charset. This will be used for the HTML output */
virtual QCString idLanguageCharset()
{
return "utf-8";
}
// --- Language translation methods -------------------
/*! used in the compound documentation before a list of related functions. */
virtual QCString trRelatedFunctions()
{ return "Verwandte Funktionen"; }
/*! subscript for the related functions. */
virtual QCString trRelatedSubscript()
{ return "(Es handelt sich hierbei nicht um Elementfunktionen.)"; }
/*! header that is put before the detailed description of files, classes and namespaces. */
virtual QCString trDetailedDescription()
{ return "Ausführliche Beschreibung"; }
/*! header that is put before the list of typedefs. */
virtual QCString trMemberTypedefDocumentation()
{ return "Dokumentation der benutzerdefinierten Datentypen"; }
/*! header that is put before the list of enumerations. */
virtual QCString trMemberEnumerationDocumentation()
{ return "Dokumentation der Aufzählungstypen"; }
/*! header that is put before the list of member functions. */
virtual QCString trMemberFunctionDocumentation()
{ return "Dokumentation der Elementfunktionen"; }
/*! header that is put before the list of member attributes. */
virtual QCString trMemberDataDocumentation()
{ /* No difference if "OPTIMIZE_OUTPUT_FOR_C" is set! */
return "Dokumentation der Datenelemente";
}
/*! this is the text of a link put after brief descriptions. */
virtual QCString trMore()
{ return "Mehr ..."; }
/*! put in the class documentation */
virtual QCString trListOfAllMembers()
{ return "Aufstellung aller Elemente"; }
/*! used as the title of the "list of all members" page of a class */
virtual QCString trMemberList()
{ return "Elementverzeichnis"; }
/*! this is the first part of a sentence that is followed by a class name */
virtual QCString trThisIsTheListOfAllMembers()
{ return "Vollständige Aufstellung aller Elemente für "; }
/*! this is the remainder of the sentence after the class name */
virtual QCString trIncludingInheritedMembers()
{ return " einschließlich aller geerbten Elemente."; }
/*! 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="Automatisch erzeugt von Doxygen";
if (s) result+=(QCString)" für "+s;
result+=" aus dem Quellcode.";
return result;
}
/*! put after an enum name in the list of all members */
virtual QCString trEnumName()
{ return "enum-Bezeichner"; }
/*! put after an enum value in the list of all members */
virtual QCString trEnumValue()
{ return "enum-Wert"; }
/*! put after an undocumented member in the list of all members */
virtual QCString trDefinedIn()
{ return "Definiert in"; }
// 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 "Module"; }
/*! This is put above each page as a link to the class hierarchy */
virtual QCString trClassHierarchy()
{ return "Klassenhierarchie"; }
/*! 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 "Datenstrukturen";
}
else
{
return "Auflistung der Klassen";
}
}
/*! This is put above each page as a link to the list of documented files */
virtual QCString trFileList()
{ return "Auflistung der Dateien"; }
/*! 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 "Datenstruktur-Elemente";
}
else
{
return "Klassen-Elemente";
}
}
/*! This is put above each page as a link to all members of files. */
virtual QCString trFileMembers()
/* No difference if "OPTIMIZE_OUTPUT_FOR_C" is set! */
{ return "Datei-Elemente"; }
/*! This is put above each page as a link to all related pages. */
virtual QCString trRelatedPages()
{ return "Zusätzliche Informationen"; }
/*! This is put above each page as a link to all examples. */
virtual QCString trExamples()
{ return "Beispiele"; }
/*! This is put above each page as a link to the search engine. */
virtual QCString trSearch()
{ return "Suchen"; }
/*! This is an introduction to the class hierarchy. */
virtual QCString trClassHierarchyDescription()
{ return "Die Liste der Ableitungen ist -mit Einschränkungen- "
"alphabetisch sortiert:";
}
/*! This is an introduction to the list with all files. */
virtual QCString trFileListDescription(bool extractAll)
{
QCString result="Hier folgt die Aufzählung aller ";
if (!extractAll) result+="dokumentierten ";
result+="Dateien mit einer Kurzbeschreibung:";
return result;
}
/*! This is an introduction to the annotated compound list. */
virtual QCString trCompoundListDescription()
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
return "Hier folgt die Aufzählung aller Datenstrukturen "
"mit einer Kurzbeschreibung:";
}
else
{
return "Hier folgt die Aufzählung aller Klassen, Strukturen, "
"Varianten und Schnittstellen mit einer Kurzbeschreibung:";
}
}
/*! This is an introduction to the page with all class members. */
virtual QCString trCompoundMembersDescription(bool extractAll)
{
QCString result="Hier folgt die Aufzählung aller ";
if (!extractAll)
{
result+="dokumentierten ";
}
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="Strukturen und Varianten";
}
else
{
result+="Klassenelemente";
}
result+=" mit Verweisen auf ";
if (!extractAll)
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="die Dokumentation zu jedem Element:";
}
else
{
result+="die Klassendokumentation zu jedem Element:";
}
}
else
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="die zugehörigen Elemente:";
}
else
{
result+="die zugehörigen Klassen:";
}
}
return result;
}
/*! This is an introduction to the page with all file members. */
virtual QCString trFileMembersDescription(bool extractAll)
{
QCString result="Hier folgt die Aufzählung aller ";
if (!extractAll) result+="dokumentierten ";
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="Funktionen, Variablen, Makros, Aufzählungen und Typdefinitionen";
}
else
{
result+="Dateielemente";
}
result+=" mit Verweisen auf ";
if (extractAll)
result+="die Dokumentation zu jedem Element:";
else
result+="die zugehörigen Dateien:";
return result;
}
/*! This is an introduction to the page with the list of all examples */
virtual QCString trExamplesDescription()
{ return "Hier folgt eine Liste mit allen Beispielen:"; }
/*! This is an introduction to the page with the list of related pages */
virtual QCString trRelatedPagesDescription()
{ return "Hier folgt eine Liste mit zusammengehörigen Themengebieten:"; }
/*! This is an introduction to the page with the list of class/file groups */
virtual QCString trModulesDescription()
{ return "Hier folgt die Aufzählung aller Module:"; }
// 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"; }
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
virtual QCString trModuleIndex()
{ return "Modul-Verzeichnis"; }
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
virtual QCString trHierarchicalIndex()
{ return "Hierarchie-Verzeichnis"; }
/*! 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 "Datenstruktur-Verzeichnis";
else
return "Klassen-Verzeichnis";
}
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
*/
virtual QCString trFileIndex()
{ return "Datei-Verzeichnis"; }
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
*/
virtual QCString trModuleDocumentation()
{ return "Modul-Dokumentation"; }
/*! 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 "Datenstruktur-Dokumentation";
}
else
{
return "Klassen-Dokumentation";
}
}
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all files.
*/
virtual QCString trFileDocumentation()
{ return "Datei-Dokumentation"; }
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all examples.
*/
virtual QCString trExampleDocumentation()
{ return "Dokumentation der Beispiele"; }
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all related pages.
*/
virtual QCString trPageDocumentation()
{ return "Zusätzliche Informationen"; }
/*! This is used in LaTeX as the title of the document */
virtual QCString trReferenceManual()
{ return "Nachschlagewerk"; }
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
virtual QCString trDefines()
{ return "Makrodefinitionen"; }
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
virtual QCString trFuncProtos()
{ return "Funktionsprototypen"; }
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
virtual QCString trTypedefs()
{ return "Typdefinitionen"; }
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
virtual QCString trEnumerations()
{ return "Aufzählungen"; }
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
virtual QCString trFunctions()
{ return "Funktionen"; }
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual QCString trVariables()
{ return "Variablen"; }
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual QCString trEnumerationValues()
{ return "Aufzählungswerte"; }
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
virtual QCString trDefineDocumentation()
{ return "Makro-Dokumentation"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
virtual QCString trFunctionPrototypeDocumentation()
{ return "Funktionsprototypen Dokumentation"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
virtual QCString trTypedefDocumentation()
{ return "Dokumentation der benutzerdefinierten Typen"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
virtual QCString trEnumerationTypeDocumentation()
{ return "Dokumentation der Aufzählungstypen"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
virtual QCString trFunctionDocumentation()
{ return "Dokumentation der Funktionen"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
virtual QCString trVariableDocumentation()
{ return "Variablen-Dokumentation"; }
/*! 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 "Datenstrukturen";
}
else
{
return "Klassen";
}
}
/*! 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)"Erzeugt am "+date;
if (projName) result+=(QCString)" für "+projName;
result+=(QCString)" von";
return result;
}
/*! This is part of the sentence used in the standard footer of each page.
*/
virtual QCString trWrittenBy()
{
return "geschrieben von";
}
/*! this text is put before a class diagram */
virtual QCString trClassDiagram(const char *clName)
{
return (QCString)"Klassendiagramm für "+clName+":";
}
/*! this text is generated when the \\internal command is used. */
virtual QCString trForInternalUseOnly()
{ return "Nur für den internen Gebrauch."; }
/*! this text is generated when the \\warning command is used. */
virtual QCString trWarning()
{ return "Warnung"; }
/*! this text is generated when the \\version command is used. */
virtual QCString trVersion()
{ return "Version"; }
/*! this text is generated when the \\date command is used. */
virtual QCString trDate()
{ return "Datum"; }
/*! this text is generated when the \\return command is used. */
virtual QCString trReturns()
{ return "Rückgabe"; }
/*! this text is generated when the \\sa command is used. */
virtual QCString trSeeAlso()
{ return "Siehe auch"; }
/*! this text is generated when the \\param command is used. */
virtual QCString trParameters()
{ return "Parameter"; }
/*! this text is generated when the \\exception command is used. */
virtual QCString trExceptions()
{ return "Ausnahmebehandlung"; }
/*! this text is used in the title page of a LaTeX document. */
virtual QCString trGeneratedBy()
{ return "Erzeugt von"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
/*! used as the title of page containing all the index of all namespaces. */
virtual QCString trNamespaceList()
{ return "Liste aller Namensbereiche"; }
/*! used as an introduction to the namespace list */
virtual QCString trNamespaceListDescription(bool extractAll)
{
QCString result="Liste aller ";
if (!extractAll) result+="dokumentierten ";
result+="Namensbereiche mit Kurzbeschreibung:";
return result;
}
/*! used in the class documentation as a header before the list of all
* friends of a class
*/
virtual QCString trFriends()
{ return "Freundbeziehungen"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
/*! used in the class documentation as a header before the list of all
* related classes
*/
virtual QCString trRelatedFunctionDocumentation()
{ return "Freundbeziehungen und Funktionsdokumentation"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////
/*! used as the title of the HTML page of a class/struct/union */
virtual QCString trCompoundReference(const char *clName,
ClassDef::CompoundType compType,
bool isTemplate)
{
QCString result=(QCString)clName+" ";
if (isTemplate) result+="Template-";
switch(compType)
{
case ClassDef::Class: result+="Klassen"; break;
case ClassDef::Struct: result+="Struktur"; break;
case ClassDef::Union: result+="Varianten"; break;
case ClassDef::Interface: result+="Schnittstellen"; break;
case ClassDef::Protocol: result+="Protokoll"; break;
case ClassDef::Category: result+="Kategorie"; break;
case ClassDef::Exception: result+="Ausnahmen"; break;
}
result+="referenz";
return result;
}
/*! used as the title of the HTML page of a file */
virtual QCString trFileReference(const char *fileName)
{
QCString result=fileName;
result+="-Dateireferenz";
return result;
}
/*! used as the title of the HTML page of a namespace */
virtual QCString trNamespaceReference(const char *namespaceName)
{
QCString result=namespaceName;
result+="-Namensbereichsreferenz";
return result;
}
virtual QCString trPublicMembers()
{ return "Öffentliche Methoden"; }
virtual QCString trPublicSlots()
{ return "Öffentliche Slots"; }
virtual QCString trSignals()
{ return "Signale"; }
virtual QCString trStaticPublicMembers()
{ return "Öffentliche, statische Methoden"; }
virtual QCString trProtectedMembers()
{ return "Geschützte Methoden"; }
virtual QCString trProtectedSlots()
{ return "Geschützte Slots"; }
virtual QCString trStaticProtectedMembers()
{ return "Geschützte, statische Methoden"; }
virtual QCString trPrivateMembers()
{ return "Private Methoden"; }
virtual QCString trPrivateSlots()
{ return "Private Slots"; }
virtual QCString trStaticPrivateMembers()
{ return "Private, statische Methoden"; }
/*! 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
\n" "Die Rechtecke in obigem Graphen bedeuten:\n" "
\n" "\n" "Die Pfeile bedeuten:\n" "
\n" "