summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/classdef.h2
-rw-r--r--src/doxygen.cpp57
-rw-r--r--src/doxygen.h1
-rw-r--r--src/memberdef.h1
-rw-r--r--src/translator_jp.h86
-rw-r--r--src/translator_no.h1389
-rw-r--r--src/util.cpp13
7 files changed, 1195 insertions, 354 deletions
diff --git a/src/classdef.h b/src/classdef.h
index 3f6bf8e..f73a7d1 100644
--- a/src/classdef.h
+++ b/src/classdef.h
@@ -161,6 +161,8 @@ class ClassDef : public Definition
*/
ClassDef *templateMaster() const { return m_templateMaster; }
+ bool isTemplate() const { return m_tempArgs!=0; }
+
IncludeInfo *includeInfo() const { return m_incInfo; }
UsesClassDict *usedImplementationClasses() const
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 98bb3ac..cd5d557 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -120,7 +120,6 @@ SDict<DefinitionList> *Doxygen::symbolMap;
bool Doxygen::outputToWizard=FALSE;
QDict<int> * Doxygen::htmlDirMap = 0;
QCache<LookupInfo> Doxygen::lookupCache(20000,20000);
-bool Doxygen::lookupCacheEnabled=FALSE;
static StringList inputFiles;
static StringDict excludeNameDict(1009); // sections
@@ -6193,6 +6192,54 @@ static void findSectionsInDocumentation()
if (Doxygen::mainPage) Doxygen::mainPage->findSectionsInDocumentation();
}
+static void flushCachedTemplateRelations()
+{
+ // remove all references to template classes from the cache
+ // as there can be new template instances that should be linked
+ // to instead.
+ QCacheIterator<LookupInfo> ci(Doxygen::lookupCache);
+ LookupInfo *li=0;
+ for (ci.toFirst();(li=ci.current());++ci)
+ {
+ if (li->classDef && li->classDef->isTemplate())
+ {
+ Doxygen::lookupCache.remove(ci.currentKey());
+ }
+ }
+ // remove all cached typedef resolutions whose target is a
+ // template class as this may now be a template instance
+ MemberNameSDict::Iterator fnli(Doxygen::functionNameSDict);
+ MemberName *fn;
+ for (;(fn=fnli.current());++fnli) // for each global function name
+ {
+ MemberNameIterator fni(*fn);
+ MemberDef *fmd;
+ for (;(fmd=fni.current());++fni) // for each function with that name
+ {
+ if (fmd->isTypedefValCached())
+ {
+ ClassDef *cd = fmd->getCachedTypedefVal();
+ if (cd->isTemplate()) fmd->invalidateTypedefValCache();
+ }
+ }
+ }
+ MemberNameSDict::Iterator mnli(Doxygen::memberNameSDict);
+ for (;(fn=mnli.current());++mnli) // for each class method name
+ {
+ MemberNameIterator mni(*fn);
+ MemberDef *fmd;
+ for (;(fmd=mni.current());++mni) // for each function with that name
+ {
+ if (fmd->isTypedefValCached())
+ {
+ ClassDef *cd = fmd->getCachedTypedefVal();
+ if (cd->isTemplate()) fmd->invalidateTypedefValCache();
+ }
+ }
+ }
+}
+
+
//----------------------------------------------------------------------------
static void findDefineDocumentation(Entry *root)
@@ -7437,7 +7484,6 @@ void initDoxygen()
Doxygen::memGrpInfoDict.setAutoDelete(TRUE);
Doxygen::tagDestinationDict.setAutoDelete(TRUE);
Doxygen::lookupCache.setAutoDelete(TRUE);
- Doxygen::lookupCacheEnabled=FALSE;
}
void cleanUpDoxygen()
@@ -8227,6 +8273,9 @@ void parseInput()
findInheritedTemplateInstances();
findUsedTemplateInstances();
+ msg("Flushing cached template relations that have become invalid...\n");
+ flushCachedTemplateRelations();
+
msg("Creating members for template instances...\n");
createTemplateInstanceMembers();
@@ -8235,10 +8284,6 @@ void parseInput()
computeClassRelations();
classEntries.clear();
- // from now on the class relations are fixed and we can
- // start to cache them to improve performance
- Doxygen::lookupCacheEnabled=TRUE;
-
msg("Searching for enumerations...\n");
findEnums(root);
findEnumDocumentation(root);
diff --git a/src/doxygen.h b/src/doxygen.h
index 32d2cbf..404ac22 100644
--- a/src/doxygen.h
+++ b/src/doxygen.h
@@ -112,7 +112,6 @@ class Doxygen
static bool outputToWizard;
static QDict<int> *htmlDirMap;
static QCache<LookupInfo> lookupCache;
- static bool lookupCacheEnabled;
};
void initDoxygen();
diff --git a/src/memberdef.h b/src/memberdef.h
index 736dc2d..0208746 100644
--- a/src/memberdef.h
+++ b/src/memberdef.h
@@ -273,6 +273,7 @@ class MemberDef : public Definition
QCString getCachedTypedefTemplSpec() const { return m_cachedTypedefTemplSpec; }
void cacheTypedefVal(ClassDef *val,const QCString &templSpec)
{ m_isTypedefValCached=TRUE; m_cachedTypedefValue=val; m_cachedTypedefTemplSpec=templSpec; }
+ void invalidateTypedefValCache() { m_isTypedefValCached=FALSE; }
// declaration <-> definition relation
void setMemberDefinition(MemberDef *md) { memDef=md; }
diff --git a/src/translator_jp.h b/src/translator_jp.h
index 2ed60ff..ec74b1e 100644
--- a/src/translator_jp.h
+++ b/src/translator_jp.h
@@ -29,7 +29,7 @@
#ifndef TRANSLATOR_JP_H
#define TRANSLATOR_JP_H
-class TranslatorJapanese : public TranslatorAdapter_1_3_3
+class TranslatorJapanese : public Translator
{
private:
/*! The decode() can change euc into sjis */
@@ -600,13 +600,13 @@ class TranslatorJapanese : public TranslatorAdapter_1_3_3
case ClassDef::Class: result+=decode("¥¯¥é¥¹ "); break;
case ClassDef::Struct: result+=decode("¹½Â¤ÂÎ "); break;
case ClassDef::Union: result+=decode("¶¦ÍÑÂÎ "); break;
- case ClassDef::Interface: result+=decode("¥¤¥ó¥¿¥Õ¥§¡¼¥¹"); break;
- case ClassDef::Protocol: result+=decode("Protocol"); break; // translate me!
- case ClassDef::Category: result+=decode("Category"); break; // translate me!
- case ClassDef::Exception: result+=decode("Îã³°"); break; //TODO:fixme
+ case ClassDef::Interface: result+=decode("¥¤¥ó¥¿¥Õ¥§¡¼¥¹ "); break;
+ case ClassDef::Protocol: result+=decode("¥×¥í¥È¥³¥ë "); break;
+ case ClassDef::Category: result+=decode("¥«¥Æ¥´¥ê "); break;
+ case ClassDef::Exception: result+=decode("Îã³° "); break;
}
- if (isTemplate) result+=decode(" ¥Æ¥ó¥×¥ì¡¼¥È");
- result+=(QCString)clName;
+ if (isTemplate) result+=decode("¥Æ¥ó¥×¥ì¡¼¥È ");
+ result+=(QCString)clName;
return result;
}
@@ -759,9 +759,9 @@ class TranslatorJapanese : public TranslatorAdapter_1_3_3
case ClassDef::Struct: result+=decode("¹½Â¤ÂÎ"); break;
case ClassDef::Union: result+=decode("¶¦ÍÑÂÎ"); break;
case ClassDef::Interface: result+=decode("¥¤¥ó¥¿¥Õ¥§¡¼¥¹"); break;
- case ClassDef::Protocol: result+=decode("Protocol"); break; // translate me!
- case ClassDef::Category: result+=decode("Category"); break; // translate me!
- case ClassDef::Exception: result+=decode("Îã³°"); break; //TODO:fixme
+ case ClassDef::Protocol: result+=decode("¥×¥í¥È¥³¥ë"); break;
+ case ClassDef::Category: result+=decode("¥«¥Æ¥´¥ê"); break;
+ case ClassDef::Exception: result+=decode("Îã³°"); break;
}
result+=decode("¤ÎÀâÌÀ¤Ï¼¡¤Î¥Õ¥¡¥¤¥ë¤«¤éÀ¸À®¤µ¤ì¤Þ¤·¤¿:");
return result;
@@ -1341,7 +1341,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_3_3
*/
virtual QCString trImplementedFromList(int numEntries)
{
- return trWriteList(numEntries)+decode("¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤¹")+".";
+ return trWriteList(numEntries)+decode("¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹")+".";
}
/*! used in member documentation blocks to produce a list of
@@ -1349,7 +1349,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_3_3
*/
virtual QCString trImplementedInList(int numEntries)
{
- return trWriteList(numEntries)+decode("¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹")+".";
+ return trWriteList(numEntries)+decode("¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤¹")+".";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.16
@@ -1447,5 +1447,67 @@ class TranslatorJapanese : public TranslatorAdapter_1_3_3
{
return decode("´Ø¿ô¤Î¸Æ¤Ó½Ð¤·¥°¥é¥Õ:");
}
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! When the search engine is enabled this text is put in the header
+ * of each page before the field where one can enter the text to search
+ * for.
+ */
+ virtual QCString trSearchForIndex()
+ {
+ return decode("¸¡º÷");
+ }
+ /*! This string is used as the title for the page listing the search
+ * results.
+ */
+ virtual QCString trSearchResultsTitle()
+ {
+ return decode("¸¡º÷·ë²Ì");
+ }
+ /*! This string is put just before listing the search results. The
+ * text can be different depending on the number of documents found.
+ * Inside the text you can put the special marker $num to insert
+ * the number representing the actual number of search results.
+ * The @a numDocuments parameter can be either 0, 1 or 2, where the
+ * value 2 represents 2 or more matches. HTML markup is allowed inside
+ * the returned string.
+ */
+ virtual QCString trSearchResults(int numDocuments)
+ {
+ if (numDocuments==0)
+ {
+ return decode("ÆþÎϤµ¤ì¤¿¾ò·ï¤Ë¥Þ¥Ã¥Á¤¹¤ë¥É¥­¥å¥á¥ó¥È¤¬¤¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿.");
+ }
+ else if (numDocuments==1)
+ {
+ return decode("ÆþÎϤµ¤ì¤¿¾ò·ï¤Ë¥Þ¥Ã¥Á¤¹¤ë¥É¥­¥å¥á¥ó¥È¤¬ <b>1</b> ·ï¤ß¤Ä¤«¤ê¤Þ¤·¤¿.");
+ }
+ else
+ {
+ return decode("ÆþÎϤµ¤ì¤¿¾ò·ï¤Ë¥Þ¥Ã¥Á¤¹¤ë¥É¥­¥å¥á¥ó¥È¤¬ <b>$num</b> ·ï¤ß¤Ä¤«¤ê¤Þ¤·¤¿. "
+ "ºÇ¤â°ìÃפ·¤Æ¤¤¤ë¤â¤Î¤«¤éɽ¼¨¤µ¤ì¤Þ¤¹.");
+ }
+ }
+ /*! This string is put before the list of matched words, for each search
+ * result. What follows is the list of words that matched the query.
+ */
+ virtual QCString trSearchMatches()
+ {
+ return decode("¥Þ¥Ã¥Á¤·¤¿Ã±¸ì:");
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3.8
+//////////////////////////////////////////////////////////////////////////
+
+ /*! This is used in HTML as the title of page with source code for file filename
+ */
+ virtual QCString trSourceFile(QCString& filename)
+ {
+ return filename + decode(" ¥½¡¼¥¹¥Õ¥¡¥¤¥ë");
+ }
};
#endif
diff --git a/src/translator_no.h b/src/translator_no.h
index 3fd21ee..1fcadc1 100644
--- a/src/translator_no.h
+++ b/src/translator_no.h
@@ -2,7 +2,7 @@
*
*
*
- * Copyright (C) 1997-2004 by Dimitri van Heesch.
+ * Copyright (C) 1997-2003 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
@@ -15,482 +15,801 @@
*
*/
-/*
-==================================================================================
-
-==================================================================================
-*/
+/******************************************************************************
+ * Norwegian translation by Lars Erik Jordet <lejordet@gmail.com>
+ *
+ * This is a new translation made from scratch, not based on my older Norwegian translation (for 1.2.2)
+ *
+ * Translation notes (in Norwegian)
+ *
+ * Jeg har stort sett brukt ord som ligger ganske nær de engelske ekvivalentene,
+ * for eksempel "enumeration" -> "enumerasjon", og i enkelte tilfeller det engelske
+ * ordet direkte, der jeg finner det mer naturlig enn å prøve å stable en setning
+ * på beina på norsk, eller jeg selv foretrekker det engelske ordet (eks: "Header-fil").
+ * Om noen ikke skulle like disse valgene, kontakt meg på mailadressen over.
+ *
+ * Doxygen har mange strings som består av sammensatte ord ("Member function description", for eksempel),
+ * som ikke alltid ser like ryddig ut på norsk. Jeg har brukt bindestrek for å få
+ * det til å se presentabelt ut, men om noen har en bedre idé, send til mailadressen over.
+ *
+ * Changelog
+ *
+ * 2003-12-18: Initial translation
+ * 2004-07-19: Fixup to prepare for 1.3.8 (I had forgotten some functions)
+ */
#ifndef TRANSLATOR_NO_H
#define TRANSLATOR_NO_H
-#include "translator_adapter.h"
-
-class TranslatorNorwegian : public TranslatorAdapter_1_2_2
+class TranslatorNorwegian : public Translator
{
public:
- QCString idLanguage()
- { return "norwegian"; }
- QCString latexBabelPackage()
- { return "norwegian"; }
- QCString trRelatedFunctions()
- { return "Beslektede funksjoner"; }
+ // --- 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 "norwegian"; }
+
+ /*! Used to get the LaTeX command(s) for the language support.
+ * This method should return string with commands that switch
+ * LaTeX to the desired language. For example
+ * <pre>"\\usepackage[german]{babel}\n"
+ * </pre>
+ * or
+ * <pre>"\\usepackage{polski}\n"
+ * "\\usepackage[latin2]{inputenc}\n"
+ * "\\usepackage[T1]{fontenc}\n"
+ * </pre>
+ */
+ virtual QCString latexLanguageSupportCommand()
+ {
+ return
+ "\\usepackage[norwegian]{babel}\n"
+ "\\usepackage[latin1]{inputenc}\n"
+ "\\usepackage[T1]{fontenc}\n";
+ }
- QCString trRelatedSubscript()
- { return "(Observer at disse ikke er medlemsfunksjoner)"; }
+ /*! return the language charset. This will be used for the HTML output */
+ virtual QCString idLanguageCharset()
+ {
+ return "iso-8859-1";
+ }
- QCString trDetailedDescription()
- { return "Detaljert beskrivelse"; }
+ // --- Language translation methods -------------------
- QCString trMemberTypedefDocumentation()
- { return "Dokumentasjon over typedefinerte medlemmer"; }
+ /*! used in the compound documentation before a list of related functions. */
+ virtual QCString trRelatedFunctions()
+ { return "Relaterte Funksjoner"; }
- QCString trMemberEnumerationDocumentation()
- { return "Dokumentasjon over enumererte medlemmer"; }
+ /*! subscript for the related functions. */
+ virtual QCString trRelatedSubscript()
+ { return "(Merk at disse ikke er medlemsfunksjoner.)"; }
- QCString trMemberFunctionDocumentation()
- { return "Dokumentasjon over medlemsfunksjoner"; }
+ /*! header that is put before the detailed description of files, classes and namespaces. */
+ virtual QCString trDetailedDescription()
+ { return "Detaijert Beskrivelse"; }
- QCString trMemberDataDocumentation()
- { return "Dokumentasjon over datamedlemmer"; }
+ /*! header that is put before the list of typedefs. */
+ virtual QCString trMemberTypedefDocumentation()
+ { return "Medlemstypedef-dokumentasjon"; }
+
+ /*! header that is put before the list of enumerations. */
+ virtual QCString trMemberEnumerationDocumentation()
+ { return "Medlemsenumerasjons-dokumentasjon"; }
+
+ /*! header that is put before the list of member functions. */
+ virtual QCString trMemberFunctionDocumentation()
+ { return "Medlemsfunksjons-dokumentasjon"; }
+
+ /*! header that is put before the list of member attributes. */
+ virtual QCString trMemberDataDocumentation()
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Feltdokumentasjon";
+ }
+ else
+ {
+ return "Medlemsdata-dokumentasjon";
+ }
+ }
- QCString trMore()
+ /*! this is the text of a link put after brief descriptions. */
+ virtual QCString trMore()
{ return "Mer..."; }
- QCString trListOfAllMembers()
+ /*! put in the class documentation */
+ virtual QCString trListOfAllMembers()
{ return "Liste over alle medlemmer."; }
- QCString trMemberList()
+ /*! used as the title of the "list of all members" page of a class */
+ virtual QCString trMemberList()
{ return "Medlemsliste"; }
- QCString trThisIsTheListOfAllMembers()
- { return "Det her er en fullstendig liste over medlemmer for "; }
+ /*! this is the first part of a sentence that is followed by a class name */
+ virtual QCString trThisIsTheListOfAllMembers()
+ { return "Dette er den fullstendige listen over medlemmer for "; }
- QCString trIncludingInheritedMembers()
- { return " med alle nedarvede medlemmer."; }
-
- QCString trGeneratedAutomatically(const char *s)
- { QCString result="Automatisk generert av Doxygen";
+ /*! this is the remainder of the sentence after the class name */
+ virtual QCString trIncludingInheritedMembers()
+ { return ", alle arvede medlemmer inkludert."; }
+
+ /*! 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="Generert automatisk av Doxygen";
if (s) result+=(QCString)" for "+s;
result+=" fra kildekoden.";
return result;
}
- QCString trEnumName()
- { return "enum navn"; }
-
- QCString trEnumValue()
- { return "enum verdi"; }
-
- QCString trDefinedIn()
+ /*! put after an enum name in the list of all members */
+ virtual QCString trEnumName()
+ { return "enumnavn"; }
+
+ /*! put after an enum value in the list of all members */
+ virtual QCString trEnumValue()
+ { return "enumverdi"; }
+
+ /*! put after an undocumented member in the list of all members */
+ virtual QCString trDefinedIn()
{ return "definert i"; }
+ // quick reference sections
- QCString trVerbatimText(const char *f)
- { return (QCString)"Dette er den ordrette teksten fra inkluderingsfilen "+f; }
-
- QCString trModules()
+ /*! 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 "Moduler"; }
-
- QCString trClassHierarchy()
+
+ /*! This is put above each page as a link to the class hierarchy */
+ virtual QCString trClassHierarchy()
{ return "Klassehierarki"; }
+
+ /*! 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 "Datastrukturer";
+ }
+ else
+ {
+ return "Klasseliste";
+ }
+ }
+
+ /*! This is put above each page as a link to the list of documented files */
+ virtual QCString trFileList()
+ { return "Fil-liste"; }
+
+ /*! This is put above each page as a link to the list of all verbatim headers */
+ virtual QCString trHeaderFiles()
+ { return "Header-filer"; }
+
+ /*! 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 "Datafelt";
+ }
+ else
+ {
+ return "Klassemedlemmer";
+ }
+ }
- QCString trCompoundList()
- { return "Sammensatt klasseliste"; }
-
- QCString trFileList()
- { return "Filliste"; }
-
- QCString trHeaderFiles()
- { return "Headerfiler"; }
-
- QCString trCompoundMembers()
- { return "Sammensatte klassemedlemmer"; }
-
- QCString trFileMembers()
- { return "Filmedlemmer"; }
+ /*! This is put above each page as a link to all members of files. */
+ virtual QCString trFileMembers()
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Globale";
+ }
+ else
+ {
+ return "Filmedlemmer";
+ }
+ }
- QCString trRelatedPages()
- { return "Beslektede sider"; }
+ /*! This is put above each page as a link to all related pages. */
+ virtual QCString trRelatedPages()
+ { return "Relaterte Sider"; }
- QCString trExamples()
- { return "Eksempel"; }
+ /*! This is put above each page as a link to all examples. */
+ virtual QCString trExamples()
+ { return "Eksempler"; }
- QCString trSearch()
+ /*! This is put above each page as a link to the search engine. */
+ virtual QCString trSearch()
{ return "Søk"; }
- QCString trClassHierarchyDescription()
- { return "Denne listen over arv er grovt, men ikke helt, "
- "sortert i alfabetisk rekkefølge:";
+ /*! This is an introduction to the class hierarchy. */
+ virtual QCString trClassHierarchyDescription()
+ { return "Denne arvelisten er sortert grovt, "
+ "men ikke fullstendig, alfabetisk:";
}
- QCString trFileListDescription(bool extractAll)
+ /*! This is an introduction to the list with all files. */
+ virtual QCString trFileListDescription(bool extractAll)
{
- QCString result="Her følger en liste over alle ";
+ QCString result="Her er en liste over alle ";
if (!extractAll) result+="dokumenterte ";
- result+="filer, med en kort beskrivelse:";
+ result+="filer med korte beskrivelser:";
return result;
}
- QCString trCompoundListDescription()
- { return "Her følger klassene, struktene og "
- "unionene med en kort beskrivelse:";
+ /*! This is an introduction to the annotated compound list. */
+ virtual QCString trCompoundListDescription()
+ {
+
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Her er datastrukturene med korte beskrivelser:";
+ }
+ else
+ {
+ return "Her er klasser, structer, "
+ "unioner og interfacer med korte beskrivelser:";
+ }
}
- QCString trCompoundMembersDescription(bool extractAll)
+ /*! This is an introduction to the page with all class members. */
+ virtual QCString trCompoundMembersDescription(bool extractAll)
{
-
- QCString result="Her følger en liste over alle ";
- if (!extractAll) result+="dokumenterte ";
- result+="klassemedlemmer med lenker til ";
- if (!extractAll) result+="klassedokumentasjonen for hvert medlem:";
- else result+="klassene som de tilhører:";
+ QCString result="Her er en liste over alle ";
+ if (!extractAll)
+ {
+ result+="dokumenterte ";
+ }
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ result+="struct- og unionfelter";
+ }
+ else
+ {
+ result+="klassemedlemmer";
+ }
+ result+=" med koblinger til ";
+ if (!extractAll)
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ result+="struct-/union-dokumentasjon for hvert felt:";
+ }
+ else
+ {
+ result+="klassedokumentasjonen for hvert medlem:";
+ }
+ }
+ else
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ result+="structene/unionene de hører til:";
+ }
+ else
+ {
+ result+="klassene de hører til:";
+ }
+ }
return result;
}
-
- QCString trFileMembersDescription(bool extractAll)
+ /*! This is an introduction to the page with all file members. */
+ virtual QCString trFileMembersDescription(bool extractAll)
{
- QCString result="Her følger en liste over alle ";
+ QCString result="Her er en liste over alle ";
if (!extractAll) result+="dokumenterte ";
- result+="filmedlemmer med lenker til ";
- if (extractAll) result+="dokumentasjonsfilen for hvert medlem:";
- else result+="filene som de tilhører:";
+
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ result+="funksjoner, variable, definerte, enumer, and typedefer";
+ }
+ else
+ {
+ result+="filmedlemmer";
+ }
+ result+=" med koblinger til ";
+ if (extractAll)
+ result+="filene de hører til:";
+ else
+ result+="dokumentasjonen:";
return result;
}
- QCString trHeaderFilesDescription()
- { return "Her følger headerfilene som API består av:"; }
+ /*! This is an introduction to the page with the list of all header files. */
+ virtual QCString trHeaderFilesDescription()
+ { return "Her er alle header-filene som utgjør API:"; }
+
+ /*! This is an introduction to the page with the list of all examples */
+ virtual QCString trExamplesDescription()
+ { return "Her er en liste over alle eksemplene:"; }
- QCString trExamplesDescription()
- { return "Her følger en liste med alle eksempler:"; }
+ /*! This is an introduction to the page with the list of related pages */
+ virtual QCString trRelatedPagesDescription()
+ { return "Her er en liste over alle relaterte dokumentasjonssider:"; }
- QCString trRelatedPagesDescription()
- { return "Her følger en liste over alle beslektede dokumentasjonssider:";}
+ /*! This is an introduction to the page with the list of class/file groups */
+ virtual QCString trModulesDescription()
+ { return "Her er en liste over alle moduler:"; }
- QCString trModulesDescription()
- { return "Her følger en liste over alle moduler:"; }
+ /*! This sentences is used in the annotated class/file lists if no brief
+ * description is given.
+ */
+ virtual QCString trNoDescriptionAvailable()
+ { return "Ingen beskrivelse tilgjengelig"; }
+
+ // index titles (the project name is prepended for these)
- QCString trNoDescriptionAvailable()
- { return "Beskrivelse mangler"; }
- QCString trDocumentation()
+ /*! This is used in HTML as the title of index.html. */
+ virtual QCString trDocumentation()
{ return "Dokumentasjon"; }
- QCString trModuleIndex()
- { return "Modulindex"; }
+ /*! This is used in LaTeX as the title of the chapter with the
+ * index of all groups.
+ */
+ virtual QCString trModuleIndex()
+ { return "Modulindeks"; }
- QCString trHierarchicalIndex()
- { return "Hierarkisk Indeks"; }
+ /*! This is used in LaTeX as the title of the chapter with the
+ * class hierarchy.
+ */
+ virtual QCString trHierarchicalIndex()
+ { return "Hierarkisk indeks"; }
- QCString trCompoundIndex()
- { return "Sammensatt Indeks"; }
+ /*! 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 "Datastrukturindeks";
+ }
+ else
+ {
+ return "Klasse-indeks";
+ }
+ }
- QCString trFileIndex()
- { return "Filindeks"; }
+ /*! This is used in LaTeX as the title of the chapter with the
+ * list of all files.
+ */
+ virtual QCString trFileIndex()
+ { return "Fil-indeks"; }
- QCString trModuleDocumentation()
- { return "Dokumentasjon av moduler"; }
+ /*! This is used in LaTeX as the title of the chapter containing
+ * the documentation of all groups.
+ */
+ virtual QCString trModuleDocumentation()
+ { return "Moduldokumentasjon"; }
- QCString trClassDocumentation()
- { return "Dokumentasjon av klasser"; }
+ /*! 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 "Datastruktur-dokumentasjon";
+ }
+ else
+ {
+ return "Klassedokumentasjon";
+ }
+ }
- QCString trFileDocumentation()
- { return "Dokumentasjon av filer"; }
+ /*! This is used in LaTeX as the title of the chapter containing
+ * the documentation of all files.
+ */
+ virtual QCString trFileDocumentation()
+ { return "Fildokumentasjon"; }
- QCString trExampleDocumentation()
- { return "Dokumentasjon av eksempler"; }
+ /*! This is used in LaTeX as the title of the chapter containing
+ * the documentation of all examples.
+ */
+ virtual QCString trExampleDocumentation()
+ { return "Eksempeldokumentasjon"; }
- QCString trPageDocumentation()
- { return "Dokumentasjon av sider"; }
+ /*! This is used in LaTeX as the title of the chapter containing
+ * the documentation of all related pages.
+ */
+ virtual QCString trPageDocumentation()
+ { return "Sidedokumentasjon"; }
- QCString trReferenceManual()
+ /*! This is used in LaTeX as the title of the document */
+ virtual QCString trReferenceManual()
{ return "Referansemanual"; }
+
+ /*! This is used in the documentation of a file as a header before the
+ * list of defines
+ */
+ virtual QCString trDefines()
+ { return "Definerte"; }
- QCString trDefines()
- { return "Definisjoner"; }
- QCString trFuncProtos()
- { return "Funksjonsprototyper"; }
- QCString trTypedefs()
- { return "Typedefinisjoner"; }
- QCString trEnumerations()
- { return "Enumererte typer"; }
- QCString trFunctions()
- { return "Funksjoner"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of function prototypes
+ */
+ virtual QCString trFuncProtos()
+ { return "Funksjonprototyper"; }
- QCString trVariables()
- { return "Variable"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of typedefs
+ */
+ virtual QCString trTypedefs()
+ { return "Typedefer"; }
- QCString trEnumerationValues()
- { return "Enumererte typers verdier"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of enumerations
+ */
+ virtual QCString trEnumerations()
+ { return "Enumerasjoner"; }
- QCString trAuthor()
- { return "Forfatter"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of (global) functions
+ */
+ virtual QCString trFunctions()
+ { return "Funksjoner"; }
- QCString trDefineDocumentation()
- { return "Dokumentasjon over definisjoner"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of (global) variables
+ */
+ virtual QCString trVariables()
+ { return "Variable"; }
- QCString trFunctionPrototypeDocumentation()
- { return "Dokumentasjon over funksjonsprototyper"; }
+ /*! This is used in the documentation of a file as a header before the
+ * list of (global) variables
+ */
+ virtual QCString trEnumerationValues()
+ { return "Enumerasjonsverdier"; }
+
+ /*! This is used in the documentation of a file before the list of
+ * documentation blocks for defines
+ */
+ virtual QCString trDefineDocumentation()
+ { return "Define-dokumentasjon"; }
- QCString trTypedefDocumentation()
- { return "Dokumentasjon over typedefinisjoner"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for function prototypes
+ */
+ virtual QCString trFunctionPrototypeDocumentation()
+ { return "Funksjonsprototype-dokumentasjon"; }
- QCString trEnumerationTypeDocumentation()
- { return "Dokumentasjon over enumererte typer"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for typedefs
+ */
+ virtual QCString trTypedefDocumentation()
+ { return "Typedef-dokumentasjon"; }
- QCString trEnumerationValueDocumentation()
- { return "Dokumentasjon over enumererte typers verdier"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for enumeration types
+ */
+ virtual QCString trEnumerationTypeDocumentation()
+ { return "Enumerert type-dokumentasjon"; }
- QCString trFunctionDocumentation()
- { return "Dokumentasjon over funksjoner"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for enumeration values
+ */
+ virtual QCString trEnumerationValueDocumentation()
+ { return "Enumerert verdi-dokumentasjon"; }
- QCString trVariableDocumentation()
- { return "Dokumentasjon over variable"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for functions
+ */
+ virtual QCString trFunctionDocumentation()
+ { return "Funksjonsdokumentasjon"; }
- QCString trCompounds()
- { return "Sammensetning"; }
+ /*! This is used in the documentation of a file/namespace before the list
+ * of documentation blocks for variables
+ */
+ virtual QCString trVariableDocumentation()
+ { return "Variabeldokumentasjon"; }
- QCString trFiles()
- { return "Filer"; }
+ /*! 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 "Datastrukturer";
+ }
+ else
+ {
+ return "Klasser";
+ }
+ }
- QCString trGeneratedAt(const char *date,const char *projName)
- {
- QCString result=(QCString)"Generert "+date;
+ /*! 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)"Generert på "+date;
if (projName) result+=(QCString)" for "+projName;
result+=(QCString)" av";
return result;
}
-
- QCString trWrittenBy()
+ /*! This is part of the sentence used in the standard footer of each page.
+ */
+ virtual QCString trWrittenBy()
{
return "skrevet av";
}
- QCString trClassDiagram(const char *clName)
+ /*! this text is put before a class diagram */
+ virtual QCString trClassDiagram(const char *clName)
{
- return (QCString)"Klassediagram for "+clName;
+ return (QCString)"Arvediagram for "+clName+":";
}
+
+ /*! this text is generated when the \\internal command is used. */
+ virtual QCString trForInternalUseOnly()
+ { return "Kun for intern bruk."; }
- QCString trForInternalUseOnly()
- { return "Kun for internt bruk."; }
-
- QCString trReimplementedForInternalReasons()
- { return "Omskrevet av interne grunner ; API påvirkes ikke.";}
+ /*! this text is generated when the \\reimp command is used. */
+ virtual QCString trReimplementedForInternalReasons()
+ { return "Reimplementert av interne grunner; API er ikke påvirket."; }
- QCString trWarning()
+ /*! this text is generated when the \\warning command is used. */
+ virtual QCString trWarning()
{ return "Advarsel"; }
- QCString trBugsAndLimitations()
- { return "Feil och begrensninger"; }
+ /*! this text is generated when the \\bug command is used. */
+ virtual QCString trBugsAndLimitations()
+ { return "Bugs og begrensninger"; }
- QCString trVersion()
+ /*! this text is generated when the \\version command is used. */
+ virtual QCString trVersion()
{ return "Versjon"; }
- QCString trDate()
+ /*! this text is generated when the \\date command is used. */
+ virtual QCString trDate()
{ return "Dato"; }
- QCString trAuthors()
- { return "Forfatter(e)"; }
-
- QCString trReturns()
+ /*! this text is generated when the \\return command is used. */
+ virtual QCString trReturns()
{ return "Returnerer"; }
- QCString trSeeAlso()
+ /*! this text is generated when the \\sa command is used. */
+ virtual QCString trSeeAlso()
{ return "Se også"; }
- QCString trParameters()
+ /*! this text is generated when the \\param command is used. */
+ virtual QCString trParameters()
{ return "Parametre"; }
- QCString trExceptions()
+ /*! this text is generated when the \\exception command is used. */
+ virtual QCString trExceptions()
{ return "Unntak"; }
-
- QCString trGeneratedBy()
+
+ /*! this text is used in the title page of a LaTeX document. */
+ virtual QCString trGeneratedBy()
{ return "Generert av"; }
+//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
-
+//////////////////////////////////////////////////////////////////////////
+
+ /*! used as the title of page containing all the index of all namespaces. */
virtual QCString trNamespaceList()
- { return "Navneområdeliste"; }
+ { return "Navneromliste"; }
+ /*! used as an introduction to the namespace list */
virtual QCString trNamespaceListDescription(bool extractAll)
{
QCString result="Her er en liste over alle ";
- if (!extractAll) result+="dokumenterade ";
- result+="navneområder med en kort forklaring:";
+ if (!extractAll) result+="dokumenterte ";
+ result+="navnerom med korte beskrivelser:";
return result;
}
+ /*! used in the class documentation as a header before the list of all
+ * friends of a class
+ */
virtual QCString trFriends()
{ return "Venner"; }
-
+
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
-
+
+ /*! used in the class documentation as a header before the list of all
+ * related classes
+ */
virtual QCString trRelatedFunctionDocumentation()
- { return "Venners och beslektede funksjoners dokumentasjon"; }
-
+ { return "Venner Og Relaterte Funksjoner-dokumentasjon"; }
+
//////////////////////////////////////////////////////////////////////////
// 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*/)
+ bool isTemplate)
{
- QCString result=(QCString)clName+" ";
+ QCString result=(QCString)clName;
switch(compType)
{
- case ClassDef::Class: result+=" klasse"; break;
- case ClassDef::Struct: result+=" struktur"; break;
- case ClassDef::Union: result+=" union"; break;
- case ClassDef::Interface: result+=" grensesnitt"; break;
- case ClassDef::Protocol: result+=" protocol"; break; // translate me!
- case ClassDef::Category: result+=" category"; break; // translate me!
- case ClassDef::Exception: result+=" unntak"; break;
+ case ClassDef::Class: result+=" Klasse"; break;
+ case ClassDef::Struct: result+=" Struct"; break;
+ case ClassDef::Union: result+=" Union"; break;
+ case ClassDef::Interface: result+=" Grensesnitt"; break;
+ case ClassDef::Exception: result+=" Unntak"; break;
+ case ClassDef::Protocol: result+=" Protocol"; break;
+ case ClassDef::Category: result+=" Category"; break;
}
- result+="referanse";
+ if (isTemplate) result+=" Mal";
+ result+=" Referanse";
return result;
}
+ /*! used as the title of the HTML page of a file */
virtual QCString trFileReference(const char *fileName)
{
QCString result=fileName;
- result+=" filreferanse";
+ result+=" Filreferanse";
return result;
}
+ /*! used as the title of the HTML page of a namespace */
virtual QCString trNamespaceReference(const char *namespaceName)
{
QCString result=namespaceName;
- result+=" navneområdereferanse";
+ result+=" Navneromsreferanse";
return result;
}
-
+
virtual QCString trPublicMembers()
- { return "Public medlemmer"; }
+ { return "Public Medlemsfunksjoner"; }
virtual QCString trPublicSlots()
- { return "Public slots"; }
+ { return "Public Slots"; }
virtual QCString trSignals()
{ return "Signaler"; }
virtual QCString trStaticPublicMembers()
- { return "Statiske public medlemmer"; }
+ { return "Statiske Public Medlemsfunksjoner"; }
virtual QCString trProtectedMembers()
- { return "Beskyttede medlemmer"; }
+ { return "Protected Memdlemsfunksjoner"; }
virtual QCString trProtectedSlots()
- { return "Beskyttede slots"; }
+ { return "Protected Slots"; }
virtual QCString trStaticProtectedMembers()
- { return "Statiska beskyttede medlemmer"; }
+ { return "Statiske Protected Medlemsfunksjoner"; }
virtual QCString trPrivateMembers()
- { return "Private medlemmer"; }
+ { return "Private Medlemsfunksjoner"; }
virtual QCString trPrivateSlots()
- { return "Private slots"; }
+ { return "Private Slots"; }
virtual QCString trStaticPrivateMembers()
- { return "Statiske private medlemmer"; }
- // end of member secsjons
-
+ { return "Statiske Private Medlemsfunksjoner"; }
+
+ /*! 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)
{
- // this funcsjon is used to produce a comma-separated list of items.
- // use generateMarker(i) to indicate where item i should be put.
QCString result;
int i;
// the inherits list contain `numEntries' classes
- for (i=0;i<numEntries;i++)
+ for (i=0;i<numEntries;i++)
{
// use generateMarker to generate placeholders for the class links!
- result+=generateMarker(i); // generate marker for entry i in the list
+ result+=generateMarker(i); // generate marker for entry i in the list
// (order is left to right)
-
+
if (i!=numEntries-1) // not the last entry, so we need a separator
{
- if (i<numEntries-2) // not the fore last entry
+ if (i<numEntries-2) // not the fore last entry
result+=", ";
else // the fore last entry
result+=", og ";
}
}
- return result;
+ return result;
}
-
+
+ /*! used in class documentation to produce a list of base classes,
+ * if class diagrams are disabled.
+ */
virtual QCString trInheritsList(int numEntries)
- // used in class documentasjon to produce a list of base classes,
- // if class diagrams are disabled.
{
return "Arver "+trWriteList(numEntries)+".";
}
+
+ /*! used in class documentation to produce a list of super classes,
+ * if class diagrams are disabled.
+ */
virtual QCString trInheritedByList(int numEntries)
- // used in class documentasjon to produce a list of super classes,
- // if class diagrams are disabled.
{
- return "Arvet fra "+trWriteList(numEntries)+".";
+ return "Arvet av "+trWriteList(numEntries)+".";
}
+
+ /*! used in member documentation blocks to produce a list of
+ * members that are hidden by this one.
+ */
virtual QCString trReimplementedFromList(int numEntries)
- // used in member documentasjon blocks to produce a list of
- // members that are hidden by this one.
{
return "Reimplementert fra "+trWriteList(numEntries)+".";
}
+
+ /*! used in member documentation blocks to produce a list of
+ * all member that overwrite the implementation of this member.
+ */
virtual QCString trReimplementedInList(int numEntries)
{
- // used in member documentasjon blocks to produce a list of
- // all member that overwrite the implementasjon of this member.
return "Reimplementert i "+trWriteList(numEntries)+".";
}
+ /*! This is put above each page as a link to all members of namespaces. */
virtual QCString trNamespaceMembers()
- { return "Navneområdemedlemmer"; }
+ { return "Navneromsmedlemmer"; }
+
+ /*! This is an introduction to the page with all namespace members */
virtual QCString trNamespaceMemberDescription(bool extractAll)
- {
+ {
QCString result="Her er en liste over alle ";
if (!extractAll) result+="dokumenterte ";
- result+="navneområdemedlemmer med lenker til ";
- if (extractAll)
- result+=" navneområde-dokumentasjonen for hvert medlem:";
- else
- result+="de navneområder de tilhører:";
+ result+="navneromsmedlemmer med koblinger til ";
+ if (extractAll)
+ result+="navneromsdokumentasjonen for hvert medlem:";
+ else
+ result+="navnerommet de hører til:";
return result;
}
-
+ /*! This is used in LaTeX as the title of the chapter with the
+ * index of all namespaces.
+ */
virtual QCString trNamespaceIndex()
- { return "Navneområdeindeks"; }
+ { return "Navneromsindeks"; }
+ /*! This is used in LaTeX as the title of the chapter containing
+ * the documentation of all namespaces.
+ */
virtual QCString trNamespaceDocumentation()
- { return "Navneområde-dokumentasjon"; }
- //////////////////////////////////////////////////////////////////////////
+ { return "Navneromsdokumentasjon"; }
+
+//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
//////////////////////////////////////////////////////////////////////////
- /*! This is used in the documentasjon before the list of all
+ /*! This is used in the documentation before the list of all
* namespaces in a file.
*/
virtual QCString trNamespaces()
- { return "Navneområder"; }
+ { return "Navnerom"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
//////////////////////////////////////////////////////////////////////////
- /*! This is put at the bottom of a class documentasjon page and is
+ /*! This is put at the bottom of a class documentation page and is
* followed by a list of files that were used to generate the page.
*/
virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
bool single)
{ // here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
- QCString result=(QCString)"Dokumentasjonen for ";
+ QCString result=(QCString)"The documentation for this ";
switch(compType)
{
- case ClassDef::Class: result+="denne klasse "; break;
- case ClassDef::Struct: result+="denne strukt "; break;
- case ClassDef::Union: result+="denne union "; break;
- case ClassDef::Interface: result+="dette grensesnittet "; break;
- case ClassDef::Protocol: result+="protocol"; break; // translate me!
- case ClassDef::Category: result+="category"; break; // translate me!
- case ClassDef::Exception: result+="unntak "; break;
+ case ClassDef::Class: result+="klasse"; break;
+ case ClassDef::Struct: result+="struct"; break;
+ case ClassDef::Union: result+="union"; break;
+ case ClassDef::Interface: result+="interface"; break;
+ case ClassDef::Exception: result+="unntak"; break;
+ case ClassDef::Protocol: result+="protocol"; break;
+ case ClassDef::Category: result+="category"; break;
}
- result+="var generert fra følgende fil";
+ result+=" ble generert fra følgende fil";
if (single) result+=":"; else result+="er:";
return result;
}
@@ -499,9 +818,8 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
* list.
*/
virtual QCString trAlphabeticalList()
- {
- return "Alfabetisk liste";
- }
+ { return "Alfabetisk Liste"; }
+
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
//////////////////////////////////////////////////////////////////////////
@@ -516,7 +834,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
{ return "Hovedside"; }
/*! This is used in references to page that are put in the LaTeX
- * documentasjon. It should be an abbreviasjon of the word page.
+ * documentation. It should be an abbreviation of the word page.
*/
virtual QCString trPageAbbreviation()
{ return "s."; }
@@ -531,12 +849,13 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
}
virtual QCString trDefinedAtLineInSourceFile()
{
- return "Definisjon på rad @0 i filen @1.";
+ return "Definisjon på linje @0 i filen @1.";
}
virtual QCString trDefinedInSourceFile()
{
return "Definisjon i filen @0.";
}
+
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991205
//////////////////////////////////////////////////////////////////////////
@@ -553,37 +872,38 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
/*! this text is put before a collaboration diagram */
virtual QCString trCollaborationDiagram(const char *clName)
{
- return (QCString)"Samarbeidsdiagram for "+clName+":";
+ return (QCString)"Kollaborasjonsdiagram for "+clName+":";
}
/*! this text is put before an include dependency graph */
virtual QCString trInclDepGraph(const char *fName)
{
- return (QCString)"Include-avhengighetsgraf for "+fName+":";
+ return (QCString)"Inkluderingsavhengighetsgraf for "+fName+":";
}
+
/*! header that is put before the list of constructor/destructors. */
virtual QCString trConstructorDocumentation()
{
- return "Konstruktør- og Destruktørdokumentasjon";
+ return "Konstruktør- & Destruktør-dokumentasjon";
}
/*! Used in the file documentation to point to the corresponding sources. */
virtual QCString trGotoSourceCode()
{
- return "Gå til kildekoden for denne filen.";
+ return "Gå til kildekoden til denne filen.";
}
/*! Used in the file sources to point to the corresponding documentation. */
virtual QCString trGotoDocumentation()
{
- return "Gå til dokumentasjonen for denne filen.";
+ return "Gå til dokumentasjonen til denne filen.";
}
/*! Text for the \\pre command */
virtual QCString trPrecondition()
{
- return "Før-kondisjon";
+ return "Førbetingelse";
}
/*! Text for the \\post command */
virtual QCString trPostcondition()
{
- return "Etter-kondisjon";
+ return "Etterbetingelse";
}
/*! Text for the \\invariant command */
virtual QCString trInvariant()
@@ -593,7 +913,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
/*! Text shown before a multi-line variable/enum initialization */
virtual QCString trInitialValue()
{
- return "Initializer:";
+ return "Startverdi:";
}
/*! Text used the source code in the file index */
virtual QCString trCode()
@@ -602,19 +922,19 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
}
virtual QCString trGraphicalHierarchy()
{
- return "Graphical Class Hierarchy";
+ return "Grafisk klassehierarki";
}
virtual QCString trGotoGraphicalHierarchy()
{
- return "Go to the graphical class hierarchy";
+ return "Gå til det grafiske klasse hierarkiet";
}
virtual QCString trGotoTextualHierarchy()
{
- return "Go to the textual class hierarchy";
+ return "Gå til tekst-klassehierarki";
}
virtual QCString trPageIndex()
{
- return "Sideindeks";
+ return "Innhold";
}
//////////////////////////////////////////////////////////////////////////
@@ -627,39 +947,46 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
}
virtual QCString trPublicTypes()
{
- return "Public Typer";
+ return "Public typer";
}
virtual QCString trPublicAttribs()
{
- return "Public Attributter";
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Datafelt";
+ }
+ else
+ {
+ return "Public attributter";
+ }
}
virtual QCString trStaticPublicAttribs()
{
- return "Statiske Public Attributter";
+ return "Statiske public attributter";
}
virtual QCString trProtectedTypes()
{
- return "Beskyttede Typer";
+ return "Protected typer";
}
virtual QCString trProtectedAttribs()
{
- return "Beskyttede Attributter";
+ return "Protected attributter";
}
virtual QCString trStaticProtectedAttribs()
{
- return "Statiske Beskyttede Attributter";
+ return "Statiske protected attributter";
}
virtual QCString trPrivateTypes()
{
- return "Private Typer";
+ return "Private typer";
}
virtual QCString trPrivateAttribs()
{
- return "Private Attributter";
+ return "Private attributter";
}
virtual QCString trStaticPrivateAttribs()
{
- return "Statiske Private Attributter";
+ return "Statiske private attributter";
}
//////////////////////////////////////////////////////////////////////////
@@ -683,7 +1010,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
virtual QCString trReferencedBy()
{
- return "Referert at";
+ return "Referert av";
}
virtual QCString trRemarks()
{
@@ -691,12 +1018,12 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
}
virtual QCString trAttention()
{
- return "Attention";
+ return "Viktig";
}
virtual QCString trInclByDepGraph()
{
- return "This graph shows which files directly or "
- "indirectly include this file:";
+ return "Denne grafen viser hvilke filer som direkte eller "
+ "indirekte inkluderer denne filen:";
}
virtual QCString trSince()
{
@@ -710,69 +1037,68 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
/*! title of the graph legend page */
virtual QCString trLegendTitle()
{
- return "Graph Legend";
+ return "Symbolforklaring";
}
/*! page explaining how the dot graph's should be interpreted */
virtual QCString trLegendDocs()
{
return
- "This page explains how to interpret the graphs that are generated "
- "by doxygen.<p>\n"
- "Consider the following example:\n"
- "\\code\n"
- "/*! Invisible class because of truncation */\n"
- "class Invisible { };\n\n"
- "/*! Truncated class, inheritance relation is hidden */\n"
- "class Truncated : public Invisible { };\n\n"
- "/* Class not documented with doxygen comments */\n"
- "class Undocumented { };\n\n"
- "/*! Class that is inherited using public inheritance */\n"
+ "Denne siden forklarer hvordan man tolker grafene doxygen genererer.<p>\n"
+ "Vi baserer oss på følgende eksempel:\n"
+ "\\code\n"
+ "/*! Usynlig klasse pga. trunkasjon */\n"
+ "class Invisible { };\n\n"
+ "/*! Trunkert klasse, arve-relasjon er skjult */\n"
+ "class Truncated : public Invisible { };\n\n"
+ "/* Klasse som ikke er dokumentert med doxygen-kommentarer */"
+ "class Undocumented { };\n\n"
+ "/*! Klasse med public-arv */\n"
"class PublicBase : public Truncated { };\n\n"
- "/*! Class that is inherited using protected inheritance */\n"
+ "/*! Klasse med protected-arv */\n"
"class ProtectedBase { };\n\n"
- "/*! Class that is inherited using private inheritance */\n"
+ "/*! Klasse med private-arv */\n"
"class PrivateBase { };\n\n"
- "/*! Class that is used by the Inherited class */\n"
+ "/*! Klasse som blir brukt av klassen Inherited */\n"
"class Used { };\n\n"
- "/*! Super class that inherits a number of other classes */\n"
+ "/*! Super-klasse som arver flere andre klasser */\n"
"class Inherited : public PublicBase,\n"
" protected ProtectedBase,\n"
" private PrivateBase,\n"
" public Undocumented\n"
+ " public Templ<int>\n"
"{\n"
" private:\n"
" Used *m_usedClass;\n"
"};\n"
- "\\endcode\n"
- "If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
- "is set to 200 this will result in the following graph:"
+ "\\endcode\n"
+ "Hvis \\c MAX_DOT_GRAPH_HEIGHT er satt til 200 i "
+ "konfigurasjonsfila vil dette resultere i følgende graf:"
"<p><center><img src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center>\n"
"<p>\n"
- "The boxes in the above graph have the following meaning:\n"
- "<ul>\n"
- "<li>A filled black box represents the struct or class for which the "
- "graph is generated.\n"
- "<li>A box with a black border denotes a documented struct or class.\n"
- "<li>A box with a grey border denotes an undocumented struct or class.\n"
- "<li>A box with a red border denotes a documented struct or class for\n"
- "which not all inheritance/containment relations are shown. A graph is "
- "truncated if it does not fit within the specified boundaries."
- "</ul>\n"
- "The arrows have the following meaning:\n"
+ "Boksene i grafen over betyr følgende:\n"
"<ul>\n"
- "<li>A dark blue arrow is used to visualize a public inheritance "
- "relation between two classes.\n"
- "<li>A dark green arrow is used for protected inheritance.\n"
- "<li>A dark red arrow is used for private inheritance.\n"
- "<li>A purple dashed arrow is used if a class is contained or used "
- "by another class. The arrow is labeled with the variable(s) "
- "through which the pointed class or struct is accessible. \n"
- "</ul>\n";
+ "<li>En fylt svart boks representerer klassen grafen "
+ "er generert for.\n"
+ "<li>En boks med svart ramme angir en dokumentert struct eller klasse.\n"
+ "<li>En boks med grå ramme angir en udokumentert struct eller klasse.\n"
+ "<li>En boks med rød ramme angir en dokumentert struct eller klasse "
+ "der ikke alle relasjoner er vist. En graf blir trunkert om den ikke "
+ "passer innenfor de spesifiserte rammene.\n"
+ "</ul>\n"
+ "Pilene i grafen har følgende betydning:\n"
+ "</ul>\n"
+ "<li>En mørk blå pil brukes til å visualisere public-arv mellom to klasser.\n"
+ "<li>En mørk grønn pil brukes for protected-arv.\n"
+ "<li>En mørk rød pil angir private-arv.\n"
+ "<li>En stiplet lilla pil angir at en klasse er inkludert eller brukt "
+ "i en annen klasse. Pilen er merket med variablen(e) klassen "
+ "er tilgjengelig gjennom.\n"
+ "</ul>\n";
}
/*! text for the link to the legend page */
virtual QCString trLegend()
{
- return "legend";
+ return "symbolforklaring";
}
//////////////////////////////////////////////////////////////////////////
@@ -797,17 +1123,430 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
/*! Used as a section header for KDE-2 IDL methods */
virtual QCString trDCOPMethods()
{
- return "DCOP Methods";
+ return "DCOP-metoder";
}
-};
-#endif
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.1
+//////////////////////////////////////////////////////////////////////////
+ /*! Used as a section header for IDL properties */
+ virtual QCString trProperties()
+ {
+ return "Egenskaper";
+ }
+ /*! Used as a section header for IDL property documentation */
+ virtual QCString trPropertyDocumentation()
+ {
+ return "Egenskaps-dokumentasjon";
+ }
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.4
+//////////////////////////////////////////////////////////////////////////
+ /*! Used for Java interfaces in the summary section of Java packages */
+ virtual QCString trInterfaces()
+ {
+ return "Grensesnitt";
+ }
+ /*! Used for Java classes in the summary section of Java packages */
+ virtual QCString trClasses()
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Datastrukturer";
+ }
+ else
+ {
+ return "Klasser";
+ }
+ }
+ /*! Used as the title of a Java package */
+ virtual QCString trPackage(const char *name)
+ {
+ return (QCString)"Package "+name;
+ }
+ /*! Title of the package index page */
+ virtual QCString trPackageList()
+ {
+ return "Pakke-liste";
+ }
+ /*! The description of the package index page */
+ virtual QCString trPackageListDescription()
+ {
+ return "Her er pakkene med korte beskrivelser (om tilgjengelig):";
+ }
+ /*! The link name in the Quick links header for each page */
+ virtual QCString trPackages()
+ {
+ return "Pakker";
+ }
+ /*! Used as a chapter title for Latex & RTF output */
+ virtual QCString trPackageDocumentation()
+ {
+ return "Pakke-dokumentasjon";
+ }
+ /*! Text shown before a multi-line define */
+ virtual QCString trDefineValue()
+ {
+ return "Verdi:";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.5
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a marker that is put before a \\bug item */
+ virtual QCString trBug()
+ {
+ return "Bug";
+ }
+ /*! Used as the header of the bug list */
+ virtual QCString trBugList()
+ {
+ return "Bug-liste";
+ }
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.6
+//////////////////////////////////////////////////////////////////////////
+ /*! Used as ansicpg for RTF file
+ *
+ * The following table shows the correlation of Charset name, Charset Value and
+ * <pre>
+ * Codepage number:
+ * Charset Name Charset Value(hex) Codepage number
+ * ------------------------------------------------------
+ * DEFAULT_CHARSET 1 (x01)
+ * SYMBOL_CHARSET 2 (x02)
+ * OEM_CHARSET 255 (xFF)
+ * ANSI_CHARSET 0 (x00) 1252
+ * RUSSIAN_CHARSET 204 (xCC) 1251
+ * EE_CHARSET 238 (xEE) 1250
+ * GREEK_CHARSET 161 (xA1) 1253
+ * TURKISH_CHARSET 162 (xA2) 1254
+ * BALTIC_CHARSET 186 (xBA) 1257
+ * HEBREW_CHARSET 177 (xB1) 1255
+ * ARABIC _CHARSET 178 (xB2) 1256
+ * SHIFTJIS_CHARSET 128 (x80) 932
+ * HANGEUL_CHARSET 129 (x81) 949
+ * GB2313_CHARSET 134 (x86) 936
+ * CHINESEBIG5_CHARSET 136 (x88) 950
+ * </pre>
+ *
+ */
+ virtual QCString trRTFansicp()
+ {
+ return "1252";
+ }
+
+ /*! Used as ansicpg for RTF fcharset
+ * \see trRTFansicp() for a table of possible values.
+ */
+ virtual QCString trRTFCharSet()
+ {
+ return "0";
+ }
+ /*! Used as header RTF general index */
+ virtual QCString trRTFGeneralIndex()
+ {
+ return "Indeks";
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trClass(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Klasse" : "klasse"));
+ if (!singular) result+="r";
+ return result;
+ }
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trFile(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Fil" : "fil"));
+ if (!singular) result+="er";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trNamespace(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Navnerom" : "navnerom"));
+ if (!singular) result+="";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trGroup(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Gruppe" : "gruppe"));
+ if (!singular) result+="r";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trPage(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Side" : "side"));
+ if (!singular) result+="r";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trMember(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Medlem" : "medlem"));
+ if (!singular) result+="mer";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trField(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Felt" : "felt"));
+ if (!singular) result+="";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trGlobal(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Global" : "global"));
+ if (!singular) result+="e";
+ return result;
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.7
+//////////////////////////////////////////////////////////////////////////
+
+ /*! This text is generated when the \\author command is used and
+ * for the author section in man pages. */
+ virtual QCString trAuthor(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Forfatter" : "forfatter"));
+ if (!singular) result+="e";
+ return result;
+ }
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.11
+//////////////////////////////////////////////////////////////////////////
+
+ /*! This text is put before the list of members referenced by a member
+ */
+ virtual QCString trReferences()
+ {
+ return "Referanser";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.13
+//////////////////////////////////////////////////////////////////////////
+
+ /*! used in member documentation blocks to produce a list of
+ * members that are implemented by this one.
+ */
+ virtual QCString trImplementedFromList(int numEntries)
+ {
+ return "Implementerer "+trWriteList(numEntries)+".";
+ }
+
+ /*! used in member documentation blocks to produce a list of
+ * all members that implement this abstract member.
+ */
+ virtual QCString trImplementedInList(int numEntries)
+ {
+ return "Implementert i "+trWriteList(numEntries)+".";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.16
+//////////////////////////////////////////////////////////////////////////
+
+ /*! used in RTF documentation as a heading for the Table
+ * of Contents.
+ */
+ virtual QCString trRTFTableOfContents()
+ {
+ return "Innholdsfortegnelse";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.17
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as the header of the list of item that have been
+ * flagged deprecated
+ */
+ virtual QCString trDeprecatedList()
+ {
+ return "Liste over foreldede enheter";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.18
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a header for declaration section of the events found in
+ * a C# program
+ */
+ virtual QCString trEvents()
+ {
+ return "Hendelser";
+ }
+ /*! Header used for the documentation section of a class' events. */
+ virtual QCString trEventDocumentation()
+ {
+ return "Hendelsesdokumentasjon";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return "Pakketyper";
+ }
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return "Pakkefunksjoner";
+ }
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return "Statiske Pakkefunksjoner";
+ }
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return "Pakkeattributter";
+ }
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return "Statiske Pakkeattributter";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3.1
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used in the quick index of a class/file/namespace member list page
+ * to link to the unfiltered list of all members.
+ */
+ virtual QCString trAll()
+ {
+ return "Alle";
+ }
+ /*! Put in front of the call graph for a function. */
+ virtual QCString trCallGraph()
+ {
+ return "Her er kall-grafen for denne funksjonen:";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! When the search engine is enabled this text is put in the header
+ * of each page before the field where one can enter the text to search
+ * for.
+ */
+ virtual QCString trSearchForIndex()
+ {
+ return "Søk etter";
+ }
+ /*! This string is used as the title for the page listing the search
+ * results.
+ */
+ virtual QCString trSearchResultsTitle()
+ {
+ return "Søkeresultater";
+ }
+ /*! This string is put just before listing the search results. The
+ * text can be different depending on the number of documents found.
+ * Inside the text you can put the special marker $num to insert
+ * the number representing the actual number of search results.
+ * The @a numDocuments parameter can be either 0, 1 or 2, where the
+ * value 2 represents 2 or more matches. HTML markup is allowed inside
+ * the returned string.
+ */
+ virtual QCString trSearchResults(int numDocuments)
+ {
+ if (numDocuments==0)
+ {
+ return "Beklager, men ingen dokumenter ble funnet.";
+ }
+ else if (numDocuments==1)
+ {
+ return "Fant <b>ett</b> dokument som passet ditt søk.";
+ }
+ else
+ {
+ return "Fant <b>$num</b> dokumenter som passet ditt søk. "
+ "Viser beste treff først.";
+ }
+ }
+ /*! This string is put before the list of matched words, for each search
+ * result. What follows is the list of words that matched the query.
+ */
+ virtual QCString trSearchMatches()
+ {
+ return "Treff:";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3.8
+//////////////////////////////////////////////////////////////////////////
+
+ /*! This is used in HTML as the title of page with source code for file filename
+ */
+ virtual QCString trSourceFile(QCString& filename)
+ {
+ return "Kildefil " + filename;
+ }
+};
+
+#endif
diff --git a/src/util.cpp b/src/util.cpp
index c1cd269..193dded 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -662,7 +662,7 @@ ClassDef *newResolveTypedef(FileDef *fileScope,MemberDef *md,QCString *pTemplSpe
}
// remember computed value for next time
- if (Doxygen::lookupCacheEnabled && result && result->getDefFileName()!="<code>")
+ if (result && result->getDefFileName()!="<code>")
// this check is needed to prevent that temporary classes that are
// introduced while parsing code fragments are being cached here.
{
@@ -1045,7 +1045,7 @@ ClassDef *getResolvedClassRec(Definition *scope,
QCString key=scope->name()+"+"+name+"+"+explicitScopePart;
LookupInfo *pval=Doxygen::lookupCache.find(key);
//printf("Searching for %s result=%p\n",key.data(),pval);
- if (Doxygen::lookupCacheEnabled && pval)
+ if (pval)
{
if (pTemplSpec) *pTemplSpec=pval->templSpec;
if (pTypeDef) *pTypeDef=pval->typeDef;
@@ -1143,14 +1143,7 @@ ClassDef *getResolvedClassRec(Definition *scope,
}
else
{
- if (Doxygen::lookupCacheEnabled)
- {
- Doxygen::lookupCache.insert(key,new LookupInfo(bestMatch,bestTypedef,bestTemplSpec));
- }
- else // remove the 0 key from the cache
- {
- Doxygen::lookupCache.remove(key);
- }
+ Doxygen::lookupCache.insert(key,new LookupInfo(bestMatch,bestTypedef,bestTemplSpec));
}
//printf("] bestMatch=%s distance=%d\n",
// bestMatch?bestMatch->name().data():"<none>",minDistance);