Imported Upstream version 1.8.15
[platform/upstream/doxygen.git] / src / translator_sv.h
1 /******************************************************************************
2  *
3  *
4  *
5  * Copyright (C) 1997-2015 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 /*
19 ==================================================================================
20 Svensk översättning av:
21 Samuel Hägglund      <sahag96@ite.mh.se>
22 Xet Erixon           <xet@xeqt.com>
23 Mikael Hallin        <mikaelhallin@yahoo.se>           2003-07-28
24 Björn Palmqvist      <bjorn@aidium.se>                 2014-02-01
25 Magnus Österlund     <magnus.osterlund@capgemini.com>  2016-09-12
26 ==================================================================================
27 Uppdateringar.
28 1999/04/29
29 *  Omskrivningar av en hel del ordval, t.ex.
30    ENG                  INNAN          EFTER
31    compound             inhängnad      sammansatt
32    structs              structs        strukter
33    unions               unions         unioner
34
35    osv...
36
37 *  Alla översättnings-strängar returnerar i alla fall en något så när vettig
38    förklaring...
39
40 1999/05/27
41 *  Det verkade som vi glömt en del mellanslag i vissa strängar vilket resulterade
42    i att en del ord blev ihopskrivna.
43
44 *  Bytt en del ordval igen...
45    ENG                       INNAN          EFTER
46    reference manual          Uppslagsbok    referensmanual
47
48 *  Skrivit ihop en del ord som innan hade bindestreck
49 *  En del nya översättningar är tillagda.
50 *  Gamla översättningar borttagna
51
52 ===================================================================================
53 Problem!
54    Slot: nån hygglig svensk översättning???
55
56    Skicka gärna synpunkter.
57 ===================================================================================
58 1999/09/01
59 *  Det verkar som om "namnrymd" är en hyggligt vedertagen svensk översättning
60    av "namespace", så jag kör med det från och med nu.
61 *  "interface" heter numera "gränssnitt"
62
63 2003/07/28
64 *  Jag har updaterat översättningen efter ett par års träda..
65 Problem!
66    Deprecated: nån hygglig svensk översättning???
67
68    Skicka gärna synpunkter.
69 2015/01/09
70 * Uppdaterat den till senaste versionen 1.8.9.1
71 2015/09/12
72 * Fixat lite särksirvningar och inkonsekvenser
73 ===================================================================================
74   Ordlista
75 ===================================================================================
76   ENGELSKA          SVENSKA
77 * Attribute         Attribut
78 * Category          Lategori
79 * Class             Klass
80 * Compound          Sammansatt
81 * Deprecated        Föråldrad
82 * Directory         Katalog
83 * Enum              Enum
84 * Enumeration       Egenuppräknande
85 * Event             Händelse
86 * Exception         Undantag
87 * Field             Fält
88 * Friend            Vän
89 * Function          Funktion
90 * Inherited         Ärvd
91 * Interface         Gränssnitt
92 * Macro             Makro
93 * Member            Medlem
94 * Member Data       Medlemsdata
95 * Member function   Medlemsfunktion
96 * Module            Module
97 * Namespace         Namnrymd
98 * Package           Paket
99 * Postcondition     Postcondition
100 * Precondition      Precondition
101 * Private           Privat
102 * Propertie         Egenskap
103 * Protected         Skyddad
104 * Protocol          Protokoll
105 * Public            Publik
106 * Service           Tjänst
107 * Signal            Signal
108 * Slot              Slot            //Ge gärna exempel på bättre översättning
109 * Static            Statisk
110 * Struct            Struktur
111 * Subprogram        Underprogram
112 * Subroutine        Subrutin
113 * Template          Mall
114 * Typedef           Typdefinition
115 * Union             Union
116 * Variable          Variabel
117 ===================================================================================
118 */
119
120 #ifndef TRANSLATOR_SE_H
121 #define TRANSLATOR_SE_H
122
123 class TranslatorSwedish : public TranslatorAdapter_1_8_15
124 {
125   public:
126
127     virtual QCString idLanguage()
128     { return "swedish"; }
129
130     /*! Used to get the LaTeX command(s) for the language support.
131      *  This method should return string with commands that switch
132      *  LaTeX to the desired language.  For example
133      *  <pre>"\\usepackage[german]{babel}\n"
134      *  </pre>
135      *  or
136      *  <pre>"\\usepackage{polski}\n"
137      *  "\\usepackage[latin2]{inputenc}\n"
138      *  "\\usepackage[T1]{fontenc}\n"
139      *  </pre>
140      *
141      * The English LaTeX does not use such commands.  Because of this
142      * the empty string is returned in this implementation.
143      */
144     virtual QCString latexLanguageSupportCommand()
145     {
146       return "\\usepackage[swedish]{babel}\n";
147     }
148
149     // --- Language translation methods -------------------
150
151     /*! used in the compound documentation before a list of related functions. */
152     virtual QCString trRelatedFunctions()
153     { return "Besläktade funktioner"; }
154
155     /*! subscript for the related functions. */
156     virtual QCString trRelatedSubscript()
157     { return "(Observera att dessa inte är medlemsfunktioner)"; }
158
159     /*! header that is put before the detailed description of files, classes and namespaces. */
160     virtual QCString trDetailedDescription()
161     { return "Detaljerad beskrivning"; }
162
163     /*! header that is put before the list of typedefs. */
164     virtual QCString trMemberTypedefDocumentation()
165     { return "Dokumentation av typdefinierade medlemmar"; }
166
167     /*! header that is put before the list of enumerations. */
168     virtual QCString trMemberEnumerationDocumentation()
169     { return "Dokumentation av egenuppräknande medlemmar"; }
170
171     /*! header that is put before the list of member functions. */
172     virtual QCString trMemberFunctionDocumentation()
173     { return "Dokumentation av medlemsfunktioner"; }
174
175     /*! header that is put before the list of member attributes. */
176     virtual QCString trMemberDataDocumentation()
177     {
178       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
179       {
180         return "Dokumentation av fält";
181       }
182       else
183       {
184         return "Dokumentation av datamedlemmar";
185       }
186     }
187
188     /*! this is the text of a link put after brief descriptions. */
189     virtual QCString trMore()
190     { return "Mer..."; }
191
192     /*! put in the class documentation */
193     virtual QCString trListOfAllMembers()
194     { return "Lista över alla medlemmar"; }
195
196     /*! used as the title of the "list of all members" page of a class */
197     virtual QCString trMemberList()
198     { return "Medlemslista"; }
199
200     /*! this is the first part of a sentence that is followed by a class name */
201     virtual QCString trThisIsTheListOfAllMembers()
202     { return "Det här är en fullständig lista över medlemmar för "; }
203
204     /*! this is the remainder of the sentence after the class name */
205     virtual QCString trIncludingInheritedMembers()
206     { return " med alla ärvda medlemmar."; }
207
208     /*! this is put at the author sections at the bottom of man pages.
209      *  parameter s is name of the project name.
210      */
211     virtual QCString trGeneratedAutomatically(const char *s)
212     { QCString result="Automatiskt skapad av Doxygen";
213       if (s) result+=(QCString)" för "+s;
214       result+=" från källkoden.";
215       return result;
216     }
217
218     /*! put after an enum name in the list of all members */
219     virtual QCString trEnumName()
220     { return "enum-namn"; }
221
222     /*! put after an enum value in the list of all members */
223     virtual QCString trEnumValue()
224     { return "enum-värde"; }
225
226     /*! put after an undocumented member in the list of all members */
227     virtual QCString trDefinedIn()
228     { return "definierad i"; }
229
230     // quick reference sections
231
232     /*! This is put above each page as a link to the list of all groups of
233      *  compounds or files (see the \\group command).
234      */
235     virtual QCString trModules()
236     { return "Moduler"; }
237
238     /*! This is put above each page as a link to the class hierarchy */
239     virtual QCString trClassHierarchy()
240     { return "Klasshierarki"; }
241
242     /*! This is put above each page as a link to the list of annotated classes */
243     virtual QCString trCompoundList()
244     {
245       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
246       {
247         return "Datastrukturer";
248       }
249       else
250       {
251         return "Klasslista";
252       }
253     }
254
255     /*! This is put above each page as a link to the list of documented files */
256     virtual QCString trFileList()
257     { return "Fillista"; }
258
259     /*! This is put above each page as a link to all members of compounds. */
260     virtual QCString trCompoundMembers()
261     {
262       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
263       {
264         return "Datafält";
265       }
266       else
267       {
268         return "Klassmedlemmar";
269       }
270     }
271
272     /*! This is put above each page as a link to all members of files. */
273     virtual QCString trFileMembers()
274     {
275       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
276       {
277         return "Globala symboler";
278       }
279       else
280       {
281         return "Filmedlemmar";
282       }
283     }
284
285     /*! This is put above each page as a link to all related pages. */
286     virtual QCString trRelatedPages()
287     { return "Relaterade sidor"; }
288
289     /*! This is put above each page as a link to all examples. */
290     virtual QCString trExamples()
291     { return "Exempel"; }
292
293     /*! This is put above each page as a link to the search engine. */
294     virtual QCString trSearch()
295     { return "Sök"; }
296
297     /*! This is an introduction to the class hierarchy. */
298     virtual QCString trClassHierarchyDescription()
299     { return "Denna lista över arv är grovt, men inte helt, "
300              "sorterad i alfabetisk ordning:";
301     }
302
303     /*! This is an introduction to the list with all files. */
304     virtual QCString trFileListDescription(bool extractAll)
305     {
306       QCString result="Här följer en lista över alla ";
307       if (!extractAll) result+="dokumenterade ";
308       result+="filer, med en kort beskrivning:";
309       return result;
310     }
311
312     /*! This is an introduction to the annotated compound list. */
313     virtual QCString trCompoundListDescription()
314     {
315
316       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
317       {
318         return "Här följer datastrukturerna med korta beskrivningar:";
319       }
320       else
321       {
322         return "Här följer klasserna, strukterna, unionerna och "
323                "gränssnitten med korta beskrivningar:";
324       }
325     }
326
327     /*! This is an introduction to the page with all class members. */
328     virtual QCString trCompoundMembersDescription(bool extractAll)
329     {
330       QCString result="Här är en lista över alla ";
331       if (!extractAll)
332       {
333         result+="dokumenterade ";
334       }
335       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
336       {
337         result+="struktur- och unions-fält";
338       }
339       else
340       {
341         result+="klassmedlemmar";
342       }
343       result+=" med länkar till ";
344       if (!extractAll)
345       {
346         if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
347         {
348           result+="struktur/union-dokumentationen för varje fält:";
349         }
350         else
351         {
352           result+="klassdokumentationen för varje medlem:";
353         }
354       }
355       else
356       {
357         if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
358         {
359           result+=" strukturerna/unionerna de tillhör:";
360         }
361         else
362         {
363           result+="klasserna de tillhör:";
364         }
365       }
366       return result;
367     }
368
369     /*! This is an introduction to the page with all file members. */
370     virtual QCString trFileMembersDescription(bool extractAll)
371     {
372       QCString result="Här följer en lista över alla ";
373       if (!extractAll) result+="dokumenterade ";
374
375       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
376       {
377         result+="funktioner, variabler, definitioner, enumerationer "
378                 "och typdefinitioner";
379       }
380       else
381       {
382         result+= "filmedlemmar";
383       }
384       result+= " med länkar till ";
385       if (extractAll)
386         result+= "filerna de tillhör:";
387       else
388         result+= "dokumentationen:";
389       return result;
390     }
391
392     /*! This is an introduction to the page with the list of all examples */
393     virtual QCString trExamplesDescription()
394     { return "Här följer en lista med alla exempel:"; }
395
396     /*! This is an introduction to the page with the list of related pages */
397     virtual QCString trRelatedPagesDescription()
398     { return "Här följer en lista över alla relaterade dokumentationssidor:";}
399
400     /*! This is an introduction to the page with the list of class/file groups */
401     virtual QCString trModulesDescription()
402     { return "Här följer en lista över alla moduler:"; }
403
404     // index titles (the project name is prepended for these)
405
406     /*! This is used in HTML as the title of index.html. */
407     virtual QCString trDocumentation()
408     { return "Dokumentation"; }
409
410     /*! This is used in LaTeX as the title of the chapter with the
411      * index of all groups.
412      */
413     virtual QCString trModuleIndex()
414     { return "Modulindex"; }
415
416     /*! This is used in LaTeX as the title of the chapter with the
417      * class hierarchy.
418      */
419     virtual QCString trHierarchicalIndex()
420     { return "Hierarkiskt index"; }
421
422     /*! This is used in LaTeX as the title of the chapter with the
423      * annotated compound index.
424      */
425     virtual QCString trCompoundIndex()
426     {
427       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
428       {
429         return "Index över datastrukturer";
430       }
431       else
432       {
433         return "Klassindex";
434       }
435     }
436
437     /*! This is used in LaTeX as the title of the chapter with the
438      * list of all files.
439      */
440     virtual QCString trFileIndex()
441     { return "Filindex"; }
442
443     /*! This is used in LaTeX as the title of the chapter containing
444      *  the documentation of all groups.
445      */
446     virtual QCString trModuleDocumentation()
447     { return "Moduldokumentation"; }
448
449     /*! This is used in LaTeX as the title of the chapter containing
450      *  the documentation of all classes, structs and unions.
451      */
452     virtual QCString trClassDocumentation()
453     {
454       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
455       {
456         return "Dokumentation över datastrukturer";
457       }
458       else
459       {
460         return "Klassdokumentation";
461       }
462     }
463
464     /*! This is used in LaTeX as the title of the chapter containing
465      *  the documentation of all files.
466      */
467     virtual QCString trFileDocumentation()
468     { return "Fildokumentation"; }
469
470     /*! This is used in LaTeX as the title of the chapter containing
471      *  the documentation of all examples.
472      */
473     virtual QCString trExampleDocumentation()
474     { return "Exempeldokumentation"; }
475
476     /*! This is used in LaTeX as the title of the chapter containing
477      *  the documentation of all related pages.
478      */
479     virtual QCString trPageDocumentation()
480     { return "Sid-dokumentation"; }
481
482     /*! This is used in LaTeX as the title of the document */
483     virtual QCString trReferenceManual()
484     { return "Referensmanual"; }
485
486     /*! This is used in the documentation of a file as a header before the
487      *  list of defines
488      */
489     virtual QCString trDefines()
490     { return "Makron"; }
491
492     /*! This is used in the documentation of a file as a header before the
493      *  list of typedefs
494      */
495     virtual QCString trTypedefs()
496     { return "Typdefinitioner"; }
497
498     /*! This is used in the documentation of a file as a header before the
499      *  list of enumerations
500      */
501     virtual QCString trEnumerations()
502     { return "Egenuppräknande typer"; }
503
504     /*! This is used in the documentation of a file as a header before the
505      *  list of (global) functions
506      */
507     virtual QCString trFunctions()
508     { return "Funktioner"; }
509
510     /*! This is used in the documentation of a file as a header before the
511      *  list of (global) variables
512      */
513     virtual QCString trVariables()
514     { return "Variabler"; }
515
516     /*! This is used in the documentation of a file as a header before the
517      *  list of (global) variables
518      */
519     virtual QCString trEnumerationValues()
520     { return "Egenuppräknade typers värden"; }
521
522     /*! This is used in the documentation of a file before the list of
523      *  documentation blocks for defines
524      */
525     virtual QCString trDefineDocumentation()
526     { return "Dokumentation över makrodefinitioner"; }
527
528     /*! This is used in the documentation of a file/namespace before the list
529      *  of documentation blocks for typedefs
530      */
531     virtual QCString trTypedefDocumentation()
532     { return "Dokumentation över typdefinitioner"; }
533
534     /*! This is used in the documentation of a file/namespace before the list
535      *  of documentation blocks for enumeration types
536      */
537     virtual QCString trEnumerationTypeDocumentation()
538     { return "Dokumentation över egenuppräknande typer"; ; }
539
540     /*! This is used in the documentation of a file/namespace before the list
541      *  of documentation blocks for functions
542      */
543     virtual QCString trFunctionDocumentation()
544     { return "Dokumentation över funktioner"; }
545
546     /*! This is used in the documentation of a file/namespace before the list
547      *  of documentation blocks for variables
548      */
549     virtual QCString trVariableDocumentation()
550     { return "Dokumentation över variabler"; }
551
552     /*! This is used in the documentation of a file/namespace/group before
553      *  the list of links to documented compounds
554      */
555     virtual QCString trCompounds()
556     {
557       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
558       {
559         return "Datastrukturer";
560       }
561       else
562       {
563         return "Klasser";
564       }
565     }
566
567     /*! This is used in the standard footer of each page and indicates when
568      *  the page was generated
569      */
570     virtual QCString trGeneratedAt(const char *date,const char *projName)
571     {
572       QCString result=(QCString)"Skapad "+date;
573       if (projName) result+=(QCString)" för "+projName;
574       result+=(QCString)" av";
575       return result;
576     }
577
578     /*! this text is put before a class diagram */
579     virtual QCString trClassDiagram(const char *clName)
580     {
581       return (QCString)"Klassdiagram för "+clName;
582     }
583
584     /*! this text is generated when the \\internal command is used. */
585     virtual QCString trForInternalUseOnly()
586     { return "Endast för internt bruk."; }
587
588     /*! this text is generated when the \\warning command is used. */
589     virtual QCString trWarning()
590     { return "Varning"; }
591
592     /*! this text is generated when the \\version command is used. */
593     virtual QCString trVersion()
594     { return "Version"; }
595
596     /*! this text is generated when the \\date command is used. */
597     virtual QCString trDate()
598     { return "Datum"; }
599
600     /*! this text is generated when the \\return command is used. */
601     virtual QCString trReturns()
602     { return "Returnerar"; }
603
604     /*! this text is generated when the \\sa command is used. */
605     virtual QCString trSeeAlso()
606     { return "Se även"; }
607
608     /*! this text is generated when the \\param command is used. */
609     virtual QCString trParameters()
610     { return "Parametrar"; }
611
612     /*! this text is generated when the \\exception command is used. */
613     virtual QCString trExceptions()
614     { return "Undantag"; }
615
616     /*! this text is used in the title page of a LaTeX document. */
617     virtual QCString trGeneratedBy()
618     { return "Skapad av"; }
619
620 //////////////////////////////////////////////////////////////////////////
621 // new since 0.49-990307
622 //////////////////////////////////////////////////////////////////////////
623
624     /*! used as the title of page containing all the index of all namespaces. */
625     virtual QCString trNamespaceList()
626     { return "Namnrymdslista"; }
627
628     /*! used as an introduction to the namespace list */
629     virtual QCString trNamespaceListDescription(bool extractAll)
630     {
631       QCString result="Här är en lista över alla ";
632       if (!extractAll) result+="dokumenterade ";
633       result+="namnrymder med en kort beskrivning:";
634       return result;
635     }
636
637     /*! used in the class documentation as a header before the list of all
638      *  friends of a class
639      */
640     virtual QCString trFriends()
641     { return "Vänner"; }
642
643 //////////////////////////////////////////////////////////////////////////
644 // new since 0.49-990405
645 //////////////////////////////////////////////////////////////////////////
646
647     virtual QCString trRelatedFunctionDocumentation()
648     { return "Dokumenation av vänners och relaterade funktioner"; }
649
650 //////////////////////////////////////////////////////////////////////////
651 // new since 0.49-990425
652 //////////////////////////////////////////////////////////////////////////
653
654     /*! used as the title of the HTML page of a class/struct/union */
655     virtual QCString trCompoundReference(const char *clName,
656                                     ClassDef::CompoundType compType,
657                                     bool isTemplate)
658     {
659       QCString result=(QCString)clName;
660       switch(compType)
661       {
662         case ClassDef::Class:  result+=" klass"; break;
663         case ClassDef::Struct: result+=" strukt"; break;
664         case ClassDef::Union:  result+=" union"; break;
665         case ClassDef::Interface:  result+=" gränssnitt"; break;
666         case ClassDef::Protocol:   result+=" protokoll"; break;
667         case ClassDef::Category:   result+=" kategori"; break;
668         case ClassDef::Exception:  result+=" undantag"; break;
669         default: break;
670       }
671       if (isTemplate) result+="-mall";
672       result+=" referens";
673       return result;
674     }
675
676     /*! used as the title of the HTML page of a file */
677     virtual QCString trFileReference(const char *fileName)
678     {
679       QCString result=fileName;
680       result+=" filreferens";
681       return result;
682     }
683
684     /*! used as the title of the HTML page of a namespace */
685     virtual QCString trNamespaceReference(const char *namespaceName)
686     {
687       QCString result=namespaceName;
688       result+=" namnrymdreferens";
689       return result;
690     }
691
692     virtual QCString trPublicMembers()
693     { return "Publika medlemsfunktioner"; }
694     virtual QCString trPublicSlots()
695     { return "Publika slots"; }
696     virtual QCString trSignals()
697     { return "Signaler"; }
698     virtual QCString trStaticPublicMembers()
699     { return "Statiska publika medlemmsfunktioner"; }
700     virtual QCString trProtectedMembers()
701     { return "Skyddade medlemmsfunktioner"; }
702     virtual QCString trProtectedSlots()
703     { return "Skyddade slots"; }
704     virtual QCString trStaticProtectedMembers()
705     { return "Statiska skyddade medlemmsfunktioner"; }
706     virtual QCString trPrivateMembers()
707     { return "Privata medlemmsfunktioner"; }
708     virtual QCString trPrivateSlots()
709     { return "Privata slots"; }
710     virtual QCString trStaticPrivateMembers()
711     { return "Statiska privata medlemmsfunktioner"; }
712
713     /*! this function is used to produce a comma-separated list of items.
714      *  use generateMarker(i) to indicate where item i should be put.
715      */
716     virtual QCString trWriteList(int numEntries)
717     {
718       // this function is used to produce a comma-separated list of items.
719       // use generateMarker(i) to indicate where item i should be put.
720       QCString result;
721       int i;
722       // the inherits list contain `numEntries' classes
723       for (i=0;i<numEntries;i++)
724       {
725         // use generateMarker to generate placeholders for the class links!
726         result+=generateMarker(i); // generate marker for entry i in the list
727                                    // (order is left to right)
728
729         if (i!=numEntries-1)  // not the last entry, so we need a separator
730         {
731           if (i<numEntries-2) // not the fore last entry
732             result+=", ";
733           else                // the fore last entry
734             result+=", och ";
735         }
736       }
737       return result;
738     }
739
740     /*! used in class documentation to produce a list of base classes,
741      *  if class diagrams are disabled.
742      */
743     virtual QCString trInheritsList(int numEntries)
744       // used in class documentation to produce a list of base classes,
745       // if class diagrams are disabled.
746     {
747       return "Ärver "+trWriteList(numEntries)+".";
748     }
749
750     /*! used in class documentation to produce a list of super classes,
751      *  if class diagrams are disabled.
752      */
753     virtual QCString trInheritedByList(int numEntries)
754       // used in class documentation to produce a list of super classes,
755       // if class diagrams are disabled.
756     {
757       return "Ärvd av "+trWriteList(numEntries)+".";
758     }
759
760     /*! used in member documentation blocks to produce a list of
761      *  members that are hidden by this one.
762      */
763     virtual QCString trReimplementedFromList(int numEntries)
764       // used in member documentation blocks to produce a list of
765       // members that are hidden by this one.
766     {
767       return "Återskapad från "+trWriteList(numEntries)+".";
768     }
769
770     /*! used in member documentation blocks to produce a list of
771      *  all member that overwrite the implementation of this member.
772      */
773     virtual QCString trReimplementedInList(int numEntries)
774     {
775       // used in member documentation blocks to produce a list of
776       // all member that overwrite the implementation of this member.
777       return "Återskapad i "+trWriteList(numEntries)+".";
778     }
779
780     /*! This is put above each page as a link to all members of namespaces. */
781     virtual QCString trNamespaceMembers()
782     { return "Namnrymdsmedlemmar"; }
783
784     /*! This is an introduction to the page with all namespace members */
785     virtual QCString trNamespaceMemberDescription(bool extractAll)
786     {
787       QCString result="Här är en lista över alla ";
788       if (!extractAll) result+="dokumenterade ";
789       result+="namnrymdsmedlemmar med länkar till ";
790       if (extractAll)
791         result+=" namnrymd-dokumentationen för varje medlem:";
792       else
793         result+="de namnrymder de tillhör:";
794       return result;
795     }
796     /*! This is used in LaTeX as the title of the chapter with the
797      *  index of all namespaces.
798      */
799     virtual QCString trNamespaceIndex()
800     { return "Namnrymdsindex"; }
801
802     /*! This is used in LaTeX as the title of the chapter containing
803      *  the documentation of all namespaces.
804      */
805     virtual QCString trNamespaceDocumentation()
806       { return "Namnrymd-dokumentation"; }
807
808 //////////////////////////////////////////////////////////////////////////
809 // new since 0.49-990522
810 //////////////////////////////////////////////////////////////////////////
811
812     /*! This is used in the documentation before the list of all
813      *  namespaces in a file.
814      */
815     virtual QCString trNamespaces()
816     { return "Namnrymder"; }
817
818 //////////////////////////////////////////////////////////////////////////
819 // new since 0.49-990728
820 //////////////////////////////////////////////////////////////////////////
821
822     /*! This is put at the bottom of a class documentation page and is
823      *  followed by a list of files that were used to generate the page.
824      */
825     virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
826         bool single)
827     { // here s is one of " Class", " Struct" or " Union"
828       // single is true implies a single file
829       QCString result=(QCString)"Dokumentationen för ";
830       switch(compType)
831       {
832         case ClassDef::Class:      result+="denna klass"; break;
833         case ClassDef::Struct:     result+="denna strukt"; break;
834         case ClassDef::Union:      result+="denna union"; break;
835         case ClassDef::Interface:  result+="detta gränssnitt"; break;
836         case ClassDef::Protocol:   result+="detta protokoll"; break;
837         case ClassDef::Category:   result+="denna kategori"; break;
838         case ClassDef::Exception:  result+="detta undantag"; break;
839         default: break;
840       }
841       result+=" var genererad från följande fil";
842       if (single) result+=":"; else result+="er:";
843       return result;
844     }
845
846 //////////////////////////////////////////////////////////////////////////
847 // new since 0.49-990901
848 //////////////////////////////////////////////////////////////////////////
849
850     /*! This is used as the heading text for the retval command. */
851     virtual QCString trReturnValues()
852     { return "Returvärden"; }
853
854     /*! This is in the (quick) index as a link to the main page (index.html)
855      */
856     virtual QCString trMainPage()
857     { return "Huvudsida"; }
858
859     /*! This is used in references to page that are put in the LaTeX
860      *  documentation. It should be an abbreviation of the word page.
861      */
862     virtual QCString trPageAbbreviation()
863     { return "s."; }
864
865 //////////////////////////////////////////////////////////////////////////
866 // new since 0.49-991003
867 //////////////////////////////////////////////////////////////////////////
868
869     virtual QCString trDefinedAtLineInSourceFile()
870     {
871       return "Definition på rad @0 i filen @1.";
872     }
873     virtual QCString trDefinedInSourceFile()
874     {
875       return "Definition i filen @0.";
876     }
877
878 //////////////////////////////////////////////////////////////////////////
879 // new since 0.49-991205
880 //////////////////////////////////////////////////////////////////////////
881
882     virtual QCString trDeprecated()
883     {
884       return "Föråldrad";
885     }
886
887 //////////////////////////////////////////////////////////////////////////
888 // new since 1.0.0
889 //////////////////////////////////////////////////////////////////////////
890
891     /*! this text is put before a collaboration diagram */
892     virtual QCString trCollaborationDiagram(const char *clName)
893     {
894       return (QCString)"Samarbetsdiagram för "+clName+":";
895     }
896     /*! this text is put before an include dependency graph */
897     virtual QCString trInclDepGraph(const char *fName)
898     {
899       return (QCString)"Include-beroendediagram för "+fName+":";
900     }
901     /*! header that is put before the list of constructor/destructors. */
902     virtual QCString trConstructorDocumentation()
903     {
904       return "Dokumentation av konstruktorer och destruktorer";
905     }
906     /*! Used in the file documentation to point to the corresponding sources. */
907     virtual QCString trGotoSourceCode()
908     {
909       return "Gå till denna fils källkod.";
910     }
911     /*! Used in the file sources to point to the corresponding documentation. */
912     virtual QCString trGotoDocumentation()
913     {
914       return "Gå till denna fils dokumentation.";
915     }
916     /*! Text for the \\pre command */
917     virtual QCString trPrecondition()
918     {
919       return "Precondition";
920     }
921     /*! Text for the \\post command */
922     virtual QCString trPostcondition()
923     {
924       return "Postcondition";
925     }
926     /*! Text for the \\invariant command */
927     virtual QCString trInvariant()
928     {
929       return "Invariant";
930     }
931     /*! Text shown before a multi-line variable/enum initialization */
932     virtual QCString trInitialValue()
933     {
934       return "Begynnelsevärde:";
935     }
936     /*! Text used the source code in the file index */
937     virtual QCString trCode()
938     {
939       return "källkod";
940     }
941     virtual QCString trGraphicalHierarchy()
942     {
943       return "Grafisk klasshierarki";
944     }
945     virtual QCString trGotoGraphicalHierarchy()
946     {
947       return "Gå till den grafiska klasshierarkin";
948     }
949     virtual QCString trGotoTextualHierarchy()
950     {
951       return "Gå till den textbaserade klasshierarkin";
952     }
953     virtual QCString trPageIndex()
954     {
955       return "Sidindex";
956     }
957
958 //////////////////////////////////////////////////////////////////////////
959 // new since 1.1.0
960 //////////////////////////////////////////////////////////////////////////
961
962     virtual QCString trNote()
963     {
964       return "Notera";
965     }
966     virtual QCString trPublicTypes()
967     {
968       return "Publika typer";
969     }
970     virtual QCString trPublicAttribs()
971     {
972       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
973       {
974         return "Datafält";
975       }
976       else
977       {
978         return "Publika attribut";
979       }
980     }
981     virtual QCString trStaticPublicAttribs()
982     {
983       return "Statiska publika attribut";
984     }
985     virtual QCString trProtectedTypes()
986     {
987       return "Skyddade typer";
988     }
989     virtual QCString trProtectedAttribs()
990     {
991       return "Skyddade attribut";
992     }
993     virtual QCString trStaticProtectedAttribs()
994     {
995       return "Statiska skyddade attribut";
996     }
997     virtual QCString trPrivateTypes()
998     {
999       return "Privata typer";
1000     }
1001     virtual QCString trPrivateAttribs()
1002     {
1003       return "Privata attribut";
1004     }
1005     virtual QCString trStaticPrivateAttribs()
1006     {
1007       return "Statiska privata attribut";
1008     }
1009
1010 //////////////////////////////////////////////////////////////////////////
1011 // new since 1.1.3
1012 //////////////////////////////////////////////////////////////////////////
1013
1014     /*! Used as a marker that is put before a \\todo item */
1015     virtual QCString trTodo()
1016     {
1017       return "Att-göra";
1018     }
1019     /*! Used as the header of the todo list */
1020     virtual QCString trTodoList()
1021     {
1022       return "Att göra-lista";
1023     }
1024
1025 //////////////////////////////////////////////////////////////////////////
1026 // new since 1.1.4
1027 //////////////////////////////////////////////////////////////////////////
1028
1029     virtual QCString trReferencedBy()
1030     {
1031       return "Refererad av";
1032     }
1033     virtual QCString trRemarks()
1034     {
1035       return "Lägg märke till";
1036     }
1037     virtual QCString trAttention()
1038     {
1039       return "Observera";
1040     }
1041     virtual QCString trInclByDepGraph()
1042     {
1043       return "Den här grafen visar vilka filer som direkt eller "
1044               "indirekt inkluderar denna filen:";
1045     }
1046     virtual QCString trSince()
1047     {
1048       return "Sedan";
1049     }
1050
1051 //////////////////////////////////////////////////////////////////////////
1052 // new since 1.1.5
1053 //////////////////////////////////////////////////////////////////////////
1054
1055     /*! title of the graph legend page */
1056     virtual QCString trLegendTitle()
1057     {
1058       return "Grafförklaring";
1059     }
1060     /*! page explaining how the dot graph's should be interpreted
1061      *  The %A in the text below are to prevent link to classes called "A".
1062      */
1063     virtual QCString trLegendDocs()
1064     {
1065       return
1066         "Den här sidan förklarar hur man ska tolka de grafer som doxygen "
1067         "genererar.<p>\n"
1068         "Överväg följande exempel:\n"
1069         "\\code\n"
1070         "/*! Osynlig klass på grund av trunkering */\n"
1071         "class Invisible { };\n\n"
1072         "/*! Trunkerad klass, ärvningsrelationen är dold */\n"
1073         "class Truncated : public Invisible { };\n\n"
1074         "/* Klass utan doxygen-kommentarer */\n"
1075         "class Undocumented { };\n\n"
1076         "/*! Klass som ärvs med publikt arv */\n"
1077         "class PublicBase : public Truncated { };\n\n"
1078         "/*! En template-klass */\n"
1079         "template<class T> class Templ { };\n\n"
1080         "/*! Klass som ärvs med skyddat arv */\n"
1081         "class ProtectedBase { };\n\n"
1082         "/*! Klass som ärvs med privat arv */\n"
1083         "class PrivateBase { };\n\n"
1084         "/*! Klass som används av den ärvda klassen */\n"
1085         "class Used { };\n\n"
1086         "/*! Super-klass som ärver ett antal andra klasser */\n"
1087         "class Inherited : public PublicBase,\n"
1088         "                  protected ProtectedBase,\n"
1089         "                  private PrivateBase,\n"
1090         "                  public Undocumented,\n"
1091         "                  public Templ<int>\n"
1092         "{\n"
1093         "  private:\n"
1094         "    Used *m_usedClass;\n"
1095         "};\n"
1096         "\\endcode\n"
1097         "Detta resulterar i att följande graf genereras:"
1098         "<p><center><img alt=\"\" src=\"graph_legend."+getDotImageExtension()+"\"></center></p>\n"
1099         "<p>\n"
1100         "Rektanglarna i den ovanstående grafen har följande betydelser:\n"
1101         "</p>\n"
1102         "<ul>\n"
1103         "<li>%En fylld grå rektangel representerar den strukt eller klass "
1104         "som har genererat grafen.</li>\n"
1105         "<li>%En rektangel med svart kant symboliserar en dokumenterad strukt eller klass.</li>\n"
1106         "<li>%En rektangel med grå kant symboliserar en odokumenterad strukt eller klass.</li>\n"
1107         "<li>%En klass med röd kant symboliserar en strukt eller klass där "
1108         "alla dess relationer inte visas. %En graf trunkeras om den inte får "
1109         "plats inom de givna gränserna.</li>\n"
1110         "</ul>\n"
1111         "<p>\n"
1112         "Pilarna har följande betydelser:\n"
1113         "</p>\n"
1114         "<ul>\n"
1115         "<li>%En mörkblå pil används för att visualisera en publik arvrelation "
1116         "mellan två klasser.</li>\n"
1117         "<li>%En mörkgrön pil används för en skyddad arvsrelation.</li>\n"
1118         "<li>%En mörkröd pil används för en privat arvsrelation.\n</li>"
1119         "<li>%En sträckad lila pil används om en klass är innesluten eller "
1120         "använd av en annan klass. Vid pilen står namnet på den eller de "
1121         "variabler som klassen pilen pekar på kommer åt.</li>\n"
1122         "<li>%En sträckad gul pil symboliserar förhållandet mellan en "
1123         "template-instans och template-klassen, som den instantierades från.\n"
1124         "Vid pilen står instansens template-parametrar.</li>\n"
1125         "</ul>\n";
1126     }
1127     /*! text for the link to the legend page */
1128     virtual QCString trLegend()
1129     {
1130       return "förklaring";
1131     }
1132
1133 //////////////////////////////////////////////////////////////////////////
1134 // new since 1.2.0
1135 //////////////////////////////////////////////////////////////////////////
1136
1137     /*! Used as a marker that is put before a test item */
1138     virtual QCString trTest()
1139     {
1140       return "Test";
1141     }
1142     /*! Used as the header of the test list */
1143     virtual QCString trTestList()
1144     {
1145       return "Testlista";
1146     }
1147
1148 //////////////////////////////////////////////////////////////////////////
1149 // new since 1.2.2
1150 //////////////////////////////////////////////////////////////////////////
1151
1152     /*! Used as a section header for IDL properties */
1153     virtual QCString trProperties()
1154     {
1155                 return "Egenskaper";
1156     }
1157     /*! Used as a section header for IDL property documentation */
1158     virtual QCString trPropertyDocumentation()
1159     {
1160       return "Egenskapsdokumentation";
1161     }
1162
1163 //////////////////////////////////////////////////////////////////////////
1164 // new since 1.2.4
1165 //////////////////////////////////////////////////////////////////////////
1166
1167     /*! Used for Java classes in the summary section of Java packages */
1168     virtual QCString trClasses()
1169     {
1170       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
1171       {
1172         return "Datastrukturer";
1173       }
1174       else
1175       {
1176         return "Klasser";
1177       }
1178     }
1179     /*! Used as the title of a Java package */
1180     virtual QCString trPackage(const char *name)
1181     {
1182       return (QCString)"Paket "+name;
1183     }
1184     /*! Title of the package index page */
1185     virtual QCString trPackageList()
1186     {
1187       return "Paketlista";
1188     }
1189     /*! The description of the package index page */
1190     virtual QCString trPackageListDescription()
1191     {
1192       return "Här är en lista över paketen med en kort beskrivning "
1193              "(om sådan finns):";
1194     }
1195     /*! The link name in the Quick links header for each page */
1196     virtual QCString trPackages()
1197     {
1198       return "Paket";
1199     }
1200     /*! Text shown before a multi-line define */
1201     virtual QCString trDefineValue()
1202     {
1203       return "Värde:";
1204     }
1205
1206 //////////////////////////////////////////////////////////////////////////
1207 // new since 1.2.5
1208 //////////////////////////////////////////////////////////////////////////
1209
1210     /*! Used as a marker that is put before a \\bug item */
1211     virtual QCString trBug()
1212     {
1213       return "Bugg";
1214     }
1215     /*! Used as the header of the bug list */
1216     virtual QCString trBugList()
1217     {
1218       return "Bugglista";
1219     }
1220
1221 //////////////////////////////////////////////////////////////////////////
1222 // new since 1.2.6
1223 //////////////////////////////////////////////////////////////////////////
1224
1225     /*! Used as ansicpg for RTF file
1226      *
1227      * The following table shows the correlation of Charset name, Charset Value and
1228      * <pre>
1229      * Codepage number:
1230      * Charset Name       Charset Value(hex)  Codepage number
1231      * ------------------------------------------------------
1232      * ANSI_CHARSET              0 (x00)            1252
1233          * </pre>
1234          */
1235     virtual QCString trRTFansicp()
1236     {
1237       return "1252";
1238     }
1239
1240
1241     /*! Used as ansicpg for RTF fcharset
1242      *  \see trRTFansicp() for a table of possible values.
1243      */
1244     virtual QCString trRTFCharSet()
1245     {
1246       return "0";
1247     }
1248
1249     /*! Used as header RTF general index */
1250     virtual QCString trRTFGeneralIndex()
1251     {
1252       return "Index";
1253     }
1254
1255     /*! This is used for translation of the word that will possibly
1256      *  be followed by a single name or by a list of names
1257      *  of the category.
1258      */
1259     virtual QCString trClass(bool first_capital, bool singular)
1260     {
1261       QCString result((first_capital ? "Klass" : "klass"));
1262       if (!singular)  result+="er";
1263       return result;
1264     }
1265
1266     /*! This is used for translation of the word that will possibly
1267      *  be followed by a single name or by a list of names
1268      *  of the category.
1269      */
1270     virtual QCString trFile(bool first_capital, bool singular)
1271     {
1272       QCString result((first_capital ? "Fil" : "fil"));
1273       if (!singular)  result+="er";
1274       return result;
1275     }
1276
1277     /*! This is used for translation of the word that will possibly
1278      *  be followed by a single name or by a list of names
1279      *  of the category.
1280      */
1281     virtual QCString trNamespace(bool first_capital, bool singular)
1282     {
1283       QCString result((first_capital ? "Namnrymd" : "namnrymd"));
1284       if (!singular)  result+="er";
1285       return result;
1286     }
1287
1288     /*! This is used for translation of the word that will possibly
1289      *  be followed by a single name or by a list of names
1290      *  of the category.
1291      */
1292     virtual QCString trGroup(bool first_capital, bool singular)
1293     {
1294       QCString result((first_capital ? "Modul" : "modul"));
1295       if (!singular)  result+="er";
1296       return result;
1297     }
1298
1299     /*! This is used for translation of the word that will possibly
1300      *  be followed by a single name or by a list of names
1301      *  of the category.
1302      */
1303     virtual QCString trPage(bool first_capital, bool singular)
1304     {
1305       QCString result((first_capital ? "Sid" : "sid"));
1306       if (singular)
1307          result+="a";
1308       else
1309          result+="or";
1310       return result;
1311     }
1312
1313     /*! This is used for translation of the word that will possibly
1314      *  be followed by a single name or by a list of names
1315      *  of the category.
1316      */
1317     virtual QCString trMember(bool first_capital, bool singular)
1318     {
1319       QCString result((first_capital ? "Medlem" : "medlem"));
1320       if (!singular)  result+="mar";
1321       return result;
1322     }
1323
1324     /*! This is used for translation of the word that will possibly
1325      *  be followed by a single name or by a list of names
1326      *  of the category.
1327      */
1328     virtual QCString trGlobal(bool first_capital, bool singular)
1329     {
1330       QCString result((first_capital ? "Global" : "global"));
1331       if (!singular)  result+="er";
1332       return result;
1333     }
1334
1335 //////////////////////////////////////////////////////////////////////////
1336 // new since 1.2.7
1337 //////////////////////////////////////////////////////////////////////////
1338
1339     /*! This text is generated when the \\author command is used and
1340      *  for the author section in man pages. */
1341     virtual QCString trAuthor(bool first_capital, bool /*singular*/)
1342     {
1343       QCString result((first_capital ? "Författare" : "författare"));
1344       return result;
1345     }
1346
1347 //////////////////////////////////////////////////////////////////////////
1348 // new since 1.2.11
1349 //////////////////////////////////////////////////////////////////////////
1350
1351     /*! This text is put before the list of members referenced by a member
1352      */
1353     virtual QCString trReferences()
1354     {
1355       return "Referenser";
1356     }
1357
1358 //////////////////////////////////////////////////////////////////////////
1359 // new since 1.2.13
1360 //////////////////////////////////////////////////////////////////////////
1361
1362     /*! used in member documentation blocks to produce a list of
1363      *  members that are implemented by this one.
1364      */
1365     virtual QCString trImplementedFromList(int numEntries)
1366     {
1367       return "Implementerar "+trWriteList(numEntries)+".";
1368     }
1369
1370     /*! used in member documentation blocks to produce a list of
1371      *  all members that implement this abstract member.
1372      */
1373     virtual QCString trImplementedInList(int numEntries)
1374     {
1375       return "Implementerad i "+trWriteList(numEntries)+".";
1376     }
1377
1378 //////////////////////////////////////////////////////////////////////////
1379 // new since 1.2.16
1380 //////////////////////////////////////////////////////////////////////////
1381
1382     /*! used in RTF documentation as a heading for the Table
1383      *  of Contents.
1384      */
1385     virtual QCString trRTFTableOfContents()
1386     {
1387       return "Innehållsförteckning";
1388     }
1389
1390 //////////////////////////////////////////////////////////////////////////
1391 // new since 1.2.17
1392 //////////////////////////////////////////////////////////////////////////
1393
1394     /*! Used as the header of the list of item that have been
1395      *  flagged deprecated
1396      */
1397     virtual QCString trDeprecatedList()
1398     {
1399       return "Lista över föråldrade";
1400     }
1401
1402 //////////////////////////////////////////////////////////////////////////
1403 // new since 1.2.18
1404 //////////////////////////////////////////////////////////////////////////
1405
1406     /*! Used as a header for declaration section of the events found in
1407      * a C# program
1408      */
1409     virtual QCString trEvents()
1410     {
1411       return "Händelser";
1412     }
1413     /*! Header used for the documentation section of a class' events. */
1414     virtual QCString trEventDocumentation()
1415     {
1416       return "Händelsedokumentation";
1417     }
1418
1419 //////////////////////////////////////////////////////////////////////////
1420 // new since 1.3
1421 //////////////////////////////////////////////////////////////////////////
1422
1423     /*! Used as a heading for a list of Java class types with package scope.
1424      */
1425     virtual QCString trPackageTypes()
1426     {
1427       return "Pakettyper";
1428     }
1429     /*! Used as a heading for a list of Java class functions with package
1430      * scope.
1431      */
1432     virtual QCString trPackageMembers()
1433     {
1434       return "Paketfunktioner";
1435     }
1436     /*! Used as a heading for a list of static Java class functions with
1437      *  package scope.
1438      */
1439     virtual QCString trStaticPackageMembers()
1440     {
1441       return "Statiska paketfunktioner";
1442     }
1443     /*! Used as a heading for a list of Java class variables with package
1444      * scope.
1445      */
1446     virtual QCString trPackageAttribs()
1447     {
1448       return "Paketattribut";
1449     }
1450     /*! Used as a heading for a list of static Java class variables with
1451      * package scope.
1452      */
1453     virtual QCString trStaticPackageAttribs()
1454     {
1455       return "Statiska paketattribut";
1456     }
1457
1458 //////////////////////////////////////////////////////////////////////////
1459 // new since 1.3.1
1460 //////////////////////////////////////////////////////////////////////////
1461
1462     /*! Used in the quick index of a class/file/namespace member list page
1463      *  to link to the unfiltered list of all members.
1464      */
1465     virtual QCString trAll()
1466     {
1467       return "Alla";
1468     }
1469     /*! Put in front of the call graph for a function. */
1470     virtual QCString trCallGraph()
1471     {
1472       return "Här är anropsdiagrammet för den här funktionen:";
1473     }
1474
1475 //////////////////////////////////////////////////////////////////////////
1476 // new since 1.3.3
1477 //////////////////////////////////////////////////////////////////////////
1478
1479     /*! This string is used as the title for the page listing the search
1480      *  results.
1481      */
1482     virtual QCString trSearchResultsTitle()
1483     {
1484       return "Sökresultat";
1485     }
1486     /*! This string is put just before listing the search results. The
1487      *  text can be different depending on the number of documents found.
1488      *  Inside the text you can put the special marker $num to insert
1489      *  the number representing the actual number of search results.
1490      *  The @a numDocuments parameter can be either 0, 1 or 2, where the
1491      *  value 2 represents 2 or more matches. HTML markup is allowed inside
1492      *  the returned string.
1493      */
1494     virtual QCString trSearchResults(int numDocuments)
1495     {
1496       if (numDocuments==0)
1497       {
1498         return "Tyvärr finns det inga dokument som matchar din sökning.";
1499       }
1500       else if (numDocuments==1)
1501       {
1502         return "Hittade <b>1</b> dokument som matchar din sökning.";
1503       }
1504       else
1505       {
1506         return "Hittade <b>$num</b> dokument som matchar din sökning. "
1507                "Visar de bästa träffarna först.";
1508       }
1509     }
1510     /*! This string is put before the list of matched words, for each search
1511      *  result. What follows is the list of words that matched the query.
1512      */
1513     virtual QCString trSearchMatches()
1514     {
1515       return "Träffar:";
1516     }
1517
1518 //////////////////////////////////////////////////////////////////////////
1519 // new since 1.3.8
1520 //////////////////////////////////////////////////////////////////////////
1521
1522     /*! This is used in HTML as the title of page with source code for file filename
1523      */
1524     virtual QCString trSourceFile(QCString& filename)
1525     {
1526       return "Källkodsfilen " + filename;
1527     }
1528
1529 //////////////////////////////////////////////////////////////////////////
1530 // new since 1.3.9
1531 //////////////////////////////////////////////////////////////////////////
1532
1533     /*! This is used as the name of the chapter containing the directory
1534      *  hierarchy.
1535      */
1536     virtual QCString trDirIndex()
1537     { return "Katalogstruktur"; }
1538
1539     /*! This is used as the name of the chapter containing the documentation
1540      *  of the directories.
1541      */
1542     virtual QCString trDirDocumentation()
1543     { return "Katalogdokumentation"; }
1544
1545     /*! This is used as the title of the directory index and also in the
1546      *  Quick links of an HTML page, to link to the directory hierarchy.
1547      */
1548     virtual QCString trDirectories()
1549     { return "Kataloger"; }
1550
1551     /*! This returns a sentences that introduces the directory hierarchy.
1552      *  and the fact that it is sorted alphabetically per level
1553      */
1554     virtual QCString trDirDescription()
1555         { return "Den här katalogen är grovt sorterad, "
1556              "men inte helt, i alfabetisk ordning:";
1557     }
1558
1559     /*! This returns the title of a directory page. The name of the
1560      *  directory is passed via \a dirName.
1561      */
1562     virtual QCString trDirReference(const char *dirName)
1563     { QCString result=dirName; result+=" Katalogreferens"; return result; }
1564
1565     /*! This returns the word directory with or without starting capital
1566      *  (\a first_capital) and in singular or plural form (\a singular).
1567      */
1568     virtual QCString trDir(bool first_capital, bool singular)
1569     {
1570       QCString result((first_capital ? "Katalog" : "katalog"));
1571       if (!singular) result+="er";
1572       return result;
1573     }
1574
1575 //////////////////////////////////////////////////////////////////////////
1576 // new since 1.4.1
1577 //////////////////////////////////////////////////////////////////////////
1578
1579     /*! This text is added to the documentation when the \\overload command
1580      *  is used for a overloaded function.
1581      */
1582     virtual QCString trOverloadText()
1583     {
1584       return "Det här är en överlagrad medlemsfunktion "
1585              "tillhandahållen för bekvämlighet. Den enda som "
1586              "skiljer sig från ovanstående funktion är vilka "
1587              "argument den tar emot.";
1588     }
1589
1590 //////////////////////////////////////////////////////////////////////////
1591 // new since 1.4.6
1592 //////////////////////////////////////////////////////////////////////////
1593
1594     /*! This is used to introduce a caller (or called-by) graph */
1595     virtual QCString trCallerGraph()
1596     {
1597       return "Här är anropsgrafen för denna funktion:";
1598     }
1599
1600     /*! This is used in the documentation of a file/namespace before the list
1601      *  of documentation blocks for enumeration values
1602      */
1603     virtual QCString trEnumerationValueDocumentation()
1604     { return "Uppräknings-dokumentation"; }
1605
1606 //////////////////////////////////////////////////////////////////////////
1607 // new since 1.5.4 (mainly for Fortran)
1608 //////////////////////////////////////////////////////////////////////////
1609
1610     /*! header that is put before the list of member subprograms (Fortran). */
1611     virtual QCString trMemberFunctionDocumentationFortran()
1612     { return "Dokumentation för memlemsfunktion/subrutin"; }
1613
1614     /*! This is put above each page as a link to the list of annotated data types (Fortran). */
1615     virtual QCString trCompoundListFortran()
1616     { return "Datatyplista"; }
1617
1618     /*! This is put above each page as a link to all members of compounds (Fortran). */
1619     virtual QCString trCompoundMembersFortran()
1620     { return "Datafält"; }
1621
1622     /*! This is an introduction to the annotated compound list (Fortran). */
1623     virtual QCString trCompoundListDescriptionFortran()
1624     { return "Här är datatyperna med en kort beskrivning:"; }
1625
1626     /*! This is an introduction to the page with all data types (Fortran). */
1627     virtual QCString trCompoundMembersDescriptionFortran(bool extractAll)
1628     {
1629       QCString result="Här är en lista över alla ";
1630       if (!extractAll)
1631       {
1632         result+="dokumenterade ";
1633       }
1634       result+="datatypsmedlemmar";
1635       result+=" med länkar till ";
1636       if (!extractAll)
1637       {
1638          result+="dokumentation för varje medlem";
1639       }
1640       else
1641       {
1642          result+="klasserna de hör till:";
1643       }
1644       return result;
1645     }
1646
1647     /*! This is used in LaTeX as the title of the chapter with the
1648      * annotated compound index (Fortran).
1649      */
1650     virtual QCString trCompoundIndexFortran()
1651     { return "Datatypsindex"; }
1652
1653     /*! This is used in LaTeX as the title of the chapter containing
1654      *  the documentation of all data types (Fortran).
1655      */
1656     virtual QCString trTypeDocumentation()
1657     { return "Datatypsdokumentation"; }
1658
1659     /*! This is used in the documentation of a file as a header before the
1660      *  list of (global) subprograms (Fortran).
1661      */
1662     virtual QCString trSubprograms()
1663     { return "Funktioner/subrutiner"; }
1664
1665     /*! This is used in the documentation of a file/namespace before the list
1666      *  of documentation blocks for subprograms (Fortran)
1667      */
1668     virtual QCString trSubprogramDocumentation()
1669     { return "Dokumentation för funktion/subrutin"; }
1670
1671     /*! This is used in the documentation of a file/namespace/group before
1672      *  the list of links to documented compounds (Fortran)
1673      */
1674      virtual QCString trDataTypes()
1675     { return "Datatyper"; }
1676
1677     /*! used as the title of page containing all the index of all modules (Fortran). */
1678     virtual QCString trModulesList()
1679     { return "Modullista"; }
1680
1681     /*! used as an introduction to the modules list (Fortran) */
1682     virtual QCString trModulesListDescription(bool extractAll)
1683     {
1684       QCString result="Här är en lista över alla ";
1685       if (!extractAll) result+="dokumenterade ";
1686       result+="moduler med en kort beskrivning:";
1687       return result;
1688     }
1689
1690     /*! used as the title of the HTML page of a module/type (Fortran) */
1691     virtual QCString trCompoundReferenceFortran(const char *clName,
1692                                     ClassDef::CompoundType compType,
1693                                     bool isTemplate)
1694     {
1695       QCString result=(QCString)clName;
1696       switch(compType)
1697       {
1698         case ClassDef::Class:      result+=" Modul"; break;
1699         case ClassDef::Struct:     result+=" Typ"; break;
1700         case ClassDef::Union:      result+=" Union"; break;
1701         case ClassDef::Interface:  result+=" Gränssnitt"; break;
1702         case ClassDef::Protocol:   result+=" Protokoll"; break;
1703         case ClassDef::Category:   result+=" Kategori"; break;
1704         case ClassDef::Exception:  result+=" Undantag"; break;
1705         default: break;
1706       }
1707       if (isTemplate) result+="-mall";
1708       result+=" referens";
1709       return result;
1710     }
1711     /*! used as the title of the HTML page of a module (Fortran) */
1712     virtual QCString trModuleReference(const char *namespaceName)
1713     {
1714       QCString result=namespaceName;
1715       result+=" Modulreferens";
1716       return result;
1717     }
1718
1719     /*! This is put above each page as a link to all members of modules. (Fortran) */
1720     virtual QCString trModulesMembers()
1721     { return "Modulmedlemmar"; }
1722
1723     /*! This is an introduction to the page with all modules members (Fortran) */
1724     virtual QCString trModulesMemberDescription(bool extractAll)
1725     {
1726       QCString result="Här är en lista över alla ";
1727       if (!extractAll) result+="documented ";
1728       result+="modulmedlemmar med länkar till ";
1729       if (extractAll)
1730       {
1731         result+="moduldokumentationen för varje medlem:";
1732       }
1733       else
1734       {
1735         result+="modulerna de hör till:";
1736       }
1737       return result;
1738     }
1739
1740     /*! This is used in LaTeX as the title of the chapter with the
1741      *  index of all modules (Fortran).
1742      */
1743     virtual QCString trModulesIndex()
1744     { return "Modulindex"; }
1745
1746     /*! This is used for translation of the word that will possibly
1747      *  be followed by a single name or by a list of names
1748      *  of the category.
1749      */
1750     virtual QCString trModule(bool first_capital, bool singular)
1751     {
1752      QCString result((first_capital ? "Modul" : "modul"));
1753       if (!singular)  result+="er";
1754       return result;
1755     }
1756
1757     /*! This is put at the bottom of a module documentation page and is
1758      *  followed by a list of files that were used to generate the page.
1759      */
1760     virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
1761         bool single)
1762     {
1763       // single is true implies a single file
1764       QCString result=(QCString)"Dokumentationen för ";
1765       switch(compType)
1766       {
1767         case ClassDef::Class:      result+="denna modul"; break;
1768         case ClassDef::Struct:     result+="denna typ"; break;
1769         case ClassDef::Union:      result+="denna union"; break;
1770         case ClassDef::Interface:  result+="detta gränssnitt"; break;
1771         case ClassDef::Protocol:   result+="detta protokoll"; break;
1772         case ClassDef::Category:   result+="denna kategori"; break;
1773         case ClassDef::Exception:  result+="detta undantag"; break;
1774         default: break;
1775       }
1776       result+=" genererades från följade fil";
1777       if (single) result+=":"; else result+="er:";
1778       return result;
1779     }
1780
1781     /*! This is used for translation of the word that will possibly
1782      *  be followed by a single name or by a list of names
1783      *  of the category.
1784      */
1785     virtual QCString trType(bool first_capital, bool singular)
1786     {
1787       QCString result((first_capital ? "Typ" : "typ"));
1788       if (!singular)  result+="er";
1789       return result;
1790     }
1791
1792     /*! This is used for translation of the word that will possibly
1793      *  be followed by a single name or by a list of names
1794      *  of the category.
1795      */
1796     virtual QCString trSubprogram(bool first_capital, bool /*singular*/)
1797     {
1798       QCString result((first_capital ? "Underprogram" : "underprogram"));
1799       return result;
1800     }
1801
1802     /*! C# Type Constraint list */
1803     virtual QCString trTypeConstraints()
1804     {
1805       return "Typbegränsningar";
1806     }
1807
1808 //////////////////////////////////////////////////////////////////////////
1809 // new since 1.6.0 (mainly for the new search engine)
1810 //////////////////////////////////////////////////////////////////////////
1811
1812     /*! directory relation for \a name */
1813     virtual QCString trDirRelation(const char *name)
1814     {
1815       return QCString(name)+" Relation";
1816     }
1817
1818     /*! Loading message shown when loading search results */
1819     virtual QCString trLoading()
1820     {
1821       return "Laddar...";
1822     }
1823
1824     /*! Label used for search results in the global namespace */
1825     virtual QCString trGlobalNamespace()
1826     {
1827       return "Global namnrymd";
1828     }
1829
1830     /*! Message shown while searching */
1831     virtual QCString trSearching()
1832     {
1833       return "Söker...";
1834     }
1835
1836     /*! Text shown when no search results are found */
1837     virtual QCString trNoMatches()
1838     {
1839       return "Inga träffar";
1840     }
1841
1842 //////////////////////////////////////////////////////////////////////////
1843 // new since 1.6.3 (missing items for the directory pages)
1844 //////////////////////////////////////////////////////////////////////////
1845
1846     /*! when clicking a directory dependency label, a page with a
1847      *  table is shown. The heading for the first column mentions the
1848      *  source file that has a relation to another file.
1849      */
1850     virtual QCString trFileIn(const char *name)
1851     {
1852       return (QCString)"Fil i "+name;
1853     }
1854
1855     /*! when clicking a directory dependency label, a page with a
1856      *  table is shown. The heading for the second column mentions the
1857      *  destination file that is included.
1858      */
1859     virtual QCString trIncludesFileIn(const char *name)
1860     {
1861       return (QCString)"Inkluderar fil i "+name;
1862     }
1863
1864     /** Compiles a date string.
1865      *  @param year Year in 4 digits
1866      *  @param month Month of the year: 1=January
1867      *  @param day Day of the Month: 1..31
1868      *  @param dayOfWeek Day of the week: 1=Monday..7=Sunday
1869      *  @param hour Hour of the day: 0..23
1870      *  @param minutes Minutes in the hour: 0..59
1871      *  @param seconds Seconds within the minute: 0..59
1872      *  @param includeTime Include time in the result string?
1873      */
1874     virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
1875                                 int hour,int minutes,int seconds,
1876                                 bool includeTime)
1877     {
1878       static const char *days[]   = { "Mån","Tis","Ons","Tor","Fre","Lör","Sön" };
1879       static const char *months[] = { "Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec" };
1880       QCString sdate;
1881       sdate.sprintf("%s %d %s %d",days[dayOfWeek-1],day,months[month-1],year);
1882       if (includeTime)
1883       {
1884         QCString stime;
1885         stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
1886         sdate+=stime;
1887       }
1888       return sdate;
1889     }
1890
1891 //////////////////////////////////////////////////////////////////////////
1892 // new since 1.7.5
1893 //////////////////////////////////////////////////////////////////////////
1894
1895     /*! Header for the page with bibliographic citations */
1896     virtual QCString trCiteReferences()
1897     { return "Bibliografiska Referenser"; }
1898
1899     /*! Text for copyright paragraph */
1900     virtual QCString trCopyright()
1901     { return "Copyright"; }
1902
1903     /*! Header for the graph showing the directory dependencies */
1904     virtual QCString trDirDepGraph(const char *name)
1905     { return QCString("Katalogberoendegraf för ")+name+":"; }
1906
1907 //////////////////////////////////////////////////////////////////////////
1908 // new since 1.8.0
1909 //////////////////////////////////////////////////////////////////////////
1910
1911     /*! Detail level selector shown for hierarchical indices */
1912     virtual QCString trDetailLevel()
1913     { return "detaljnivå"; }
1914
1915     /*! Section header for list of template parameters */
1916     virtual QCString trTemplateParameters()
1917     { return "Mall-parametrar"; }
1918
1919     /*! Used in dot graph when UML_LOOK is enabled and there are many fields */
1920     virtual QCString trAndMore(const QCString &number)
1921     { return "och "+number+" flera..."; }
1922
1923     /*! Used file list for a Java enum */
1924     virtual QCString trEnumGeneratedFromFiles(bool single)
1925     { QCString result = "Dokumentationen för denna enum var genererad från föjlande fil";
1926       if (!single) result += "er";
1927       result+=":";
1928       return result;
1929     }
1930
1931     /*! Header of a Java enum page (Java enums are represented as classes). */
1932     virtual QCString trEnumReference(const char *name)
1933     { return QCString(name)+" Enum-referens"; }
1934
1935     /*! Used for a section containing inherited members */
1936     virtual QCString trInheritedFrom(const char *members,const char *what)
1937     { return QCString(members)+" ärvd ifrån "+what; }
1938
1939     /*! Header of the sections with inherited members specific for the
1940      *  base class(es)
1941      */
1942     virtual QCString trAdditionalInheritedMembers()
1943     { return "Ytterliga ärvda medlemmar"; }
1944
1945 //////////////////////////////////////////////////////////////////////////
1946 // new since 1.8.2
1947 //////////////////////////////////////////////////////////////////////////
1948
1949     /*! Used as a tooltip for the toggle button that appears in the
1950      *  navigation tree in the HTML output when GENERATE_TREEVIEW is
1951      *  enabled. This tooltip explains the meaning of the button.
1952      */
1953     virtual QCString trPanelSynchronisationTooltip(bool enable)
1954     {
1955       QCString opt = enable ? "aktivera" : "inaktivera"; 
1956       return "klicka för att "+opt+" panelsynkronisering";
1957     }
1958
1959     /*! Used in a method of an Objective-C class that is declared in a
1960      *  a category. Note that the @1 marker is required and is replaced
1961      *  by a link.
1962      */
1963     virtual QCString trProvidedByCategory()
1964     {
1965       return "Tillhandahålls av kategori @0.";
1966     }
1967
1968     /*! Used in a method of an Objective-C category that extends a class.
1969      *  Note that the @1 marker is required and is replaced by a link to
1970      *  the class method.
1971      */
1972     virtual QCString trExtendsClass()
1973     {
1974       return "Utökar klass @0.";
1975     }
1976
1977     /*! Used as the header of a list of class methods in Objective-C.
1978      *  These are similar to static public member functions in C++.
1979      */
1980     virtual QCString trClassMethods()
1981     {
1982       return "Klassmetoder";
1983     }
1984
1985     /*! Used as the header of a list of instance methods in Objective-C.
1986      *  These are similar to public member functions in C++.
1987      */
1988     virtual QCString trInstanceMethods()
1989     {
1990       return "Instansmetoder";
1991     }
1992
1993     /*! Used as the header of the member functions of an Objective-C class.
1994      */
1995     virtual QCString trMethodDocumentation()
1996     {
1997       return "Metoddokumentation";
1998     }
1999
2000     /*! Used as the title of the design overview picture created for the
2001      *  VHDL output.
2002      */
2003     virtual QCString trDesignOverview()
2004     {
2005       return "Designöversikt";
2006     }
2007
2008 //////////////////////////////////////////////////////////////////////////
2009 // new since 1.8.4
2010 //////////////////////////////////////////////////////////////////////////
2011
2012     /** old style UNO IDL services: implemented interfaces */
2013     virtual QCString trInterfaces()
2014     { return "Exporterade interface"; }
2015
2016     /** old style UNO IDL services: inherited services */
2017     virtual QCString trServices()
2018     { return "Inkuderade tjänster"; }
2019
2020     /** UNO IDL constant groups */
2021     virtual QCString trConstantGroups()
2022     { return "Konstantgrupper"; }
2023
2024     /** UNO IDL constant groups */
2025     virtual QCString trConstantGroupReference(const char *namespaceName)
2026     {
2027       QCString result=namespaceName;
2028       result+=" Referens till konstantgrupp";
2029       return result;
2030     }
2031     /** UNO IDL service page title */
2032     virtual QCString trServiceReference(const char *sName)
2033     {
2034       QCString result=(QCString)sName;
2035       result+=" Tjänstereferens";
2036       return result;
2037     }
2038     /** UNO IDL singleton page title */
2039     virtual QCString trSingletonReference(const char *sName)
2040     {
2041       QCString result=(QCString)sName;
2042       result+=" Singleton-referens";
2043       return result;
2044     }
2045     /** UNO IDL service page */
2046     virtual QCString trServiceGeneratedFromFiles(bool single)
2047     {
2048       // single is true implies a single file
2049       QCString result=(QCString)"Dokumentationen för denna tjänst "
2050                                 "genererades från följande fil";
2051       if (single) result+=":"; else result+="er:";
2052       return result;
2053     }
2054     /** UNO IDL singleton page */
2055     virtual QCString trSingletonGeneratedFromFiles(bool single)
2056     {
2057       // single is true implies a single file
2058       QCString result=(QCString)"Dokumentationen för denna singleton"
2059                                 "genererades från följande fil";
2060       if (single) result+=":"; else result+="er:";
2061       return result;
2062     }
2063
2064
2065 };
2066
2067 #endif