1 /******************************************************************************
5 * Copyright (C) 1997-2012 by Dimitri van Heesch.
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.
13 * Documents produced by Doxygen are derivative works derived from the
14 * input used in their production; they are not affected by this license.
26 /** Abstract base class for all translatable text fragments. */
30 /* Tables for encoding conversions. */
31 static const char Win1250ToISO88592Tab[];
32 static const char ISO88592ToWin1250Tab[];
33 static const unsigned char Koi8RToWindows1251Tab[128];
34 static const unsigned char Windows1251ToKoi8RTab[128];
37 /*! Returns the string converted from windows-1250 to iso-8859-2. */
38 QCString Win1250ToISO88592(const QCString & sInput);
40 /*! Returns the string converted from iso-8859-2 to windows-1250. */
41 QCString ISO88592ToWin1250(const QCString & sInput);
43 /*! Returns the string converted from koi8-r to windows-1251. */
44 QCString Koi8RToWindows1251( const QCString & sInput );
46 /*! Returns the string converted from windows-1251 to koi8-r. */
47 QCString Windows1251ToKoi8R( const QCString & sInput );
49 /*! Returns the string converted from Japanese-EUC to SJIS. */
50 QCString JapaneseEucToSjis( const QCString & sInput );
54 /*! This method is used to provide warning message that is displayed
55 * if the user chooses a language whose translation is not up to date.
56 * It is implemented by the adapter classes.
58 virtual QCString updateNeededMessage() { return ""; }
59 virtual ~Translator() {}
61 // Please, have a look at comments inside the translator_en.h file
62 // to learn the meaning of the following methods. The translator_en.h
63 // file contains the TranslatorEnglish implementation, which is
64 // always up-to-date (by definition).
66 // --- Language control methods -------------------
68 virtual QCString idLanguage() = 0;
69 virtual QCString latexLanguageSupportCommand() = 0;
70 virtual QCString idLanguageCharset() = 0;
72 // --- Language translation methods -------------------
74 virtual QCString trRelatedFunctions() = 0;
75 virtual QCString trRelatedSubscript() = 0;
76 virtual QCString trDetailedDescription() = 0;
77 virtual QCString trMemberTypedefDocumentation() = 0;
78 virtual QCString trMemberEnumerationDocumentation() = 0;
79 virtual QCString trMemberFunctionDocumentation() = 0;
80 virtual QCString trMemberDataDocumentation() = 0;
81 virtual QCString trMore() = 0;
82 virtual QCString trListOfAllMembers() = 0;
83 virtual QCString trMemberList() = 0;
84 virtual QCString trThisIsTheListOfAllMembers() = 0;
85 virtual QCString trIncludingInheritedMembers() = 0;
86 virtual QCString trGeneratedAutomatically(const char *s) = 0;
87 virtual QCString trEnumName() = 0;
88 virtual QCString trEnumValue() = 0;
89 virtual QCString trDefinedIn() = 0;
91 // quick reference sections
93 virtual QCString trModules() = 0;
94 virtual QCString trClassHierarchy() = 0;
95 virtual QCString trCompoundList() = 0;
96 virtual QCString trFileList() = 0;
97 //virtual QCString trHeaderFiles() = 0;
98 virtual QCString trCompoundMembers() = 0;
99 virtual QCString trFileMembers() = 0;
100 virtual QCString trRelatedPages() = 0;
101 virtual QCString trExamples() = 0;
102 virtual QCString trSearch() = 0;
103 virtual QCString trClassHierarchyDescription() = 0;
104 virtual QCString trFileListDescription(bool extractAll) = 0;
105 virtual QCString trCompoundListDescription() = 0;
106 virtual QCString trCompoundMembersDescription(bool extractAll) = 0;
107 virtual QCString trFileMembersDescription(bool extractAll) = 0;
108 //virtual QCString trHeaderFilesDescription() = 0;
109 virtual QCString trExamplesDescription() = 0;
110 virtual QCString trRelatedPagesDescription() = 0;
111 virtual QCString trModulesDescription() = 0;
112 //virtual QCString trNoDescriptionAvailable() = 0;
114 // index titles (the project name is prepended for these)
116 virtual QCString trDocumentation() = 0;
117 virtual QCString trModuleIndex() = 0;
118 virtual QCString trHierarchicalIndex() = 0;
119 virtual QCString trCompoundIndex() = 0;
120 virtual QCString trFileIndex() = 0;
121 virtual QCString trModuleDocumentation() = 0;
122 virtual QCString trClassDocumentation() = 0;
123 virtual QCString trFileDocumentation() = 0;
124 virtual QCString trExampleDocumentation() = 0;
125 virtual QCString trPageDocumentation() = 0;
126 virtual QCString trReferenceManual() = 0;
127 virtual QCString trDefines() = 0;
128 virtual QCString trFuncProtos() = 0;
129 virtual QCString trTypedefs() = 0;
130 virtual QCString trEnumerations() = 0;
131 virtual QCString trFunctions() = 0;
132 virtual QCString trVariables() = 0;
133 virtual QCString trEnumerationValues() = 0;
134 virtual QCString trDefineDocumentation() = 0;
135 virtual QCString trFunctionPrototypeDocumentation() = 0;
136 virtual QCString trTypedefDocumentation() = 0;
137 virtual QCString trEnumerationTypeDocumentation() = 0;
138 virtual QCString trFunctionDocumentation() = 0;
139 virtual QCString trVariableDocumentation() = 0;
140 virtual QCString trCompounds() = 0;
141 virtual QCString trGeneratedAt(const char *date,const char *projName) = 0;
142 virtual QCString trWrittenBy() = 0;
143 virtual QCString trClassDiagram(const char *clName) = 0;
144 virtual QCString trForInternalUseOnly() = 0;
145 //virtual QCString trReimplementedForInternalReasons() = 0;
146 virtual QCString trWarning() = 0;
147 //virtual QCString trBugsAndLimitations() = 0;
148 virtual QCString trVersion() = 0;
149 virtual QCString trDate() = 0;
150 virtual QCString trReturns() = 0;
151 virtual QCString trSeeAlso() = 0;
152 virtual QCString trParameters() = 0;
153 virtual QCString trExceptions() = 0;
154 virtual QCString trGeneratedBy() = 0;
156 //////////////////////////////////////////////////////////////////////////
157 // new since 0.49-990307
158 //////////////////////////////////////////////////////////////////////////
160 virtual QCString trNamespaceList() = 0;
161 virtual QCString trNamespaceListDescription(bool extractAll) = 0;
162 virtual QCString trFriends() = 0;
164 //////////////////////////////////////////////////////////////////////////
165 // new since 0.49-990405
166 //////////////////////////////////////////////////////////////////////////
168 virtual QCString trRelatedFunctionDocumentation() = 0;
170 //////////////////////////////////////////////////////////////////////////
171 // new since 0.49-990425
172 //////////////////////////////////////////////////////////////////////////
174 virtual QCString trCompoundReference(const char *clName,
175 ClassDef::CompoundType compType,
176 bool isTemplate) = 0;
178 virtual QCString trFileReference(const char *fileName) = 0;
179 virtual QCString trNamespaceReference(const char *namespaceName) = 0;
181 virtual QCString trPublicMembers() = 0;
182 virtual QCString trPublicSlots() = 0;
183 virtual QCString trSignals() = 0;
184 virtual QCString trStaticPublicMembers() = 0;
185 virtual QCString trProtectedMembers() = 0;
186 virtual QCString trProtectedSlots() = 0;
187 virtual QCString trStaticProtectedMembers() = 0;
188 virtual QCString trPrivateMembers() = 0;
189 virtual QCString trPrivateSlots() = 0;
190 virtual QCString trStaticPrivateMembers() = 0;
191 virtual QCString trWriteList(int numEntries) = 0;
192 virtual QCString trInheritsList(int numEntries) = 0;
193 virtual QCString trInheritedByList(int numEntries) = 0;
194 virtual QCString trReimplementedFromList(int numEntries) = 0;
195 virtual QCString trReimplementedInList(int numEntries) = 0;
196 virtual QCString trNamespaceMembers() = 0;
197 virtual QCString trNamespaceMemberDescription(bool extractAll) = 0;
198 virtual QCString trNamespaceIndex() = 0;
199 virtual QCString trNamespaceDocumentation() = 0;
201 //////////////////////////////////////////////////////////////////////////
202 // new since 0.49-990522
203 //////////////////////////////////////////////////////////////////////////
205 virtual QCString trNamespaces() = 0;
207 //////////////////////////////////////////////////////////////////////////
208 // new since 0.49-990728
209 //////////////////////////////////////////////////////////////////////////
211 virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
213 virtual QCString trAlphabeticalList() = 0;
215 //////////////////////////////////////////////////////////////////////////
216 // new since 0.49-990901
217 //////////////////////////////////////////////////////////////////////////
219 virtual QCString trReturnValues() = 0;
220 virtual QCString trMainPage() = 0;
221 virtual QCString trPageAbbreviation() = 0;
223 //////////////////////////////////////////////////////////////////////////
224 // new since 0.49-991003
225 //////////////////////////////////////////////////////////////////////////
227 //virtual QCString trSources() = 0;
228 virtual QCString trDefinedAtLineInSourceFile() = 0;
229 virtual QCString trDefinedInSourceFile() = 0;
231 //////////////////////////////////////////////////////////////////////////
232 // new since 0.49-991205
233 //////////////////////////////////////////////////////////////////////////
235 virtual QCString trDeprecated() = 0;
237 //////////////////////////////////////////////////////////////////////////
239 //////////////////////////////////////////////////////////////////////////
241 virtual QCString trCollaborationDiagram(const char *clName) = 0;
242 virtual QCString trInclDepGraph(const char *fName) = 0;
243 virtual QCString trConstructorDocumentation() = 0;
244 virtual QCString trGotoSourceCode() = 0;
245 virtual QCString trGotoDocumentation() = 0;
246 virtual QCString trPrecondition() = 0;
247 virtual QCString trPostcondition() = 0;
248 virtual QCString trInvariant() = 0;
249 virtual QCString trInitialValue() = 0;
250 virtual QCString trCode() = 0;
252 virtual QCString trGraphicalHierarchy() = 0;
253 virtual QCString trGotoGraphicalHierarchy() = 0;
254 virtual QCString trGotoTextualHierarchy() = 0;
255 virtual QCString trPageIndex() = 0;
257 //////////////////////////////////////////////////////////////////////////
259 //////////////////////////////////////////////////////////////////////////
261 virtual QCString trNote() = 0;
262 virtual QCString trPublicTypes() = 0;
263 virtual QCString trPublicAttribs() = 0;
264 virtual QCString trStaticPublicAttribs() = 0;
265 virtual QCString trProtectedTypes() = 0;
266 virtual QCString trProtectedAttribs() = 0;
267 virtual QCString trStaticProtectedAttribs() = 0;
268 virtual QCString trPrivateTypes() = 0;
269 virtual QCString trPrivateAttribs() = 0;
270 virtual QCString trStaticPrivateAttribs() = 0;
272 //////////////////////////////////////////////////////////////////////////
274 //////////////////////////////////////////////////////////////////////////
276 virtual QCString trTodo() = 0;
277 virtual QCString trTodoList() = 0;
279 //////////////////////////////////////////////////////////////////////////
281 //////////////////////////////////////////////////////////////////////////
283 virtual QCString trReferencedBy() = 0;
284 virtual QCString trRemarks() = 0;
285 virtual QCString trAttention() = 0;
286 virtual QCString trInclByDepGraph() = 0;
287 virtual QCString trSince() = 0;
289 //////////////////////////////////////////////////////////////////////////
291 //////////////////////////////////////////////////////////////////////////
293 virtual QCString trLegendTitle() = 0;
294 virtual QCString trLegendDocs() = 0;
295 virtual QCString trLegend() = 0;
297 //////////////////////////////////////////////////////////////////////////
299 //////////////////////////////////////////////////////////////////////////
301 virtual QCString trTest() = 0;
302 virtual QCString trTestList() = 0;
304 //////////////////////////////////////////////////////////////////////////
306 //////////////////////////////////////////////////////////////////////////
308 virtual QCString trDCOPMethods() = 0;
310 //////////////////////////////////////////////////////////////////////////
312 //////////////////////////////////////////////////////////////////////////
314 virtual QCString trProperties() = 0;
315 virtual QCString trPropertyDocumentation() = 0;
317 //////////////////////////////////////////////////////////////////////////
319 //////////////////////////////////////////////////////////////////////////
321 //virtual QCString trInterfaces() = 0;
322 virtual QCString trClasses() = 0;
323 virtual QCString trPackage(const char *name) = 0;
324 virtual QCString trPackageList() = 0;
325 virtual QCString trPackageListDescription() = 0;
326 virtual QCString trPackages() = 0;
327 //virtual QCString trPackageDocumentation() = 0;
328 virtual QCString trDefineValue() = 0;
330 //////////////////////////////////////////////////////////////////////////
332 //////////////////////////////////////////////////////////////////////////
334 virtual QCString trBug() = 0;
335 virtual QCString trBugList() = 0;
337 //////////////////////////////////////////////////////////////////////////
339 //////////////////////////////////////////////////////////////////////////
341 virtual QCString trRTFansicp() = 0;
342 virtual QCString trRTFCharSet() = 0;
343 virtual QCString trRTFGeneralIndex() = 0;
345 // Translation of the word
347 virtual QCString trClass(bool first_capital, bool singular) = 0;
348 virtual QCString trFile(bool first_capital, bool singular) = 0;
349 virtual QCString trNamespace(bool first_capital, bool singular) = 0;
350 virtual QCString trGroup(bool first_capital, bool singular) = 0;
351 virtual QCString trPage(bool first_capital, bool singular) = 0;
352 virtual QCString trMember(bool first_capital, bool singular) = 0;
353 //virtual QCString trField(bool first_capital, bool singular) = 0;
354 virtual QCString trGlobal(bool first_capital, bool singular) = 0;
356 //////////////////////////////////////////////////////////////////////////
358 //////////////////////////////////////////////////////////////////////////
360 virtual QCString trAuthor(bool first_capital, bool singular) = 0;
362 //////////////////////////////////////////////////////////////////////////
364 //////////////////////////////////////////////////////////////////////////
366 virtual QCString trReferences() = 0;
368 //////////////////////////////////////////////////////////////////////////
370 //////////////////////////////////////////////////////////////////////////
372 virtual QCString trImplementedFromList(int numEntries) = 0;
373 virtual QCString trImplementedInList(int numEntries) = 0;
375 //////////////////////////////////////////////////////////////////////////
377 //////////////////////////////////////////////////////////////////////////
379 virtual QCString trRTFTableOfContents() = 0;
381 //////////////////////////////////////////////////////////////////////////
383 //////////////////////////////////////////////////////////////////////////
385 virtual QCString trDeprecatedList() = 0;
387 //////////////////////////////////////////////////////////////////////////
389 //////////////////////////////////////////////////////////////////////////
391 virtual QCString trEvents() = 0;
392 virtual QCString trEventDocumentation() = 0;
394 //////////////////////////////////////////////////////////////////////////
396 //////////////////////////////////////////////////////////////////////////
398 virtual QCString trPackageTypes() = 0;
399 virtual QCString trPackageMembers() = 0;
400 virtual QCString trStaticPackageMembers() = 0;
401 virtual QCString trPackageAttribs() = 0;
402 virtual QCString trStaticPackageAttribs() = 0;
404 //////////////////////////////////////////////////////////////////////////
406 //////////////////////////////////////////////////////////////////////////
408 virtual QCString trAll() = 0;
409 virtual QCString trCallGraph() = 0;
411 //////////////////////////////////////////////////////////////////////////
413 //////////////////////////////////////////////////////////////////////////
415 virtual QCString trSearchForIndex() = 0;
416 virtual QCString trSearchResultsTitle() = 0;
417 virtual QCString trSearchResults(int numDocuments) = 0;
418 virtual QCString trSearchMatches() = 0;
420 //////////////////////////////////////////////////////////////////////////
422 //////////////////////////////////////////////////////////////////////////
424 virtual QCString trSourceFile(QCString& filename) = 0;
426 //////////////////////////////////////////////////////////////////////////
428 //////////////////////////////////////////////////////////////////////////
430 virtual QCString trDirIndex() = 0;
431 virtual QCString trDirDocumentation() = 0;
432 virtual QCString trDirectories() = 0;
433 virtual QCString trDirDescription() = 0;
434 virtual QCString trDirReference(const char *dirName) = 0;
435 virtual QCString trDir(bool first_capital, bool singular) = 0;
437 //////////////////////////////////////////////////////////////////////////
439 //////////////////////////////////////////////////////////////////////////
441 virtual QCString trOverloadText() = 0;
443 //////////////////////////////////////////////////////////////////////////
445 //////////////////////////////////////////////////////////////////////////
447 virtual QCString trCallerGraph() = 0;
448 virtual QCString trEnumerationValueDocumentation() = 0;
450 //////////////////////////////////////////////////////////////////////////
452 //////////////////////////////////////////////////////////////////////////
454 virtual QCString trMemberFunctionDocumentationFortran() = 0;
455 virtual QCString trCompoundListFortran() = 0;
456 virtual QCString trCompoundMembersFortran() = 0;
457 virtual QCString trCompoundListDescriptionFortran() = 0;
458 virtual QCString trCompoundMembersDescriptionFortran(bool extractAll) = 0;
459 virtual QCString trCompoundIndexFortran() = 0;
460 virtual QCString trTypeDocumentation() = 0;
461 virtual QCString trSubprograms() = 0;
462 virtual QCString trSubprogramDocumentation() = 0;
463 virtual QCString trDataTypes() = 0;
464 virtual QCString trModulesList() = 0;
465 virtual QCString trModulesListDescription(bool extractAll) = 0;
466 virtual QCString trCompoundReferenceFortran(const char *clName,
467 ClassDef::CompoundType compType,
468 bool isTemplate) = 0;
469 virtual QCString trModuleReference(const char *namespaceName) = 0;
470 virtual QCString trModulesMembers() = 0;
471 virtual QCString trModulesMemberDescription(bool extractAll) = 0;
472 virtual QCString trModulesIndex() = 0;
473 virtual QCString trModule(bool first_capital, bool singular) = 0;
474 virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
476 virtual QCString trType(bool first_capital, bool singular) = 0;
477 virtual QCString trSubprogram(bool first_capital, bool singular) = 0;
478 virtual QCString trTypeConstraints() = 0;
480 //////////////////////////////////////////////////////////////////////////
482 //////////////////////////////////////////////////////////////////////////
484 virtual QCString trDirRelation(const char *name) = 0;
485 virtual QCString trLoading() = 0;
486 virtual QCString trGlobalNamespace() = 0;
487 virtual QCString trSearching() = 0;
488 virtual QCString trNoMatches() = 0;
490 //////////////////////////////////////////////////////////////////////////
492 //////////////////////////////////////////////////////////////////////////
494 virtual QCString trDirDependency(const char *name) = 0;
495 virtual QCString trFileIn(const char *name) = 0;
496 virtual QCString trIncludesFileIn(const char *name) = 0;
497 virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
498 int hour,int minutes,int seconds,
499 bool includeTime) = 0;
501 //////////////////////////////////////////////////////////////////////////
503 //////////////////////////////////////////////////////////////////////////
505 virtual QCString trCiteReferences() = 0;
506 virtual QCString trCopyright() = 0;
507 virtual QCString trDirDepGraph(const char *name) = 0;
509 //////////////////////////////////////////////////////////////////////////
511 //////////////////////////////////////////////////////////////////////////
513 virtual QCString trDetailLevel() = 0;
514 virtual QCString trTemplateParameters() = 0;
515 virtual QCString trAndMore(const QCString &number) = 0;
516 virtual QCString trEnumGeneratedFromFiles(bool single) = 0;
517 virtual QCString trEnumReference(const char *name) = 0;
518 virtual QCString trInheritedFrom(const char *members,const char *what) = 0;
519 virtual QCString trAdditionalInheritedMembers() = 0;
521 //////////////////////////////////////////////////////////////////////////
523 //////////////////////////////////////////////////////////////////////////
525 virtual QCString trPanelSynchronisationTooltip(bool enable) = 0;
526 virtual QCString trProvidedByCategory() = 0;
527 virtual QCString trExtendsClass() = 0;
528 virtual QCString trClassMethods() = 0;
529 virtual QCString trInstanceMethods() = 0;
530 virtual QCString trMethodDocumentation() = 0;
531 virtual QCString trDesignOverview() = 0;