7092174d969758dedc7c53ddec30ab12fd34821b
[platform/upstream/doxygen.git] / src / translator.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 #ifndef TRANSLATOR_H
19 #define TRANSLATOR_H
20
21 #include "classdef.h"
22
23 /** Abstract base class for all translatable text fragments. */
24 class Translator
25 {
26   public:
27
28     /*! This method is used to provide warning message that is displayed
29      *  if the user chooses a language whose translation is not up to date.
30      *  It is implemented by the adapter classes.
31      */
32     virtual QCString updateNeededMessage() { return ""; }
33     virtual ~Translator() {}
34
35     // Please, have a look at comments inside the translator_en.h file
36     // to learn the meaning of the following methods.  The translator_en.h
37     // file contains the TranslatorEnglish implementation, which is
38     // always up-to-date (by definition).
39
40     // --- Language control methods -------------------
41
42     virtual QCString idLanguage() = 0;
43     virtual QCString latexLanguageSupportCommand() = 0;
44
45     // --- Language translation methods -------------------
46
47     virtual QCString trRelatedFunctions() = 0;
48     virtual QCString trRelatedSubscript() = 0;
49     virtual QCString trDetailedDescription() = 0;
50     virtual QCString trMemberTypedefDocumentation() = 0;
51     virtual QCString trMemberEnumerationDocumentation() = 0;
52     virtual QCString trMemberFunctionDocumentation() = 0;
53     virtual QCString trMemberDataDocumentation() = 0;
54     virtual QCString trMore() = 0;
55     virtual QCString trListOfAllMembers() = 0;
56     virtual QCString trMemberList() = 0;
57     virtual QCString trThisIsTheListOfAllMembers() = 0;
58     virtual QCString trIncludingInheritedMembers() = 0;
59     virtual QCString trGeneratedAutomatically(const char *s) = 0;
60     virtual QCString trEnumName() = 0;
61     virtual QCString trEnumValue() = 0;
62     virtual QCString trDefinedIn() = 0;
63
64     // quick reference sections
65
66     virtual QCString trModules() = 0;
67     virtual QCString trClassHierarchy() = 0;
68     virtual QCString trCompoundList() = 0;
69     virtual QCString trFileList() = 0;
70     //virtual QCString trHeaderFiles() = 0;
71     virtual QCString trCompoundMembers() = 0;
72     virtual QCString trFileMembers() = 0;
73     virtual QCString trRelatedPages() = 0;
74     virtual QCString trExamples() = 0;
75     virtual QCString trSearch() = 0;
76     virtual QCString trClassHierarchyDescription() = 0;
77     virtual QCString trFileListDescription(bool extractAll) = 0;
78     virtual QCString trCompoundListDescription() = 0;
79     virtual QCString trCompoundMembersDescription(bool extractAll) = 0;
80     virtual QCString trFileMembersDescription(bool extractAll) = 0;
81     //virtual QCString trHeaderFilesDescription() = 0;
82     virtual QCString trExamplesDescription() = 0;
83     virtual QCString trRelatedPagesDescription() = 0;
84     virtual QCString trModulesDescription() = 0;
85     //virtual QCString trNoDescriptionAvailable() = 0;
86
87     // index titles (the project name is prepended for these)
88
89     virtual QCString trDocumentation() = 0;
90     virtual QCString trModuleIndex() = 0;
91     virtual QCString trHierarchicalIndex() = 0;
92     virtual QCString trCompoundIndex() = 0;
93     virtual QCString trFileIndex() = 0;
94     virtual QCString trModuleDocumentation() = 0;
95     virtual QCString trClassDocumentation() = 0;
96     virtual QCString trFileDocumentation() = 0;
97     virtual QCString trExampleDocumentation() = 0;
98     virtual QCString trPageDocumentation() = 0;
99     virtual QCString trReferenceManual() = 0;
100     virtual QCString trDefines() = 0;
101     //virtual QCString trFuncProtos() = 0;
102     virtual QCString trTypedefs() = 0;
103     virtual QCString trEnumerations() = 0;
104     virtual QCString trFunctions() = 0;
105     virtual QCString trVariables() = 0;
106     virtual QCString trEnumerationValues() = 0;
107     virtual QCString trDefineDocumentation() = 0;
108     //virtual QCString trFunctionPrototypeDocumentation() = 0;
109     virtual QCString trTypedefDocumentation() = 0;
110     virtual QCString trEnumerationTypeDocumentation() = 0;
111     virtual QCString trFunctionDocumentation() = 0;
112     virtual QCString trVariableDocumentation() = 0;
113     virtual QCString trCompounds() = 0;
114     virtual QCString trGeneratedAt(const char *date,const char *projName) = 0;
115     //virtual QCString trWrittenBy() = 0;
116     virtual QCString trClassDiagram(const char *clName) = 0;
117     virtual QCString trForInternalUseOnly() = 0;
118     //virtual QCString trReimplementedForInternalReasons() = 0;
119     virtual QCString trWarning() = 0;
120     //virtual QCString trBugsAndLimitations() = 0;
121     virtual QCString trVersion() = 0;
122     virtual QCString trDate() = 0;
123     virtual QCString trReturns() = 0;
124     virtual QCString trSeeAlso() = 0;
125     virtual QCString trParameters() = 0;
126     virtual QCString trExceptions() = 0;
127     virtual QCString trGeneratedBy() = 0;
128
129 //////////////////////////////////////////////////////////////////////////
130 // new since 0.49-990307
131 //////////////////////////////////////////////////////////////////////////
132
133     virtual QCString trNamespaceList() = 0;
134     virtual QCString trNamespaceListDescription(bool extractAll) = 0;
135     virtual QCString trFriends() = 0;
136
137 //////////////////////////////////////////////////////////////////////////
138 // new since 0.49-990405
139 //////////////////////////////////////////////////////////////////////////
140
141     virtual QCString trRelatedFunctionDocumentation() = 0;
142
143 //////////////////////////////////////////////////////////////////////////
144 // new since 0.49-990425
145 //////////////////////////////////////////////////////////////////////////
146
147     virtual QCString trCompoundReference(const char *clName,
148                                     ClassDef::CompoundType compType,
149                                     bool isTemplate) = 0;
150
151     virtual QCString trFileReference(const char *fileName) = 0;
152     virtual QCString trNamespaceReference(const char *namespaceName) = 0;
153
154     virtual QCString trPublicMembers() = 0;
155     virtual QCString trPublicSlots() = 0;
156     virtual QCString trSignals() = 0;
157     virtual QCString trStaticPublicMembers() = 0;
158     virtual QCString trProtectedMembers() = 0;
159     virtual QCString trProtectedSlots() = 0;
160     virtual QCString trStaticProtectedMembers() = 0;
161     virtual QCString trPrivateMembers() = 0;
162     virtual QCString trPrivateSlots() = 0;
163     virtual QCString trStaticPrivateMembers() = 0;
164     virtual QCString trWriteList(int numEntries) = 0;
165     virtual QCString trInheritsList(int numEntries) = 0;
166     virtual QCString trInheritedByList(int numEntries) = 0;
167     virtual QCString trReimplementedFromList(int numEntries) = 0;
168     virtual QCString trReimplementedInList(int numEntries) = 0;
169     virtual QCString trNamespaceMembers() = 0;
170     virtual QCString trNamespaceMemberDescription(bool extractAll) = 0;
171     virtual QCString trNamespaceIndex() = 0;
172     virtual QCString trNamespaceDocumentation() = 0;
173
174 //////////////////////////////////////////////////////////////////////////
175 // new since 0.49-990522
176 //////////////////////////////////////////////////////////////////////////
177
178     virtual QCString trNamespaces() = 0;
179
180 //////////////////////////////////////////////////////////////////////////
181 // new since 0.49-990728
182 //////////////////////////////////////////////////////////////////////////
183
184     virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
185                                           bool single) = 0;
186     //virtual QCString trAlphabeticalList() = 0;
187
188 //////////////////////////////////////////////////////////////////////////
189 // new since 0.49-990901
190 //////////////////////////////////////////////////////////////////////////
191
192     virtual QCString trReturnValues() = 0;
193     virtual QCString trMainPage() = 0;
194     virtual QCString trPageAbbreviation() = 0;
195
196 //////////////////////////////////////////////////////////////////////////
197 // new since 0.49-991003
198 //////////////////////////////////////////////////////////////////////////
199
200     //virtual QCString trSources() = 0;
201     virtual QCString trDefinedAtLineInSourceFile() = 0;
202     virtual QCString trDefinedInSourceFile() = 0;
203
204 //////////////////////////////////////////////////////////////////////////
205 // new since 0.49-991205
206 //////////////////////////////////////////////////////////////////////////
207
208     virtual QCString trDeprecated() = 0;
209
210 //////////////////////////////////////////////////////////////////////////
211 // new since 1.0.0
212 //////////////////////////////////////////////////////////////////////////
213
214     virtual QCString trCollaborationDiagram(const char *clName) = 0;
215     virtual QCString trInclDepGraph(const char *fName) = 0;
216     virtual QCString trConstructorDocumentation() = 0;
217     virtual QCString trGotoSourceCode() = 0;
218     virtual QCString trGotoDocumentation() = 0;
219     virtual QCString trPrecondition() = 0;
220     virtual QCString trPostcondition() = 0;
221     virtual QCString trInvariant() = 0;
222     virtual QCString trInitialValue() = 0;
223     virtual QCString trCode() = 0;
224
225     virtual QCString trGraphicalHierarchy() = 0;
226     virtual QCString trGotoGraphicalHierarchy() = 0;
227     virtual QCString trGotoTextualHierarchy() = 0;
228     virtual QCString trPageIndex() = 0;
229
230 //////////////////////////////////////////////////////////////////////////
231 // new since 1.1.0
232 //////////////////////////////////////////////////////////////////////////
233
234     virtual QCString trNote() = 0;
235     virtual QCString trPublicTypes() = 0;
236     virtual QCString trPublicAttribs() = 0;
237     virtual QCString trStaticPublicAttribs() = 0;
238     virtual QCString trProtectedTypes() = 0;
239     virtual QCString trProtectedAttribs() = 0;
240     virtual QCString trStaticProtectedAttribs() = 0;
241     virtual QCString trPrivateTypes() = 0;
242     virtual QCString trPrivateAttribs() = 0;
243     virtual QCString trStaticPrivateAttribs() = 0;
244
245 //////////////////////////////////////////////////////////////////////////
246 // new since 1.1.3
247 //////////////////////////////////////////////////////////////////////////
248
249     virtual QCString trTodo() = 0;
250     virtual QCString trTodoList() = 0;
251
252 //////////////////////////////////////////////////////////////////////////
253 // new since 1.1.4
254 //////////////////////////////////////////////////////////////////////////
255
256     virtual QCString trReferencedBy() = 0;
257     virtual QCString trRemarks() = 0;
258     virtual QCString trAttention() = 0;
259     virtual QCString trInclByDepGraph() = 0;
260     virtual QCString trSince() = 0;
261
262 //////////////////////////////////////////////////////////////////////////
263 // new since 1.1.5
264 //////////////////////////////////////////////////////////////////////////
265
266     virtual QCString trLegendTitle() = 0;
267     virtual QCString trLegendDocs() = 0;
268     virtual QCString trLegend() = 0;
269
270 //////////////////////////////////////////////////////////////////////////
271 // new since 1.2.0
272 //////////////////////////////////////////////////////////////////////////
273
274     virtual QCString trTest() = 0;
275     virtual QCString trTestList() = 0;
276
277 //////////////////////////////////////////////////////////////////////////
278 // new since 1.2.1
279 //////////////////////////////////////////////////////////////////////////
280
281     //virtual QCString trDCOPMethods() = 0;
282
283 //////////////////////////////////////////////////////////////////////////
284 // new since 1.2.2
285 //////////////////////////////////////////////////////////////////////////
286
287     virtual QCString trProperties() = 0;
288     virtual QCString trPropertyDocumentation() = 0;
289
290 //////////////////////////////////////////////////////////////////////////
291 // new since 1.2.4
292 //////////////////////////////////////////////////////////////////////////
293
294     //virtual QCString trInterfaces() = 0;
295     virtual QCString trClasses() = 0;
296     virtual QCString trPackage(const char *name) = 0;
297     virtual QCString trPackageList() = 0;
298     virtual QCString trPackageListDescription() = 0;
299     virtual QCString trPackages() = 0;
300     //virtual QCString trPackageDocumentation() = 0;
301     virtual QCString trDefineValue() = 0;
302
303 //////////////////////////////////////////////////////////////////////////
304 // new since 1.2.5
305 //////////////////////////////////////////////////////////////////////////
306
307     virtual QCString trBug() = 0;
308     virtual QCString trBugList() = 0;
309
310 //////////////////////////////////////////////////////////////////////////
311 // new since 1.2.6
312 //////////////////////////////////////////////////////////////////////////
313
314
315     /*! Used as ansicpg for RTF file
316      *
317      * The following table shows the correlation of Charset name, Charset Value and
318      * <pre>
319      * Codepage number:
320      * Charset Name       Charset Value(hex)  Codepage number
321      * ------------------------------------------------------
322      * DEFAULT_CHARSET           1 (x01)
323      * SYMBOL_CHARSET            2 (x02)
324      * OEM_CHARSET             255 (xFF)
325      * ANSI_CHARSET              0 (x00)            1252
326      * RUSSIAN_CHARSET         204 (xCC)            1251
327      * EE_CHARSET              238 (xEE)            1250
328      * GREEK_CHARSET           161 (xA1)            1253
329      * TURKISH_CHARSET         162 (xA2)            1254
330      * BALTIC_CHARSET          186 (xBA)            1257
331      * HEBREW_CHARSET          177 (xB1)            1255
332      * ARABIC _CHARSET         178 (xB2)            1256
333      * SHIFTJIS_CHARSET        128 (x80)             932
334      * HANGEUL_CHARSET         129 (x81)             949
335      * GB2313_CHARSET          134 (x86)             936
336      * CHINESEBIG5_CHARSET     136 (x88)             950
337      * </pre>
338      *
339      */
340     virtual QCString trRTFansicp() = 0;
341
342     /*! Character sets
343      *  <pre>
344      *   0 — ANSI
345      *   1 — Default
346      *   2 — Symbol
347      *   3 — Invalid
348      *  77 — Mac
349      * 128 — Shift Jis
350      * 129 — Hangul
351      * 130 — Johab
352      * 134 — GB2312
353      * 136 — Big5
354      * 161 — Greek
355      * 162 — Turkish
356      * 163 — Vietnamese
357      * 177 — Hebrew
358      * 178 — Arabic
359      * 179 — Arabic Traditional
360      * 180 — Arabic user
361      * 181 — Hebrew user
362      * 186 — Baltic
363      * 204 — Russian
364      * 222 — Thai
365      * 238 — Eastern European
366      * 254 — PC 437
367      * 255 — OEM
368      * </pre>
369      */
370     virtual QCString trRTFCharSet() = 0;
371     virtual QCString trRTFGeneralIndex() = 0;
372
373     // Translation of the word
374
375     virtual QCString trClass(bool first_capital, bool singular) = 0;
376     virtual QCString trFile(bool first_capital, bool singular) = 0;
377     virtual QCString trNamespace(bool first_capital, bool singular) = 0;
378     virtual QCString trGroup(bool first_capital, bool singular) = 0;
379     virtual QCString trPage(bool first_capital, bool singular) = 0;
380     virtual QCString trMember(bool first_capital, bool singular) = 0;
381     //virtual QCString trField(bool first_capital, bool singular) = 0;
382     virtual QCString trGlobal(bool first_capital, bool singular) = 0;
383
384 //////////////////////////////////////////////////////////////////////////
385 // new since 1.2.7
386 //////////////////////////////////////////////////////////////////////////
387
388     virtual QCString trAuthor(bool first_capital, bool singular) = 0;
389
390 //////////////////////////////////////////////////////////////////////////
391 // new since 1.2.11
392 //////////////////////////////////////////////////////////////////////////
393
394     virtual QCString trReferences() = 0;
395
396 //////////////////////////////////////////////////////////////////////////
397 // new since 1.2.13
398 //////////////////////////////////////////////////////////////////////////
399
400     virtual QCString trImplementedFromList(int numEntries) = 0;
401     virtual QCString trImplementedInList(int numEntries) = 0;
402
403 //////////////////////////////////////////////////////////////////////////
404 // new since 1.2.16
405 //////////////////////////////////////////////////////////////////////////
406
407     virtual QCString trRTFTableOfContents() = 0;
408
409 //////////////////////////////////////////////////////////////////////////
410 // new since 1.2.17
411 //////////////////////////////////////////////////////////////////////////
412
413     virtual QCString trDeprecatedList() = 0;
414
415 //////////////////////////////////////////////////////////////////////////
416 // new since 1.2.18
417 //////////////////////////////////////////////////////////////////////////
418
419     virtual QCString trEvents() = 0;
420     virtual QCString trEventDocumentation() = 0;
421
422 //////////////////////////////////////////////////////////////////////////
423 // new since 1.3
424 //////////////////////////////////////////////////////////////////////////
425
426     virtual QCString trPackageTypes() = 0;
427     virtual QCString trPackageMembers() = 0;
428     virtual QCString trStaticPackageMembers() = 0;
429     virtual QCString trPackageAttribs() = 0;
430     virtual QCString trStaticPackageAttribs() = 0;
431
432 //////////////////////////////////////////////////////////////////////////
433 // new since 1.3.1
434 //////////////////////////////////////////////////////////////////////////
435
436     virtual QCString trAll() = 0;
437     virtual QCString trCallGraph() = 0;
438
439 //////////////////////////////////////////////////////////////////////////
440 // new since 1.3.3
441 //////////////////////////////////////////////////////////////////////////
442
443     //virtual QCString trSearchForIndex() = 0;
444     virtual QCString trSearchResultsTitle() = 0;
445     virtual QCString trSearchResults(int numDocuments) = 0;
446     virtual QCString trSearchMatches() = 0;
447
448 //////////////////////////////////////////////////////////////////////////
449 // new since 1.3.8
450 //////////////////////////////////////////////////////////////////////////
451
452     virtual QCString trSourceFile(QCString& filename) = 0;
453
454 //////////////////////////////////////////////////////////////////////////
455 // new since 1.3.9
456 //////////////////////////////////////////////////////////////////////////
457
458     virtual QCString trDirIndex() = 0;
459     virtual QCString trDirDocumentation() = 0;
460     virtual QCString trDirectories() = 0;
461     virtual QCString trDirDescription() = 0;
462     virtual QCString trDirReference(const char *dirName) = 0;
463     virtual QCString trDir(bool first_capital, bool singular) = 0;
464
465 //////////////////////////////////////////////////////////////////////////
466 // new since 1.4.1
467 //////////////////////////////////////////////////////////////////////////
468
469     virtual QCString trOverloadText() = 0;
470
471 //////////////////////////////////////////////////////////////////////////
472 // new since 1.4.6
473 //////////////////////////////////////////////////////////////////////////
474
475     virtual QCString trCallerGraph() = 0;
476     virtual QCString trEnumerationValueDocumentation() = 0;
477
478 //////////////////////////////////////////////////////////////////////////
479 // new since 1.5.4
480 //////////////////////////////////////////////////////////////////////////
481
482     virtual QCString trMemberFunctionDocumentationFortran() = 0;
483     virtual QCString trCompoundListFortran() = 0;
484     virtual QCString trCompoundMembersFortran() = 0;
485     virtual QCString trCompoundListDescriptionFortran() = 0;
486     virtual QCString trCompoundMembersDescriptionFortran(bool extractAll) = 0;
487     virtual QCString trCompoundIndexFortran() = 0;
488     virtual QCString trTypeDocumentation() = 0;
489     virtual QCString trSubprograms() = 0;
490     virtual QCString trSubprogramDocumentation() = 0;
491     virtual QCString trDataTypes() = 0;
492     virtual QCString trModulesList() = 0;
493     virtual QCString trModulesListDescription(bool extractAll) = 0;
494     virtual QCString trCompoundReferenceFortran(const char *clName,
495                                  ClassDef::CompoundType compType,
496                                  bool isTemplate) = 0;
497     virtual QCString trModuleReference(const char *namespaceName) = 0;
498     virtual QCString trModulesMembers() = 0;
499     virtual QCString trModulesMemberDescription(bool extractAll) = 0;
500     virtual QCString trModulesIndex() = 0;
501     virtual QCString trModule(bool first_capital, bool singular) = 0;
502     virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
503                      bool single) = 0;
504     virtual QCString trType(bool first_capital, bool singular) = 0;
505     virtual QCString trSubprogram(bool first_capital, bool singular) = 0;
506     virtual QCString trTypeConstraints() = 0;
507
508 //////////////////////////////////////////////////////////////////////////
509 // new since 1.6.0
510 //////////////////////////////////////////////////////////////////////////
511
512     virtual QCString trDirRelation(const char *name) = 0;
513     virtual QCString trLoading() = 0;
514     virtual QCString trGlobalNamespace() = 0;
515     virtual QCString trSearching() = 0;
516     virtual QCString trNoMatches() = 0;
517
518 //////////////////////////////////////////////////////////////////////////
519 // new since 1.6.3
520 //////////////////////////////////////////////////////////////////////////
521
522     //virtual QCString trDirDependency(const char *name) = 0;
523     virtual QCString trFileIn(const char *name) = 0;
524     virtual QCString trIncludesFileIn(const char *name) = 0;
525     virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
526                                 int hour,int minutes,int seconds,
527                                 bool includeTime) = 0;
528
529 //////////////////////////////////////////////////////////////////////////
530 // new since 1.7.5
531 //////////////////////////////////////////////////////////////////////////
532
533     virtual QCString trCiteReferences() = 0;
534     virtual QCString trCopyright() = 0;
535     virtual QCString trDirDepGraph(const char *name) = 0;
536
537 //////////////////////////////////////////////////////////////////////////
538 // new since 1.8.0
539 //////////////////////////////////////////////////////////////////////////
540
541     virtual QCString trDetailLevel() = 0;
542     virtual QCString trTemplateParameters() = 0;
543     virtual QCString trAndMore(const QCString &number) = 0;
544     virtual QCString trEnumGeneratedFromFiles(bool single) = 0;
545     virtual QCString trEnumReference(const char *name) = 0;
546     virtual QCString trInheritedFrom(const char *members,const char *what) = 0;
547     virtual QCString trAdditionalInheritedMembers() = 0;
548
549 //////////////////////////////////////////////////////////////////////////
550 // new since 1.8.2
551 //////////////////////////////////////////////////////////////////////////
552
553     virtual QCString trPanelSynchronisationTooltip(bool enable) = 0;
554     virtual QCString trProvidedByCategory() = 0;
555     virtual QCString trExtendsClass() = 0;
556     virtual QCString trClassMethods() = 0;
557     virtual QCString trInstanceMethods() = 0;
558     virtual QCString trMethodDocumentation() = 0;
559     virtual QCString trDesignOverview() = 0;
560
561 //////////////////////////////////////////////////////////////////////////
562 // new since 1.8.4
563 //////////////////////////////////////////////////////////////////////////
564
565     virtual QCString trInterfaces() = 0;
566     virtual QCString trServices() = 0;
567     virtual QCString trConstantGroups() = 0;
568     virtual QCString trConstantGroupReference(const char *namespaceName) = 0;
569     virtual QCString trServiceReference(const char *sName) = 0;
570     virtual QCString trSingletonReference(const char *sName) = 0;
571     virtual QCString trServiceGeneratedFromFiles(bool single) = 0;
572     virtual QCString trSingletonGeneratedFromFiles(bool single) = 0;
573 };
574
575 #endif