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.
19 * Arabic translation for Doxygen
21 * Please send your comments on this translation to moazreyad@yahoo.com
23 * Note : consider this file as Beta version for testing Arabic output with Doxygen.
27 * 6/2006 : Created initial version of Arabic translation.
30 #ifndef TRANSLATOR_AR_H
31 #define TRANSLATOR_AR_H
33 class TranslatorArabic : public TranslatorAdapter_1_4_6
36 friend class TranslatorAdapterBase;
37 virtual ~TranslatorArabic() {}
41 // --- Language control methods -------------------
43 /*! Used for identification of the language. The identification
44 * should not be translated. It should be replaced by the name
45 * of the language in English using lower-case characters only
46 * (e.g. "czech", "japanese", "russian", etc.). It should be equal to
47 * the identification used in language.cpp.
49 virtual QCString idLanguage()
52 /*! Used to get the LaTeX command(s) for the language support.
53 * This method should return string with commands that switch
54 * LaTeX to the desired language. For example
55 * <pre>"\\usepackage[german]{babel}\n"
58 * <pre>"\\usepackage{polski}\n"
59 * "\\usepackage[latin2]{inputenc}\n"
60 * "\\usepackage[T1]{fontenc}\n"
63 * The English LaTeX does not use such commands. Because of this
64 * the empty string is returned in this implementation.
66 virtual QCString latexLanguageSupportCommand()
71 /*! return the language charset. This will be used for the HTML output */
72 virtual QCString idLanguageCharset()
77 // --- Language translation methods -------------------
79 /*! used in the compound documentation before a list of related functions. */
80 virtual QCString trRelatedFunctions()
81 { return "ÏæÇá ÐÇÊ ÕáÉ"; }
83 /*! subscript for the related functions. */
84 virtual QCString trRelatedSubscript()
85 { return "(áÇÍÙ Ãä åÐå ÇáÏæÇá áíÓÊ ÃÚÖÇÁ)"; }
87 /*! header that is put before the detailed description of files, classes and namespaces. */
88 virtual QCString trDetailedDescription()
89 { return "æÕÝ ÊÝÕíáí"; }
91 /*! header that is put before the list of typedefs. */
92 virtual QCString trMemberTypedefDocumentation()
93 { return "ÊæËíÞ ÊÚÑíÝÇÊ ÇáäæÚ ÇáÃÚÖÇÁ"; }
95 /*! header that is put before the list of enumerations. */
96 virtual QCString trMemberEnumerationDocumentation()
97 { return "ÊæËíÞ ÇáÚÏÏíÇÊ ÇáÃÚÖÇÁ"; }
99 /*! header that is put before the list of member functions. */
100 virtual QCString trMemberFunctionDocumentation()
101 { return "ÊæËíÞ ÇáÏæÇá ÇáÃÚÖÇÁ"; }
103 /*! header that is put before the list of member attributes. */
104 virtual QCString trMemberDataDocumentation()
106 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
108 return "ÊæËíÞ ÇáÍÞá";
112 return "ÊæËíÞ ÇáÈíÇä ÇáÚÖæ";
116 /*! this is the text of a link put after brief descriptions. */
117 virtual QCString trMore()
118 { return "ÇáãÒíÏ ..."; }
120 /*! put in the class documentation */
121 virtual QCString trListOfAllMembers()
122 { return "ÇÚÑÖ ßá ÇáÃÚÖÇÁ"; }
124 /*! used as the title of the "list of all members" page of a class */
125 virtual QCString trMemberList()
126 { return "ÞÇÆãÉ ÇáÃÚÖÇÁ"; }
128 /*! this is the first part of a sentence that is followed by a class name */
129 virtual QCString trThisIsTheListOfAllMembers()
130 { return "åÐå ÝÇÆãÉ Èßá ÇáÃÚÖÇÁ Ýí "; }
132 /*! this is the remainder of the sentence after the class name */
133 virtual QCString trIncludingInheritedMembers()
134 { return ", ãÊÖãäÉ ßá ÇáÃÚÖÇÁ ÇáãæÑæËÉ"; }
136 /*! this is put at the author sections at the bottom of man pages.
137 * parameter s is name of the project name.
139 virtual QCString trGeneratedAutomatically(const char *s)
140 { QCString result="Êã ÊßæíäåÇ ÂáíÇ ÈæÇÓØÉ Doxygen";
141 if (s) result+=(QCString)" áÜ "+s;
142 result+=" ãä ãáÝÇÊ ÇáãÕÏÑ.";
146 /*! put after an enum name in the list of all members */
147 virtual QCString trEnumName()
148 { return "ÇáÅÓã ÇáÚÏÏí"; }
150 /*! put after an enum value in the list of all members */
151 virtual QCString trEnumValue()
152 { return "ÇáÞíãÉ ÇáÚÏÏíÉ"; }
154 /*! put after an undocumented member in the list of all members */
155 virtual QCString trDefinedIn()
156 { return "ãÚÑÝ Ýí"; }
158 // quick reference sections
160 /*! This is put above each page as a link to the list of all groups of
161 * compounds or files (see the \\group command).
163 virtual QCString trModules()
166 /*! This is put above each page as a link to the class hierarchy */
167 virtual QCString trClassHierarchy()
168 { return "ÇáÔßá ÇáåÑãí ááÝÆÉ"; }
170 /*! This is put above each page as a link to the list of annotated classes */
171 virtual QCString trCompoundList()
173 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
175 return "åíÇßá ÇáÈíÇäÇÊ";
179 return "ÞÇÆãÉ ÇáÝÆÇÊ";
183 /*! This is put above each page as a link to the list of documented files */
184 virtual QCString trFileList()
185 { return "ÞÇÆãÉ ÇáãáÝÇÊ"; }
187 /*! This is put above each page as a link to the list of all verbatim headers */
188 virtual QCString trHeaderFiles()
189 { return "ÇáãáÝÇÊ ÇáÑÃÓíÉ"; }
191 /*! This is put above each page as a link to all members of compounds. */
192 virtual QCString trCompoundMembers()
194 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
196 return "ÍÞæá ÇáÈíÇäÇÊ";
200 return "ÃÚÖÇÁ ÇáÝÆÉ";
204 /*! This is put above each page as a link to all members of files. */
205 virtual QCString trFileMembers()
207 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
213 return "ÃÚÖÇÁ ÇáãáÝ";
217 /*! This is put above each page as a link to all related pages. */
218 virtual QCString trRelatedPages()
219 { return "ÕÝÍÇÊ ÐÇÊ ÕáÉ"; }
221 /*! This is put above each page as a link to all examples. */
222 virtual QCString trExamples()
225 /*! This is put above each page as a link to the search engine. */
226 virtual QCString trSearch()
229 /*! This is an introduction to the class hierarchy. */
230 virtual QCString trClassHierarchyDescription()
231 { return "ÞÇÆãÉ ÇáÊæÇÑË åÐå Êã ÊÑÊíÈåÇ ÃÈÌÏíÇ ÈÕæÑÉ ÊÞÑíÈíÉ ¡ "
232 "æáßä áíÓ ÈÕæÑÉ ÊÇãÉ:";
235 /*! This is an introduction to the list with all files. */
236 virtual QCString trFileListDescription(bool extractAll)
238 QCString result="åÐå ÞÇÆãÉ Èßá ÇáãáÝÇÊ";
239 if (!extractAll) result+="ÇáãæËÞÉ ";
240 result+="ãÚ æÕÝ ãÎÊÕÑ :";
244 /*! This is an introduction to the annotated compound list. */
245 virtual QCString trCompoundListDescription()
248 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
250 return "åÐå åí åíÇßá ÇáÈíÇäÇÊ ãÚ æÕÝ ãÎÊÕÑ:";
254 return "åÐå åí ÇáÝÆÇÊ ¡ ÇáÈäÇÁÇÊ ¡"
255 "ÇáÅÊÍÇÏÇÊ æÇáæÇÌåÇÊ ãÚ æÕÝ ãÎÊÕÑ:";
259 /*! This is an introduction to the page with all class members. */
260 virtual QCString trCompoundMembersDescription(bool extractAll)
262 QCString result="åÐå ÞÇÆãÉ Èßá ";
264 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
266 result+="ÍÞæá ÇáÈäÇÁÇÊ æÇáÅÊÍÇÏÇÊ";
270 result+="ÃÚÖÇÁ ÇáÝÆÉ";
276 result+=" ãÚ æÕáÇÊ Åáì ";
279 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
281 result+="ÊæËíÞ ÇáÈäÇÁ/ÇáÅÊÍÇÏ áßá ÍÞá:";
285 result+="ÊæËíÞ ÇáÝÆÉ áßá ÚÖæ:";
290 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
292 result+="ÇáÈäÇÁÇÊ/ÇáÅÊÍÇÏÇÊ ÇáÊí íäÊãæä ÅáíåÇ:";
296 result+="ÇáÝÆÇÊ ÇáÊí íäÊãæä ÅáíåÇ:";
302 /*! This is an introduction to the page with all file members. */
303 virtual QCString trFileMembersDescription(bool extractAll)
305 QCString result="Here is a list of all ";
306 if (!extractAll) result+="documented ";
308 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
310 result+="functions, variables, defines, enums, and typedefs";
314 result+="file members";
316 result+=" with links to ";
318 result+="the files they belong to:";
320 result+="the documentation:";
324 /*! This is an introduction to the page with the list of all header files. */
325 virtual QCString trHeaderFilesDescription()
326 { return "Here are the header files that make up the API:"; }
328 /*! This is an introduction to the page with the list of all examples */
329 virtual QCString trExamplesDescription()
330 { return "åÐå ÞÇÆãÉ Èßá ÇáÃãËáÉ:"; }
332 /*! This is an introduction to the page with the list of related pages */
333 virtual QCString trRelatedPagesDescription()
334 { return "åÐå ÞÇÆãÉ Èßá ÕÝÍÇÊ ÇáÊæËíÞ ÐÇÊ ÇáÕáÉ:"; }
336 /*! This is an introduction to the page with the list of class/file groups */
337 virtual QCString trModulesDescription()
338 { return "åÐå ÞÇÆãÉ Èßá ÇáãßæäÇÊ:"; }
340 /*! This sentences is used in the annotated class/file lists if no brief
341 * description is given.
343 virtual QCString trNoDescriptionAvailable()
344 { return "áÇ íæÌÏ æÕÝ ãÊÇÍ"; }
346 // index titles (the project name is prepended for these)
349 /*! This is used in HTML as the title of index.html. */
350 virtual QCString trDocumentation()
351 { return "ÇáÊæËíÞ"; }
353 /*! This is used in LaTeX as the title of the chapter with the
354 * index of all groups.
356 virtual QCString trModuleIndex()
357 { return "ÝåÑÓ ÇáãßæäÇÊ"; }
359 /*! This is used in LaTeX as the title of the chapter with the
362 virtual QCString trHierarchicalIndex()
363 { return "ÇáÝåÑÓ ÇáåÑãí"; }
365 /*! This is used in LaTeX as the title of the chapter with the
366 * annotated compound index.
368 virtual QCString trCompoundIndex()
370 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
372 return "ÝåÑÓ åíßá ÇáÈíÇäÇÊ";
380 /*! This is used in LaTeX as the title of the chapter with the
383 virtual QCString trFileIndex()
384 { return "ÝåÑÓ ÇáãáÝÇÊ"; }
386 /*! This is used in LaTeX as the title of the chapter containing
387 * the documentation of all groups.
389 virtual QCString trModuleDocumentation()
390 { return "ÊæËíÞ Çáãßæä"; }
392 /*! This is used in LaTeX as the title of the chapter containing
393 * the documentation of all classes, structs and unions.
395 virtual QCString trClassDocumentation()
397 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
399 return "ÝåÑÓ åíßá ÇáÈíÇäÇÊ";
407 /*! This is used in LaTeX as the title of the chapter containing
408 * the documentation of all files.
410 virtual QCString trFileDocumentation()
411 { return "ÊæËíÞ ÇáãáÝÇÊ"; }
413 /*! This is used in LaTeX as the title of the chapter containing
414 * the documentation of all examples.
416 virtual QCString trExampleDocumentation()
417 { return "ÊæËíÞ ÇáÃãËáÉ"; }
419 /*! This is used in LaTeX as the title of the chapter containing
420 * the documentation of all related pages.
422 virtual QCString trPageDocumentation()
423 { return "ÊæËíÞ ÇáÕÝÍÇÊ"; }
425 /*! This is used in LaTeX as the title of the document */
426 virtual QCString trReferenceManual()
427 { return "ÇáßÊíÈ ÇáãÑÌÚí"; }
429 /*! This is used in the documentation of a file as a header before the
432 virtual QCString trDefines()
433 { return "ÇáÊÚÑíÝÇÊ"; }
435 /*! This is used in the documentation of a file as a header before the
436 * list of function prototypes
438 virtual QCString trFuncProtos()
439 { return "Function Prototypes"; }
441 /*! This is used in the documentation of a file as a header before the
444 virtual QCString trTypedefs()
445 { return "Typedefs"; }
447 /*! This is used in the documentation of a file as a header before the
448 * list of enumerations
450 virtual QCString trEnumerations()
451 { return "ÇáÚÏÏíÇÊ"; }
453 /*! This is used in the documentation of a file as a header before the
454 * list of (global) functions
456 virtual QCString trFunctions()
459 /*! This is used in the documentation of a file as a header before the
460 * list of (global) variables
462 virtual QCString trVariables()
463 { return "ÇáãÊÛíÑÇÊ"; }
465 /*! This is used in the documentation of a file as a header before the
466 * list of (global) variables
468 virtual QCString trEnumerationValues()
469 { return "Enumerator"; }
471 /*! This is used in the documentation of a file before the list of
472 * documentation blocks for defines
474 virtual QCString trDefineDocumentation()
475 { return "Define Documentation"; }
477 /*! This is used in the documentation of a file/namespace before the list
478 * of documentation blocks for function prototypes
480 virtual QCString trFunctionPrototypeDocumentation()
481 { return "Function Prototype Documentation"; }
483 /*! This is used in the documentation of a file/namespace before the list
484 * of documentation blocks for typedefs
486 virtual QCString trTypedefDocumentation()
487 { return "Typedef Documentation"; }
489 /*! This is used in the documentation of a file/namespace before the list
490 * of documentation blocks for enumeration types
492 virtual QCString trEnumerationTypeDocumentation()
493 { return "Enumeration Type Documentation"; }
495 /*! This is used in the documentation of a file/namespace before the list
496 * of documentation blocks for enumeration values
498 virtual QCString trEnumerationValueDocumentation()
499 { return "Enumerator Documentation"; }
501 /*! This is used in the documentation of a file/namespace before the list
502 * of documentation blocks for functions
504 virtual QCString trFunctionDocumentation()
505 { return "ÊæËíÞ ÇáÏÇáÉ"; }
507 /*! This is used in the documentation of a file/namespace before the list
508 * of documentation blocks for variables
510 virtual QCString trVariableDocumentation()
511 { return "ÊæËíÞ ÇáãÊÛíÑ"; }
513 /*! This is used in the documentation of a file/namespace/group before
514 * the list of links to documented compounds
516 virtual QCString trCompounds()
518 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
520 return "åíÇßá ÇáÈíÇäÇÊ";
528 /*! This is used in the standard footer of each page and indicates when
529 * the page was generated
531 virtual QCString trGeneratedAt(const char *date,const char *projName)
533 QCString result=(QCString)"Generated on "+date;
534 if (projName) result+=(QCString)" for "+projName;
535 result+=(QCString)" by";
538 /*! This is part of the sentence used in the standard footer of each page.
540 virtual QCString trWrittenBy()
545 /*! this text is put before a class diagram */
546 virtual QCString trClassDiagram(const char *clName)
548 return (QCString)"Inheritance diagram for "+clName+":";
551 /*! this text is generated when the \\internal command is used. */
552 virtual QCString trForInternalUseOnly()
553 { return "ááÇÓÊÎÏÇã ÇáÏÇÎáí ÝÞØ."; }
555 /*! this text is generated when the \\reimp command is used. */
556 virtual QCString trReimplementedForInternalReasons()
557 { return "Reimplemented for internal reasons; the API is not affected."; }
559 /*! this text is generated when the \\warning command is used. */
560 virtual QCString trWarning()
563 /*! this text is generated when the \\bug command is used. */
564 virtual QCString trBugsAndLimitations()
565 { return "Bugs and limitations"; }
567 /*! this text is generated when the \\version command is used. */
568 virtual QCString trVersion()
571 /*! this text is generated when the \\date command is used. */
572 virtual QCString trDate()
575 /*! this text is generated when the \\return command is used. */
576 virtual QCString trReturns()
577 { return "Returns"; }
579 /*! this text is generated when the \\sa command is used. */
580 virtual QCString trSeeAlso()
581 { return "ÇäÙÑ ÃíÖÇ"; }
583 /*! this text is generated when the \\param command is used. */
584 virtual QCString trParameters()
585 { return "Parameters"; }
587 /*! this text is generated when the \\exception command is used. */
588 virtual QCString trExceptions()
589 { return "ÇÓÊËäÇÁÇÊ"; }
591 /*! this text is used in the title page of a LaTeX document. */
592 virtual QCString trGeneratedBy()
593 { return "ÇäÊÌÊ ÈæÇÓØÉ"; }
595 //////////////////////////////////////////////////////////////////////////
596 // new since 0.49-990307
597 //////////////////////////////////////////////////////////////////////////
599 /*! used as the title of page containing all the index of all namespaces. */
600 virtual QCString trNamespaceList()
601 { return "ÞÇÆãÉ ãÌÇáÇÊ ÇáÃÓãÇÁ"; }
603 /*! used as an introduction to the namespace list */
604 virtual QCString trNamespaceListDescription(bool extractAll)
606 QCString result="Here is a list of all ";
607 if (!extractAll) result+="documented ";
608 result+="namespaces with brief descriptions:";
612 /*! used in the class documentation as a header before the list of all
615 virtual QCString trFriends()
616 { return "Friends"; }
618 //////////////////////////////////////////////////////////////////////////
619 // new since 0.49-990405
620 //////////////////////////////////////////////////////////////////////////
622 /*! used in the class documentation as a header before the list of all
625 virtual QCString trRelatedFunctionDocumentation()
626 { return "Friends And Related Function Documentation"; }
628 //////////////////////////////////////////////////////////////////////////
629 // new since 0.49-990425
630 //////////////////////////////////////////////////////////////////////////
632 /*! used as the title of the HTML page of a class/struct/union */
633 virtual QCString trCompoundReference(const char *clName,
634 ClassDef::CompoundType compType,
637 QCString result=(QCString)clName;
640 case ClassDef::Class: result+=" Class"; break;
641 case ClassDef::Struct: result+=" Struct"; break;
642 case ClassDef::Union: result+=" Union"; break;
643 case ClassDef::Interface: result+=" Interface"; break;
644 case ClassDef::Protocol: result+=" Protocol"; break;
645 case ClassDef::Category: result+=" Category"; break;
646 case ClassDef::Exception: result+=" Exception"; break;
648 if (isTemplate) result+=" Template";
649 result+=" Reference";
653 /*! used as the title of the HTML page of a file */
654 virtual QCString trFileReference(const char *fileName)
656 QCString result=fileName;
657 result+=" File Reference";
661 /*! used as the title of the HTML page of a namespace */
662 virtual QCString trNamespaceReference(const char *namespaceName)
664 QCString result=namespaceName;
665 result+=" Namespace Reference";
669 virtual QCString trPublicMembers()
670 { return "Public Member Functions"; }
671 virtual QCString trPublicSlots()
672 { return "Public Slots"; }
673 virtual QCString trSignals()
674 { return "Signals"; }
675 virtual QCString trStaticPublicMembers()
676 { return "Static Public Member Functions"; }
677 virtual QCString trProtectedMembers()
678 { return "Protected Member Functions"; }
679 virtual QCString trProtectedSlots()
680 { return "Protected Slots"; }
681 virtual QCString trStaticProtectedMembers()
682 { return "Static Protected Member Functions"; }
683 virtual QCString trPrivateMembers()
684 { return "Private Member Functions"; }
685 virtual QCString trPrivateSlots()
686 { return "Private Slots"; }
687 virtual QCString trStaticPrivateMembers()
688 { return "Static Private Member Functions"; }
690 /*! this function is used to produce a comma-separated list of items.
691 * use generateMarker(i) to indicate where item i should be put.
693 virtual QCString trWriteList(int numEntries)
697 // the inherits list contain `numEntries' classes
698 for (i=0;i<numEntries;i++)
700 // use generateMarker to generate placeholders for the class links!
701 result+=generateMarker(i); // generate marker for entry i in the list
702 // (order is left to right)
704 if (i!=numEntries-1) // not the last entry, so we need a separator
706 if (i<numEntries-2) // not the fore last entry
708 else // the fore last entry
715 /*! used in class documentation to produce a list of base classes,
716 * if class diagrams are disabled.
718 virtual QCString trInheritsList(int numEntries)
720 return "Inherits "+trWriteList(numEntries)+".";
723 /*! used in class documentation to produce a list of super classes,
724 * if class diagrams are disabled.
726 virtual QCString trInheritedByList(int numEntries)
728 return "Inherited by "+trWriteList(numEntries)+".";
731 /*! used in member documentation blocks to produce a list of
732 * members that are hidden by this one.
734 virtual QCString trReimplementedFromList(int numEntries)
736 return "Reimplemented from "+trWriteList(numEntries)+".";
739 /*! used in member documentation blocks to produce a list of
740 * all member that overwrite the implementation of this member.
742 virtual QCString trReimplementedInList(int numEntries)
744 return "Reimplemented in "+trWriteList(numEntries)+".";
747 /*! This is put above each page as a link to all members of namespaces. */
748 virtual QCString trNamespaceMembers()
749 { return "Namespace Members"; }
751 /*! This is an introduction to the page with all namespace members */
752 virtual QCString trNamespaceMemberDescription(bool extractAll)
754 QCString result="Here is a list of all ";
755 if (!extractAll) result+="documented ";
756 result+="namespace members with links to ";
758 result+="the namespace documentation for each member:";
760 result+="the namespaces they belong to:";
763 /*! This is used in LaTeX as the title of the chapter with the
764 * index of all namespaces.
766 virtual QCString trNamespaceIndex()
767 { return "ÝåÑÓ ãÌÇáÇÊ ÇáÃÓãÇÁ"; }
769 /*! This is used in LaTeX as the title of the chapter containing
770 * the documentation of all namespaces.
772 virtual QCString trNamespaceDocumentation()
773 { return "ÊæËíÞ ãÌÇáÇÊ ÇáÃÓãÇÁ"; }
775 //////////////////////////////////////////////////////////////////////////
776 // new since 0.49-990522
777 //////////////////////////////////////////////////////////////////////////
779 /*! This is used in the documentation before the list of all
780 * namespaces in a file.
782 virtual QCString trNamespaces()
783 { return "ãÌÇáÇÊ ÇáÃÓãÇÁ"; }
785 //////////////////////////////////////////////////////////////////////////
786 // new since 0.49-990728
787 //////////////////////////////////////////////////////////////////////////
789 /*! This is put at the bottom of a class documentation page and is
790 * followed by a list of files that were used to generate the page.
792 virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
794 { // here s is one of " Class", " Struct" or " Union"
795 // single is true implies a single file
796 QCString result=(QCString)"ÊæËíÞ ";
799 case ClassDef::Class: result+="åÐå ÇáÝÆÉ"; break;
800 case ClassDef::Struct: result+="åÐÇ ÇáÈäÇÁ"; break;
801 case ClassDef::Union: result+="åÐÇ ÇáÅÊÍÇÏ"; break;
802 case ClassDef::Interface: result+="åÐå ÇáæÇÌåÉ"; break;
803 case ClassDef::Protocol: result+="åÐÇ ÇáÈÑæÊæßæá"; break;
804 case ClassDef::Category: result+="åÐÇ ÇáÊÕäíÝ"; break;
805 case ClassDef::Exception: result+="åÐÇ ÇáÅÓÊËäÇÁ"; break;
807 result+=" Êã Êßæíäå ãä ";
808 if (single) result+="åÐÇ ÇáãáÝ:"; else result+="åÐå ÇáãáÝÇÊ:";
812 /*! This is in the (quick) index as a link to the alphabetical compound
815 virtual QCString trAlphabeticalList()
816 { return "ÞÇÆãÉ ÃÈÌÏíÉ"; }
818 //////////////////////////////////////////////////////////////////////////
819 // new since 0.49-990901
820 //////////////////////////////////////////////////////////////////////////
822 /*! This is used as the heading text for the retval command. */
823 virtual QCString trReturnValues()
824 { return "Þíã ÇáÚæÏÉ"; }
826 /*! This is in the (quick) index as a link to the main page (index.html)
828 virtual QCString trMainPage()
829 { return "ÇáÕÝÍÉ ÇáÑÆíÓíÉ"; }
831 /*! This is used in references to page that are put in the LaTeX
832 * documentation. It should be an abbreviation of the word page.
834 virtual QCString trPageAbbreviation()
837 //////////////////////////////////////////////////////////////////////////
838 // new since 0.49-991003
839 //////////////////////////////////////////////////////////////////////////
841 virtual QCString trSources()
845 virtual QCString trDefinedAtLineInSourceFile()
847 return "Definition at line @0 of file @1.";
849 virtual QCString trDefinedInSourceFile()
851 return "Definition in file @0.";
854 //////////////////////////////////////////////////////////////////////////
855 // new since 0.49-991205
856 //////////////////////////////////////////////////////////////////////////
858 virtual QCString trDeprecated()
863 //////////////////////////////////////////////////////////////////////////
865 //////////////////////////////////////////////////////////////////////////
867 /*! this text is put before a collaboration diagram */
868 virtual QCString trCollaborationDiagram(const char *clName)
870 return (QCString)"ÑÓã ÇáÊÚÇæä áÜ "+clName+":";
872 /*! this text is put before an include dependency graph */
873 virtual QCString trInclDepGraph(const char *fName)
875 return (QCString)"ÑÓã ÇÚÊãÇÏíÉ ÇáÊÖãíä áÜ "+fName+":";
877 /*! header that is put before the list of constructor/destructors. */
878 virtual QCString trConstructorDocumentation()
880 return "ÊæËíÞ ÏæÇá ÇáÈäÇÁ æÇáåÏã";
882 /*! Used in the file documentation to point to the corresponding sources. */
883 virtual QCString trGotoSourceCode()
885 return "ÇÐåÈ Åáì ÇáßæÏ ÇáÎÇÕ ÈåÐÇ ÇáãáÝ.";
887 /*! Used in the file sources to point to the corresponding documentation. */
888 virtual QCString trGotoDocumentation()
890 return "ÇÐåÈ Åáì ÊæËíÞ åÐÇ ÇáãáÝ.";
892 /*! Text for the \\pre command */
893 virtual QCString trPrecondition()
897 /*! Text for the \\post command */
898 virtual QCString trPostcondition()
902 /*! Text for the \\invariant command */
903 virtual QCString trInvariant()
907 /*! Text shown before a multi-line variable/enum initialization */
908 virtual QCString trInitialValue()
910 return "ÞíãÉ ãÈÏÆíÉ:";
912 /*! Text used the source code in the file index */
913 virtual QCString trCode()
917 virtual QCString trGraphicalHierarchy()
919 return "ÇáÔßá ÇáÑÓæãí ááÝÆÇÊ";
921 virtual QCString trGotoGraphicalHierarchy()
923 return "ÇÐåÈ Åáì ÇáÔßá ÇáåÑãí ÇáÑÓæãí ááÝÆÇÊ";
925 virtual QCString trGotoTextualHierarchy()
927 return "ÇÐåÈ Åáì ÇáÔßá ÇáåÑãí ÇáäÕí ááÝÆÇÊ";
929 virtual QCString trPageIndex()
931 return "ÝåÑÓ ÇáÕÝÍÇÊ";
934 //////////////////////////////////////////////////////////////////////////
936 //////////////////////////////////////////////////////////////////////////
938 virtual QCString trNote()
942 virtual QCString trPublicTypes()
946 virtual QCString trPublicAttribs()
948 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
950 return "ÍÞæá ÈíÇäÇÊ";
957 virtual QCString trStaticPublicAttribs()
959 return "ÕÝÇÊ ÓÇßäÉ ÚÇãÉ";
961 virtual QCString trProtectedTypes()
963 return "ÃäæÇÚ ãÍãíÉ";
965 virtual QCString trProtectedAttribs()
969 virtual QCString trStaticProtectedAttribs()
971 return "ÕÝÇÊ ÓÇßäÉ ãÍãíÉ";
973 virtual QCString trPrivateTypes()
977 virtual QCString trPrivateAttribs()
981 virtual QCString trStaticPrivateAttribs()
983 return "ÕÝÇÊ ÓÇßäÉ ÎÇÕÉ";
986 //////////////////////////////////////////////////////////////////////////
988 //////////////////////////////////////////////////////////////////////////
990 /*! Used as a marker that is put before a \\todo item */
991 virtual QCString trTodo()
995 /*! Used as the header of the todo list */
996 virtual QCString trTodoList()
998 return "ÞÇÆãÉ ÇáãåÇã";
1001 //////////////////////////////////////////////////////////////////////////
1003 //////////////////////////////////////////////////////////////////////////
1005 virtual QCString trReferencedBy()
1007 return "ÐßÑ ÈæÇÓØÉ";
1009 virtual QCString trRemarks()
1013 virtual QCString trAttention()
1017 virtual QCString trInclByDepGraph()
1019 return "åÐÇ ÇáÑÓã íæÖÍ ÇáãáÝÇÊ ÇáÊí ÖãäÊ åÐÇ ÇáãáÝ"
1020 "ÈÕæÑÉ ãÈÇÔÑÉ Ãæ ÛíÑ ãÈÇÔÑÉ:";
1022 virtual QCString trSince()
1027 //////////////////////////////////////////////////////////////////////////
1029 //////////////////////////////////////////////////////////////////////////
1031 /*! title of the graph legend page */
1032 virtual QCString trLegendTitle()
1034 return "Graph Legend";
1036 /*! page explaining how the dot graph's should be interpreted
1037 * The %A in the text below are to prevent link to classes called "A".
1039 virtual QCString trLegendDocs()
1042 "This page explains how to interpret the graphs that are generated "
1044 "Consider the following example:\n"
1046 "/*! Invisible class because of truncation */\n"
1047 "class Invisible { };\n\n"
1048 "/*! Truncated class, inheritance relation is hidden */\n"
1049 "class Truncated : public Invisible { };\n\n"
1050 "/* Class not documented with doxygen comments */\n"
1051 "class Undocumented { };\n\n"
1052 "/*! Class that is inherited using public inheritance */\n"
1053 "class PublicBase : public Truncated { };\n\n"
1054 "/*! A template class */\n"
1055 "template<class T> class Templ { };\n\n"
1056 "/*! Class that is inherited using protected inheritance */\n"
1057 "class ProtectedBase { };\n\n"
1058 "/*! Class that is inherited using private inheritance */\n"
1059 "class PrivateBase { };\n\n"
1060 "/*! Class that is used by the Inherited class */\n"
1061 "class Used { };\n\n"
1062 "/*! Super class that inherits a number of other classes */\n"
1063 "class Inherited : public PublicBase,\n"
1064 " protected ProtectedBase,\n"
1065 " private PrivateBase,\n"
1066 " public Undocumented\n"
1067 " public Templ<int>\n"
1070 " Used *m_usedClass;\n"
1073 "If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
1074 "is set to 240 this will result in the following graph:"
1075 "<p><center><img alt=\"\" src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center>\n"
1077 "The boxes in the above graph have the following meaning:\n"
1079 "<li>%A filled black box represents the struct or class for which the "
1080 "graph is generated.\n"
1081 "<li>%A box with a black border denotes a documented struct or class.\n"
1082 "<li>%A box with a grey border denotes an undocumented struct or class.\n"
1083 "<li>%A box with a red border denotes a documented struct or class for"
1084 "which not all inheritance/containment relations are shown. %A graph is "
1085 "truncated if it does not fit within the specified boundaries.\n"
1087 "The arrows have the following meaning:\n"
1089 "<li>%A dark blue arrow is used to visualize a public inheritance "
1090 "relation between two classes.\n"
1091 "<li>%A dark green arrow is used for protected inheritance.\n"
1092 "<li>%A dark red arrow is used for private inheritance.\n"
1093 "<li>%A purple dashed arrow is used if a class is contained or used "
1094 "by another class. The arrow is labeled with the variable(s) "
1095 "through which the pointed class or struct is accessible.\n"
1096 "<li>%A yellow dashed arrow denotes a relation between a template instance and "
1097 "the template class it was instantiated from. The arrow is labeled with "
1098 "the template parameters of the instance.\n"
1101 /*! text for the link to the legend page */
1102 virtual QCString trLegend()
1107 //////////////////////////////////////////////////////////////////////////
1109 //////////////////////////////////////////////////////////////////////////
1111 /*! Used as a marker that is put before a test item */
1112 virtual QCString trTest()
1116 /*! Used as the header of the test list */
1117 virtual QCString trTestList()
1119 return "ÞÇÆãÉ ÇáÅÎÊÈÇÑÇÊ";
1122 //////////////////////////////////////////////////////////////////////////
1124 //////////////////////////////////////////////////////////////////////////
1126 /*! Used as a section header for KDE-2 IDL methods */
1127 virtual QCString trDCOPMethods()
1129 return "DCOP Member Functions";
1132 //////////////////////////////////////////////////////////////////////////
1134 //////////////////////////////////////////////////////////////////////////
1136 /*! Used as a section header for IDL properties */
1137 virtual QCString trProperties()
1141 /*! Used as a section header for IDL property documentation */
1142 virtual QCString trPropertyDocumentation()
1144 return "ÊæËíÞ ÇáÎÇÕíÉ";
1147 //////////////////////////////////////////////////////////////////////////
1149 //////////////////////////////////////////////////////////////////////////
1151 /*! Used for Java interfaces in the summary section of Java packages */
1152 virtual QCString trInterfaces()
1156 /*! Used for Java classes in the summary section of Java packages */
1157 virtual QCString trClasses()
1159 if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
1161 return "åíÇßá ÇáÈíÇäÇÊ";
1168 /*! Used as the title of a Java package */
1169 virtual QCString trPackage(const char *name)
1171 return (QCString)"ÍÒãÉ "+name;
1173 /*! Title of the package index page */
1174 virtual QCString trPackageList()
1176 return "ÞÇÆãÉ ÇáÍÒã";
1178 /*! The description of the package index page */
1179 virtual QCString trPackageListDescription()
1181 return "åÐå åí ÇáÍÒã ãÚ æÕÝ ãÎÊÕÑ áßá ãäåÇ )Åä æÌÏ( :";
1183 /*! The link name in the Quick links header for each page */
1184 virtual QCString trPackages()
1188 /*! Used as a chapter title for Latex & RTF output */
1189 virtual QCString trPackageDocumentation()
1191 return "ÊæËíÞ ÇáÍÒã";
1193 /*! Text shown before a multi-line define */
1194 virtual QCString trDefineValue()
1199 //////////////////////////////////////////////////////////////////////////
1201 //////////////////////////////////////////////////////////////////////////
1203 /*! Used as a marker that is put before a \\bug item */
1204 virtual QCString trBug()
1208 /*! Used as the header of the bug list */
1209 virtual QCString trBugList()
1211 return "ÞÇÆãÉ ÇáËÛÑÇÊ";
1214 //////////////////////////////////////////////////////////////////////////
1216 //////////////////////////////////////////////////////////////////////////
1218 /*! Used as ansicpg for RTF file
1220 * The following table shows the correlation of Charset name, Charset Value and
1223 * Charset Name Charset Value(hex) Codepage number
1224 * ------------------------------------------------------
1225 * DEFAULT_CHARSET 1 (x01)
1226 * SYMBOL_CHARSET 2 (x02)
1227 * OEM_CHARSET 255 (xFF)
1228 * ANSI_CHARSET 0 (x00) 1252
1229 * RUSSIAN_CHARSET 204 (xCC) 1251
1230 * EE_CHARSET 238 (xEE) 1250
1231 * GREEK_CHARSET 161 (xA1) 1253
1232 * TURKISH_CHARSET 162 (xA2) 1254
1233 * BALTIC_CHARSET 186 (xBA) 1257
1234 * HEBREW_CHARSET 177 (xB1) 1255
1235 * ARABIC _CHARSET 178 (xB2) 1256
1236 * SHIFTJIS_CHARSET 128 (x80) 932
1237 * HANGEUL_CHARSET 129 (x81) 949
1238 * GB2313_CHARSET 134 (x86) 936
1239 * CHINESEBIG5_CHARSET 136 (x88) 950
1243 virtual QCString trRTFansicp()
1249 /*! Used as ansicpg for RTF fcharset
1250 * \see trRTFansicp() for a table of possible values.
1252 virtual QCString trRTFCharSet()
1257 /*! Used as header RTF general index */
1258 virtual QCString trRTFGeneralIndex()
1263 /*! This is used for translation of the word that will possibly
1264 * be followed by a single name or by a list of names
1267 virtual QCString trClass(bool /*first_capital*/, bool singular)
1269 QCString result("ÝÆÉ");
1270 if (!singular) result="ÝÆÇÊ";
1274 /*! This is used for translation of the word that will possibly
1275 * be followed by a single name or by a list of names
1278 virtual QCString trFile(bool /*first_capital*/, bool singular)
1280 QCString result("ãáÝ");
1281 if (!singular) result="ãáÝÇÊ";
1285 /*! This is used for translation of the word that will possibly
1286 * be followed by a single name or by a list of names
1289 virtual QCString trNamespace(bool /*first_capital*/, bool singular)
1291 QCString result("ãÌÇá ÃÓãÇÁ");
1292 if (!singular) result="ãÌÇáÇÊ ÃÓãÇÁ";
1296 /*! This is used for translation of the word that will possibly
1297 * be followed by a single name or by a list of names
1300 virtual QCString trGroup(bool /*first_capital*/, bool singular)
1302 QCString result("ãÌãæÚÉ");
1303 if (!singular) result="ãÌãæÚÇÊ";
1307 /*! This is used for translation of the word that will possibly
1308 * be followed by a single name or by a list of names
1311 virtual QCString trPage(bool /*first_capital*/, bool singular)
1313 QCString result("ÕÝÍÉ");
1314 if (!singular) result="ÕÝÍÇÊ";
1318 /*! This is used for translation of the word that will possibly
1319 * be followed by a single name or by a list of names
1322 virtual QCString trMember(bool /*first_capital*/, bool singular)
1324 QCString result("ÚÖæ");
1325 if (!singular) result="ÃÚÖÇÁ";
1329 /*! This is used for translation of the word that will possibly
1330 * be followed by a single name or by a list of names
1333 virtual QCString trField(bool /*first_capital*/, bool singular)
1335 QCString result("ÍÞá");
1336 if (!singular) result="ÍÞæá";
1340 /*! This is used for translation of the word that will possibly
1341 * be followed by a single name or by a list of names
1344 virtual QCString trGlobal(bool /*first_capital*/, bool singular)
1346 QCString result("ÚÇã");
1347 if (!singular) result="򾂋";
1351 //////////////////////////////////////////////////////////////////////////
1353 //////////////////////////////////////////////////////////////////////////
1355 /*! This text is generated when the \\author command is used and
1356 * for the author section in man pages. */
1357 virtual QCString trAuthor(bool /*first_capital*/, bool singular)
1359 QCString result("ÇáãÄáÝ");
1360 if (!singular) result="ÇáãÄáÝæä";
1364 //////////////////////////////////////////////////////////////////////////
1366 //////////////////////////////////////////////////////////////////////////
1368 /*! This text is put before the list of members referenced by a member
1370 virtual QCString trReferences()
1375 //////////////////////////////////////////////////////////////////////////
1377 //////////////////////////////////////////////////////////////////////////
1379 /*! used in member documentation blocks to produce a list of
1380 * members that are implemented by this one.
1382 virtual QCString trImplementedFromList(int numEntries)
1384 return "Implements "+trWriteList(numEntries)+".";
1387 /*! used in member documentation blocks to produce a list of
1388 * all members that implement this abstract member.
1390 virtual QCString trImplementedInList(int numEntries)
1392 return "Implemented in "+trWriteList(numEntries)+".";
1395 //////////////////////////////////////////////////////////////////////////
1397 //////////////////////////////////////////////////////////////////////////
1399 /*! used in RTF documentation as a heading for the Table
1402 virtual QCString trRTFTableOfContents()
1404 return "ÌÏæá ÇáãÍÊæíÇÊ";
1407 //////////////////////////////////////////////////////////////////////////
1409 //////////////////////////////////////////////////////////////////////////
1411 /*! Used as the header of the list of item that have been
1412 * flagged deprecated
1414 virtual QCString trDeprecatedList()
1416 return "Deprecated List";
1419 //////////////////////////////////////////////////////////////////////////
1421 //////////////////////////////////////////////////////////////////////////
1423 /*! Used as a header for declaration section of the events found in
1426 virtual QCString trEvents()
1430 /*! Header used for the documentation section of a class' events. */
1431 virtual QCString trEventDocumentation()
1433 return "ÊæËíÞ ÇáÃÍÏÇË";
1436 //////////////////////////////////////////////////////////////////////////
1438 //////////////////////////////////////////////////////////////////////////
1440 /*! Used as a heading for a list of Java class types with package scope.
1442 virtual QCString trPackageTypes()
1444 return "ÃäæÇÚ ÇáÍÒãÉ";
1446 /*! Used as a heading for a list of Java class functions with package
1449 virtual QCString trPackageMembers()
1451 return "ÏæÇá ÇáÍÒãÉ";
1453 /*! Used as a heading for a list of static Java class functions with
1456 virtual QCString trStaticPackageMembers()
1458 return "ÏæÇá ÓÇßäÉ ááÍÒãÉ";
1460 /*! Used as a heading for a list of Java class variables with package
1463 virtual QCString trPackageAttribs()
1465 return "ÎÕÇÆÕ ÇáÍÒãÉ";
1467 /*! Used as a heading for a list of static Java class variables with
1470 virtual QCString trStaticPackageAttribs()
1472 return "ÎÕÇÆÕ ÓÇßäÉ ááÍÒãÉ";
1475 //////////////////////////////////////////////////////////////////////////
1477 //////////////////////////////////////////////////////////////////////////
1479 /*! Used in the quick index of a class/file/namespace member list page
1480 * to link to the unfiltered list of all members.
1482 virtual QCString trAll()
1486 /*! Put in front of the call graph for a function. */
1487 virtual QCString trCallGraph()
1489 return "åÐÇ åæ ÑÓã ÇáÇÓÊÏÚÇÁ áåÐå ÇáÏÇáÉ:";
1492 //////////////////////////////////////////////////////////////////////////
1494 //////////////////////////////////////////////////////////////////////////
1496 /*! When the search engine is enabled this text is put in the header
1497 * of each page before the field where one can enter the text to search
1500 virtual QCString trSearchForIndex()
1504 /*! This string is used as the title for the page listing the search
1507 virtual QCString trSearchResultsTitle()
1509 return "äÊÇÆÌ ÇáÈÍË";
1511 /*! This string is put just before listing the search results. The
1512 * text can be different depending on the number of documents found.
1513 * Inside the text you can put the special marker $num to insert
1514 * the number representing the actual number of search results.
1515 * The @a numDocuments parameter can be either 0, 1 or 2, where the
1516 * value 2 represents 2 or more matches. HTML markup is allowed inside
1517 * the returned string.
1519 virtual QCString trSearchResults(int numDocuments)
1521 if (numDocuments==0)
1523 return "ÚÝæÇ ¡ áÇ íæÌÏ ÊæËíÞ ãáÇÆã áãÇ ÈÍËÊ Úäå.";
1525 else if (numDocuments==1)
1527 return "æËíÞÉ ãäÇÓÈÉ áãÇ ÈÍËÊ Úäå. <b>1</b> Êã ÇáÚËæÑ Úáì.";
1531 return "æËíÞÉ ãØÇÈÞÉ áãÇ ÈÍËÊ Úäå <b>$num</b> Êã ÅíÌÇÏ ."
1532 "æÊã ÊÑÊíÈåã ÈÍíË íßæä ÇáÃÞÑÈ áäÊíÌÉ ÇáÈÍË ÃæáÇ.";
1535 /*! This string is put before the list of matched words, for each search
1536 * result. What follows is the list of words that matched the query.
1538 virtual QCString trSearchMatches()
1540 return "íÊØÇÈÞ ãÚ:";
1543 //////////////////////////////////////////////////////////////////////////
1545 //////////////////////////////////////////////////////////////////////////
1547 /*! This is used in HTML as the title of page with source code for file filename
1549 virtual QCString trSourceFile(QCString& filename)
1551 return " ãáÝ ÇáãÕÏÑ" + filename ;
1554 //////////////////////////////////////////////////////////////////////////
1556 //////////////////////////////////////////////////////////////////////////
1558 /*! This is used as the name of the chapter containing the directory
1561 virtual QCString trDirIndex()
1562 { return "Ôßá åÑãí ááÃÏáÉ"; }
1564 /*! This is used as the name of the chapter containing the documentation
1565 * of the directories.
1567 virtual QCString trDirDocumentation()
1568 { return "ÊæËíÞ ÇáÃÏáÉ"; }
1570 /*! This is used as the title of the directory index and also in the
1571 * Quick links of an HTML page, to link to the directory hierarchy.
1573 virtual QCString trDirectories()
1574 { return "ÇáÃÏáÉ"; }
1576 /*! This returns a sentences that introduces the directory hierarchy.
1577 * and the fact that it is sorted alphabetically per level
1579 virtual QCString trDirDescription()
1580 { return "åÐÇ ÇáÔßá ÇáåÑãí ááÃÏáÉ Êã ÊÑÊíÈå ÃÈÌÏíÇ ÈÕæÑÉ ÊÞÑíÈíÉ¡ "
1581 "æáíÓ ÊÑÊíÈÇ ÃÈÌÏíÇ ßÇãáÇ:";
1584 /*! This returns the title of a directory page. The name of the
1585 * directory is passed via \a dirName.
1587 virtual QCString trDirReference(const char *dirName)
1588 { QCString result=" ãÑÌÚ ÇáÏáíá"; result+=dirName; return result; }
1590 /*! This returns the word directory with or without starting capital
1591 * (\a first_capital) and in sigular or plural form (\a singular).
1593 virtual QCString trDir(bool first_capital, bool singular)
1595 QCString result((first_capital ? "Director" : "director"));
1596 if (singular) result+="y"; else result+="ies";
1600 //////////////////////////////////////////////////////////////////////////
1602 //////////////////////////////////////////////////////////////////////////
1604 /*! This text is added to the documentation when the \\overload command
1605 * is used for a overloaded function.
1607 virtual QCString trOverloadText()
1609 return "åÐå ÏÇáÉ ÚÖæ ÒÇÆÏÉ ÇáÊÍãíá ¡"
1610 "æÌÏ ÃäåÇ ãáÇÆãÉ. ÅäåÇ ÊÎÊáÝ Úä ÇáÏÇáÉ ÃÚáÇå"
1611 "ÝÞØ Ýí äæÚíÉ Çá argument(s) ÇáÊí ÊÞÈáåÇ.";