translator_ru.h

Go to the documentation of this file.
00001 /******************************************************************************
00002  *
00003  * 
00004  *
00005  * Copyright (C) 1997-2008 by Dimitri van Heesch.
00006  *
00007  * Permission to use, copy, modify, and distribute this software and its
00008  * documentation under the terms of the GNU General Public License is hereby 
00009  * granted. No representations are made about the suitability of this software 
00010  * for any purpose. It is provided "as is" without express or implied warranty.
00011  * See the GNU General Public License for more details.
00012  *
00013  * Documents produced by Doxygen are derivative works derived from the
00014  * input used in their production; they are not affected by this license.
00015  */
00016 
00017 /*
00018  *
00019  * Nickolay Semyonov
00020  * Andrey V. Stolyarov released Feb 14, 2001
00021  * Alexandr V. Chelpanov <cav@cryptopro.ru> released Sep 25, 2004
00022  *
00023  * При переводе заголовков слова list и documentation убраны.
00024  *
00025  * Modules переведено как группы, так как модули чаще всего в русском 
00026  *  переводе встречается в контексте модуля как единицы трансляции, файла
00027  *  и др., что в данном случае не совсем подходит, тем более что 
00028  *  соответствующая команда в doxygen именуется \group.
00029  * 
00030  * Просьба не оптимизировать decode обрамляя результат, это может привести
00031  *  к перекодировке входа в том числе русских имен файлов.
00032  *
00033  * Отдано предпочтение при переводе related functions - "относящиеся к классу
00034  *  функции", а не "связанные функции", что верно до тех пор пока есть только
00035  *  related to class, и нет related to template, package и т.д. Последнее
00036  *  замечание касается большинства member.
00037  *
00038  * По возможности при переводе members указывается членом чего этот member
00039  *  является. 
00040  *
00041  * Compounds переведено как классы, см Строустрап.
00042  *
00043  * Определения помеченные ?? являются спорными.
00044  *
00045  * Благодарности: Vitaly A. Repin <vitaly@radio.hop.stu.neva.ru>,
00046  *    Михаил Глушенков <bbman@mail.ru>
00047  */
00048 
00049 #ifndef TRANSLATOR_RU_H
00050 #define TRANSLATOR_RU_H
00051 
00052 class TranslatorRussian : public TranslatorAdapter_1_5_4
00053 {
00054   private:
00058     inline QCString decode(const QCString & sInput)
00059     { 
00060       //if (Config_getBool("USE_WINDOWS_ENCODING"))
00061       //{
00062       //  return Koi8RToWindows1251(sInput);
00063       //}
00064       //else
00065       //{
00066         return sInput;
00067       //}
00068     }
00069 
00070   public:
00072     virtual QCString idLanguage()
00073     { return "russian"; }
00074 
00075     /* Used to get the command(s) for the language support. */
00076     virtual QCString latexLanguageSupportCommand()
00077     {
00078       //if (Config_getBool("USE_WINDOWS_ENCODING"))
00079       //{ 
00080       //  return "\\usepackage[cp1251]{inputenc}\n\\usepackage[russian]{babel}\n"; 
00081       //}
00082       //else
00083       //{ 
00084         return "\\usepackage[T2A]{fontenc}\n\\usepackage[russian]{babel}\n"; 
00085       //}
00086     }
00087 
00089     virtual QCString idLanguageCharset()
00090     {
00091       //if (Config_getBool("USE_WINDOWS_ENCODING"))
00092       //{ 
00093       //  return "Windows-1251"; 
00094       //}
00095       //else
00096       //{ 
00097         return "koi8-r"; 
00098       //}
00099     }
00100 
00101     // --- Language translation methods -------------------
00102 
00104     virtual QCString trRelatedFunctions()
00105     { return decode("Относящиеся к классу функции"); }
00106 
00108     virtual QCString trRelatedSubscript()
00109     { return decode("(не члены класса)"); }
00110 
00112     virtual QCString trDetailedDescription()
00113     { return decode("Подробное описание"); }
00114 
00116     virtual QCString trMemberTypedefDocumentation()
00117     { return decode("Определения типов"); }
00118 
00120     virtual QCString trMemberEnumerationDocumentation()
00121     { return decode("Перечисления"); }
00122 
00124     virtual QCString trMemberFunctionDocumentation()
00125     { return decode("Методы"); }
00126 
00128     virtual QCString trMemberDataDocumentation()
00129     {
00130       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00131       {
00132         return decode( "Поля" );
00133       }
00134       else
00135       {
00136         return decode( "Данные класса" );
00137       }
00138     }
00139 
00141     virtual QCString trMore()
00142     { return decode("Подробнее..."); }
00143 
00145     /* Dosn't use when optimization for C is on. */
00146     virtual QCString trListOfAllMembers()
00147     {
00148       return decode( "Полный список членов класса" );
00149     }
00150 
00152     /* Dosn't use when optimization for C is on. */
00153     virtual QCString trMemberList()
00154     {
00155       return decode( "Cписок членов класса" );
00156     }
00157 
00159     /* Dosn't use when optimization for C is on. */
00160     virtual QCString trThisIsTheListOfAllMembers()
00161     { return decode("Полный список членов класса "); }
00162 
00164     /* Dosn't use when optimization for C is on. */
00165     virtual QCString trIncludingInheritedMembers()
00166     { return decode(", включая наследуемые из базового класса"); }
00167 
00171     virtual QCString trGeneratedAutomatically(const char *s)
00172     { QCString result=decode("Автоматически создано Doxygen");
00173       if (s) result+=decode(" для ")+s;
00174       result+=decode(" из исходного текста."); 
00175       return result;
00176     }
00177 
00179     virtual QCString trEnumName()
00180     { return decode("перечисление"); }
00181 
00183     virtual QCString trEnumValue()
00184     { return decode("элементы перечисления"); }
00185 
00187     virtual QCString trDefinedIn()
00188     { return decode("определено в"); }
00189 
00190     // quick reference sections
00191 
00195     virtual QCString trModules()
00196     { return decode("Группы"); }
00197 
00199     virtual QCString trClassHierarchy()
00200     { return decode("Иерархия классов"); }
00201 
00203     virtual QCString trCompoundList()
00204     {
00205       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00206       {
00207         return decode( "Структуры данных" );
00208       }
00209       else
00210       {
00211         return decode( "Классы" );
00212       }
00213     }
00214 
00216     virtual QCString trFileList()
00217     { return decode("Файлы"); }
00218 
00220     virtual QCString trCompoundMembers()
00221     {
00222       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00223       {
00224         return decode( "Поля структур" );
00225       }
00226       else
00227       {
00228         return decode( "Члены классов" );
00229       }
00230     }
00231 
00233     /*??*/
00234     virtual QCString trFileMembers()
00235     {
00236       return decode( "Список членов всех файлов" );
00237     }
00238 
00240     virtual QCString trRelatedPages()
00241     /* ?? Вариант перевода "См. также: " более удачный, но не в заголовке,
00242      как в данном случае. */
00243     { return decode("Описания"); }
00244 
00246     virtual QCString trExamples()
00247     { return decode("Примеры"); }
00248 
00250     virtual QCString trSearch()
00251     { return decode("Поиск"); }
00252 
00254     virtual QCString trClassHierarchyDescription()
00255     { return decode("Иерархия классов."); }
00256 
00258     virtual QCString trFileListDescription(bool extractAll)
00259     {
00260       QCString result="Полный список ";
00261       if (!extractAll) result+="документированных ";
00262       result+="файлов.";
00263       return decode(result);
00264     }
00265 
00267     virtual QCString trCompoundListDescription()
00268     {
00269       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00270       {
00271         return decode( "Структуры данных с их кратким описанием." );
00272       }
00273       else
00274       {
00275         return decode( "Классы с их кратким описанием." );
00276       }
00277     }
00278 
00280     virtual QCString trCompoundMembersDescription(bool extractAll)
00281     {
00282         QCString result="Список всех ";
00283         if(!extractAll) result+="документированных ";
00284         if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00285           result+="членов структур данных со ссылками на ";
00286         else
00287           result+="членов классов со ссылками на ";
00288         if(!extractAll)
00289         {
00290           if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00291             result+="документацию по структуре для каждого члена.";
00292           else
00293             result+="документацию по классу для каждого члена.";
00294         }
00295         else
00296         {
00297           if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00298             result += "структуры";
00299           else
00300             result += "классы";
00301           result+=", к которым они принадлежат.";
00302         }
00303         return decode( result );
00304     }
00305 
00307     virtual QCString trFileMembersDescription(bool extractAll)
00308     {
00309       QCString result="Список всех ";
00310       if (!extractAll) result+="документированных ";
00311 
00312       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00313       {
00314         result+="функций, переменных, макроопределений, "
00315                 "перечислений и определений типов";
00316       }
00317       else
00318       {
00319         result+="членов файлов ";
00320       }
00321       result+=" со ссылками на ";
00322       if (extractAll)
00323         result+="файлы, к которым они принадлежат.";
00324       else
00325         result+="документацию.";
00326       return decode( result );
00327     }
00328 
00330     virtual QCString trExamplesDescription()
00331     { return decode("Полный список примеров."); }
00332 
00334     virtual QCString trRelatedPagesDescription()
00335     { return decode("Полный список дополнительных описаний."); }
00336 
00338     virtual QCString trModulesDescription()
00339     { return decode("Полный список групп."); }
00340 
00341     // index titles (the project name is prepended for these) 
00342 
00343 
00345     virtual QCString trDocumentation()
00346     { return decode("Документация"); }
00347 
00351     virtual QCString trModuleIndex()
00352     { return decode("Алфавитный указатель групп"); }
00353 
00357     virtual QCString trHierarchicalIndex()
00358     { return decode("Иерархический список классов"); }
00359 
00363     virtual QCString trCompoundIndex()
00364     {
00365       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00366       {
00367         return decode( "Алфавитный указатель структур данных" );
00368       }
00369       else
00370       {
00371         return decode( "Алфавитный указатель классов" );
00372       }
00373     }
00374 
00378     virtual QCString trFileIndex()
00379     { return decode( "Список файлов" ); }
00380 
00384     virtual QCString trModuleDocumentation()
00385     { return decode("Группы"); }
00386 
00390     virtual QCString trClassDocumentation()
00391     {
00392       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00393       {
00394         return decode( "Структуры данных" );
00395       }
00396       else
00397       {
00398         return decode( "Классы" );
00399       }
00400     }
00401 
00405     virtual QCString trFileDocumentation()
00406     { return decode("Файлы"); }
00407 
00411     virtual QCString trExampleDocumentation()
00412     { return decode("Примеры"); }
00413 
00417     virtual QCString trPageDocumentation()
00418     { return decode("Тематические описания"); }
00419 
00421     virtual QCString trReferenceManual()
00422     { return decode("Оглавление"); }
00423 
00427     virtual QCString trDefines()
00428     { return decode("Макросы"); }
00429 
00433     virtual QCString trFuncProtos()
00434     { return decode("Прототипы функций"); }
00435 
00439     virtual QCString trTypedefs()
00440     { return decode("Определения типов"); }
00441 
00445     virtual QCString trEnumerations()
00446     { return decode("Перечисления"); }
00447 
00451     virtual QCString trFunctions()
00452     { return decode("Функции"); }
00453 
00457     virtual QCString trVariables()
00458     { return decode("Переменные"); }
00459 
00463     virtual QCString trEnumerationValues()
00464     { return decode("Элементы перечислений"); }
00465 
00469     virtual QCString trDefineDocumentation()
00470     { return decode("Макросы"); }
00471 
00475     virtual QCString trFunctionPrototypeDocumentation()
00476     { return decode("Прототипы функций"); }
00477 
00481     virtual QCString trTypedefDocumentation()
00482     { return decode("Типы"); }
00483 
00487     virtual QCString trEnumerationTypeDocumentation()
00488     { return decode("Перечисления"); }
00489 
00493     virtual QCString trFunctionDocumentation()
00494     { return decode("Функции"); }
00495 
00499     virtual QCString trVariableDocumentation()
00500     { return decode("Переменные"); }
00501 
00505     virtual QCString trCompounds()
00506     {
00507       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00508       {
00509         return decode( "Структуры данных" );
00510       }
00511       else
00512       { 
00513         return decode( "Классы" );
00514       }
00515 
00516     }
00517 
00524     virtual QCString trGeneratedAt(const char *date,const char *projName)
00525     { 
00526       QCString result=decode("Документация ");
00527       if (projName) result+=decode("по ")+projName;
00528       result+=decode(". Последние изменения: ")+date;
00529       result+=decode(". Создано системой");
00530       return result;
00531     }
00534     virtual QCString trWrittenBy()
00535     {
00536       return decode("Автор:");
00537     }
00538 
00540     virtual QCString trClassDiagram(const char *clName)
00541     {
00542       return decode("Граф наследования:")+clName+":";
00543     }
00544 
00546     virtual QCString trForInternalUseOnly()
00547     { return decode("Только для внутреннего использования"); }
00548 
00550     virtual QCString trWarning()
00551     { return decode("Предупреждения"); }
00552 
00554     virtual QCString trVersion()
00555     { return decode("Версия"); }
00556 
00558     virtual QCString trDate()
00559     { return decode("Дата"); }
00560 
00562     virtual QCString trReturns()
00563     { return decode("Возвращает"); }
00564 
00566     virtual QCString trSeeAlso()
00567     { return decode("См. также"); }
00568 
00570     virtual QCString trParameters()
00571     { return decode("Аргументы"); }
00572 
00574     virtual QCString trExceptions()
00575     { return decode("Исключения"); }
00576 
00578     virtual QCString trGeneratedBy()
00579     { return decode("Создано системой"); }
00580     
00582 // new since 0.49-990307 
00584     
00586     virtual QCString trNamespaceList()
00587     { return decode("Пространства имен"); }
00588 
00590     virtual QCString trNamespaceListDescription(bool extractAll)
00591     {
00592       QCString result="Полный список ";
00593       if (!extractAll) result+="документированных ";
00594       result+="пространств имен.";
00595       return decode(result);
00596     }
00597 
00601     virtual QCString trFriends()
00602     { return decode("Друзья"); }
00603 
00605 // new since 0.49-990405
00607     
00611     virtual QCString trRelatedFunctionDocumentation()
00612     { return decode("Документация по друзьям класса и функциям, отноносящимся"
00613         " к классу"); }
00614     
00616 // new since 0.49-990425
00618 
00620     virtual QCString trCompoundReference(const char *clName,
00621                                  ClassDef::CompoundType compType,
00622                                  bool isTemplate)
00623     {
00624       QCString result;
00625       if (isTemplate) 
00626       {
00627         result="Шаблон ";
00628         switch(compType)
00629         {
00630           case ClassDef::Class:  result+="класса"; break;
00631           case ClassDef::Struct: result+="структуры"; break;
00632           case ClassDef::Union:  result+="объединения"; break;
00633           case ClassDef::Interface:  result+="интерфейса"; break;
00634           case ClassDef::Protocol:   result+="protocol"; break; // translate me!
00635           case ClassDef::Category:   result+="category"; break; // translate me!
00636           case ClassDef::Exception:  result+="исключения"; break;
00637         }
00638       }
00639       else
00640       {
00641         switch(compType)
00642         {
00643           case ClassDef::Class:  result+="Класс"; break;
00644           case ClassDef::Struct: result+="Структура"; break;
00645           case ClassDef::Union:  result+="Объединение"; break;
00646           case ClassDef::Interface:  result+="Интерфейс"; break;
00647           case ClassDef::Protocol:   result+="protocol"; break; // translate me!
00648           case ClassDef::Category:   result+="category"; break; // translate me!
00649           case ClassDef::Exception:  result+="Исключение"; break;
00650         }
00651       }
00652       result+=" ";
00653       return decode(result)+clName;
00654     }
00655 
00657     virtual QCString trFileReference(const char *fileName)
00658     {
00659       return decode("Файл ")+fileName;
00660     }
00661 
00663     virtual QCString trNamespaceReference(const char *namespaceName)
00664     {
00665       return decode("Пространство имен ")+namespaceName;
00666     }
00667     
00668     virtual QCString trPublicMembers()
00669     { return decode("Открытые члены"); }
00670     virtual QCString trPublicSlots()
00671     { return decode("Открытые слоты"); }
00672     virtual QCString trSignals()
00673     { return decode("Сигналы"); }
00674     virtual QCString trStaticPublicMembers()
00675     { return decode("Открытые статические члены"); }
00676     virtual QCString trProtectedMembers()
00677     { return decode("Защищенные члены"); }
00678     virtual QCString trProtectedSlots()
00679     { return decode("Защищенные слоты"); }
00680     virtual QCString trStaticProtectedMembers()
00681     { return decode("Защищенные статические члены"); }
00682     virtual QCString trPrivateMembers()
00683     { return decode("Закрытые члены"); }
00684     virtual QCString trPrivateSlots()
00685     { return decode("Закрытые слоты"); }
00686     virtual QCString trStaticPrivateMembers()
00687     { return decode("Закрытые статические члены"); }
00688     
00692     virtual QCString trWriteList(int numEntries)
00693     {
00694       QCString result;
00695       int i;
00696       // the inherits list contain `numEntries' classes
00697       for (i=0;i<numEntries;i++) 
00698       {
00699         // use generateMarker to generate placeholders for the class links!
00700         result+=generateMarker(i); // generate marker for entry i in the list 
00701                                    // (order is left to right)
00702         
00703         if (i!=numEntries-1)  // not the last entry, so we need a separator
00704         {
00705           if (i<numEntries-2) // not the fore last entry 
00706             result+=", ";
00707           else                // the fore last entry
00708             result+=decode( " и " );
00709         }
00710       }
00711       return result; 
00712     }
00713     
00717     virtual QCString trInheritsList(int numEntries)
00718     {
00719       return decode("Базовые классы:")+trWriteList(numEntries)+".";
00720     }
00721 
00725     virtual QCString trInheritedByList(int numEntries)
00726     {
00727       return decode("Производные классы:")+trWriteList(numEntries)+".";
00728     }
00729 
00733     virtual QCString trReimplementedFromList(int numEntries)
00734     {
00735       QCString result="Переопределяет метод";
00736       if(numEntries>1)
00737         result+="ы предков";
00738       else
00739         result+=" предка";
00740       return decode(result+" ")+trWriteList(numEntries)+".";
00741     }
00742 
00746     virtual QCString trReimplementedInList(int numEntries)
00747     {
00748       return decode("Переопределяется в ")+trWriteList(numEntries)+".";
00749     }
00750 
00752     virtual QCString trNamespaceMembers()
00753     { return decode("Члены пространств имен"); }
00754 
00756     virtual QCString trNamespaceMemberDescription(bool extractAll)
00757     {
00758       QCString result="Полный список ";
00759       if (!extractAll) result+="документированных ";
00760       result+="членов простанств имен.";
00761       return decode(result);
00762     }
00763 
00767     virtual QCString trNamespaceIndex()
00768     { return decode("Алфавитный указатель пространств имен"); }
00769 
00773     virtual QCString trNamespaceDocumentation()
00774     { return decode("Пространства имен"); }
00775 
00777 // new since 0.49-990522
00779 
00783     virtual QCString trNamespaces()
00784     { return decode( "Пространства имен" ); }
00785 
00787 // new since 0.49-990728
00789 
00793     virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
00794         bool single)
00795     { // here s is one of " Class", " Struct" or " Union"
00796       // single is true implies a single file
00797       QCString result=(QCString)"Объявления и описания членов ";
00798       switch(compType)
00799       {
00800         case ClassDef::Class:      result+="класс"; 
00801           if (single) result+='а'; else result+="ов";
00802           break;
00803         case ClassDef::Struct:     result+="структур"; 
00804           if (single) result+='ы';
00805           break;
00806         case ClassDef::Union:      result+="объединени";
00807           if (single) result+='я'; else result+='й';
00808           break;
00809         case ClassDef::Interface:  result+="интерфейс";
00810           if (single) result+='а'; else result+="ов";
00811           break;
00812         case ClassDef::Protocol:  result+="Protocol"; // translate me!
00813           break;
00814         case ClassDef::Category:  result+="Category"; // translate me!
00815           break;
00816         case ClassDef::Exception:  result+="исключени";
00817           if (single) result+='я'; else result+='й';
00818           break;
00819       }
00820       result+=" находятся в файл";
00821       if (single) result+="е:"; else result+="ах:";
00822       return decode(result);
00823     }
00824 
00828     virtual QCString trAlphabeticalList()
00829     { return decode("Алфавитный указатель"); }
00830 
00832 // new since 0.49-990901
00834 
00836     virtual QCString trReturnValues()
00837     { return decode("Возвращаемые значения"); }
00838 
00841     virtual QCString trMainPage()
00842     { return decode("Титульная страница"); }
00843 
00847     virtual QCString trPageAbbreviation()
00848     { return decode("стр."); }
00849 
00851 // new since 0.49-991106
00853 
00854     virtual QCString trDefinedAtLineInSourceFile()
00855     {
00856       return decode("См. определение в файле @1 строка @0");
00857     }
00858     virtual QCString trDefinedInSourceFile()
00859     {
00860       return decode("См. определение в файле @0");
00861     }
00862 
00864 // new since 0.49-991205
00866 
00867     virtual QCString trDeprecated()
00868     {
00869       return decode("Уст.");
00870     }
00871 
00873 // new since 1.0.0
00875 
00877     virtual QCString trCollaborationDiagram(const char *clName)
00878     {
00879       return (QCString)decode("Граф связей класса ")+clName+":";
00880     }
00882     virtual QCString trInclDepGraph(const char *fName)
00883     {
00884       return decode("Граф включаемых заголовочных файлов для ")+fName+":";
00885     }
00887     virtual QCString trConstructorDocumentation()
00888     {
00889       return decode("Конструктор(ы)"); 
00890     }
00892     virtual QCString trGotoSourceCode()
00893     {
00894       return decode("См. исходные тексты.");
00895     }
00897     virtual QCString trGotoDocumentation()
00898     {
00899       return decode("См. документацию.");
00900     }
00902     virtual QCString trPrecondition()
00903     {
00904       return decode("Предусловие");
00905     }
00907     virtual QCString trPostcondition()
00908     {
00909       return decode("Постусловие");
00910     }
00912     virtual QCString trInvariant()
00913     {
00914       return decode("Инвариант");
00915     }
00917     virtual QCString trInitialValue()
00918     {
00919       return decode("Инициализатор");
00920     }
00922     virtual QCString trCode()
00923     {
00924       return decode("Исходные тексты");
00925     }
00926     virtual QCString trGraphicalHierarchy()
00927     {
00928       return decode("Иерархия классов. Графический вид.");
00929     }
00930     virtual QCString trGotoGraphicalHierarchy()
00931     {
00932       return decode("см. графический вид.");
00933     }
00934     virtual QCString trGotoTextualHierarchy()
00935     {
00936       return decode("см. текстовый вид.");
00937     }
00938     virtual QCString trPageIndex()
00939     {
00940       return decode("Алфавитный указатель тематических описаний");
00941     }
00942 
00944 // new since 1.1.0
00946     
00947     virtual QCString trNote()
00948     {
00949       return decode("Заметки");
00950     }
00951     virtual QCString trPublicTypes()
00952     {
00953       return decode("Открытые типы");
00954     }
00955     virtual QCString trPublicAttribs()
00956     {
00957       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
00958       {
00959         return decode( "Поля данных" );
00960       }
00961       else
00962       {
00963         return decode( "Открытые атрибуты" );
00964       }
00965     }
00966     virtual QCString trStaticPublicAttribs()
00967     {
00968       return decode("Статические открытые данные");
00969     }
00970     virtual QCString trProtectedTypes()
00971     {
00972       return decode("Защищенные типы");
00973     }
00974     virtual QCString trProtectedAttribs()
00975     {
00976       return decode("Защищенные данные");
00977     }
00978     virtual QCString trStaticProtectedAttribs()
00979     {
00980       return decode("Статические защищенные данные");
00981     }
00982     virtual QCString trPrivateTypes()
00983     {
00984       return decode("Закрытые типы");
00985     }
00986     virtual QCString trPrivateAttribs()
00987     {
00988       return decode("Закрытые данные");
00989     }
00990     virtual QCString trStaticPrivateAttribs()
00991     {
00992       return decode("Закрытые статические данные");
00993     }
00994 
00995 
00997 // new since 1.1.3
00999 
01001     virtual QCString trTodo()
01002     /*??*/
01003     {
01004       return decode("Необходимо сделать");
01005     }
01007     virtual QCString trTodoList()
01008     /*??*/
01009     {
01010       return decode("Список задач");
01011     }
01012 
01014 // new since 1.1.4
01016 
01017     virtual QCString trReferencedBy()
01018     {
01019       return decode("Используется в");
01020     }
01021     virtual QCString trRemarks()
01022     {
01023       return decode("Прим.");
01024     }
01025     virtual QCString trAttention()
01026     {
01027       return decode("Внимание");
01028     }
01029     virtual QCString trInclByDepGraph()
01030     {
01031       return decode("Граф файлов, в которые включается этот файл:");
01032     }
01033     virtual QCString trSince()
01034     /*??*/
01035     {
01036       return decode("Начиная с");
01037     }
01038     
01040 // new since 1.1.5
01042 
01044     virtual QCString trLegendTitle()
01045     {
01046       return decode("Легенда");
01047     }
01049     virtual QCString trLegendDocs()
01050     {
01051       return decode( 
01052         "Обозначения, используемые в графах.<p>\n"
01053         "Рассмотрим следующий пример:\n"
01054         "\\code\n"
01055         "/*! Невидимый класс из-за усечения */\n"
01056         "class Invisible { };\n\n"
01057         "/*! Усеченный класс, отношение наследования скрыто */\n"
01058         "class Truncated : public Invisible { };\n\n"
01059         "/* Недокументированный класс */\n"
01060         "class Undocumented { };\n\n"
01061         "/*! Открытое наследование */\n"
01062         "class PublicBase : public Truncated { };\n\n"
01063         "/*! Шаблон класса */\n"
01064         "template<class T> class Templ {};\n\n"
01065         "/*! Защищенное наследование */\n"
01066         "class ProtectedBase { };\n\n"
01067         "/*! Закрытое наследование */\n"
01068         "class PrivateBase { };\n\n"
01069         "/*! Класс, используемый классом Inherited */\n"
01070         "class Used { };\n\n"
01071         "/*! Класс, порожденный от других классов */\n"
01072         "class Inherited : public PublicBase,\n"
01073         "                  protected ProtectedBase,\n"
01074         "                  private PrivateBase,\n"
01075         "                  public Undocumented,\n"
01076         "                  public Templ<int>\n"
01077         "{\n"
01078         "  private:\n"
01079         "    Used *m_usedClass;\n"
01080         "};\n"
01081         "\\endcode\n"
01082         "Если \\c MAX_DOT_GRAPH_HEIGHT в конфигурационном файле "
01083         "установлен в 240, получится следующий граф:"
01084         "<p><center><img src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center>\n"
01085         "<p>\n"
01086         "Прямоугольники в этом графе имеют следующее значение:\n"
01087         "<ul>\n"
01088         "<li>Заполненный черный прямоугольник представляет структуру или класс, "
01089         "для которого создан граф.\n"
01090         "<li>Прямоугольник с черной границей обозначает документированную структуру или класс.\n"
01091         "<li>Прямоугольник с серой границей обозначает недокументированную структуру или класс.\n"
01092         "<li>Прямоугольник с красной границей обозначает документированную структуру или класс, для которого\n"
01093         " не все отношения наследования/содержания показаны. Граф усечен, "
01094         "если он не поместился в указанных границах.\n"
01095         "</ul>\n"
01096         "Стрелки имеют следующее значение:\n"
01097         "<ul>\n"
01098         "<li>Темно-синяя стрелка используется для изображения отношения открытого наследования "
01099         "между двумя классами.\n"
01100         "<li>Темно-зеленая стрелка используется при защищенном наследовании.\n"
01101         "<li>Темно-красная стрелка используется при закрытом наследовании.\n"
01102         "<li>Фиолетовая стрелка используется, если класс содержится в"
01103         "другом класе или используется другим классом."
01104         "Со стрелкой указывается переменная, "
01105         "через которую доступен указываемый класс или структура. \n"
01106         "<li>Желтая стрелка используется для связи подстановки шаблона и "
01107         "шаблона, на основе которого эта подстановка выполнена. С шаблоном"
01108         "указывается параметр подстановки.\n"
01109         "</ul>\n");
01110     }
01112     virtual QCString trLegend()
01113     {
01114       return decode("см. легенду");
01115     }
01116 
01118 // new since 1.2.0
01120     
01122     virtual QCString trTest()
01123     {
01124       return decode("Тест");
01125     }
01127     virtual QCString trTestList()
01128     {
01129       return decode("Список тестов");
01130     }
01131 
01133 // new since 1.2.1
01135 
01137     virtual QCString trDCOPMethods()
01138     {
01139       return decode("DCOP Методы");
01140     }
01141 
01143 // new since 1.2.2
01145 
01147     virtual QCString trProperties()
01148     {
01149       return decode("Свойства");
01150     }
01152     virtual QCString trPropertyDocumentation()
01153     {
01154       return decode("Полный список свойств");
01155     }
01156 
01158 // new since 1.2.4
01160 
01162     virtual QCString trClasses()
01163     {
01164       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
01165       {
01166         return decode( "Структуры данных" );
01167       }
01168       else
01169       {
01170         return decode( "Классы" );
01171       }
01172     }
01174     virtual QCString trPackage(const char *name)
01175     {
01176       return decode("Пакет ")+name;
01177     }
01179     virtual QCString trPackageList()
01180     {
01181       return decode("Полный список пакетов ");
01182     }
01184     virtual QCString trPackageListDescription()
01185     {
01186       return decode("Полный список документированных пакетов.");
01187     }
01189     virtual QCString trPackages()
01190     {
01191       return decode("Пакеты");
01192     }
01194     virtual QCString trDefineValue()
01195     {
01196       return decode("Макроопределение:");
01197     }
01198 
01200 // new since 1.2.5
01202     
01204     virtual QCString trBug()
01205     {
01206       return decode("Ошибка");
01207     }
01209     virtual QCString trBugList()
01210     {
01211       return decode("Ошибки");
01212     }
01213 
01215 // new since 1.2.6
01217 
01218     virtual QCString trRTFansicp()
01219     {
01220       return "1251";
01221     }
01223     virtual QCString trRTFCharSet()
01224     {
01225       return "204";
01226     }
01228     virtual QCString trRTFGeneralIndex()
01229     {
01230       return decode("Алфавитный указатель");
01231     }
01232 
01237     virtual QCString trClass(bool first_capital, bool singular)
01238     { 
01239       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
01240       {
01241         QCString result((first_capital ? "Структуры данных" : "структуры данных"));
01242         return decode(result); 
01243       }
01244       else
01245       {
01246         QCString result((first_capital ? "Класс" : "класс"));
01247         if(!singular) result+="ы";
01248         return decode(result); 
01249       }
01250     }
01251 
01256     virtual QCString trFile(bool first_capital, bool singular)
01257     { 
01258       QCString result((first_capital ? "Файл" : "файл"));
01259       if (!singular)  result+="ы";
01260       return decode(result); 
01261     }
01262 
01267     virtual QCString trNamespace(bool first_capital, bool singular)
01268     { 
01269       QCString result((first_capital ? "Пространств" : "пространств"));
01270       result+=(singular?"о имен":"а имен");
01271       return decode(result); 
01272     }
01273 
01278     virtual QCString trGroup(bool first_capital, bool singular)
01279     { 
01280       QCString result((first_capital ? "Групп" : "групп"));
01281       result+=(singular ? "а" : "ы");
01282       return decode(result); 
01283     }
01284 
01289     virtual QCString trPage(bool first_capital, bool singular)
01290     { 
01291       QCString result((first_capital ? "Страниц" : "страниц"));
01292       result+=(singular ? "а" : "ы");
01293       return decode(result); 
01294     }
01295 
01300     virtual QCString trMember(bool first_capital, bool singular)
01301     { 
01302       QCString result((first_capital ? "Член" : "член"));
01303       if (!singular)  result+="ы";
01304       return decode(result); 
01305     }
01306    
01311     virtual QCString trGlobal(bool first_capital, bool singular)
01312     { 
01313       QCString result((first_capital ? "Глобальны" : "глобальны"));
01314       result+=(singular ? "й" : "е");
01315       return decode(result); 
01316     }
01317 
01319 // new since 1.2.7
01321 
01324     virtual QCString trAuthor(bool first_capital, bool singular)
01325     {                                                                         
01326       QCString result((first_capital ? "Автор" : "автор"));
01327       if (!singular) result+="ы";
01328       return decode(result); 
01329     }
01330 
01332 // new since 1.2.11
01334 
01337     virtual QCString trReferences()
01338     {
01339       return decode("Перекрестные ссылки");
01340     }
01341 
01343 // new since 1.2.13
01345 
01349     virtual QCString trImplementedFromList(int numEntries)
01350     {
01351       return decode("Замещает ")+trWriteList(numEntries)+".";
01352     }
01353 
01357     virtual QCString trImplementedInList(int numEntries)
01358     {
01359       return decode("Замещается в ")+trWriteList(numEntries)+".";
01360     }
01361 
01363 // new since 1.2.16
01365 
01369     virtual QCString trRTFTableOfContents()
01370     {
01371       return decode("Оглавление");
01372     }
01373 
01375 // new since 1.2.17
01377 
01381     virtual QCString trDeprecatedList()
01382     {
01383       return decode( "Список устаревших определений и описаний" );
01384     }
01385 
01387 // new since 1.2.18
01389 
01393     virtual QCString trEvents()
01394     {
01395       return decode( "События" );
01396     }
01398     virtual QCString trEventDocumentation()
01399     {
01400       return decode( "Cобытия" );
01401     }
01402 
01404 // new since 1.3
01406 
01409     virtual QCString trPackageTypes()
01410     { 
01411       return decode( "Типы с областью видимости пакета" );
01412     }
01416     virtual QCString trPackageMembers()
01417     { 
01418       return decode( "Функции с областью видимости пакета" );
01419     }
01423     virtual QCString trStaticPackageMembers()
01424     { 
01425       return decode( "Статические функции с областью видимости пакета" );
01426     }
01430     virtual QCString trPackageAttribs()
01431     { 
01432       return decode( "Переменные с областью видимости пакета" );
01433     }
01437     virtual QCString trStaticPackageAttribs()
01438     { 
01439       return decode( "Статические переменные с областью видимости пакета" );
01440     }
01441     
01443 // new since 1.3.1
01445 
01449     virtual QCString trAll()
01450     {
01451       return decode( "Указатель" );
01452     }
01454     virtual QCString trCallGraph()
01455     {
01456       return decode( "Граф вызовов:" );
01457     }
01458 
01460 // new since 1.3.3
01462 
01467     virtual QCString trSearchForIndex()
01468     {
01469       return decode( "Поиск" );
01470     }
01474     virtual QCString trSearchResultsTitle()
01475     {
01476       return decode( "Результаты поиска" );
01477     }
01486     virtual QCString trSearchResults(int numDocuments)
01487     {
01488       if (numDocuments==0)
01489       {
01490         return decode( "К сожалению, по Вашему запросу ничего не найдено." );
01491       }
01492       else if( numDocuments == 1 )
01493       {
01494         return decode( "Найден 1 документ." );
01495       }
01496       else 
01497       {
01498         return decode( "Найден(о) <b>$num</b> документ(ов). "
01499           "Документы отсортированы по релевантности." );
01500       }
01501     }
01505     virtual QCString trSearchMatches()
01506     {
01507       return decode( "Найдено:" );
01508     }
01509 
01511 // new since 1.3.8
01513 
01516     virtual QCString trSourceFile(QCString& filename)
01517     {
01518       return decode( "Исходный файл " + filename );
01519     }
01520 
01522 // new since 1.3.9
01524 
01528     virtual QCString trDirIndex()
01529     { return decode( "Дерево директорий" ); }
01530 
01534     virtual QCString trDirDocumentation()
01535     { return decode( "Директории" ); }
01536 
01540     virtual QCString trDirectories()
01541     { return decode( "Алфавитный указатель директорий" ); }
01542 
01546     virtual QCString trDirDescription()
01547     { return decode( "Дерево директорий" ); }
01548 
01552     virtual QCString trDirReference(const char *dirName)
01553     { QCString result=QCString("Содержание директории ")+ dirName; return decode( result ); }
01554 
01558     virtual QCString trDir(bool first_capital, bool singular)
01559     { 
01560       QCString result((first_capital ? "Директори" : "директори"));
01561       if (singular) result+="я"; else result+="и";
01562       return decode( result ); 
01563     }
01564 
01566 // new since 1.4.1
01568 
01572     virtual QCString trOverloadText()
01573     {
01574        return decode( "Эта функция перегружена и предоставляется исключительно "
01575               "для удобства использования. Она отличается от вышеупомянутой "
01576               "только фактическими аргументами." );
01577     }
01578 
01580 // new since 1.4.6
01582 
01584     virtual QCString trCallerGraph()
01585     {
01586       return decode( "Граф вызова функции:" );
01587     }
01588 
01592     virtual QCString trEnumerationValueDocumentation()
01593     { return decode( "Элементы перечислений" ); }
01594 
01595 
01596 };
01597 
01598 #endif



Generated on Mon Mar 31 10:58:47 2008 by  doxygen 1.5.1