26a6db628187053ac1f2b3516e2c1c9300e6913d
[platform/upstream/doxygen.git] / src / translator_tw.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  * The translation into Chinesetraditional was provided by
17  *   Daniel YC Lin (dlin.tw <at> gmail.com) since v1.2.16-v1.5.5
18  */
19
20 #ifndef TRANSLATOR_TW_H
21 #define TRANSLATOR_TW_H
22
23 // When defining a translator class for the new language, follow
24 // the description in the documentation.  One of the steps says
25 // that you should copy the translator_en.h (this) file to your
26 // translator_xx.h new file.  Your new language should use the
27 // Translator class as the base class.  This means that you need to
28 // implement exactly the same (pure virtual) methods as the
29 // TranslatorEnglish does.  Because of this, it is a good idea to
30 // start with the copy of TranslatorEnglish and replace the strings
31 // one by one.
32 //
33 // It is not necessary to include "translator.h" or
34 // "translator_adapter.h" here.  The files are included in the
35 // language.cpp correctly.  Not including any of the mentioned
36 // files frees the maintainer from thinking about whether the
37 // first, the second, or both files should be included or not, and
38 // why.  This holds namely for localized translators because their
39 // base class is changed occasionaly to adapter classes when the
40 // Translator class changes the interface, or back to the
41 // Translator class (by the local maintainer) when the localized
42 // translator is made up-to-date again.
43
44 class TranslatorChinesetraditional : public Translator
45 {
46   public:
47
48     // --- Language control methods -------------------
49
50     /*! Used for identification of the language. The identification
51      * should not be translated. It should be replaced by the name
52      * of the language in English using lower-case characters only
53      * (e.g. "czech", "japanese", "russian", etc.). It should be equal to
54      * the identification used in language.cpp.
55      */
56     virtual QCString idLanguage()
57     { return "chinese-traditional"; }
58
59     /*! Used to get the LaTeX command(s) for the language support.
60      *  This method should return string with commands that switch
61      *  LaTeX to the desired language.  For example
62      *  <pre>"\\usepackage[german]{babel}\n"
63      *  </pre>
64      *  or
65      *  <pre>"\\usepackage{polski}\n"
66      *  "\\usepackage[latin2]{inputenc}\n"
67      *  "\\usepackage[T1]{fontenc}\n"
68      *  </pre>
69      *
70      * The English LaTeX does not use such commands.  Because of this
71      * the empty string is returned in this implementation.
72      */
73     virtual QCString latexLanguageSupportCommand()
74     {
75       return "";
76     }
77
78     // --- Language translation methods -------------------
79
80     /*! used in the compound documentation before a list of related functions. */
81     virtual QCString trRelatedFunctions()
82     { return "相關函式"; }
83
84     /*! subscript for the related functions. */
85     virtual QCString trRelatedSubscript()
86     { return "(註:這些不是成員函式)"; }
87
88     /*! header that is put before the detailed description of files, classes and namespaces. */
89     virtual QCString trDetailedDescription()
90     { return "詳細描述"; }
91
92     /*! header that is put before the list of typedefs. */
93     virtual QCString trMemberTypedefDocumentation()
94     { return "型態定義成員說明文件"; }
95
96     /*! header that is put before the list of enumerations. */
97     virtual QCString trMemberEnumerationDocumentation()
98     { return "列舉型態成員說明文件"; }
99
100     /*! header that is put before the list of member functions. */
101     virtual QCString trMemberFunctionDocumentation()
102     { return "函式成員說明文件"; }
103
104     /*! header that is put before the list of member attributes. */
105     virtual QCString trMemberDataDocumentation()
106     {
107       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
108       {
109         return "欄位說明文件";
110       }
111       else
112       {
113         return "資料成員說明文件";
114       }
115     }
116
117     /*! this is the text of a link put after brief descriptions. */
118     virtual QCString trMore()
119     { return "更多..."; }
120
121     /*! put in the class documentation */
122     virtual QCString trListOfAllMembers()
123     { return "全部成員列表"; }
124
125     /*! used as the title of the "list of all members" page of a class */
126     virtual QCString trMemberList()
127     { return "成員列表"; }
128
129     /*! this is the first part of a sentence that is followed by a class name */
130     virtual QCString trThisIsTheListOfAllMembers()
131     { return "完整成員列表,類別為"; }
132
133     /*! this is the remainder of the sentence after the class name */
134     virtual QCString trIncludingInheritedMembers()
135     { return ", 包含所有繼承的成員"; }
136
137     /*! this is put at the author sections at the bottom of man pages.
138      *  parameter s is name of the project name.
139      */
140     virtual QCString trGeneratedAutomatically(const char *s)
141     { QCString result="本文件由Doxygen";
142       if (s) result+=(QCString)" 自 "+s;
143       result+=" 的原始碼中自動產生.";
144       return result;
145     }
146
147     /*! put after an enum name in the list of all members */
148     virtual QCString trEnumName()
149     { return "列舉型態名稱"; }
150
151     /*! put after an enum value in the list of all members */
152     virtual QCString trEnumValue()
153     { return "列舉值"; }
154
155     /*! put after an undocumented member in the list of all members */
156     virtual QCString trDefinedIn()
157     { return "被定義於"; }
158
159     // quick reference sections
160
161     /*! This is put above each page as a link to the list of all groups of
162      *  compounds or files (see the \\group command).
163      */
164     virtual QCString trModules()
165     { return "模組"; }
166
167     /*! This is put above each page as a link to the class hierarchy */
168     virtual QCString trClassHierarchy()
169     { return "類別階層"; }
170
171     /*! This is put above each page as a link to the list of annotated classes */
172     virtual QCString trCompoundList()
173     {
174       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
175       {
176         return "資料結構";
177       }
178       else
179       {
180         return "複合列表";
181       }
182     }
183
184     /*! This is put above each page as a link to the list of documented files */
185     virtual QCString trFileList()
186     { return "檔案列表"; }
187
188     /*! This is put above each page as a link to all members of compounds. */
189     virtual QCString trCompoundMembers()
190     {
191       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
192       {
193         return "資料欄位";
194       }
195       else
196       {
197         return "複合成員";
198       }
199     }
200
201     /*! This is put above each page as a link to all members of files. */
202     virtual QCString trFileMembers()
203     {
204       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
205       {
206         return "全域資料";
207       }
208       else
209       {
210         return "檔案成員";
211       }
212     }
213
214     /*! This is put above each page as a link to all related pages. */
215     virtual QCString trRelatedPages()
216     { return "相關頁面"; }
217
218     /*! This is put above each page as a link to all examples. */
219     virtual QCString trExamples()
220     { return "範例"; }
221
222     /*! This is put above each page as a link to the search engine. */
223     virtual QCString trSearch()
224     { return "搜尋"; }
225
226     /*! This is an introduction to the class hierarchy. */
227     virtual QCString trClassHierarchyDescription()
228     { return "這個繼承列表經過簡略的字母排序: ";
229     }
230
231     /*! This is an introduction to the list with all files. */
232     virtual QCString trFileListDescription(bool extractAll)
233     {
234       QCString result="這是附帶簡略說明";
235       if (!extractAll) result+="且經過文件化";
236       result+="的檔案列表:";
237       return result;
238     }
239
240     /*! This is an introduction to the annotated compound list. */
241     virtual QCString trCompoundListDescription()
242     {
243
244       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
245       {
246         return "這是附帶簡略說明的資料結構:";
247       }
248       else
249       {
250         return "這是附帶簡略說明的類別,結構,"
251                "聯合型態(unions)及介面(interfaces):";
252       }
253     }
254
255     /*! This is an introduction to the page with all class members. */
256     virtual QCString trCompoundMembersDescription(bool extractAll)
257     {
258       QCString result="這是全部";
259       if (!extractAll)
260       {
261         result+="文件化過";
262       }
263       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
264       {
265         result+="結構及聯合型態欄位";
266       }
267       else
268       {
269         result+="類別成員";
270       }
271       result+=", 並且帶有連結至";
272       if (!extractAll)
273       {
274         if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
275         {
276           result+="每個欄位的結構/聯合型態說明文件:";
277         }
278         else
279         {
280           result+="每個成員的類別說明文件:";
281         }
282       }
283       else
284       {
285         if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
286         {
287           result+="這些結構/聯合型態所屬:";
288         }
289         else
290         {
291           result+="這些類別所屬:";
292         }
293       }
294       return result;
295     }
296
297     /*! This is an introduction to the page with all file members. */
298     virtual QCString trFileMembersDescription(bool extractAll)
299     {
300       QCString result="這是全部";
301       if (!extractAll) result+="文件化的";
302
303       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
304       {
305         result+="函式,變數,定義,列舉,及型態定義";
306       }
307       else
308       {
309         result+="檔案成員";
310       }
311       result+=",並且帶有連結至";
312       if (extractAll)
313         result+="這些檔案所屬:";
314       else
315         result+="說明文件:";
316       return result;
317     }
318
319     /*! This is an introduction to the page with the list of all examples */
320     virtual QCString trExamplesDescription()
321     { return "所有範例列表:"; }
322
323     /*! This is an introduction to the page with the list of related pages */
324     virtual QCString trRelatedPagesDescription()
325     { return "所有相關文件頁面列表:"; }
326
327     /*! This is an introduction to the page with the list of class/file groups */
328     virtual QCString trModulesDescription()
329     { return "所有模組列表:"; }
330
331     // index titles (the project name is prepended for these)
332
333
334     /*! This is used in HTML as the title of index.html. */
335     virtual QCString trDocumentation()
336     { return "說明文件"; }
337
338     /*! This is used in LaTeX as the title of the chapter with the
339      * index of all groups.
340      */
341     virtual QCString trModuleIndex()
342     { return "模組索引"; }
343
344     /*! This is used in LaTeX as the title of the chapter with the
345      * class hierarchy.
346      */
347     virtual QCString trHierarchicalIndex()
348     { return "階層索引"; }
349
350     /*! This is used in LaTeX as the title of the chapter with the
351      * annotated compound index.
352      */
353     virtual QCString trCompoundIndex()
354     {
355       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
356       {
357         return "資料結構索引";
358       }
359       else
360       {
361         return "複合索引";
362       }
363     }
364
365     /*! This is used in LaTeX as the title of the chapter with the
366      * list of all files.
367      */
368     virtual QCString trFileIndex()
369     { return "檔案索引"; }
370
371     /*! This is used in LaTeX as the title of the chapter containing
372      *  the documentation of all groups.
373      */
374     virtual QCString trModuleDocumentation()
375     { return "模組說明文件"; }
376
377     /*! This is used in LaTeX as the title of the chapter containing
378      *  the documentation of all classes, structs and unions.
379      */
380     virtual QCString trClassDocumentation()
381     {
382       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
383       {
384         return "資料結構說明文件";
385       }
386       else
387       {
388         return "類別說明文件";
389       }
390     }
391
392     /*! This is used in LaTeX as the title of the chapter containing
393      *  the documentation of all files.
394      */
395     virtual QCString trFileDocumentation()
396     { return "檔案說明文件"; }
397
398     /*! This is used in LaTeX as the title of the chapter containing
399      *  the documentation of all examples.
400      */
401     virtual QCString trExampleDocumentation()
402     { return "範例說明文件"; }
403
404     /*! This is used in LaTeX as the title of the chapter containing
405      *  the documentation of all related pages.
406      */
407     virtual QCString trPageDocumentation()
408     { return "頁面說明文件"; }
409
410     /*! This is used in LaTeX as the title of the document */
411     virtual QCString trReferenceManual()
412     { return "參考手冊"; }
413
414     /*! This is used in the documentation of a file as a header before the
415      *  list of defines
416      */
417     virtual QCString trDefines()
418     { return "定義"; }
419
420     /*! This is used in the documentation of a file as a header before the
421      *  list of typedefs
422      */
423     virtual QCString trTypedefs()
424     { return "型態定義"; }
425
426     /*! This is used in the documentation of a file as a header before the
427      *  list of enumerations
428      */
429     virtual QCString trEnumerations()
430     { return "列舉型態"; }
431
432     /*! This is used in the documentation of a file as a header before the
433      *  list of (global) functions
434      */
435     virtual QCString trFunctions()
436     { return "函式"; }
437
438     /*! This is used in the documentation of a file as a header before the
439      *  list of (global) variables
440      */
441     virtual QCString trVariables()
442     { return "變數"; }
443
444     /*! This is used in the documentation of a file as a header before the
445      *  list of (global) variables
446      */
447     virtual QCString trEnumerationValues()
448     { return "列舉值"; }
449
450     /*! This is used in the documentation of a file before the list of
451      *  documentation blocks for defines
452      */
453     virtual QCString trDefineDocumentation()
454     { return "定義巨集說明文件"; }
455
456     /*! This is used in the documentation of a file/namespace before the list
457      *  of documentation blocks for typedefs
458      */
459     virtual QCString trTypedefDocumentation()
460     { return "型態定義說明文件"; }
461
462     /*! This is used in the documentation of a file/namespace before the list
463      *  of documentation blocks for enumeration types
464      */
465     virtual QCString trEnumerationTypeDocumentation()
466     { return "列舉型態說明文件"; }
467
468     /*! This is used in the documentation of a file/namespace before the list
469      *  of documentation blocks for enumeration values
470      */
471     virtual QCString trEnumerationValueDocumentation()
472     { return "列舉值說明文件"; }
473
474     /*! This is used in the documentation of a file/namespace before the list
475      *  of documentation blocks for functions
476      */
477     virtual QCString trFunctionDocumentation()
478     { return "函式說明文件"; }
479
480     /*! This is used in the documentation of a file/namespace before the list
481      *  of documentation blocks for variables
482      */
483     virtual QCString trVariableDocumentation()
484     { return "變數說明文件"; }
485
486     /*! This is used in the documentation of a file/namespace/group before
487      *  the list of links to documented compounds
488      */
489     virtual QCString trCompounds()
490     {
491       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
492       {
493         return "資料結構";
494       }
495       else
496       {
497         return "複合項目";
498       }
499     }
500
501     /*! This is used in the standard footer of each page and indicates when
502      *  the page was generated
503      */
504     virtual QCString trGeneratedAt(const char *date,const char *projName)
505     {
506       QCString result=(QCString)"產生日期:"+date;
507       if (projName) result+=(QCString)", 專案:"+projName;
508       result+=(QCString)", 產生器:";
509       return result;
510     }
511
512     /*! this text is put before a class diagram */
513     virtual QCString trClassDiagram(const char *clName)
514     {
515       return (QCString)"類別"+clName+"的繼承圖:";
516     }
517
518     /*! this text is generated when the \\internal command is used. */
519     virtual QCString trForInternalUseOnly()
520     { return "僅供內部使用."; }
521
522     /*! this text is generated when the \\warning command is used. */
523     virtual QCString trWarning()
524     { return "警告"; }
525
526     /*! this text is generated when the \\version command is used. */
527     virtual QCString trVersion()
528     { return "版本"; }
529
530     /*! this text is generated when the \\date command is used. */
531     virtual QCString trDate()
532     { return "日期"; }
533
534     /*! this text is generated when the \\return command is used. */
535     virtual QCString trReturns()
536     { return "傳回值"; }
537
538     /*! this text is generated when the \\sa command is used. */
539     virtual QCString trSeeAlso()
540     { return "參閱"; }
541
542     /*! this text is generated when the \\param command is used. */
543     virtual QCString trParameters()
544     { return "參數"; }
545
546     /*! this text is generated when the \\exception command is used. */
547     virtual QCString trExceptions()
548     { return "例外"; }
549
550     /*! this text is used in the title page of a LaTeX document. */
551     virtual QCString trGeneratedBy()
552     { return "產生者:"; }
553
554 //////////////////////////////////////////////////////////////////////////
555 // new since 0.49-990307
556 //////////////////////////////////////////////////////////////////////////
557
558     /*! used as the title of page containing all the index of all namespaces. */
559     virtual QCString trNamespaceList()
560     { return "命名空間(name space)列表"; }
561
562     /*! used as an introduction to the namespace list */
563     virtual QCString trNamespaceListDescription(bool extractAll)
564     {
565       QCString result="這是所有附帶簡略說明的";
566       if (!extractAll) result+="文件化的";
567       result+="命名空間(namespaces):";
568       return result;
569     }
570
571     /*! used in the class documentation as a header before the list of all
572      *  friends of a class
573      */
574     virtual QCString trFriends()
575     { return "類別朋友(Friends)"; }
576
577 //////////////////////////////////////////////////////////////////////////
578 // new since 0.49-990405
579 //////////////////////////////////////////////////////////////////////////
580
581     /*! used in the class documentation as a header before the list of all
582      * related classes
583      */
584     virtual QCString trRelatedFunctionDocumentation()
585     { return "類別朋友及相關函式說明文件"; }
586
587 //////////////////////////////////////////////////////////////////////////
588 // new since 0.49-990425
589 //////////////////////////////////////////////////////////////////////////
590
591     /*! used as the title of the HTML page of a class/struct/union */
592     virtual QCString trCompoundReference(const char *clName,
593                                     ClassDef::CompoundType compType,
594                                     bool isTemplate)
595     {
596       QCString result=(QCString)clName+" ";
597       switch(compType)
598       {
599         case ClassDef::Class:      result+=" 類別"; break;
600         case ClassDef::Struct:     result+=" 結構"; break;
601         case ClassDef::Union:      result+=" 聯合"; break;
602         case ClassDef::Interface:  result+=" 介面"; break;
603         case ClassDef::Protocol:   result+=" 協定"; break;
604         case ClassDef::Category:   result+=" 分類"; break;
605         case ClassDef::Exception:  result+=" 例外"; break;
606         default: break;
607       }
608       if (isTemplate) result+=" 樣版";
609       result+=" 參考文件";
610       return result;
611     }
612
613     /*! used as the title of the HTML page of a file */
614     virtual QCString trFileReference(const char *fileName)
615     {
616       QCString result=fileName;
617       result+=" 檔案參考文件";
618       return result;
619     }
620
621     /*! used as the title of the HTML page of a namespace */
622     virtual QCString trNamespaceReference(const char *namespaceName)
623     {
624       QCString result=namespaceName;
625       result+=" 命名空間(Namespace)參考文件";
626       return result;
627     }
628
629     virtual QCString trPublicMembers()
630     { return "公開方法(Public Methods)"; }
631     virtual QCString trPublicSlots()
632     { return "公開插槽(Public Slots)"; }
633     virtual QCString trSignals()
634     { return "訊號(Signals)"; }
635     virtual QCString trStaticPublicMembers()
636     { return "靜態公開方法(Static Public Methods)"; }
637     virtual QCString trProtectedMembers()
638     { return "保護方法(Protected Methods)"; }
639     virtual QCString trProtectedSlots()
640     { return "保護插槽(Protected Slots)"; }
641     virtual QCString trStaticProtectedMembers()
642     { return "靜態保護方法(Static Protected Methods)"; }
643     virtual QCString trPrivateMembers()
644     { return "私有方法(Private Methods)"; }
645     virtual QCString trPrivateSlots()
646     { return "私有插槽(Private Slots)"; }
647     virtual QCString trStaticPrivateMembers()
648     { return "靜態私有方法(Static Private Methods)"; }
649
650     /*! this function is used to produce a comma-separated list of items.
651      *  use generateMarker(i) to indicate where item i should be put.
652      */
653     virtual QCString trWriteList(int numEntries)
654     {
655       QCString result;
656       int i;
657       // the inherits list contain `numEntries' classes
658       for (i=0;i<numEntries;i++)
659       {
660         // use generateMarker to generate placeholders for the class links!
661         result+=generateMarker(i); // generate marker for entry i in the list
662                                    // (order is left to right)
663
664         if (i!=numEntries-1)  // not the last entry, so we need a separator
665         {
666           if (i<numEntries-2) // not the fore last entry
667             result+=", ";
668           else                // the fore last entry
669             result+=", 及 ";
670         }
671       }
672       return result;
673     }
674
675     /*! used in class documentation to produce a list of base classes,
676      *  if class diagrams are disabled.
677      */
678     virtual QCString trInheritsList(int numEntries)
679     {
680       return "繼承自 "+trWriteList(numEntries)+".";
681     }
682
683     /*! used in class documentation to produce a list of super classes,
684      *  if class diagrams are disabled.
685      */
686     virtual QCString trInheritedByList(int numEntries)
687     {
688       return "被 "+trWriteList(numEntries)+"繼承.";
689     }
690
691     /*! used in member documentation blocks to produce a list of
692      *  members that are hidden by this one.
693      */
694     virtual QCString trReimplementedFromList(int numEntries)
695     {
696       return "依據"+trWriteList(numEntries)+"重新實作.";
697     }
698
699     /*! used in member documentation blocks to produce a list of
700      *  all member that overwrite the implementation of this member.
701      */
702     virtual QCString trReimplementedInList(int numEntries)
703     {
704       return "在"+trWriteList(numEntries)+"重新實作.";
705     }
706
707     /*! This is put above each page as a link to all members of namespaces. */
708     virtual QCString trNamespaceMembers()
709     { return "命名空間(Namespace)成員"; }
710
711     /*! This is an introduction to the page with all namespace members */
712     virtual QCString trNamespaceMemberDescription(bool extractAll)
713     {
714       QCString result="此處列表為所有 ";
715       if (!extractAll) result+="文件化的 ";
716       result+="命名空間(namespace)成員,並且附帶連結至 ";
717       if (extractAll)
718         result+="每個成員的說明文件:";
719       else
720         result+="該命名空間所屬之處:";
721       return result;
722     }
723     /*! This is used in LaTeX as the title of the chapter with the
724      *  index of all namespaces.
725      */
726     virtual QCString trNamespaceIndex()
727     { return "命名空間(Namespace)索引"; }
728
729     /*! This is used in LaTeX as the title of the chapter containing
730      *  the documentation of all namespaces.
731      */
732     virtual QCString trNamespaceDocumentation()
733     { return "命名空間(Namespace)說明文件"; }
734
735 //////////////////////////////////////////////////////////////////////////
736 // new since 0.49-990522
737 //////////////////////////////////////////////////////////////////////////
738
739     /*! This is used in the documentation before the list of all
740      *  namespaces in a file.
741      */
742     virtual QCString trNamespaces()
743     { return "命名空間(Namespaces)"; }
744
745 //////////////////////////////////////////////////////////////////////////
746 // new since 0.49-990728
747 //////////////////////////////////////////////////////////////////////////
748
749     /*! This is put at the bottom of a class documentation page and is
750      *  followed by a list of files that were used to generate the page.
751      */
752     virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,bool)
753     { // here s is one of " Class", " Struct" or " Union"
754       // single is true implies a single file
755       QCString result=(QCString)"此";
756       switch(compType)
757       {
758         case ClassDef::Class:      result+="類別(class)"; break;
759         case ClassDef::Struct:     result+="結構(structure)"; break;
760         case ClassDef::Union:      result+="聯合(union)"; break;
761         case ClassDef::Interface:  result+="介面(interface)"; break;
762         case ClassDef::Protocol:   result+="協定(protocol)"; break;
763         case ClassDef::Category:   result+="分類(category)"; break;
764         case ClassDef::Exception:  result+="例外(exception)"; break;
765         default: break;
766       }
767       result+=" 文件是由下列檔案中產生";
768       result+=":";
769       return result;
770     }
771
772 //////////////////////////////////////////////////////////////////////////
773 // new since 0.49-990901
774 //////////////////////////////////////////////////////////////////////////
775
776     /*! This is used as the heading text for the retval command. */
777     virtual QCString trReturnValues()
778     { return "傳回值"; }
779
780     /*! This is in the (quick) index as a link to the main page (index.html)
781      */
782     virtual QCString trMainPage()
783     { return "主頁面"; }
784
785     /*! This is used in references to page that are put in the LaTeX
786      *  documentation. It should be an abbreviation of the word page.
787      */
788     virtual QCString trPageAbbreviation()
789     { return "p."; }
790
791 //////////////////////////////////////////////////////////////////////////
792 // new since 0.49-991003
793 //////////////////////////////////////////////////////////////////////////
794
795     virtual QCString trDefinedAtLineInSourceFile()
796     {
797       return "定義在 @1 檔案之第 @0 行.";
798     }
799     virtual QCString trDefinedInSourceFile()
800     {
801       return "定義在 @0 檔.";
802     }
803
804 //////////////////////////////////////////////////////////////////////////
805 // new since 0.49-991205
806 //////////////////////////////////////////////////////////////////////////
807
808     virtual QCString trDeprecated()
809     {
810       return "過時";
811     }
812
813 //////////////////////////////////////////////////////////////////////////
814 // new since 1.0.0
815 //////////////////////////////////////////////////////////////////////////
816
817     /*! this text is put before a collaboration diagram */
818     virtual QCString trCollaborationDiagram(const char *clName)
819     {
820       return (QCString)""+clName+"的合作圖:";
821     }
822     /*! this text is put before an include dependency graph */
823     virtual QCString trInclDepGraph(const char *fName)
824     {
825       return (QCString)""+fName+"的包含相依圖:";
826     }
827     /*! header that is put before the list of constructor/destructors. */
828     virtual QCString trConstructorDocumentation()
829     {
830       return "建構子與解構子說明文件";
831     }
832     /*! Used in the file documentation to point to the corresponding sources. */
833     virtual QCString trGotoSourceCode()
834     {
835       return "查看本檔案的原始碼.";
836     }
837     /*! Used in the file sources to point to the corresponding documentation. */
838     virtual QCString trGotoDocumentation()
839     {
840       return "查看本檔案說明文件.";
841     }
842     /*! Text for the \\pre command */
843     virtual QCString trPrecondition()
844     {
845       return "前置條件";
846     }
847     /*! Text for the \\post command */
848     virtual QCString trPostcondition()
849     {
850       return "後置條件";
851     }
852     /*! Text for the \\invariant command */
853     virtual QCString trInvariant()
854     {
855       return "常數";
856     }
857     /*! Text shown before a multi-line variable/enum initialization */
858     virtual QCString trInitialValue()
859     {
860       return "初值:";
861     }
862     /*! Text used the source code in the file index */
863     virtual QCString trCode()
864     {
865       return "程式碼";
866     }
867     virtual QCString trGraphicalHierarchy()
868     {
869       return "圖形化之類別階層";
870     }
871     virtual QCString trGotoGraphicalHierarchy()
872     {
873       return "查看圖形化之類別階層";
874     }
875     virtual QCString trGotoTextualHierarchy()
876     {
877       return "查看文字化之類別階層";
878     }
879     virtual QCString trPageIndex()
880     {
881       return "頁面索引";
882     }
883
884 //////////////////////////////////////////////////////////////////////////
885 // new since 1.1.0
886 //////////////////////////////////////////////////////////////////////////
887
888     virtual QCString trNote()
889     {
890       return "註";
891     }
892     virtual QCString trPublicTypes()
893     {
894       return "公開型態";
895     }
896     virtual QCString trPublicAttribs()
897     {
898       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
899       {
900         return "資料欄位";
901       }
902       else
903       {
904         return "公開屬性";
905       }
906     }
907     virtual QCString trStaticPublicAttribs()
908     {
909       return "靜態公開屬性";
910     }
911     virtual QCString trProtectedTypes()
912     {
913       return "保護型態";
914     }
915     virtual QCString trProtectedAttribs()
916     {
917       return "保護屬性";
918     }
919     virtual QCString trStaticProtectedAttribs()
920     {
921       return "靜態保護屬性";
922     }
923     virtual QCString trPrivateTypes()
924     {
925       return "私有型態";
926     }
927     virtual QCString trPrivateAttribs()
928     {
929       return "私有屬性";
930     }
931     virtual QCString trStaticPrivateAttribs()
932     {
933       return "靜態私有屬性";
934     }
935
936 //////////////////////////////////////////////////////////////////////////
937 // new since 1.1.3
938 //////////////////////////////////////////////////////////////////////////
939
940     /*! Used as a marker that is put before a \\todo item */
941     virtual QCString trTodo()
942     {
943       return "待辦事項";
944     }
945     /*! Used as the header of the todo list */
946     virtual QCString trTodoList()
947     {
948       return "待辦事項列表";
949     }
950
951 //////////////////////////////////////////////////////////////////////////
952 // new since 1.1.4
953 //////////////////////////////////////////////////////////////////////////
954
955     virtual QCString trReferencedBy()
956     {
957       return "被參考於";
958     }
959     virtual QCString trRemarks()
960     {
961       return "備註";
962     }
963     virtual QCString trAttention()
964     {
965       return "注意";
966     }
967     virtual QCString trInclByDepGraph()
968     {
969       return "本圖顯示出哪些檔案直接或間接include本檔 "
970              ":";
971     }
972     virtual QCString trSince()
973     {
974       return "自";
975     }
976
977 //////////////////////////////////////////////////////////////////////////
978 // new since 1.1.5
979 //////////////////////////////////////////////////////////////////////////
980
981     /*! title of the graph legend page */
982     virtual QCString trLegendTitle()
983     {
984       return "圖示";
985     }
986     /*! page explaining how the dot graph's should be interpreted
987      *  The %A in the text below are to prevent link to classes called "A".
988      */
989     virtual QCString trLegendDocs()
990     {
991       return
992         "本頁解釋如何解譯這些由doxygen所產生的圖示 "
993         ".<p>\n"
994         "請看下面範例:\n"
995         "\\code\n"
996         "/*! 因為截斷而造成的不可見類別 */\n"
997         "class Invisible { };\n\n"
998         "/*! 截斷的類別, 繼承關係被隱藏 */\n"
999         "class Truncated : public Invisible { };\n\n"
1000         "/* 未經過doxygen註解處理過的類別 */\n"
1001         "class Undocumented { };\n\n"
1002         "/*! 經過公開(Public)繼承的類別 */\n"
1003         "class PublicBase : public Truncated { };\n\n"
1004         "/*! 一個樣版類別 */\n"
1005         "template<class T> class Templ { };\n\n"
1006         "/*! 使用保護(Protected)繼承的類別 */\n"
1007         "class ProtectedBase { };\n\n"
1008         "/*! 使用私有(Private)繼承的類別 */\n"
1009         "class PrivateBase { };\n\n"
1010         "/*! 由被繼承類別所使用的類別 */\n"
1011         "class Used { };\n\n"
1012         "/*! 由數個其他類別所繼承來的超類別(Super Class) */\n"
1013         "class Inherited : public PublicBase,\n"
1014         "                  protected ProtectedBase,\n"
1015         "                  private PrivateBase,\n"
1016         "                  public Undocumented,\n"
1017         "                  public Templ<int>\n"
1018         "{\n"
1019         "  private:\n"
1020         "    Used *m_usedClass;\n"
1021         "};\n"
1022         "\\endcode\n"
1023         "這個例子會產生下列的圖示:"
1024         "<p><center><img alt=\"\" src=\"graph_legend."+getDotImageExtension()+"\"></center></p>\n"
1025         "<p>\n"
1026         "上圖中的各區塊意義如下:\n"
1027         "</p>\n"
1028         "<ul>\n"
1029         "<li>%A 填滿黑色的區塊代表產生這個圖示的類別或結構 "
1030         ".\n"
1031         "<li>%A 黑邊的區塊代表文件化過的結構或類別.</li>\n"
1032         "<li>%A 灰邊的區塊代表未經文件化的結構或是類別.</li>\n"
1033         "<li>%A 紅邊的區塊代表文件化的結構或是類別,"
1034         "這些結構或類別的繼承或包含關係不會全部顯示. %A 圖示 "
1035         "若無法塞入指定的邊界中將會被截斷.</li>\n"
1036         "</ul>\n"
1037         "<p>\n"
1038         "箭頭具有下面的意義:\n"
1039         "</p>\n"
1040         "<ul>\n"
1041         "<li>%A 深藍色箭頭用來代表兩個類別間的公開繼承 "
1042         "關係.\n"
1043         "<li>%A 深綠色箭頭代表保護繼承。</li>\n"
1044         "<li>%A 深紅色箭頭代表私有繼承。</li>\n"
1045         "<li>%A 紫色箭頭用來表示類別被另一個包含或是使用."
1046         "箭頭上標示著可存取該類別或是結構的對應變數。</li>\n"
1047         "<li>%A 黃色箭頭代表樣版實體與樣版類別之間的關係。"
1048         "箭頭上標記著樣版實體上的參數。</li>\n"
1049         "</ul>\n";
1050     }
1051     /*! text for the link to the legend page */
1052     virtual QCString trLegend()
1053     {
1054       return "圖示";
1055     }
1056
1057 //////////////////////////////////////////////////////////////////////////
1058 // new since 1.2.0
1059 //////////////////////////////////////////////////////////////////////////
1060
1061     /*! Used as a marker that is put before a test item */
1062     virtual QCString trTest()
1063     {
1064       return "測試項目";
1065     }
1066     /*! Used as the header of the test list */
1067     virtual QCString trTestList()
1068     {
1069       return "測試項目列表";
1070     }
1071
1072 //////////////////////////////////////////////////////////////////////////
1073 // new since 1.2.2
1074 //////////////////////////////////////////////////////////////////////////
1075
1076     /*! Used as a section header for IDL properties */
1077     virtual QCString trProperties()
1078     {
1079       return "屬性(properties)";
1080     }
1081     /*! Used as a section header for IDL property documentation */
1082     virtual QCString trPropertyDocumentation()
1083     {
1084       return "屬性(property)說明文件";
1085     }
1086
1087 //////////////////////////////////////////////////////////////////////////
1088 // new since 1.2.4
1089 //////////////////////////////////////////////////////////////////////////
1090
1091     /*! Used for Java classes in the summary section of Java packages */
1092     virtual QCString trClasses()
1093     {
1094       if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
1095       {
1096         return "資料結構";
1097       }
1098       else
1099       {
1100         return "類別";
1101       }
1102     }
1103     /*! Used as the title of a Java package */
1104     virtual QCString trPackage(const char *name)
1105     {
1106       return (QCString)"Package "+name;
1107     }
1108     /*! Title of the package index page */
1109     virtual QCString trPackageList()
1110     {
1111       return "Package列表";
1112     }
1113     /*! The description of the package index page */
1114     virtual QCString trPackageListDescription()
1115     {
1116       return "此處為Package的概略說明(如果有的話):";
1117     }
1118     /*! The link name in the Quick links header for each page */
1119     virtual QCString trPackages()
1120     {
1121       return "Packages";
1122     }
1123
1124     /*! Text shown before a multi-line define */
1125     virtual QCString trDefineValue()
1126     {
1127       return "巨集內容:";
1128     }
1129
1130 //////////////////////////////////////////////////////////////////////////
1131 // new since 1.2.5
1132 //////////////////////////////////////////////////////////////////////////
1133
1134     /*! Used as a marker that is put before a \\bug item */
1135     virtual QCString trBug()
1136     {
1137       return "臭蟲";
1138     }
1139     /*! Used as the header of the bug list */
1140     virtual QCString trBugList()
1141     {
1142       return "臭蟲列表";
1143     }
1144
1145 //////////////////////////////////////////////////////////////////////////
1146 // new since 1.2.6
1147 //////////////////////////////////////////////////////////////////////////
1148
1149     /*! Used as ansicpg for RTF file
1150      *
1151      * The following table shows the correlation of Charset name, Charset Value and
1152      * <pre>
1153      * Codepage number:
1154      * Charset Name       Charset Value(hex)  Codepage number
1155      * ------------------------------------------------------
1156      * DEFAULT_CHARSET           1 (x01)
1157      * SYMBOL_CHARSET            2 (x02)
1158      * OEM_CHARSET             255 (xFF)
1159      * ANSI_CHARSET              0 (x00)            1252
1160      * RUSSIAN_CHARSET         204 (xCC)            1251
1161      * EE_CHARSET              238 (xEE)            1250
1162      * GREEK_CHARSET           161 (xA1)            1253
1163      * TURKISH_CHARSET         162 (xA2)            1254
1164      * BALTIC_CHARSET          186 (xBA)            1257
1165      * HEBREW_CHARSET          177 (xB1)            1255
1166      * ARABIC _CHARSET         178 (xB2)            1256
1167      * SHIFTJIS_CHARSET        128 (x80)             932
1168      * HANGEUL_CHARSET         129 (x81)             949
1169      * GB2313_CHARSET          134 (x86)             936
1170      * CHINESEBIG5_CHARSET     136 (x88)             950
1171      * </pre>
1172      *
1173      */
1174     virtual QCString trRTFansicp()
1175     {
1176       return "950";
1177     }
1178
1179
1180     /*! Used as ansicpg for RTF fcharset
1181      *  \see trRTFansicp() for a table of possible values.
1182      */
1183     virtual QCString trRTFCharSet()
1184     {
1185       return "136";
1186     }
1187
1188     /*! Used as header RTF general index */
1189     virtual QCString trRTFGeneralIndex()
1190     {
1191       return "索引";
1192     }
1193
1194     /*! This is used for translation of the word that will possibly
1195      *  be followed by a single name or by a list of names
1196      *  of the category.
1197      */
1198     virtual QCString trClass(bool /*first_capital*/, bool /*singular*/)
1199     {
1200       return QCString("類別");
1201     }
1202
1203     /*! This is used for translation of the word that will possibly
1204      *  be followed by a single name or by a list of names
1205      *  of the category.
1206      */
1207     virtual QCString trFile(bool /*first_capital*/, bool /*singular*/)
1208     {
1209       return QCString("檔案");
1210     }
1211
1212     /*! This is used for translation of the word that will possibly
1213      *  be followed by a single name or by a list of names
1214      *  of the category.
1215      */
1216     virtual QCString trNamespace(bool /*first_capital*/, bool /*singular*/)
1217     {
1218       return QCString("命名空間");
1219     }
1220
1221     /*! This is used for translation of the word that will possibly
1222      *  be followed by a single name or by a list of names
1223      *  of the category.
1224      */
1225     virtual QCString trGroup(bool /*first_capital*/, bool /*singular*/)
1226     {
1227       return QCString("群組");
1228     }
1229
1230     /*! This is used for translation of the word that will possibly
1231      *  be followed by a single name or by a list of names
1232      *  of the category.
1233      */
1234     virtual QCString trPage(bool /*first_capital*/, bool /*singular*/)
1235     {
1236       return QCString("頁面");
1237     }
1238
1239     /*! This is used for translation of the word that will possibly
1240      *  be followed by a single name or by a list of names
1241      *  of the category.
1242      */
1243     virtual QCString trMember(bool /*first_capital*/, bool /*singular*/)
1244     {
1245       return QCString("成員");
1246     }
1247
1248     /*! This is used for translation of the word that will possibly
1249      *  be followed by a single name or by a list of names
1250      *  of the category.
1251      */
1252     virtual QCString trGlobal(bool /*first_capital*/, bool /*singular*/)
1253     {
1254       return QCString("全域");
1255     }
1256
1257 //////////////////////////////////////////////////////////////////////////
1258 // new since 1.2.7
1259 //////////////////////////////////////////////////////////////////////////
1260
1261     /*! This text is generated when the \\author command is used and
1262      *  for the author section in man pages. */
1263     virtual QCString trAuthor(bool /*first_capital*/, bool /*singular*/)
1264     {
1265       return QCString("作者");
1266     }
1267
1268 //////////////////////////////////////////////////////////////////////////
1269 // new since 1.2.11
1270 //////////////////////////////////////////////////////////////////////////
1271
1272     /*! This text is put before the list of members referenced by a member
1273      */
1274     virtual QCString trReferences()
1275     {
1276       return "參考";
1277     }
1278
1279 //////////////////////////////////////////////////////////////////////////
1280 // new since 1.2.13
1281 //////////////////////////////////////////////////////////////////////////
1282
1283     /*! used in member documentation blocks to produce a list of
1284      *  members that are implemented by this one.
1285      */
1286     virtual QCString trImplementedFromList(int numEntries)
1287     {
1288       return "實作 "+trWriteList(numEntries)+".";
1289     }
1290
1291     /*! used in member documentation blocks to produce a list of
1292      *  all members that implement this abstract member.
1293      */
1294     virtual QCString trImplementedInList(int numEntries)
1295     {
1296       return "實作於 "+trWriteList(numEntries)+".";
1297     }
1298
1299     //////////////////////////////////////////////////////////////////////////
1300 // new since 1.2.16
1301 //////////////////////////////////////////////////////////////////////////
1302
1303     /*! used in RTF documentation as a heading for the Table
1304      *  of Contents.
1305      */
1306     virtual QCString trRTFTableOfContents()
1307     {
1308       return "目錄";
1309     }
1310
1311 //////////////////////////////////////////////////////////////////////////
1312 // new since 1.2.17
1313 //////////////////////////////////////////////////////////////////////////
1314
1315     /*! Used as the header of the list of item that have been
1316      *  flagged deprecated
1317      */
1318     virtual QCString trDeprecatedList()
1319     {
1320       return "過時項目(Deprecated) 列表";
1321     }
1322
1323 //////////////////////////////////////////////////////////////////////////
1324 // new since 1.2.18
1325 //////////////////////////////////////////////////////////////////////////
1326
1327     /*! Used as a header for declaration section of the events found in
1328      * a C# program
1329      */
1330     virtual QCString trEvents()
1331     {
1332       return "Events";
1333     }
1334     /*! Header used for the documentation section of a class' events. */
1335     virtual QCString trEventDocumentation()
1336     {
1337       return "Event 文件";
1338     }
1339
1340 //////////////////////////////////////////////////////////////////////////
1341 // new since 1.3
1342 //////////////////////////////////////////////////////////////////////////
1343
1344     /*! Used as a heading for a list of Java class types with package scope.
1345      */
1346     virtual QCString trPackageTypes()
1347     {
1348       return "Package 型別";
1349     }
1350     /*! Used as a heading for a list of Java class functions with package
1351      * scope.
1352      */
1353     virtual QCString trPackageMembers()
1354     {
1355       return "Package 函數列表";
1356     }
1357     /*! Used as a heading for a list of static Java class functions with
1358      *  package scope.
1359      */
1360     virtual QCString trStaticPackageMembers()
1361     {
1362       return "靜態 Package 函數列表";
1363     }
1364     /*! Used as a heading for a list of Java class variables with package
1365      * scope.
1366      */
1367     virtual QCString trPackageAttribs()
1368     {
1369       return "Package 屬性";
1370     }
1371     /*! Used as a heading for a list of static Java class variables with
1372      * package scope.
1373      */
1374     virtual QCString trStaticPackageAttribs()
1375     {
1376       return "靜態 Package 屬性";
1377     }
1378
1379 //////////////////////////////////////////////////////////////////////////
1380 // new since 1.3.1
1381 //////////////////////////////////////////////////////////////////////////
1382
1383     /*! Used in the quick index of a class/file/namespace member list page
1384      *  to link to the unfiltered list of all members.
1385      */
1386     virtual QCString trAll()
1387     {
1388       return "全部";
1389     }
1390     /*! Put in front of the call graph for a function. */
1391     virtual QCString trCallGraph()
1392     {
1393       return "這是此函數的引用函數圖:";
1394     }
1395
1396 //////////////////////////////////////////////////////////////////////////
1397 // new since 1.3.3
1398 //////////////////////////////////////////////////////////////////////////
1399
1400     /*! This string is used as the title for the page listing the search
1401      *  results.
1402      */
1403     virtual QCString trSearchResultsTitle()
1404     {
1405       return "搜尋結果";
1406     }
1407     /*! This string is put just before listing the search results. The
1408      *  text can be different depending on the number of documents found.
1409      *  Inside the text you can put the special marker $num to insert
1410      *  the number representing the actual number of search results.
1411      *  The @a numDocuments parameter can be either 0, 1 or 2, where the
1412      *  value 2 represents 2 or more matches. HTML markup is allowed inside
1413      *  the returned string.
1414      */
1415     virtual QCString trSearchResults(int numDocuments)
1416     {
1417       if (numDocuments==0)
1418       {
1419         return "找不到符合的資料.";
1420       }
1421       else if (numDocuments==1)
1422       {
1423         return "找到 <b>1</b> 筆符合的資料.";
1424       }
1425       else
1426       {
1427         return "找到 <b>$num</b> 筆符合的資料. "
1428                "越符合的結果顯示在越前面.";
1429       }
1430     }
1431     /*! This string is put before the list of matched words, for each search
1432      *  result. What follows is the list of words that matched the query.
1433      */
1434     virtual QCString trSearchMatches()
1435     {
1436       return "符合:";
1437     }
1438
1439 //////////////////////////////////////////////////////////////////////////
1440 // new since 1.3.8
1441 //////////////////////////////////////////////////////////////////////////
1442
1443     /*! This is used in HTML as the title of page with source code for file filename
1444      */
1445     virtual QCString trSourceFile(QCString& filename)
1446     {
1447       return filename + " 原始程式檔";
1448     }
1449
1450 //////////////////////////////////////////////////////////////////////////
1451 // new since 1.3.9
1452 //////////////////////////////////////////////////////////////////////////
1453
1454     /*! This is used as the name of the chapter containing the directory
1455      *  hierarchy.
1456      */
1457     virtual QCString trDirIndex()
1458     { return "目錄階層"; }
1459
1460     /*! This is used as the name of the chapter containing the documentation
1461      *  of the directories.
1462      */
1463     virtual QCString trDirDocumentation()
1464     { return "目錄說明文件"; }
1465
1466     /*! This is used as the title of the directory index and also in the
1467      *  Quick links of a HTML page, to link to the directory hierarchy.
1468      */
1469     virtual QCString trDirectories()
1470     { return "目錄"; }
1471
1472     /*! This returns a sentences that introduces the directory hierarchy.
1473      *  and the fact that it is sorted alphabetically per level
1474      */
1475     virtual QCString trDirDescription()
1476     { return "這個目錄階層經過簡略的字母排序: ";
1477     }
1478
1479     /*! This returns the title of a directory page. The name of the
1480      *  directory is passed via \a dirName.
1481      */
1482     virtual QCString trDirReference(const char *dirName)
1483     { QCString result=dirName; result+=" 目錄參考文件"; return result; }
1484
1485     /*! This returns the word directory with or without starting capital
1486      *  (\a first_capital) and in sigular or plural form (\a singular).
1487      */
1488     virtual QCString trDir(bool /*first_capital*/, bool /*singular*/)
1489     {
1490       return QCString("目錄");
1491     }
1492
1493 //////////////////////////////////////////////////////////////////////////
1494 // new since 1.4.1
1495 //////////////////////////////////////////////////////////////////////////
1496
1497     /*! This text is added to the documentation when the \\overload command
1498      *  is used for a overloaded function.
1499      */
1500     virtual QCString trOverloadText()
1501     {
1502        return "這是一個為了便利性所提供 overload 成員函數,"
1503               "只有在接受的參數上,與前一個函數不同.";
1504     }
1505 //////////////////////////////////////////////////////////////////////////
1506 // new since 1.4.6
1507 //////////////////////////////////////////////////////////////////////////
1508
1509     /*! This is used to introduce a caller (or called-by) graph */
1510     virtual QCString trCallerGraph()
1511     {
1512       return "呼叫此函數的函數列表:";
1513     }
1514
1515
1516 //////////////////////////////////////////////////////////////////////////
1517 // new since 1.5.4 (mainly for Fortran)
1518 //////////////////////////////////////////////////////////////////////////
1519
1520     /*! header that is put before the list of member subprograms (Fortran). */
1521     virtual QCString trMemberFunctionDocumentationFortran()
1522     { return "成員函數/子程序 文件"; }
1523
1524     /*! This is put above each page as a link to the list of annotated data types (Fortran). */
1525     virtual QCString trCompoundListFortran()
1526     { return "資料型態列表"; }
1527
1528     /*! This is put above each page as a link to all members of compounds (Fortran). */
1529     virtual QCString trCompoundMembersFortran()
1530     { return "資料欄位"; }
1531
1532     /*! This is an introduction to the annotated compound list (Fortran). */
1533     virtual QCString trCompoundListDescriptionFortran()
1534     { return "資料型態簡短說明列表:"; }
1535
1536     /*! This is an introduction to the page with all data types (Fortran). */
1537     virtual QCString trCompoundMembersDescriptionFortran(bool extractAll)
1538     {
1539       QCString result="此處列出所有";
1540       if (!extractAll)
1541       {
1542         result+="有文件的";
1543       }
1544       result+="資料型別成員函數";
1545       result+=" 附帶連結到 ";
1546       if (!extractAll)
1547       {
1548          result+="每個成員函數的資料結構文件";
1549       }
1550       else
1551       {
1552          result+="他們屬於的資料型別";
1553       }
1554       return result;
1555     }
1556
1557     /*! This is used in LaTeX as the title of the chapter with the
1558      * annotated compound index (Fortran).
1559      */
1560     virtual QCString trCompoundIndexFortran()
1561     { return "資料型別索引"; }
1562
1563     /*! This is used in LaTeX as the title of the chapter containing
1564      *  the documentation of all data types (Fortran).
1565      */
1566     virtual QCString trTypeDocumentation()
1567     { return "資料型別文件"; }
1568
1569     /*! This is used in the documentation of a file as a header before the
1570      *  list of (global) subprograms (Fortran).
1571      */
1572     virtual QCString trSubprograms()
1573     { return "函數/子程序"; }
1574
1575     /*! This is used in the documentation of a file/namespace before the list
1576      *  of documentation blocks for subprograms (Fortran)
1577      */
1578     virtual QCString trSubprogramDocumentation()
1579     { return "函數/子程序 文件"; }
1580
1581     /*! This is used in the documentation of a file/namespace/group before
1582      *  the list of links to documented compounds (Fortran)
1583      */
1584      virtual QCString trDataTypes()
1585     { return "資料型別"; }
1586
1587     /*! used as the title of page containing all the index of all modules (Fortran). */
1588     virtual QCString trModulesList()
1589     { return "模組列表"; }
1590
1591     /*! used as an introduction to the modules list (Fortran) */
1592     virtual QCString trModulesListDescription(bool extractAll)
1593     {
1594       QCString result="此處列出所有";
1595       if (!extractAll) result+="有文件的";
1596       result+="模組附帶簡短說明:";
1597       return result;
1598     }
1599
1600     /*! used as the title of the HTML page of a module/type (Fortran) */
1601     virtual QCString trCompoundReferenceFortran(const char *clName,
1602                                     ClassDef::CompoundType compType,
1603                                     bool isTemplate)
1604     {
1605       QCString result=(QCString)clName;
1606       switch(compType)
1607       {
1608         case ClassDef::Class:      result+="模組"; break;
1609         case ClassDef::Struct:     result+="型態"; break;
1610         case ClassDef::Union:      result+="聯合"; break;
1611         case ClassDef::Interface:  result+="介面"; break;
1612         case ClassDef::Protocol:   result+="協議"; break;
1613         case ClassDef::Category:   result+="分類"; break;
1614         case ClassDef::Exception:  result+="例外"; break;
1615         default: break;
1616       }
1617       if (isTemplate) result+=" Template";
1618       result+="參考文件";
1619       return result;
1620     }
1621     /*! used as the title of the HTML page of a module (Fortran) */
1622     virtual QCString trModuleReference(const char *namespaceName)
1623     {
1624       QCString result=namespaceName;
1625       result+="模組參考文件";
1626       return result;
1627     }
1628
1629     /*! This is put above each page as a link to all members of modules. (Fortran) */
1630     virtual QCString trModulesMembers()
1631     { return "模組成員"; }
1632
1633     /*! This is an introduction to the page with all modules members (Fortran) */
1634     virtual QCString trModulesMemberDescription(bool extractAll)
1635     {
1636       QCString result="此處列出所有";
1637       if (!extractAll) result+="有文件的";
1638       result+="模組成員附帶連結到";
1639       if (extractAll)
1640       {
1641         result+="每個函數的模組文件:";
1642       }
1643       else
1644       {
1645         result+="他們所屬的模組:";
1646       }
1647       return result;
1648     }
1649
1650     /*! This is used in LaTeX as the title of the chapter with the
1651      *  index of all modules (Fortran).
1652      */
1653     virtual QCString trModulesIndex()
1654     { return "模組索引"; }
1655
1656     /*! This is used for translation of the word that will possibly
1657      *  be followed by a single name or by a list of names
1658      *  of the category.
1659      */
1660     virtual QCString trModule(bool /* first_capital */, bool /* singular */)
1661     {
1662       QCString result("模組");
1663       return result;
1664     }
1665     /*! This is put at the bottom of a module documentation page and is
1666      *  followed by a list of files that were used to generate the page.
1667      */
1668     virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
1669         bool /* single */)
1670     { // here s is one of " Module", " Struct" or " Union"
1671       // single is true implies a single file
1672       QCString result=(QCString)"這個";
1673       switch(compType)
1674       {
1675         case ClassDef::Class:      result+="模組"; break;
1676         case ClassDef::Struct:     result+="型態"; break;
1677         case ClassDef::Union:      result+="聯合"; break;
1678         case ClassDef::Interface:  result+="介面"; break;
1679         case ClassDef::Protocol:   result+="協議"; break;
1680         case ClassDef::Category:   result+="分類"; break;
1681         case ClassDef::Exception:  result+="例外"; break;
1682         default: break;
1683       }
1684       result+="文件由下列檔案產生";
1685       return result;
1686     }
1687     /*! This is used for translation of the word that will possibly
1688      *  be followed by a single name or by a list of names
1689      *  of the category.
1690      */
1691     virtual QCString trType(bool /* first_capital */, bool /* singular */)
1692     {
1693       QCString result("型別");
1694       return result;
1695     }
1696     /*! This is used for translation of the word that will possibly
1697      *  be followed by a single name or by a list of names
1698      *  of the category.
1699      */
1700     virtual QCString trSubprogram(bool /* first_capital */, bool /* singular */)
1701     {
1702       QCString result("子程式");
1703       return result;
1704     }
1705
1706     /*! C# Type Constraint list */
1707     virtual QCString trTypeConstraints()
1708     {
1709       return "型別限制條件";
1710     }
1711
1712 //////////////////////////////////////////////////////////////////////////
1713 // new since 1.6.0 (mainly for the new search engine)
1714 //////////////////////////////////////////////////////////////////////////
1715
1716     /*! directory relation for \a name */
1717     virtual QCString trDirRelation(const char *name)
1718     {
1719       return QCString(name)+" 關連";
1720     }
1721
1722     /*! Loading message shown when loading search results */
1723     virtual QCString trLoading()
1724     {
1725       return "載入中...";
1726     }
1727
1728     /*! Label used for search results in the global namespace */
1729     virtual QCString trGlobalNamespace()
1730     {
1731       return "全域命名空間";
1732     }
1733
1734     /*! Message shown while searching */
1735     virtual QCString trSearching()
1736     {
1737       return "搜尋中...";
1738     }
1739
1740     /*! Text shown when no search results are found */
1741     virtual QCString trNoMatches()
1742     {
1743       return "無符合項目";
1744     }
1745
1746 //////////////////////////////////////////////////////////////////////////
1747 // new since 1.6.3 (missing items for the directory pages)
1748 //////////////////////////////////////////////////////////////////////////
1749
1750     /*! when clicking a directory dependency label, a page with a
1751      *  table is shown. The heading for the first column mentions the
1752      *  source file that has a relation to another file.
1753      */
1754     virtual QCString trFileIn(const char *name)
1755     {
1756       return (QCString)"檔案在"+name;
1757     }
1758
1759     /*! when clicking a directory dependency label, a page with a
1760      *  table is shown. The heading for the second column mentions the
1761      *  destination file that is included.
1762      */
1763     virtual QCString trIncludesFileIn(const char *name)
1764     {
1765       return (QCString)"含入檔案在"+name;
1766     }
1767
1768     /** Compiles a date string.
1769      *  @param year Year in 4 digits
1770      *  @param month Month of the year: 1=January
1771      *  @param day Day of the Month: 1..31
1772      *  @param dayOfWeek Day of the week: 1=Monday..7=Sunday
1773      *  @param hour Hour of the day: 0..23
1774      *  @param minutes Minutes in the hour: 0..59
1775      *  @param seconds Seconds within the minute: 0..59
1776      *  @param includeTime Include time in the result string?
1777      */
1778     virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
1779                                 int hour,int minutes,int seconds,
1780                                 bool includeTime)
1781     {
1782       static const char *days[]   = { "星期一","星期二","星期三","星期四","星期五","星期六","星期日" };
1783       static const char *months[] = { "1","2","3","4","5","6","7","8","9","10","11","12" };
1784       QCString sdate;
1785       sdate.sprintf("%d年%s月%d日 %s",year,months[month-1],day,days[dayOfWeek-1]);
1786       if (includeTime)
1787       {
1788         QCString stime;
1789         stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
1790         sdate+=stime;
1791       }
1792       return sdate;
1793     }
1794
1795 //////////////////////////////////////////////////////////////////////////
1796 // new since 1.7.5
1797 //////////////////////////////////////////////////////////////////////////
1798
1799     /*! Header for the page with bibliographic citations */
1800     virtual QCString trCiteReferences()
1801     { return "參考文獻資料"; }
1802
1803     /*! Text for copyright paragraph */
1804     virtual QCString trCopyright()
1805     { return "版權聲明"; }
1806
1807     /*! Header for the graph showing the directory dependencies */
1808     virtual QCString trDirDepGraph(const char *name)
1809     { return QCString(name)+"的目錄關連圖"+":"; }
1810
1811 //////////////////////////////////////////////////////////////////////////
1812 // new since 1.8.0
1813 //////////////////////////////////////////////////////////////////////////
1814
1815     /*! Detail level selector shown for hierarchical indices */
1816     virtual QCString trDetailLevel()
1817     { return "詳細程度"; }
1818
1819     /*! Section header for list of template parameters */
1820     virtual QCString trTemplateParameters()
1821     { return "樣版參數"; }
1822
1823     /*! Used in dot graph when UML_LOOK is enabled and there are many fields */
1824     virtual QCString trAndMore(const QCString &number)
1825     { return "及 "+number+" 個更多..."; }
1826
1827     /*! Used file list for a Java enum */
1828     virtual QCString trEnumGeneratedFromFiles(bool single)
1829     { QCString result = "此列舉型態的文件是由下列檔案所產生";
1830       if (!single) result += "";
1831       result+=":";
1832       return result;
1833     }
1834
1835     /*! Header of a Java enum page (Java enums are represented as classes). */
1836     virtual QCString trEnumReference(const char *name)
1837     { return QCString(name)+" 列舉型態參考"; }
1838
1839     /*! Used for a section containing inherited members */
1840     virtual QCString trInheritedFrom(const char *members,const char *what)
1841     { return QCString(members)+" 繼承自 "+what; }
1842
1843     /*! Header of the sections with inherited members specific for the
1844      *  base class(es)
1845      */
1846     virtual QCString trAdditionalInheritedMembers()
1847     { return "額外的繼承成員"; }
1848
1849 //////////////////////////////////////////////////////////////////////////
1850 // new since 1.8.2
1851 //////////////////////////////////////////////////////////////////////////
1852
1853     /*! Used as a tooltip for the toggle button that appears in the
1854      *  navigation tree in the HTML output when GENERATE_TREEVIEW is
1855      *  enabled. This tooltip explains the meaning of the button.
1856      */
1857     virtual QCString trPanelSynchronisationTooltip(bool enable)
1858     {
1859       QCString opt = enable ? "啟用" : "停用";
1860       return "點擊 "+opt+" 面板進行同步";
1861     }
1862
1863     /*! Used in a method of an Objective-C class that is declared in a
1864      *  a category. Note that the @1 marker is required and is replaced
1865      *  by a link.
1866      */
1867     virtual QCString trProvidedByCategory()
1868     {
1869       return "由 @0 分類所提供.";
1870     }
1871
1872     /*! Used in a method of an Objective-C category that extends a class.
1873      *  Note that the @1 marker is required and is replaced by a link to
1874      *  the class method.
1875      */
1876     virtual QCString trExtendsClass()
1877     {
1878       return "延伸 @0 類別 .";
1879     }
1880
1881     /*! Used as the header of a list of class methods in Objective-C.
1882      *  These are similar to static public member functions in C++.
1883      */
1884     virtual QCString trClassMethods()
1885     {
1886       return "類別方法";
1887     }
1888
1889     /*! Used as the header of a list of instance methods in Objective-C.
1890      *  These are similar to public member functions in C++.
1891      */
1892     virtual QCString trInstanceMethods()
1893     {
1894       return "實體方法";
1895     }
1896
1897     /*! Used as the header of the member functions of an Objective-C class.
1898      */
1899     virtual QCString trMethodDocumentation()
1900     {
1901       return "方法文件";
1902     }
1903
1904     /*! Used as the title of the design overview picture created for the
1905      *  VHDL output.
1906      */
1907     virtual QCString trDesignOverview()
1908     {
1909       return "設計概述";
1910     }
1911
1912 //////////////////////////////////////////////////////////////////////////
1913 // new since 1.8.4
1914 //////////////////////////////////////////////////////////////////////////
1915
1916     /** old style UNO IDL services: implemented interfaces */
1917     virtual QCString trInterfaces()
1918     { return "導出介面"; }
1919
1920     /** old style UNO IDL services: inherited services */
1921     virtual QCString trServices()
1922     { return "引入的服務"; }
1923
1924     /** UNO IDL constant groups */
1925     virtual QCString trConstantGroups()
1926     { return "常數群組"; }
1927
1928     /** UNO IDL constant groups */
1929     virtual QCString trConstantGroupReference(const char *namespaceName)
1930     {
1931       QCString result=namespaceName;
1932       result+="常數群組參考";
1933       return result;
1934     }
1935     /** UNO IDL service page title */
1936     virtual QCString trServiceReference(const char *sName)
1937     {
1938       QCString result=(QCString)sName;
1939       result+="服務參考";
1940       return result;
1941     }
1942     /** UNO IDL singleton page title */
1943     virtual QCString trSingletonReference(const char *sName)
1944     {
1945       QCString result=(QCString)sName;
1946       result+="Singleton參考";
1947       return result;
1948     }
1949     /** UNO IDL service page */
1950     virtual QCString trServiceGeneratedFromFiles(bool)
1951     {
1952       // single is true implies a single file
1953       QCString result=(QCString)"本服務的文件由以下的檔案"
1954                                 "所產生";
1955       result+=":";
1956       return result;
1957     }
1958     /** UNO IDL singleton page */
1959     virtual QCString trSingletonGeneratedFromFiles(bool)
1960     {
1961       // single is true implies a single file
1962       QCString result=(QCString)"本singleton的文件由下面的檔案"
1963                                 "所產生";
1964       result+=":";
1965       return result;
1966     }
1967
1968 //////////////////////////////////////////////////////////////////////////
1969
1970 };
1971
1972 #endif