My Project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
translator_fa.h
Go to the documentation of this file.
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  * Description : Doxygen Persian (Farsi) Translator
18  * Author : Ali Nadalizadeh < nadalizadeh at gmail dot com >
19  *
20  * ChangeLog :
21  * Thu 06 Jul 2006 11:54:09 PM IRDT <nadalizadeh at gmail dot com>
22  * >> First version of persian language support has been completed.
23  *
24  * Mon 04 Feb 2008 11:52:09 AM IRDT <nadalizadeh at gmail dot com>
25  * >> Obsolete methods removed. Translated more string(s) to persian. Upgraded to 1_5_4 adapter.
26  *
27  * Fri 04 Jun 2010 04:05:24 PM IRDT <nadalizadeh at gmail dot com>
28  * >> Implement missing new methods since 1.6.0.
29  * >> Add English to Persian digit convertor. (for date/time digits)
30  *
31  * Translation feedbacks are really appreciated.
32  */
33 
34 #ifndef TRANSLATOR_FA_H
35 #define TRANSLATOR_FA_H
36 
37 #define HtmlRightToLeft QCString("<div dir=\"rtl\">")
38 #define HtmlLeftToRight QCString("<div dir=\"ltr\">")
39 #define HtmlDivEnd QCString("</div>")
40 
41 
43 {
44  private:
47  QCString convertDigitsToFarsi(QCString str)
48  {
49  QCString output;
50  const char * PersianDigits[] = { "۰", "۱", "۲", "۳", "۴", "۵", "۶", "۷", "۸", "۹" };
51  for(unsigned i=0; i<str.length(); i++)
52  {
53  if (str.at(i) >= '0' && str.at(i) <= '9')
54  output += PersianDigits[ str.at(i) - '0' ];
55  else
56  output += str.at(i);
57  }
58 
59  return output;
60  }
61 
62  public:
63 
64  // --- Language control methods -------------------
65 
72  virtual QCString idLanguage()
73  { return "persian"; }
74 
89  virtual QCString latexLanguageSupportCommand()
90  {
91  return "";
92  }
93 
94  // --- Language translation methods -------------------
95 
97  virtual QCString trRelatedFunctions()
98  { return "توابع مربوط"; }
99 
101  virtual QCString trRelatedSubscript()
102  { return "(لازم به ذکر است که اينها توابع عضو نيستند)"; }
103 
105  virtual QCString trDetailedDescription()
106  { return "توضيحات جزئی"; }
107 
109  virtual QCString trMemberTypedefDocumentation()
110  { return "مستندات تعریف گونه ها"; }
111 
114  { return "های عضو Enumeration مستندات"; }
115 
117  virtual QCString trMemberFunctionDocumentation()
118  { return "توضيحات توابع عضو"; }
119 
121  virtual QCString trMemberDataDocumentation()
122  {
123  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
124  {
125  return "Field مستندات";
126  }
127  else
128  {
129  return "مستندات متغيير های عضو";
130  }
131  }
132 
134  virtual QCString trMore()
135  { return "بيشتر..."; }
136 
138  virtual QCString trListOfAllMembers()
139  { return "ليست تمام اعضاء "; }
140 
142  virtual QCString trMemberList()
143  { return "ليست اعضاء"; }
144 
146  virtual QCString trThisIsTheListOfAllMembers()
147  { return "اين ليستی کامل از همه اعضای "; }
148 
150  virtual QCString trIncludingInheritedMembers()
151  { return "شامل همه ی اعضای به ارث برده شده می باشد."; }
152 
156  virtual QCString trGeneratedAutomatically(const char *s)
157  { QCString result="تولید شده توسط نرم افزار دی اکسیژن ";
158  if (s) result+=(QCString)" برای "+s;
159  result+=" از کد برنامه ";
160  return result;
161  }
162 
164  virtual QCString trEnumName()
165  { return "enum نام"; }
166 
168  virtual QCString trEnumValue()
169  { return "enum مقدار"; }
170 
172  virtual QCString trDefinedIn()
173  { return "تعریف شده در"; }
174 
175  // quick reference sections
176 
180  virtual QCString trModules()
181  { return "Modules"; }
182 
184  virtual QCString trClassHierarchy()
185  { return "سلسله مراتب کلاس ها"; }
186 
188  virtual QCString trCompoundList()
189  {
190  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
191  {
192  return "ساختار های داده ";
193  }
194  else
195  {
196  return "ليست کلاس ها ";
197  }
198  }
199 
201  virtual QCString trFileList()
202  { return "ليست فايل ها"; }
203 
205  virtual QCString trCompoundMembers()
206  {
207  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
208  {
209  return "فضاهای داده ها";
210  }
211  else
212  {
213  return "اعضاء کلاس ها";
214  }
215  }
216 
218  virtual QCString trFileMembers()
219  {
220  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
221  {
222  return "Globals";
223  }
224  else
225  {
226  return "اعضاء پرونده";
227  }
228  }
229 
231  virtual QCString trRelatedPages()
232  { return "صفحات مربوط"; }
233 
235  virtual QCString trExamples()
236  { return "مثال ها"; }
237 
239  virtual QCString trSearch()
240  { return "جستجو"; }
241 
243  virtual QCString trClassHierarchyDescription()
244  { return "ليست و سلسله مراتب درختی کلاس ها به صورت مرتب شده :";
245  }
246 
248  virtual QCString trFileListDescription(bool extractAll)
249  {
250  QCString result="ليست همه ي پرونده های ";
251  if (!extractAll) result+="(مستند شده) ";
252  result+=" :";
253  return result;
254  }
255 
257  virtual QCString trCompoundListDescription()
258  {
259 
260  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
261  {
262  return "ليست ساختارهای داده به همراه توضيحی کوتاه :";
263  }
264  else
265  {
266  return "ليست کلاس ها ، ساختارهای داده و ... به همراه توضيحات مختصر راجع به آنها :";
267  }
268  }
269 
271  virtual QCString trCompoundMembersDescription(bool extractAll)
272  {
273  QCString result=" در ذيل ليست ";
274  if (!extractAll)
275  {
276  result+="آن اعضايي که مستند شده اند ";
277  }
278  else
279  {
280  result+="همه ی اعضاء ";
281  }
282  result+=" به همراه ارتباطشان با ";
283  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
284  {
285  result+="ساختارهای داده ";
286  }
287  else
288  {
289  result+="كلاس ها ";
290  }
291 
292  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
293  {
294  result+="و مستندات ساختار داده برای هر عضو ";
295  }
296  else
297  {
298  result+="و مستندات کلاس برای هر عضو ";
299  }
300  result+="را مشاهده ميکنيد :";
301  return result;
302  }
303 
305  virtual QCString trFileMembersDescription(bool extractAll)
306  {
307  QCString result="ليست همه ی توابع ، متغيير ها، تعاريف و ... ";
308  if (!extractAll) result+="(مستند شده) ";
309 
310  result+=" به همراه ارتباط آنها ";
311  result+="با پرونده هايی که به آن مربوط اند :";
312  return result;
313  }
314 
316  virtual QCString trExamplesDescription()
317  { return "ليست همه ی مثال ها :"; }
318 
320  virtual QCString trRelatedPagesDescription()
321  { return "لیست تمام صفحات و مستندات مربوطه :"; }
322 
324  virtual QCString trModulesDescription()
325  { return "لیست تمام ماژول ها:"; }
326 
327  // index titles (the project name is prepended for these)
328 
329 
331  virtual QCString trDocumentation()
332  { return "مستندات"; }
333 
337  virtual QCString trModuleIndex()
338  { return "فهرست ماژول ها"; }
339 
343  virtual QCString trHierarchicalIndex()
344  { return "فهرست سلسله مراتب"; }
345 
349  virtual QCString trCompoundIndex()
350  {
351  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
352  {
353  return "فهرست ساختار داده ها";
354  }
355  else
356  {
357  return "فهرست کلاس های";
358  }
359  }
360 
364  virtual QCString trFileIndex()
365  { return "فهرست پرونده ها"; }
366 
370  virtual QCString trModuleDocumentation()
371  { return "مستندات ماژول"; }
372 
376  virtual QCString trClassDocumentation()
377  {
378  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
379  {
380  return "مستندات ساختار داده ها";
381  }
382  else
383  {
384  return "مستندات کلاس ها";
385  }
386  }
387 
391  virtual QCString trFileDocumentation()
392  { return "مستندات فایل"; }
393 
397  virtual QCString trExampleDocumentation()
398  { return "مستندات مثال"; }
399 
403  virtual QCString trPageDocumentation()
404  { return "مستندات صفحه"; }
405 
407  virtual QCString trReferenceManual()
408  { return "راهنمای مرجع"; }
409 
413  virtual QCString trDefines()
414  { return "تعاريف"; }
415 
419  virtual QCString trTypedefs()
420  { return "تعریف گونه ها"; }
421 
425  virtual QCString trEnumerations()
426  { return "تعاريف"; }
427 
431  virtual QCString trFunctions()
432  { return "توابع"; }
433 
437  virtual QCString trVariables()
438  { return "متغيير ها"; }
439 
443  virtual QCString trEnumerationValues()
444  { return "معرف ها"; }
445 
449  virtual QCString trDefineDocumentation()
450  { return "Define Documentation"; }
451 
455  virtual QCString trTypedefDocumentation()
456  { return "Typedef"; }
457 
462  { return "مستندات تعريف"; }
463 
468  { return "مستندات معرف"; }
469 
473  virtual QCString trFunctionDocumentation()
474  { return "توضيح تابع"; }
475 
479  virtual QCString trVariableDocumentation()
480  { return "توضيح متغير"; }
481 
485  virtual QCString trCompounds()
486  {
487  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
488  {
489  return "ساختارهای داده";
490  }
491  else
492  {
493  return "کلاس ها";
494  }
495  }
496 
500  virtual QCString trGeneratedAt(const char *date,const char *projName)
501  {
502  QCString result = HtmlDivEnd + HtmlRightToLeft + QCString("توليد شده در ") +date ;
503  if (projName) result+=(QCString)" برای "+projName;
504  result+=(QCString)" توسط";
505  return result;
506  }
507 
509  virtual QCString trClassDiagram(const char *clName)
510  {
511  return (QCString)""+clName+" نمودار وراثت برای :";
512  }
513 
515  virtual QCString trForInternalUseOnly()
516  { return ".فقط برای استعمال داخلی"; }
517 
519  virtual QCString trWarning()
520  { return "اخطار"; }
521 
523  virtual QCString trVersion()
524  { return "نسخه"; }
525 
527  virtual QCString trDate()
528  { return "تاريخ"; }
529 
531  virtual QCString trReturns()
532  { return "خروجی"; }
533 
535  virtual QCString trSeeAlso()
536  { return "See also"; }
537 
539  virtual QCString trParameters()
540  { return "پارامترها"; }
541 
543  virtual QCString trExceptions()
544  { return "استثناء ها"; }
545 
547  virtual QCString trGeneratedBy()
548  { return "توليد شده توسط"; }
549 
551 // new since 0.49-990307
553 
555  virtual QCString trNamespaceList()
556  { return "ليست فضاهای نام"; }
557 
559  virtual QCString trNamespaceListDescription(bool extractAll)
560  {
561  QCString result="در ذيل ليستی از همه ی فضاهای نام ";
562  if (!extractAll) result+="(مستند سازی شده) ";
563  result+="به همراه توضيح کوتاه آنها مشاهده می کنيد :";
564  return result;
565  }
566 
570  virtual QCString trFriends()
571  { return "کلاس های دوست"; }
572 
574 // new since 0.49-990405
576 
581  { return "مستندات توابع مربوط و دوست"; }
582 
584 // new since 0.49-990425
586 
588  virtual QCString trCompoundReference(const char *clName,
589  ClassDef::CompoundType compType,
590  bool isTemplate)
591  {
592  QCString result;
593  switch(compType)
594  {
595  case ClassDef::Class: result=" کلاس"; break;
596  case ClassDef::Struct: result=" ساختار داده"; break;
597  case ClassDef::Union: result=" Union"; break;
598  case ClassDef::Interface: result=" Interface"; break;
599  case ClassDef::Protocol: result=" Protocol"; break;
600  case ClassDef::Category: result=" Category"; break;
601  case ClassDef::Exception: result=" استثناء"; break;
602  default: break;
603  }
604  if (isTemplate) result+=" قالب";
605  result=QCString(clName) + " مرجع" +result ;
606  return result;
607  }
608 
610  virtual QCString trFileReference(const char *fileName)
611  {
612  QCString result=fileName;
613  result+=" مرجع پرونده";
614  return result;
615  }
616 
618  virtual QCString trNamespaceReference(const char *namespaceName)
619  {
620  QCString result=namespaceName;
621  result+=" مرجع فضای نام";
622  return result;
623  }
624 
625  virtual QCString trPublicMembers()
626  { return "توابع عمومی عضو کلاس"; }
627  virtual QCString trPublicSlots()
628  { return "های عمومی Slot"; }
629  virtual QCString trSignals()
630  { return "سيگنال ها"; }
631  virtual QCString trStaticPublicMembers()
632  { return "توابع ثابت عمومی عضو کلاس"; }
633  virtual QCString trProtectedMembers()
634  { return "توابع خصوصی عضو کلاس"; }
635  virtual QCString trProtectedSlots()
636  { return "های محافظت شده Slot"; }
637  virtual QCString trStaticProtectedMembers()
638  { return "توابع ثابت محافظت شده عضو کلاس"; }
639  virtual QCString trPrivateMembers()
640  { return "توابع خصوصی عضو کلاس"; }
641  virtual QCString trPrivateSlots()
642  { return "های خصوصی Slot"; }
643  virtual QCString trStaticPrivateMembers()
644  { return "توابع خصوصی ثابت عضو کلاس"; }
645 
649  virtual QCString trWriteList(int numEntries)
650  {
651  QCString result;
652  int i;
653  // the inherits list contain `numEntries' classes
654  for (i=0;i<numEntries;i++)
655  {
656  // use generateMarker to generate placeholders for the class links!
657  result+=generateMarker(i); // generate marker for entry i in the list
658  // (order is left to right)
659 
660  if (i!=numEntries-1) // not the last entry, so we need a separator
661  {
662  if (i<numEntries-2) // not the fore last entry
663  result+=", ";
664  else // the fore last entry
665  result+=" و ";
666  }
667  }
668  return result;
669  }
670 
674  virtual QCString trInheritsList(int numEntries)
675  {
676  return ".را به ارث می برد "+trWriteList(numEntries)+".";
677  }
678 
682  virtual QCString trInheritedByList(int numEntries)
683  {
684  return ".اين کلاس را به ارث برده است "+trWriteList(numEntries)+".";
685  }
686 
690  virtual QCString trReimplementedFromList(int numEntries)
691  {
692  return "Reimplemented from "+trWriteList(numEntries)+".";
693  }
694 
698  virtual QCString trReimplementedInList(int numEntries)
699  {
700  return "تعریف شده است "+trWriteList(numEntries)+"دوباره در ";
701  }
702 
704  virtual QCString trNamespaceMembers()
705  { return "اعضای فضاهای نام"; }
706 
708  virtual QCString trNamespaceMemberDescription(bool extractAll)
709  {
710  QCString result="ليست همه اعضای فضای نام ";
711  if (!extractAll) result+="(مستند شده) ";
712  result+=" با ارتباطشان با";
713  result+="فضاهای نامی که به آن مربوط اند را مشاهده ميکنيد :";
714  return result;
715  }
719  virtual QCString trNamespaceIndex()
720  { return "فهرست فضاهای نام"; }
721 
725  virtual QCString trNamespaceDocumentation()
726  { return "توضيحات فضای نام"; }
727 
729 // new since 0.49-990522
731 
735  virtual QCString trNamespaces()
736  { return "فضاهای نام"; }
737 
739 // new since 0.49-990728
741 
745  virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
746  bool single)
747  { // here s is one of " Class", " Struct" or " Union"
748  // single is true implies a single file
749  QCString result=(QCString)"مستندات اين ";
750  switch(compType)
751  {
752  case ClassDef::Class: result+="کلاس"; break;
753  case ClassDef::Struct: result+="ساختار داده"; break;
754  case ClassDef::Union: result+="union"; break;
755  case ClassDef::Interface: result+="interface"; break;
756  case ClassDef::Protocol: result+="protocol"; break;
757  case ClassDef::Category: result+="category"; break;
758  case ClassDef::Exception: result+="exception"; break;
759  default: break;
760  }
761  result+=" از روی پرونده ";
762  if (single) result+=""; else result+="های ";
763  result+="زير توليد شده است :";
764  return result;
765  }
766 
768 // new since 0.49-990901
770 
772  virtual QCString trReturnValues()
773  { return "مقادير بازگشتی"; }
774 
777  virtual QCString trMainPage()
778  { return "صفحه ی اصلی"; }
779 
783  virtual QCString trPageAbbreviation()
784  { return "ص."; }
785 
787 // new since 0.49-991003
789  virtual QCString trDefinedAtLineInSourceFile()
790  {
791  return ".در خط @0 از پرونده @1 تعريف شده است";
792  }
793  virtual QCString trDefinedInSourceFile()
794  {
795  return ".در فايل @0 تعريف شده است";
796  }
797 
799 // new since 0.49-991205
801 
802  virtual QCString trDeprecated()
803  {
804  return "منسوخ شده";
805  }
806 
808 // new since 1.0.0
810 
812  virtual QCString trCollaborationDiagram(const char *clName)
813  {
814  return (QCString)"Collaboration diagram for "+clName+":";
815  }
817  virtual QCString trInclDepGraph(const char *fName)
818  {
819  return (QCString)"نمودار شامل شدن ها برای "+fName+":";
820  }
822  virtual QCString trConstructorDocumentation()
823  {
824  return "مستندات توباع آغازین و پایانی";
825  }
827  virtual QCString trGotoSourceCode()
828  {
829  return "کد منبع اين پرونده.";
830  }
832  virtual QCString trGotoDocumentation()
833  {
834  return "توضيحات اين پرونده.";
835  }
837  virtual QCString trPrecondition()
838  {
839  return "پیش شرط";
840  }
842  virtual QCString trPostcondition()
843  {
844  return "پس شرط";
845  }
847  virtual QCString trInvariant()
848  {
849  return "Invariant";
850  }
852  virtual QCString trInitialValue()
853  {
854  return "مقدار اوليه :";
855  }
857  virtual QCString trCode()
858  {
859  return "کد";
860  }
861  virtual QCString trGraphicalHierarchy()
862  {
863  return "سلسله مراتب گرافيکی کلاس";
864  }
865  virtual QCString trGotoGraphicalHierarchy()
866  {
867  return "نمایش نمودار درختی گرافیکی کلاس";
868  }
869  virtual QCString trGotoTextualHierarchy()
870  {
871  return "نمایش نمودار درختی متنی کلاس";
872  }
873  virtual QCString trPageIndex()
874  {
875  return "فهرست صفحات";
876  }
877 
879 // new since 1.1.0
881 
882  virtual QCString trNote()
883  {
884  return "نکته";
885  }
886  virtual QCString trPublicTypes()
887  {
888  return "های عمومی Type";
889  }
890  virtual QCString trPublicAttribs()
891  {
892  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
893  {
894  return "فضاهای داده ها";
895  }
896  else
897  {
898  return "خواص (متغييرهای) عمومی";
899  }
900  }
901  virtual QCString trStaticPublicAttribs()
902  {
903  return "خواص (متغييرهای) عمومی ثابت";
904  }
905  virtual QCString trProtectedTypes()
906  {
907  return "های حفاظت شده Type";
908  }
909  virtual QCString trProtectedAttribs()
910  {
911  return "خواص (متغييرهای) حفاظت شده";
912  }
913  virtual QCString trStaticProtectedAttribs()
914  {
915  return "خواص (متغييرهای) حفاظت شده ثابت";
916  }
917  virtual QCString trPrivateTypes()
918  {
919  return "های خصوصی Type";
920  }
921  virtual QCString trPrivateAttribs()
922  {
923  return "خواص (متغييرهای) خصوصی";
924  }
925  virtual QCString trStaticPrivateAttribs()
926  {
927  return "خواص (متغييرهای) خصوصی ثابت";
928  }
929 
931 // new since 1.1.3
933 
935  virtual QCString trTodo()
936  {
937  return "برای انجام";
938  }
940  virtual QCString trTodoList()
941  {
942  return "ليست کارهاي آينده";
943  }
944 
946 // new since 1.1.4
948 
949  virtual QCString trReferencedBy()
950  {
951  return " استفاده شده توسط ";
952  }
953  virtual QCString trRemarks()
954  {
955  return "ملاحظات";
956  }
957  virtual QCString trAttention()
958  {
959  return "توجه";
960  }
961  virtual QCString trInclByDepGraph()
962  {
963  return "این نمودار فایل هایی را که این فایل را به طور مستقیم یا غیر مستقیم استفاده کرده اند نشان می دهد";
964  }
965  virtual QCString trSince()
966  {
967  return "از";
968  }
969 
971 // new since 1.1.5
973 
975  virtual QCString trLegendTitle()
976  {
977  return "راهنمای نمودار";
978  }
982  virtual QCString trLegendDocs()
983  {
984  return
985  "This page explains how to interpret the graphs that are generated "
986  "by doxygen.<p>\n"
987  "Consider the following example:\n"
988  "\\code\n"
989  "/*! Invisible class because of truncation */\n"
990  "class Invisible { };\n\n"
991  "/*! Truncated class, inheritance relation is hidden */\n"
992  "class Truncated : public Invisible { };\n\n"
993  "/* Class not documented with doxygen comments */\n"
994  "class Undocumented { };\n\n"
995  "/*! Class that is inherited using public inheritance */\n"
996  "class PublicBase : public Truncated { };\n\n"
997  "/*! A template class */\n"
998  "template<class T> class Templ { };\n\n"
999  "/*! Class that is inherited using protected inheritance */\n"
1000  "class ProtectedBase { };\n\n"
1001  "/*! Class that is inherited using private inheritance */\n"
1002  "class PrivateBase { };\n\n"
1003  "/*! Class that is used by the Inherited class */\n"
1004  "class Used { };\n\n"
1005  "/*! Super class that inherits a number of other classes */\n"
1006  "class Inherited : public PublicBase,\n"
1007  " protected ProtectedBase,\n"
1008  " private PrivateBase,\n"
1009  " public Undocumented\n"
1010  " public Templ<int>\n"
1011  "{\n"
1012  " private:\n"
1013  " Used *m_usedClass;\n"
1014  "};\n"
1015  "\\endcode\n"
1016  "If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
1017  "is set to 240 this will result in the following graph:"
1018  "<p><center><img alt=\"\" src=\"graph_legend."+getDotImageExtension()+"\"></center>\n"
1019  "<p>\n"
1020  "The boxes in the above graph have the following meaning:\n"
1021  "<ul>\n"
1022  "<li>%A filled black box represents the struct or class for which the "
1023  "graph is generated.\n"
1024  "<li>%A box with a black border denotes a documented struct or class.\n"
1025  "<li>%A box with a gray border denotes an undocumented struct or class.\n"
1026  "<li>%A box with a red border denotes a documented struct or class for"
1027  "which not all inheritance/containment relations are shown. %A graph is "
1028  "truncated if it does not fit within the specified boundaries.\n"
1029  "</ul>\n"
1030  "The arrows have the following meaning:\n"
1031  "<ul>\n"
1032  "<li>%A dark blue arrow is used to visualize a public inheritance "
1033  "relation between two classes.\n"
1034  "<li>%A dark green arrow is used for protected inheritance.\n"
1035  "<li>%A dark red arrow is used for private inheritance.\n"
1036  "<li>%A purple dashed arrow is used if a class is contained or used "
1037  "by another class. The arrow is labeled with the variable(s) "
1038  "through which the pointed class or struct is accessible.\n"
1039  "<li>%A yellow dashed arrow denotes a relation between a template instance and "
1040  "the template class it was instantiated from. The arrow is labeled with "
1041  "the template parameters of the instance.\n"
1042  "</ul>\n";
1043  }
1045  virtual QCString trLegend()
1046  {
1047  return "راهنما";
1048  }
1049 
1051 // new since 1.2.0
1053 
1055  virtual QCString trTest()
1056  {
1057  return "تست";
1058  }
1060  virtual QCString trTestList()
1061  {
1062  return "Test List";
1063  }
1064 
1066 // new since 1.2.2
1068 
1070  virtual QCString trProperties()
1071  {
1072  return "خاصیت ها";
1073  }
1075  virtual QCString trPropertyDocumentation()
1076  {
1077  return "مستندات خاصیت";
1078  }
1079 
1081 // new since 1.2.4
1083 
1085  virtual QCString trClasses()
1086  {
1087  if (Config_getBool(OPTIMIZE_OUTPUT_FOR_C))
1088  {
1089  return "ساختار های داده";
1090  }
1091  else
1092  {
1093  return "كلاس ها";
1094  }
1095  }
1097  virtual QCString trPackage(const char *name)
1098  {
1099  return (QCString)"Package "+name;
1100  }
1102  virtual QCString trPackageList()
1103  {
1104  return "لیست بسته ها";
1105  }
1107  virtual QCString trPackageListDescription()
1108  {
1109  return "لیست بسته ها به همراه توضیح مختر در صورت وجود :";
1110  }
1112  virtual QCString trPackages()
1113  {
1114  return "بسته ها";
1115  }
1117  virtual QCString trDefineValue()
1118  {
1119  return "مقدار:";
1120  }
1121 
1123 // new since 1.2.5
1125 
1127  virtual QCString trBug()
1128  {
1129  return "اشکال";
1130  }
1132  virtual QCString trBugList()
1133  {
1134  return "ليست اشکالات";
1135  }
1136 
1138 // new since 1.2.6
1140 
1166  virtual QCString trRTFansicp()
1167  {
1168  return "1256";
1169  }
1170 
1171 
1175  virtual QCString trRTFCharSet()
1176  {
1177  return "178";
1178  }
1179 
1181  virtual QCString trRTFGeneralIndex()
1182  {
1183  return "فهرست";
1184  }
1185 
1190  virtual QCString trClass(bool first_capital, bool singular)
1191  {
1192  QCString result((first_capital ? "کلاس" : "کلاس"));
1193  if (!singular) result+="ها";
1194  return result;
1195  }
1196 
1201  virtual QCString trFile(bool /*first_capital*/, bool singular)
1202  {
1203  QCString result("پرونده");
1204  if (!singular) result=result+" ها";
1205  return result;
1206  }
1207 
1212  virtual QCString trNamespace(bool first_capital, bool singular)
1213  {
1214  QCString result((first_capital ? "فضای نام " : "فضای نام "));
1215  if (!singular) result+="ها";
1216  return result;
1217  }
1218 
1223  virtual QCString trGroup(bool first_capital, bool singular)
1224  {
1225  QCString result((first_capital ? "Group" : "group"));
1226  if (!singular) result+="s";
1227  return result;
1228  }
1229 
1234  virtual QCString trPage(bool first_capital, bool singular)
1235  {
1236  QCString result((first_capital ? "صفحه" : "صفحه"));
1237  if (!singular) result+=" ها ";
1238  return result;
1239  }
1240 
1245  virtual QCString trMember(bool first_capital, bool singular)
1246  {
1247  QCString result((first_capital ? "عضو" : "عضو"));
1248  if (!singular) result+="ها";
1249  return result;
1250  }
1251 
1256  virtual QCString trGlobal(bool first_capital, bool singular)
1257  {
1258  QCString result((first_capital ? "Global" : "global"));
1259  if (!singular) result+="s";
1260  return result;
1261  }
1262 
1264 // new since 1.2.7
1266 
1269  virtual QCString trAuthor(bool first_capital, bool singular)
1270  {
1271  QCString result((first_capital ? "Author" : "author"));
1272  if (!singular) result+="s";
1273  return result;
1274  }
1275 
1277 // new since 1.2.11
1279 
1282  virtual QCString trReferences()
1283  {
1284  return "را استفاده ميکند ";
1285  }
1286 
1288 // new since 1.2.13
1290 
1294  virtual QCString trImplementedFromList(int numEntries)
1295  {
1296  return "را تکميل می کند "+trWriteList(numEntries)+".";
1297  }
1298 
1302  virtual QCString trImplementedInList(int numEntries)
1303  {
1304  return ".تکميل شده است "+trWriteList(numEntries)+" در";
1305  }
1306 
1308 // new since 1.2.16
1310 
1314  virtual QCString trRTFTableOfContents()
1315  {
1316  return "فهرست";
1317  }
1318 
1320 // new since 1.2.17
1322 
1326  virtual QCString trDeprecatedList()
1327  {
1328  return "لیست آیتم های از رده خارج";
1329  }
1330 
1332 // new since 1.2.18
1334 
1338  virtual QCString trEvents()
1339  {
1340  return "رویداد ها";
1341  }
1343  virtual QCString trEventDocumentation()
1344  {
1345  return "مستندات رویداد";
1346  }
1347 
1349 // new since 1.3
1351 
1354  virtual QCString trPackageTypes()
1355  {
1356  return "انواع بسته ها";
1357  }
1361  virtual QCString trPackageMembers()
1362  {
1363  return "توابع بسته ها";
1364  }
1368  virtual QCString trStaticPackageMembers()
1369  {
1370  return "Static Package Functions";
1371  }
1375  virtual QCString trPackageAttribs()
1376  {
1377  return "خواص بسته ها";
1378  }
1382  virtual QCString trStaticPackageAttribs()
1383  {
1384  return "Static Package Attributes";
1385  }
1386 
1388 // new since 1.3.1
1390 
1394  virtual QCString trAll()
1395  {
1396  return "همه";
1397  }
1399  virtual QCString trCallGraph()
1400  {
1401  return "نمودار صدا زدن برای این تابع :";
1402  }
1403 
1405 // new since 1.3.3
1407 
1411  virtual QCString trSearchResultsTitle()
1412  {
1413  return "نتايج جستجو";
1414  }
1423  virtual QCString trSearchResults(int numDocuments)
1424  {
1425  if (numDocuments==0)
1426  {
1427  return "متاسفانه هیچ صفحه ای برای جستجو ی شما یافت نشد.";
1428  }
1429  else if (numDocuments==1)
1430  {
1431  return "یک سند برای این مورد یافت شد.";
1432  }
1433  else
1434  {
1435  return "Found <b>$num</b> documents matching your query. "
1436  "Showing best matches first.";
1437  }
1438  }
1442  virtual QCString trSearchMatches()
1443  {
1444  return "Matches:";
1445  }
1446 
1448 // new since 1.3.8
1450 
1453  virtual QCString trSourceFile(QCString& filename)
1454  {
1455  return filename + " کد و پرونده منبع";
1456  }
1457 
1459 // new since 1.3.9
1461 
1465  virtual QCString trDirIndex()
1466  { return "ساختار و سلسله مراتب شاخه ها"; }
1467 
1471  virtual QCString trDirDocumentation()
1472  { return "مستندات دايرکتوری"; }
1473 
1477  virtual QCString trDirectories()
1478  { return "شاخه ها"; }
1479 
1483  virtual QCString trDirDescription()
1484  { return "در ذيل ساختار شاخه ها و دايرکتوری ها را نسبتا مرتب شده می بينيد :";
1485  }
1486 
1490  virtual QCString trDirReference(const char *dirName)
1491  { QCString result=dirName; result+=" مرجع شاخه ی"; return result; }
1492 
1496  virtual QCString trDir(bool /*first_capital*/, bool singular)
1497  {
1498  QCString result("شاخه");
1499  if (singular) result+=" ها "+result;
1500  return result;
1501  }
1502 
1504 // new since 1.4.1
1506 
1510  virtual QCString trOverloadText()
1511  {
1512  return "This is an overloaded member function, "
1513  "provided for convenience. It differs from the above "
1514  "function only in what argument(s) it accepts.";
1515  }
1516 
1518 // new since 1.4.6
1520 
1522  virtual QCString trCallerGraph()
1523  {
1524  return "نمودار صدا زننده های این تابع:";
1525  }
1527 // new since 1.5.4 (mainly for Fortran)
1529 
1532  { return "مستندات توابع عضو"; }
1533 
1535  virtual QCString trCompoundListFortran()
1536  { return "لیست ساختار های داده"; }
1537 
1539  virtual QCString trCompoundMembersFortran()
1540  { return "فیلدهای اطلاعات"; }
1541 
1544  { return "ساختارهای داده به همراه توضیح کوتاه :"; }
1545 
1548  {
1549  return "توضیحات اعضا ساختارها به همراه مستندات ساختار داده ی مربوطه";
1550  }
1551 
1555  virtual QCString trCompoundIndexFortran()
1556  { return "Data Type Index"; }
1557 
1561  virtual QCString trTypeDocumentation()
1562  { return "Data Type Documentation"; }
1563 
1567  virtual QCString trSubprograms()
1568  { return "توابع و زیربرنامه ها"; }
1569 
1573  virtual QCString trSubprogramDocumentation()
1574  { return "مستندات توابع و زیربرنامه ها"; }
1575 
1579  virtual QCString trDataTypes()
1580  { return "ساختار های داده"; }
1581 
1583  virtual QCString trModulesList()
1584  { return "لیست ماژول ها"; }
1585 
1587  virtual QCString trModulesListDescription(bool)
1588  {
1589  QCString result="لیست ماژول ها به همراه توضیحات کوتاه";
1590  return result;
1591  }
1592 
1594  virtual QCString trCompoundReferenceFortran(const char *clName,
1595  ClassDef::CompoundType compType,
1596  bool isTemplate)
1597  {
1598  QCString result=(QCString)clName;
1599  switch(compType)
1600  {
1601  case ClassDef::Class: result+=" Module"; break;
1602  case ClassDef::Struct: result+=" Type"; break;
1603  case ClassDef::Union: result+=" Union"; break;
1604  case ClassDef::Interface: result+=" Interface"; break;
1605  case ClassDef::Protocol: result+=" Protocol"; break;
1606  case ClassDef::Category: result+=" Category"; break;
1607  case ClassDef::Exception: result+=" Exception"; break;
1608  default: break;
1609  }
1610  if (isTemplate) result+=" Template";
1611  result+=" Reference";
1612  return result;
1613  }
1615  virtual QCString trModuleReference(const char *namespaceName)
1616  {
1617  QCString result=namespaceName;
1618  result+=" Module Reference";
1619  return result;
1620  }
1621 
1623  virtual QCString trModulesMembers()
1624  { return "اعضاء ماژول"; }
1625 
1627  virtual QCString trModulesMemberDescription(bool)
1628  {
1629  QCString result="لیست اعضاء ماژول ها به همراه مستندات ماژول مربوطه";
1630  return result;
1631  }
1632 
1636  virtual QCString trModulesIndex()
1637  { return "Modules Index"; }
1638 
1643  virtual QCString trModule(bool, bool singular)
1644  {
1645  QCString result("ماژول");
1646  if (!singular) result+=" ها";
1647  return result;
1648  }
1653  bool single)
1654  { // here s is one of " Module", " Struct" or " Union"
1655  // single is true implies a single file
1656  QCString result=(QCString)"The documentation for this ";
1657  switch(compType)
1658  {
1659  case ClassDef::Class: result+="module"; break;
1660  case ClassDef::Struct: result+="type"; break;
1661  case ClassDef::Union: result+="union"; break;
1662  case ClassDef::Interface: result+="interface"; break;
1663  case ClassDef::Protocol: result+="protocol"; break;
1664  case ClassDef::Category: result+="category"; break;
1665  case ClassDef::Exception: result+="exception"; break;
1666  default: break;
1667  }
1668  result+=" was generated from the following file";
1669  if (single) result+=":"; else result+="s:";
1670  return result;
1671  }
1676  virtual QCString trType(bool first_capital, bool singular)
1677  {
1678  QCString result((first_capital ? "Type" : "type"));
1679  if (!singular) result+="s";
1680  return result;
1681  }
1686  virtual QCString trSubprogram(bool, bool singular)
1687  {
1688  QCString result("زیربرنامه");
1689  if (!singular) result+=" ها ";
1690  return result;
1691  }
1692 
1694  virtual QCString trTypeConstraints()
1695  {
1696  return "Type Constraints";
1697  }
1698 
1700 // new since 1.6.0 (mainly for the new search engine)
1702 
1704  virtual QCString trDirRelation(const char *name)
1705  {
1706  return QCString(name) + " Relation";
1707  }
1708 
1710  virtual QCString trLoading()
1711  {
1712  return "در حال بارگذاری...";
1713  }
1714 
1716  virtual QCString trGlobalNamespace()
1717  {
1718  return "فضای نام جهانی";
1719  }
1720 
1722  virtual QCString trSearching()
1723  {
1724  return "در حال جستجو...";
1725  }
1726 
1728  virtual QCString trNoMatches()
1729  {
1730  return "یافت نشد";
1731  }
1732 
1734 // new since 1.6.3 (missing items for the directory pages)
1736 
1741  virtual QCString trFileIn(const char *name)
1742  {
1743  return (QCString)"پرونده ای در "+name;
1744  }
1745 
1750  virtual QCString trIncludesFileIn(const char *name)
1751  {
1752  return (QCString)"Includes file in "+name;
1753  }
1754 
1765  virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
1766  int hour,int minutes,int seconds,
1767  bool includeTime)
1768  {
1769  static const char *days[] = { "دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه","یکشنبه" };
1770  static const char *months[] = { "ژانویه","فوریه","مارس","آوریل","می","جون","جولای","آگوست","سپتامبر","اکتبر","نوامبر","دسامبر" };
1771  QCString sdate;
1772  sdate.sprintf("%s %d %s %d",days[dayOfWeek-1],day,months[month-1],year);
1773  if (includeTime)
1774  {
1775  QCString stime;
1776  stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
1777  sdate+=stime;
1778  }
1779  return convertDigitsToFarsi(sdate);
1780  }
1781 
1782 };
1783 
1784 #endif