translator_cn.h 53.7 KB
Newer Older
1 2
/******************************************************************************
 *
3
 *
4
 *
Dimitri van Heesch's avatar
Dimitri van Heesch committed
5
 * Copyright (C) 1997-2013 by Dimitri van Heesch.
6 7
 *
 * Permission to use, copy, modify, and distribute this software and its
8 9
 * documentation under the terms of the GNU General Public License is hereby
 * granted. No representations are made about the suitability of this software
10 11 12 13 14 15 16 17 18 19 20 21
 * for any purpose. It is provided "as is" without express or implied warranty.
 * See the GNU General Public License for more details.
 *
 * Documents produced by Doxygen are derivative works derived from the
 * input used in their production; they are not affected by this license.
 *
 */

#ifndef TRANSLATOR_CN_H
#define TRANSLATOR_CN_H

/*!
22
   If you want insert a space whenever Chinese meets English characters, set
23 24
   CN_SPC to " ", else null.
*/
25
#define CN_SPC " "
26

27
class TranslatorChinese : public TranslatorAdapter_1_8_2
28 29
{
  public:
30 31 32
    /*! Used for identification of the language. The identification
     * should not be translated. It should be replaced by the name
     * of the language in English using lower-case characters only
33
     * (e.g. "czech", "japanese", "russian", etc.). It should be equal to
34 35
     * the identification used in the language.cpp.
     */
36

37
    virtual QCString idLanguage()
38
    { return "chinese"; }
39

40
    /*! Used to get the LaTeX command(s) for the language support.
41
     * This method should return string with commands that switch
42
     * LaTeX to the desired language.  For example
43 44 45 46 47 48 49
     * <pre>"\\usepackage[german]{babel}\n"
     * </pre>
     * or
     * <pre>"\\usepackage{polski}\n"
     * "\\usepackage[latin2]{inputenc}\n"
     * "\\usepackage[T1]{fontenc}\n"
     * </pre>
50
     *
51 52 53 54 55
     * The English LaTeX does not use such commands.  Because of this
     * the empty string is returned in this implementation.
     */
    virtual QCString latexLanguageSupportCommand()
    {
56
      return "";
57
    }
58

59
    /*! used in the compound documentation before a list of related functions.
60
     */
61
    virtual QCString trRelatedFunctions()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
62
    { return "相关函数"; }
63

64
    /*! subscript for the related functions. */
65
    virtual QCString trRelatedSubscript()
66
    { return "(请注意: 这些不是成员函数.)"; }
67

68 69
    /*! header that is put before the detailed description of files,
     * classes and namespaces.
70
     */
71
    virtual QCString trDetailedDescription()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
72
    { return "详细描述"; }
73

74
    /*! header that is put before the list of typedefs. */
75
    virtual QCString trMemberTypedefDocumentation()
76
    { return "成员类型定义说明"; }
77

78
    /*! header that is put before the list of enumerations. */
79
    virtual QCString trMemberEnumerationDocumentation()
80
    { return "成员枚举类型说明"; }
81

82
    /*! header that is put before the list of member function. */
83
    virtual QCString trMemberFunctionDocumentation()
84
    { return "成员函数说明"; }
85

86
    /*! header that is put before the list of member attributes. */
87
    virtual QCString trMemberDataDocumentation()
88
    {
89 90
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
      {
91
        return "结构体成员变量说明";
92 93 94
      }
      else
      {
95
        return "类成员变量说明";
96 97 98 99
      }
    }

    /*! this is the text of a link put after brief descriptions. */
100
    virtual QCString trMore()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
101
    { return "更多..."; }
102

103
    /*! put in the class documention */
104
    virtual QCString trListOfAllMembers()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
105
    { return "所有成员列表"; }
106

107
    /*! used as the title of the "list of all members" page of a class */
108
    virtual QCString trMemberList()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
109
    { return "成员列表"; }
110

111
    /*! this is the first part of a sentence that is followed by a class name */
112
    virtual QCString trThisIsTheListOfAllMembers()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
113
    { return "成员的完整列表,这些成员属于"CN_SPC; }
114

115
    /*! this is the remainder of the sentence after the class name */
116
    virtual QCString trIncludingInheritedMembers()
117
    { return ",包括所有继承而来的类成员"; }
118

119 120 121
    /*! this is put at the author sections at the bottom of man pages.
     *  parameter s is name of the project name.
     */
122
    virtual QCString trGeneratedAutomatically(const char *s)
123 124 125
    { QCString result;
      result = "由"CN_SPC"Doyxgen"CN_SPC"通过分析"CN_SPC;
      if (s) result += ((QCString)s+CN_SPC"的"CN_SPC);
126
      result+= "源代码自动生成.";
127 128
      return result;
    }
129

130
    /*! put after an enum name in the list of all members */
131
    virtual QCString trEnumName()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
132
    { return "枚举名称"; }
133

134
    /*! put after an enum value in the list of all members */
135
    virtual QCString trEnumValue()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
136
    { return "枚举值"; }
137

138
    /*! put after an undocumented member in the list of all members */
139
    virtual QCString trDefinedIn()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
140
    { return "定义于"CN_SPC; }
141

142
    // quick reference sections
143

144
    /*! This is put above each page as a link to the list of all groups of
145 146
     *  compounds or files (see the \\group command).
     */
147
    virtual QCString trModules()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
148
    { return "模块"; }
149

150 151
    /*! This is put above each page as a link to the class hierarchy */
     virtual QCString trClassHierarchy()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
152
    { return "类继承关系"; }
153

154 155
    /*! This is put above each page as a link to the list of annotated class */
     virtual QCString trCompoundList()
156
    {
157
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
158
        return "结构体";
159 160
      }
      else {
161
        return "类列表";
162 163 164 165
      }
    }

    /*! This is put above each page as a link to the list of documented files */
166
    virtual QCString trFileList()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
167
    { return "文件列表"; }
168

169
    /*! This is put above each page as a link to all members of compounds. */
170
    virtual QCString trCompoundMembers()
171 172 173
    {
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
        return "成员变量";
174 175
      }
      else {
176
        return "类成员";
177 178 179 180
      }
    }

    /*! This is put above each page as a link to all member of files. */
181
    virtual QCString trFileMembers()
182
    {
183
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
184
        return "全局定义";
185
      } else {
186
        return "文件成员";
187 188 189 190
      }
    }

    /*! This is put above each page as a link to all related pages. */
191
    virtual QCString trRelatedPages()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
192
    { return "相关页面"; }
193

194
    /*! This is put above each page as a link to all examples. */
195
    virtual QCString trExamples()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
196
    { return "示例"; }
197 198

    virtual QCString trSearch()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
199
    { return "搜索"; }
200 201

    virtual QCString trClassHierarchyDescription()
202
    { return "此继承关系列表按字典顺序粗略的排序:"CN_SPC; }
203 204

    virtual QCString trFileListDescription(bool extractAll)
205
    {
206
      QCString result="这里列出了所有";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
207
      if (!extractAll) result+="文档化的";
208
      result+="文件,并附带简要说明:";
209 210
      return result;
    }
211 212

    virtual QCString trCompoundListDescription()
213
    {
214 215
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
      {
216
        return "这里列出了所有结构体,并附带简要说明:";
217 218 219
      }
      else
      {
220
        return "这里列出了所有类、结构、联合以及接口定义等,并附带简要说明:";
221
      }
222
    }
223 224

    virtual QCString trCompoundMembersDescription(bool extractAll)
225
    {
226
      QCString result="这里列出了所有";
227
      if (!extractAll) {
228 229 230 231 232 233 234 235 236
        result+="文档化的";
      }
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
        result+="结构体和联合体的成员变量,并附带";
      }
      else {
        result+="类成员,并附带";
      }
      //result+=" with links to ";
237
      if (extractAll) {
238 239 240 241 242 243 244
        if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
          result+="结构体或联合的详细说明:";
        }
        else {
          result+="类的详细说明:";
        }
      }
245
      else {
246 247 248 249 250 251 252
        if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
          result+="结构或联合所属的文件:";
        }
        else {
          result+="类所属的文件:";
        }
      }
253 254
      return result;
    }
255 256

    virtual QCString trFileMembersDescription(bool extractAll)
257
    {
258
      QCString result="这里列出了所有";
259
      if (!extractAll)
260 261 262
        result +="文档化的";
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) {
        result +="函数,变量,宏,枚举和类型定义等,并附带";
263
      }
264 265 266
      else {
        result +="文件成员,并附带";
      }
267

268
      if (extractAll)
269
        result+="其所属的文件:";
270
      else
271
        result+="其详细说明:";
272 273
      return result;
    }
274 275

    virtual QCString trExamplesDescription()
276
    { return "这里列出了所有示例:"; }
277 278

    virtual QCString trRelatedPagesDescription()
279
    { return "这里列出了所有相关页面:"; }
280 281

    virtual QCString trModulesDescription()
282
    { return "这里列出了所有模块:"; }
283 284

    virtual QCString trDocumentation()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
285
    { return "文档"; }
286 287

    virtual QCString trModuleIndex()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
288
    { return "模块索引"; }
289 290

    virtual QCString trHierarchicalIndex()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
291
    { return "继承关系索引"; }
292 293

    virtual QCString trCompoundIndex()
294
    {
295 296
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
      {
297 298
        return "结构体索引";
      }
299
      else {
300
        return "类索引";
301 302
      }
    }
303

304
    virtual QCString trFileIndex()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
305
    { return "文件索引"; }
306 307

    virtual QCString trModuleDocumentation()
308
    { return "模块说明"; }
309 310

    virtual QCString trClassDocumentation()
311
    {
312 313 314 315 316
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
      {
        return "结构体说明";
      }
      else {
317
        return "类说明";
318 319
      }
    }
320 321

    virtual QCString trFileDocumentation()
322
    { return "文件说明"; }
323 324

    virtual QCString trExampleDocumentation()
325
    { return "示例说明"; }
326 327

    virtual QCString trPageDocumentation()
328
    { return "页面说明"; }
329 330

    virtual QCString trReferenceManual()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
331
    { return "参考手册"; }
332

333
    virtual QCString trDefines()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
334
    { return "宏定义"; }
335 336

    virtual QCString trTypedefs()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
337
    { return "类型定义"; }
338 339

    virtual QCString trEnumerations()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
340
    { return "枚举"; }
341 342

    virtual QCString trFunctions()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
343
    { return "函数"; }
344 345

    virtual QCString trVariables()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
346
    { return "变量"; }
347 348

    virtual QCString trEnumerationValues()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
349
    { return "枚举值"; }
350 351


352 353
    virtual QCString trDefineDocumentation()
    { return "宏定义说明"; }
354

355 356
    virtual QCString trTypedefDocumentation()
    { return "类型定义说明"; }
357

358 359
    virtual QCString trEnumerationTypeDocumentation()
    { return "枚举类型说明"; }
360

361 362
    virtual QCString trFunctionDocumentation()
    { return "函数说明"; }
363

364 365
    virtual QCString trVariableDocumentation()
    { return "变量说明"; }
366

367
    virtual QCString trCompounds()
368
    {
369
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
370
      {
371 372 373
        return "结构体";
      }
      else {
374
        return "类";
375 376 377 378 379 380 381
      }
    }

    virtual QCString trGeneratedAt(const char *date,const char *projName)
    { QCString result=(QCString)"生成于"CN_SPC+date;
      if (projName) result+=(QCString)CN_SPC", 为"CN_SPC+projName;
      result+=(QCString)"使用"CN_SPC;
382 383
      return result;
    }
384

385
    virtual QCString trClassDiagram(const char *clName)
386
    {
387
      return (QCString)"类"CN_SPC+clName+CN_SPC"继承关系图:";
388
    }
389

390 391
     virtual QCString trForInternalUseOnly()
    { return "仅限内部使用."; }
392

393
     virtual QCString trWarning()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
394
    { return "警告"; }
395

396
     virtual QCString trVersion()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
397
    { return "版本"; }
398

399
     virtual QCString trDate()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
400
    { return "日期"; }
401

402
     virtual QCString trReturns()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
403
    { return "返回"; }
404

405
     virtual QCString trSeeAlso()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
406
    { return "参见"; }
407

408
     virtual QCString trParameters()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
409
    { return "参数"; }
410

411
     virtual QCString trExceptions()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
412
    { return "异常"; }
413

414
     virtual QCString trGeneratedBy()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
415
    { return "制作者"; }
416

417
//////////////////////////////////////////////////////////////////////////
418
// new since 0.49-990307
419
//////////////////////////////////////////////////////////////////////////
420

421
     virtual QCString trNamespaceList()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
422
    { return "命名空间列表"; }
423

424
     virtual QCString trNamespaceListDescription(bool extractAll)
425
    {
426
       QCString result="这里列出了所有";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
427
      if (!extractAll) result+="文档化的";
428
      result+="命名空间定义,附带简要说明:";
429 430
      return result;
    }
431

432
     virtual QCString trFriends()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
433
    { return "友元"; }
434 435 436 437

//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
438

439
     virtual QCString trRelatedFunctionDocumentation()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
440
    { return "友元及相关函数文档"; }
441

442 443 444 445
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////

446
     virtual QCString trCompoundReference(const char *clName,
447 448 449 450
                                 ClassDef::CompoundType compType,
                                 bool isTemplate)
      // used as the title of the HTML page of a class/struct/union
    {
451
       QCString result=(QCString)clName;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
452
      if (isTemplate) result+=CN_SPC"模板";
453 454
      switch(compType)
      {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
455
        case ClassDef::Class:  result+="类"; break;
456 457
        case ClassDef::Struct: result+="结构体"; break;
        case ClassDef::Union:  result+="联合体"; break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
458 459 460 461
        case ClassDef::Interface:  result+="接口"; break;
        case ClassDef::Protocol:   result+="协议"; break;
        case ClassDef::Category:   result+="分类"; break;
        case ClassDef::Exception:  result+="异常"; break;
462
        default: break;
463
      }
464
      result+=CN_SPC"参考";
465 466
      return result;
    }
467

468 469
    /*! used as the title of the HTML page of a file */
    virtual QCString trFileReference(const char *fileName)
470
    {
471
      QCString result=fileName;
472
      result+=CN_SPC"文件参考";
473 474
      return result;
    }
475

476 477 478
    /*! used as the title of the HTML page of a namespace */
    virtual QCString trNamespaceReference(const char *namespaceName)
    { QCString result=namespaceName;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
479
      result+=CN_SPC"命名空间参考";
480 481
      return result;
    }
482 483

    // these are for the member sections of a class, struct or union
484 485
    virtual QCString trPublicMembers()
    { return "Public 成员函数"; }
486

487 488
    virtual QCString trPublicSlots()
    { return "Public 槽"; }
489

490
    virtual QCString trSignals()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
491
    { return "信号"; }
492

493 494 495 496 497 498 499 500 501 502 503
    virtual QCString trStaticPublicMembers()
    { return "静态 Public 成员函数"; }

    virtual QCString trProtectedMembers()
    { return "Protected 成员函数"; }

    virtual QCString trProtectedSlots()
    { return "Protected 槽"; }

    virtual QCString trStaticProtectedMembers()
    { return "静态 Protected 成员函数"; }
504

505 506
    virtual QCString trPrivateMembers()
    { return "Private 成员函数"; }
507

508 509
    virtual QCString trPrivateSlots()
    { return "Private 槽"; }
510

511 512
    virtual QCString trStaticPrivateMembers()
    { return "静态 Private 成员函数"; }
513 514

    // end of member sections
515
    virtual QCString trWriteList(int numEntries)
516 517 518
    {
      // this function is used to produce a comma-separated list of items.
      // use generateMarker(i) to indicate where item i should be put.
519
      QCString result;
520 521
      int i;
      // the inherits list contain `numEntries' classes
522
      for (i=0;i<numEntries;i++)
523 524
      {
        // use generateMarker to generate placeholders for the class links!
525
        result+=generateMarker(i); // generate marker for entry i in the list
526
                                   // (order is left to right)
527

528 529
        if (i!=numEntries-1)  // not the last entry, so we need a separator
        {
530
          if (i<numEntries-2) // not the fore last entry
Dimitri van Heesch's avatar
Dimitri van Heesch committed
531
            result+=","CN_SPC;
532
          else                // the fore last entry
533
            result+=CN_SPC", 以及"CN_SPC;
534 535
        }
      }
536
      return result;
537
    }
538

539 540 541 542 543
    /*! used in class documentation to produce a list of base classes,
     *  if class diagrams are disabled.
     */
    virtual QCString trInheritsList(int numEntries)
    { return "继承自"CN_SPC+trWriteList(numEntries)+CN_SPC".";  }
544

545 546 547 548
    /*! used in class documentation to produce a list of super classes,
     *  if class diagrams are disabled.
     */
    virtual QCString trInheritedByList(int numEntries)
549
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
550
      return "被"CN_SPC+trWriteList(numEntries)+CN_SPC"继承.";
551
    }
552 553

    /*! used in member documentation blocks to produce a list of
554 555 556
     *  members that are hidden by this one.
     */
    virtual QCString trReimplementedFromList(int numEntries)
557
    {
558
      return "重载"CN_SPC+trWriteList(numEntries)+CN_SPC".";
559
    }
560

561 562 563 564
    /*! used in member documentation blocks to produce a list of
     *  all member that overwrite the implementation of this member.
     */
    virtual QCString trReimplementedInList(int numEntries)
565
    {
566
      return "被"CN_SPC+trWriteList(numEntries)+CN_SPC"重载.";
567 568
    }

569 570
    /*! This is put above each page as a link to all members of namespaces. */
    virtual QCString trNamespaceMembers()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
571
    { return "命名空间成员"; }
572

573 574
    /*! This is an introduction to the page with all namespace members */
    virtual QCString trNamespaceMemberDescription(bool extractAll)
575
    {
576
       QCString result="这里列出了所有";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
577
      if (!extractAll) result+="文档化的";
578
      result+="命名空间成员,并附带";
579
      if (extractAll)
580
        result+="其说明文档:";
581
      else
582
        result+="其所属的文件:";
583 584
      return result;
    }
585

586
    /*! This is used in LaTeX as the title of the chapter with the
587 588 589
     *  index of all namespaces.
     */
    virtual QCString trNamespaceIndex()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
590
    { return "命名空间索引"; }
591

592 593 594 595
    /*! This is used in LaTeX as the title of the chapter containing
     *  the documentation of all namespaces.
     */
    virtual QCString trNamespaceDocumentation()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
596
    { return "命名空间文档"; }
597

Dimitri van Heesch's avatar
Dimitri van Heesch committed
598 599 600 601 602 603 604
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
//////////////////////////////////////////////////////////////////////////

    /*! This is used in the documentation before the list of all
     *  namespaces in a file.
     */
605
    virtual QCString trNamespaces()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
606
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
607
      return "命名空间";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
608 609
    }

610 611 612 613 614 615 616
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
//////////////////////////////////////////////////////////////////////////

    /*! This is put at the bottom of a class documentation page and is
     *  followed by a list of files that were used to generate the page.
     */
617
    virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType,
618 619 620
        bool)
    { // here s is one of " Class", " Struct" or " Union"
      // single is true implies a single file
621
       QCString result=(QCString)"该";
622 623
      switch(compType)
      {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
624
        case ClassDef::Class:      result+="类"; break;
625 626
        case ClassDef::Struct:     result+="结构体"; break;
        case ClassDef::Union:      result+="联合体"; break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
627 628 629 630
        case ClassDef::Interface:  result+="接口"; break;
        case ClassDef::Protocol:   result+="协议"; break;
        case ClassDef::Category:   result+="分类"; break;
        case ClassDef::Exception:  result+="异常"; break;
631
        default: break;
632
      }
633
      result+="的文档由以下文件生成:";
634 635 636 637 638 639 640 641
      return result;
    }

//////////////////////////////////////////////////////////////////////////
// new since 0.49-990901
//////////////////////////////////////////////////////////////////////////

    /*! This is used as the heading text for the retval command. */
642
    virtual QCString trReturnValues()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
643
    { return "返回值"; }
644 645 646

    /*! This is in the (quick) index as a link to the main page (index.html)
     */
647
    virtual QCString trMainPage()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
648
    { return "首页"; }
649

650
    /*! This is used in references to page that are put in the LaTeX
651 652
     *  documentation. It should be an abbreviation of the word page.
     */
653
    virtual QCString trPageAbbreviation()
654 655 656 657 658 659
    { return "p."; }

//////////////////////////////////////////////////////////////////////////
// new since 0.49-991106
//////////////////////////////////////////////////////////////////////////

660
    virtual QCString trDefinedAtLineInSourceFile()
661
    {
662
      return "在文件"CN_SPC"@1"CN_SPC"第"CN_SPC"@0"CN_SPC"行定义.";
663
    }
664

665
    virtual QCString trDefinedInSourceFile()
666
    {
667
      return "在文件"CN_SPC"@0"CN_SPC"中定义.";
668 669 670 671 672 673
    }

//////////////////////////////////////////////////////////////////////////
// new since 0.49-991205
//////////////////////////////////////////////////////////////////////////

674
    virtual QCString trDeprecated()
675
    {
676
      return "弃用";
677 678 679 680 681 682 683
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.0.0
//////////////////////////////////////////////////////////////////////////

    /*! this text is put before a collaboration diagram */
684
    virtual QCString trCollaborationDiagram(const char *clName)
685
    {
686
      return (QCString)clName+CN_SPC"的协作图:";
687
    }
688

689
    /*! this text is put before an include dependency graph */
690
    virtual QCString trInclDepGraph(const char *fName)
691
    {
692
      return (QCString)fName+CN_SPC"的引用(Include)关系图:";
693
    }
694

695
    /*! header that is put before the list of constructor/destructors. */
696
    virtual QCString trConstructorDocumentation()
697
    {
698
      return "构造及析构函数说明";
699
    }
700

701
    /*! Used in the file documentation to point to the corresponding sources. */
702
    virtual QCString trGotoSourceCode()
703
    {
704
      return "浏览源代码.";
705
    }
706

707
    /*! Used in the file sources to point to the corresponding documentation. */
708
    virtual QCString trGotoDocumentation()
709
    {
710
      return "浏览该文件的文档.";
711
    }
712

713
    /*! Text for the \\pre command */
714
    virtual QCString trPrecondition()
715
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
716
      return "前置条件";
717
    }
718

719
    /*! Text for the \\post command */
720
    virtual QCString trPostcondition()
721
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
722
      return "后置条件";
723
    }
724

725
    /*! Text for the \\invariant command */
726
    virtual QCString trInvariant()
727
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
728
      return "不变性";
729
    }
730

731
    /*! Text shown before a multi-line variable/enum initialization */
732
    virtual QCString trInitialValue()
733
    {
734
      return "初始值:";
735
    }
736

737
    /*! Text used the source code in the file index */
738
    virtual QCString trCode()
739
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
740
      return "代码";
741
    }
742

743
    virtual QCString trGraphicalHierarchy()
744
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
745
      return "类继承关系图";
746
    }
747

748
    virtual QCString trGotoGraphicalHierarchy()
749
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
750
      return "浏览类继承关系图";
751
    }
752

753
    virtual QCString trGotoTextualHierarchy()
754
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
755
      return "浏览类继承关系表";
756
    }
757

758
    virtual QCString trPageIndex()
759
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
760
      return "页面索引";
761 762 763 764 765
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
766

767
    virtual QCString trNote()
768
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
769
      return "注解";
770
    }
771

772
    virtual QCString trPublicTypes()
773
    {
774
      return "Public 类型";
775
    }
776

777
    virtual QCString trPublicAttribs()
778
    {
779
       if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
780
       {
781 782 783 784 785
         return "成员变量";
       }
       else {
         return "Public 属性";
       }
786
    }
787

788
    virtual QCString trStaticPublicAttribs()
789
    {
790
      return "静态 Public 属性";
791
    }
792

793
    virtual QCString trProtectedTypes()
794
    {
795
      return "Protected 类型";
796
    }
797

798
    virtual QCString trProtectedAttribs()
799
    {
800
      return "Protected 属性";
801
    }
802

803
    virtual QCString trStaticProtectedAttribs()
804
    {
805
      return "静态 Protected 属性";
806
    }
807

808
    virtual QCString trPrivateTypes()
809
    {
810
      return "Private 类型";
811
    }
812

813
    virtual QCString trPrivateAttribs()
814
    {
815
      return "Private 属性";
816
    }
817

818
    virtual QCString trStaticPrivateAttribs()
819
    {
820
      return "静态 Private 属性";
821 822 823 824 825 826 827 828
    }


//////////////////////////////////////////////////////////////////////////
// new since 1.1.3
//////////////////////////////////////////////////////////////////////////

    /*! Used as a marker that is put before a todo item */
829
    virtual QCString trTodo()
830
    {
831
      return "待办事项";
832
    }
833

834
    /*! Used as the header of the todo list */
835
    virtual QCString trTodoList()
836
    {
837
      return "待办事项列表";
838 839 840 841 842 843
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.1.4
//////////////////////////////////////////////////////////////////////////

844
    virtual QCString trReferencedBy()
845
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
846
      return "参考自";
847
    }
848

849
    virtual QCString trRemarks()
850
    {
851
      return "备注";
852
    }
853

854
    virtual QCString trAttention()
855
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
856
      return "注意";
857
    }
858

859
    virtual QCString trInclByDepGraph()
860
    {
861
      return "此图展示该文件直接或间接的被哪些文件引用了:";
862
    }
863

864
    virtual QCString trSince()
865
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
866
      return "自从";
867
    }
868

869 870 871 872 873
//////////////////////////////////////////////////////////////////////////
// new since 1.1.5
//////////////////////////////////////////////////////////////////////////

    /*! title of the graph legend page */
874
    virtual QCString trLegendTitle()
875
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
876
      return "图例";
877
    }
878

879
    /*! page explaining how the dot graph's should be interpreted */
880
    virtual QCString trLegendDocs()
881
    {
882 883
      return "本页将向您解释如何理解由"CN_SPC"doxygen"CN_SPC"生成的图.<p>\n"
        "考虑如下例子:\n"
884
        "\\code\n"
885
        "/*! 由于截断而使 Invisible 不可见 */\n"
886
        "class Invisible { };\n\n"
887
        "/*! Truncated 的继承关系将被隐藏 */\n"
888
        "class Truncated : public Invisible { };\n\n"
889
        "/* 没有被doxygen文档化的类 */\n"
890
        "class Undocumented { };\n\n"
891
        "/*! public 继承关系的类 */\n"
892
        "class PublicBase : public Truncated { };\n\n"
893
        "/*! 一个模板类 */\n"
894
        "template<class T> class Templ { };\n\n"
895
        "/*! protected 继承关系的类 */\n"
896
        "class ProtectedBase { };\n\n"
897
        "/*! private 继承关系的类 */\n"
898
        "class PrivateBase { };\n\n"
899
        "/*! 被 Inherited 使用的类 */\n"
900
        "class Used { };\n\n"
901
        "/*! 继承自其它若干类的超级类 */\n"
902 903 904
        "class Inherited : public PublicBase,\n"
        "                  protected ProtectedBase,\n"
        "                  private PrivateBase,\n"
905 906
        "                  public Undocumented,\n"
        "                  public Templ<int>\n"
907 908 909 910 911
        "{\n"
        "  private:\n"
        "    Used *m_usedClass;\n"
        "};\n"
        "\\endcode\n"
912 913
        "结果将会生成以下图:"
        "<p><center><img alt=\"\" src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center></p>\n"
914
        "<p>\n"
915 916
        "上图中的矩形有如下意义:\n"
        "</p>\n"
917
        "<ul>\n"
918 919 920 921 922
        "<li>%灰色填充的矩形 表示上图是由该结构体或类生成.</li>\n"
        "<li>%黑色边框的矩形 表示已经被文档化的结构体或类.</li>\n"
        "<li>%灰色边框的矩形 表示未被文档化的结构体或类.</li>\n"
        "<li>%红色边框的矩形 表示该结构体或类的关系没有被完全显示."
        "%如果生成的图不能调整到制定的尺寸,有一些关系就会被截断而不显示出来.</li>\n"
923
        "</ul>\n"
924 925 926
        "<p>\n"
        "箭头有如下意义:\n"
        "</p>\n"
927
        "<ul>\n"
928 929 930 931 932
        "<li>%深蓝色的箭头被用于展示 public 的继承关系.</li>\n"
        "<li>%深绿色的箭头表示 protected 的继承关系.</li>\n"
        "<li>%深红色的箭头说明了是 privated 的继承关系.</li>\n"
        "<li>%紫色虚线箭头用来表示两个类之间的聚合关系. 被箭头指向的类的类型的变量,可以通过箭头旁标明的变量去访问.</li>\n"
        "<li>%黄色虚线箭头表示模板类实例和模板类之间的关系. 箭头旁边标明了模板类实例化的参数.</li>\n"
933 934
        "</ul>\n";
    }
935

936
    /*! text for the link to the legend page */
937
    virtual QCString trLegend()
938
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
939
      return "图例";
940 941 942 943 944
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.2.0
//////////////////////////////////////////////////////////////////////////
945

946 947 948
    /*! Used as a marker that is put before a test item */
    virtual QCString trTest()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
949
      return "测试";
950
    }
951

952 953 954
    /*! Used as the header of the test list */
    virtual QCString trTestList()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
955
      return "测试列表";
956 957
    }

958 959 960 961
//////////////////////////////////////////////////////////////////////////
//// new since 1.2.2
////////////////////////////////////////////////////////////////////////////

962 963 964 965 966
    /*! Used as a section header for IDL properties */
    virtual QCString trProperties()
    {
      return "属性";
    }
967

968 969 970 971 972
    /*! Used as a section header for IDL property documentation */
    virtual QCString trPropertyDocumentation()
    {
      return "属性说明";
    }
973 974 975 976 977 978 979 980

//////////////////////////////////////////////////////////////////////////
// new since 1.2.4
//////////////////////////////////////////////////////////////////////////

    /*! Used for Java classes in the summary section of Java packages */
    virtual QCString trClasses()
    {
981 982 983 984 985 986 987 988
      if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
      {
        return "结构体";
      }
      else
      {
        return "类";
      }
989 990 991 992 993
    }

    /*! Used as the title of a Java package */
    virtual QCString trPackage(const char *name)
    {
994
      return (QCString)"包"CN_SPC+name;
995
    }
996

997 998 999
    /*! Title of the package index page */
    virtual QCString trPackageList()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1000
      return "包列表";
1001 1002 1003 1004 1005
    }

    /*! The description of the package index page */
    virtual QCString trPackageListDescription()
    {
1006
       return "这里列出所有的包,附带简要说明(如果有的话):";
1007 1008 1009 1010 1011
    }

    /*! The link name in the Quick links header for each page */
    virtual QCString trPackages()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1012
      return "包";
1013 1014 1015 1016 1017
    }

    /*! Text shown before a multi-line define */
    virtual QCString trDefineValue()
    {
1018
      return "值:";
1019 1020 1021 1022 1023
    }

////////////////////////////////////////////////////////////////////////////
//// new since 1.2.6
////////////////////////////////////////////////////////////////////////////
1024 1025 1026 1027
    virtual QCString trBug ()
    {
      return "Bug";
    }
1028

1029 1030 1031 1032
    virtual QCString trBugList ()
    {
      return "Bug"CN_SPC"列表";
    }
1033 1034 1035 1036 1037

//////////////////////////////////////////////////////////////////////////
// new since 1.2.6
//////////////////////////////////////////////////////////////////////////

1038 1039 1040
    /*! Used as ansicpg for RTF file
     *
     * The following table shows the correlation of Charset name, Charset Value and
1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060
     * <pre>
     * Codepage number:
     * Charset Name       Charset Value(hex)  Codepage number
     * ------------------------------------------------------
     * DEFAULT_CHARSET           1 (x01)
     * SYMBOL_CHARSET            2 (x02)
     * OEM_CHARSET             255 (xFF)
     * ANSI_CHARSET              0 (x00)            1252
     * RUSSIAN_CHARSET         204 (xCC)            1251
     * EE_CHARSET              238 (xEE)            1250
     * GREEK_CHARSET           161 (xA1)            1253
     * TURKISH_CHARSET         162 (xA2)            1254
     * BALTIC_CHARSET          186 (xBA)            1257
     * HEBREW_CHARSET          177 (xB1)            1255
     * ARABIC _CHARSET         178 (xB2)            1256
     * SHIFTJIS_CHARSET        128 (x80)             932
     * HANGEUL_CHARSET         129 (x81)             949
     * GB2313_CHARSET          134 (x86)             936
     * CHINESEBIG5_CHARSET     136 (x88)             950
     * </pre>
1061
     *
1062 1063 1064 1065 1066 1067
     */
    virtual QCString trRTFansicp()
    {
      return "936";
    }

1068
    /*! Used as ansicpg for RTF fcharset
1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079
     *  \see trRTFansicp() for a table of possible values.
     */
    virtual QCString trRTFCharSet()
    {
      return "134";
    }


    /*! Used as header RTF general index */
    virtual QCString trRTFGeneralIndex()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1080
      return "索引";
1081 1082
    }

1083

1084
    /*! This is used for translation of the word that will possibly
1085
     *  be followed by a single name or by a list of names
1086 1087 1088
     *  of the category.
     */
    virtual QCString trClass(bool /*first_capital*/, bool /*singular*/)
1089
    {
1090 1091
      /*
       QCString result((first_capital ? "Class" : "class"));
1092
      if (!singular)  result+="es";
1093
      return result;
1094 1095
      */
      return "类";
1096 1097 1098
    }

    /*! This is used for translation of the word that will possibly
1099
     *  be followed by a single name or by a list of names
1100 1101 1102
     *  of the category.
     */
    virtual QCString trFile(bool /*first_capital*/, bool /*singular*/)
1103
    {
1104 1105
      /*
       QCString result((first_capital ? "File" : "file"));
1106
      if (!singular)  result+="s";
1107
      return result;
1108 1109
      */
      return "文件";
1110 1111 1112 1113

    }

    /*! This is used for translation of the word that will possibly
1114
     *  be followed by a single name or by a list of names
1115 1116 1117
     *  of the category.
     */
    virtual QCString trNamespace(bool /*first_capital*/, bool /*singular*/)
1118
    {
1119 1120
      /*
       QCString result((first_capital ? "Namespace" : "namespace"));
1121
      if (!singular)  result+="s";
1122
      return result;
1123 1124
      */
      return "命名空间";
1125 1126 1127
    }

    /*! This is used for translation of the word that will possibly
1128
     *  be followed by a single name or by a list of names
1129 1130 1131
     *  of the category.
     */
    virtual QCString trGroup(bool /*first_capital*/, bool /*singular*/)
1132
    {
1133 1134
      /*
       QCString result((first_capital ? "Group" : "group"));
1135
      if (!singular)  result+="s";
1136
      return result;
1137 1138
      */
      return "组";
1139 1140 1141
    }

    /*! This is used for translation of the word that will possibly
1142
     *  be followed by a single name or by a list of names
1143 1144 1145
     *  of the category.
     */
    virtual QCString trPage(bool /*first_capital*/, bool /*singular*/)
1146
    {
1147 1148
      /*
       QCString result((first_capital ? "Page" : "page"));
1149
      if (!singular)  result+="s";
1150
      return result;
1151 1152
      */
      return "页";
1153 1154 1155
    }

    /*! This is used for translation of the word that will possibly
1156
     *  be followed by a single name or by a list of names
1157 1158 1159
     *  of the category.
     */
    virtual QCString trMember(bool /*first_capital*/, bool /*singular*/)
1160
    {
1161 1162
      /*
       QCString result((first_capital ? "Member" : "member"));
1163
      if (!singular)  result+="s";
1164
      return result;
1165 1166
      */
      return "成员";
1167
    }
1168

1169
    /*! This is used for translation of the word that will possibly
1170
     *  be followed by a single name or by a list of names
1171 1172 1173
     *  of the category.
     */
    virtual QCString trGlobal(bool /*first_capital*/, bool /*singular*/)
1174
    {
1175 1176
      /*
       QCString result((first_capital ? "Global" : "global"));
1177
      if (!singular)  result+="s";
1178
      return result;
1179 1180
      */
      return "全局";
1181 1182 1183 1184 1185 1186 1187 1188 1189
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.2.7
//////////////////////////////////////////////////////////////////////////

    /*! This text is generated when the \\author command is used and
     *  for the author section in man pages. */
    virtual QCString trAuthor(bool /*first_capital*/, bool /*singular*/)
1190
    {
1191 1192
      /*
       QCString result((first_capital ? "Author" : "author"));
1193
      if (!singular)  result+="s";
1194
      return result;
1195 1196
      */
      return "作者";
1197 1198
    }

1199 1200 1201 1202 1203 1204 1205 1206
//////////////////////////////////////////////////////////////////////////
// new since 1.2.11
//////////////////////////////////////////////////////////////////////////

    /*! This text is put before the list of members referenced by a member
     */
    virtual QCString trReferences()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1207
      return "参考";
1208
    }
1209 1210 1211 1212 1213

//////////////////////////////////////////////////////////////////////////
// new since 1.2.13
//////////////////////////////////////////////////////////////////////////

1214
    /*! used in member documentation blocks to produce a list of
1215 1216 1217 1218 1219
     *  members that are implemented by this one.
     */
    virtual QCString trImplementedFromList(int numEntries)
    {
      /* return "Implements "+trWriteList(numEntries)+"."; */
1220
      return "实现了"CN_SPC+trWriteList(numEntries)+".";
1221 1222 1223 1224 1225 1226 1227 1228
    }

    /*! used in member documentation blocks to produce a list of
     *  all members that implement this abstract member.
     */
    virtual QCString trImplementedInList(int numEntries)
    {
      /* return "Implemented in "+trWriteList(numEntries)+"."; */
1229
      return "在"CN_SPC+trWriteList(numEntries)+CN_SPC"内被实现.";
1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.2.16
//////////////////////////////////////////////////////////////////////////

    /*! used in RTF documentation as a heading for the Table
     *  of Contents.
     */
    virtual QCString trRTFTableOfContents()
    {
      /* return "Table of Contents"; */
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1242
      return "目录";
1243 1244 1245 1246 1247 1248
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.2.17
//////////////////////////////////////////////////////////////////////////

1249 1250
    /*! Used as the header of the list of item that have been
     *  flagged deprecated
1251 1252 1253
     */
    virtual QCString trDeprecatedList()
    {
1254
      return "弃用列表";
1255 1256 1257 1258 1259 1260
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.2.18
//////////////////////////////////////////////////////////////////////////

1261
    /*! Used as a header for declaration section of the events found in
1262 1263 1264 1265
     * a C# program
     */
    virtual QCString trEvents()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1266
      return "事件";
1267
    }
1268

1269 1270 1271
    /*! Header used for the documentation section of a class' events. */
    virtual QCString trEventDocumentation()
    {
1272
      return "事件说明";
1273 1274 1275 1276 1277 1278 1279 1280 1281
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.3
//////////////////////////////////////////////////////////////////////////

    /*! Used as a heading for a list of Java class types with package scope.
     */
    virtual QCString trPackageTypes()
1282
    {
1283
      return "包类型";
1284
    }
1285 1286 1287

    /*! Used as a heading for a list of Java class functions with package
     * scope.
1288 1289
     */
    virtual QCString trPackageMembers()
1290
    {
1291
      return "包函数";
1292
    }
1293 1294

    /*! Used as a heading for a list of static Java class functions with
1295 1296 1297
     *  package scope.
     */
    virtual QCString trStaticPackageMembers()
1298
    {
1299
      return "静态包函数";
1300
    }
1301 1302

    /*! Used as a heading for a list of Java class variables with package
1303 1304 1305
     * scope.
     */
    virtual QCString trPackageAttribs()
1306
    {
1307
      return "包属性";
1308
    }
1309 1310

    /*! Used as a heading for a list of static Java class variables with
1311 1312 1313
     * package scope.
     */
    virtual QCString trStaticPackageAttribs()
1314 1315
    {
      return "静态包属性";
1316
    }
1317

1318 1319 1320 1321
//////////////////////////////////////////////////////////////////////////
// new since 1.3.1
//////////////////////////////////////////////////////////////////////////

1322
    /*! Used in the quick index of a class/file/namespace member list page
1323 1324 1325 1326
     *  to link to the unfiltered list of all members.
     */
    virtual QCString trAll()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1327
      return "全部";
1328
    }
1329

1330 1331 1332
    /*! Put in front of the call graph for a function. */
    virtual QCString trCallGraph()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1333
      return "函数调用图:";
1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.3.3
//////////////////////////////////////////////////////////////////////////

    /*! This string is used as the title for the page listing the search
     *  results.
     */
    virtual QCString trSearchResultsTitle()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1345
      return "搜索结果";
1346
    }
1347

1348 1349 1350 1351
    /*! This string is put just before listing the search results. The
     *  text can be different depending on the number of documents found.
     *  Inside the text you can put the special marker $num to insert
     *  the number representing the actual number of search results.
1352
     *  The @a numDocuments parameter can be either 0, 1 or 2, where the
1353 1354 1355 1356 1357 1358 1359
     *  value 2 represents 2 or more matches. HTML markup is allowed inside
     *  the returned string.
     */
    virtual QCString trSearchResults(int numDocuments)
    {
      if (numDocuments==0)
      {
1360
        return "抱歉,未找到与您查询相符的文档.";
1361 1362 1363
      }
      else if (numDocuments==1)
      {
1364
        return "找到<b>1</b>篇与您查询相符的文档.";
1365
      }
1366
      else
1367
      {
1368 1369
        return "找到<b>$num</b>篇与您查询相符的文档."
               "优先显示最符合的文档.";
1370 1371
      }
    }
1372
    /*! This string is put before the list of matched words, for each search
1373 1374 1375 1376
     *  result. What follows is the list of words that matched the query.
     */
    virtual QCString trSearchMatches()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1377
      return "符合的结果:";
1378
    }
1379 1380 1381 1382 1383 1384 1385 1386 1387 1388

//////////////////////////////////////////////////////////////////////////
// new since 1.3.8
//////////////////////////////////////////////////////////////////////////

    /*! This is used in HTML as the title of page with source code for file filename
     */
    virtual QCString trSourceFile(QCString& filename)
    {
      /* return filename + " Source File"; */
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1389
      return filename + CN_SPC"源文件";
1390
    }
1391 1392 1393 1394 1395 1396 1397 1398 1399
//////////////////////////////////////////////////////////////////////////
// new since 1.3.9
//////////////////////////////////////////////////////////////////////////

    /*! This is used as the name of the chapter containing the directory
     *  hierarchy.
     */
    virtual QCString trDirIndex()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1400
      return "目录结构";
1401 1402 1403 1404 1405 1406 1407
    }

    /*! This is used as the name of the chapter containing the documentation
     *  of the directories.
     */
    virtual QCString trDirDocumentation()
    {
1408
      return "目录说明";
1409 1410
    }

1411 1412
		/*! This is used as the title of the directory index and also in the
     *  Quick links of an HTML page, to link to the directory hierarchy.
1413 1414
     */
    virtual QCString trDirectories()
1415
    { return "目录"; }
1416

1417
    /*! This returns a sentences that introduces the directory hierarchy.
1418 1419 1420 1421
     *  and the fact that it is sorted alphabetically per level
     */
    virtual QCString trDirDescription()
    {
1422
      return "此继承关系列表按字典顺序粗略的排序:"CN_SPC;
1423 1424 1425 1426 1427 1428 1429 1430
    }

    /*! This returns the title of a directory page. The name of the
     *  directory is passed via \a dirName.
     */
    virtual QCString trDirReference(const char *dirName)
    {
      QCString result=dirName;
1431
      result+=CN_SPC"目录参考";
1432 1433 1434 1435 1436 1437
      return result;
    }

    /*! This returns the word directory with or without starting capital
     *  (\a first_capital) and in sigular or plural form (\a singular).
     */
1438
    virtual QCString trDir(bool /*first_capital*/, bool /*singular*/)
1439
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1440
      return "目录";
1441
    }
1442

1443 1444 1445 1446 1447 1448 1449 1450 1451
//////////////////////////////////////////////////////////////////////////
// new since 1.4.1
//////////////////////////////////////////////////////////////////////////

    /*! This text is added to the documentation when the \\overload command
     *  is used for a overloaded function.
     */
    virtual QCString trOverloadText()
    {
1452 1453
      return "这是为便于使用而提供的一个重载成员函数."
             "与上面的函数相比,它接受不同类型的参数.";
1454 1455 1456 1457 1458 1459 1460 1461 1462
    }

//////////////////////////////////////////////////////////////////////////
// new since 1.4.6
//////////////////////////////////////////////////////////////////////////

    /*! This is used to introduce a caller (or called-by) graph */
    virtual QCString trCallerGraph()
    {
1463
      return "这是这个函数的调用关系图:";
1464 1465
    }

1466
    /*! This is used in the documentation of a file/namespace before the list
1467 1468 1469
     *  of documentation blocks for enumeration values
     */
    virtual QCString trEnumerationValueDocumentation()
1470
    {
1471
      return "枚举变量说明";
1472 1473
    }

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1474 1475 1476
//////////////////////////////////////////////////////////////////////////
// new since 1.5.4 (mainly for Fortran)
//////////////////////////////////////////////////////////////////////////
1477

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1478 1479
    /*! header that is put before the list of member subprograms (Fortran). */
    virtual QCString trMemberFunctionDocumentationFortran()
1480
    { return "成员函数/子程序说明"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1481

1482
    /*! This is put above each page as a link to the list of annotated data types (Fortran). */
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1483
    virtual QCString trCompoundListFortran()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1484
    { return "数据类型列表"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1485 1486 1487

    /*! This is put above each page as a link to all members of compounds (Fortran). */
    virtual QCString trCompoundMembersFortran()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1488
    { return "数据项"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1489 1490 1491

    /*! This is an introduction to the annotated compound list (Fortran). */
    virtual QCString trCompoundListDescriptionFortran()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1492
    { return "带简要描述的数据类型列表:"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1493 1494 1495 1496

    /*! This is an introduction to the page with all data types (Fortran). */
    virtual QCString trCompoundMembersDescriptionFortran(bool extractAll)
    {
1497 1498 1499 1500
      QCString result="这里列出了所有";
      if (!extractAll)
      {
        result+="文档化的";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1501
      }
1502 1503
      result+="数据类型成员,并附带";
      //result+=" with links to ";
1504
      if (!extractAll)
1505 1506 1507
      {
        result+="其说明文档:";
      }
1508
      else
1509 1510 1511 1512
      {
        result+="其所属的文件:";
      }
      return result;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1513 1514
    }

1515
    /*! This is used in LaTeX as the title of the chapter with the
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1516 1517 1518
     * annotated compound index (Fortran).
     */
    virtual QCString trCompoundIndexFortran()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1519
    { return "数据类型索引"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1520 1521 1522 1523 1524 1525


    /*! This is used in LaTeX as the title of the chapter containing
     *  the documentation of all data types (Fortran).
     */
    virtual QCString trTypeDocumentation()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1526
    { return "数据类型文档"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1527

1528
    /*! This is used in the documentation of a file as a header before the
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1529 1530 1531
     *  list of (global) subprograms (Fortran).
     */
    virtual QCString trSubprograms()
1532
    { return "函数/子程序"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1533

1534
    /*! This is used in the documentation of a file/namespace before the list
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1535 1536 1537
     *  of documentation blocks for subprograms (Fortran)
     */
    virtual QCString trSubprogramDocumentation()
1538
    { return "函数/子程序说明"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1539

1540

1541
    /*! This is used in the documentation of a file/namespace/group before
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1542 1543 1544
     *  the list of links to documented compounds (Fortran)
     */
     virtual QCString trDataTypes()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1545
    { return "数据类型"; }
1546

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1547 1548
    /*! used as the title of page containing all the index of all modules (Fortran). */
    virtual QCString trModulesList()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1549
    { return "模块列表"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1550 1551 1552 1553

    /*! used as an introduction to the modules list (Fortran) */
    virtual QCString trModulesListDescription(bool extractAll)
    {
1554 1555 1556 1557
      QCString result="这里列出了所有";
      if (!extractAll) result+="文档化的";
      result+="模块,并附带简要说明:";
      return result;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1558 1559 1560 1561 1562 1563 1564 1565 1566 1567
    }

    /*! used as the title of the HTML page of a module/type (Fortran) */
    virtual QCString trCompoundReferenceFortran(const char *clName,
                                    ClassDef::CompoundType compType,
                                    bool isTemplate)
    {
      QCString result=(QCString)clName;
      switch(compType)
      {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1568 1569
        case ClassDef::Class:      result+=CN_SPC"模块"; break;
        case ClassDef::Struct:     result+=CN_SPC"类型"; break;
1570 1571 1572
        case ClassDef::Union:      result+=CN_SPC"联合体"; break;
        case ClassDef::Interface:  result+=CN_SPC"接口"; break;
        case ClassDef::Protocol:   result+=CN_SPC"协议"; break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1573 1574
        case ClassDef::Category:   result+=CN_SPC"目录"; break;
        case ClassDef::Exception:  result+=CN_SPC"异常"; break;
1575
        default: break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1576
      }
1577
      if (isTemplate) result+="模板"CN_SPC;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1578
      result+="参考手册";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1579 1580
      return result;
    }
1581

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1582 1583 1584
    /*! used as the title of the HTML page of a module (Fortran) */
    virtual QCString trModuleReference(const char *namespaceName)
    {
1585
      QCString result=namespaceName;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1586
      result += CN_SPC"模块参考手册";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1587 1588
      return result;
    }
1589

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1590 1591
    /*! This is put above each page as a link to all members of modules. (Fortran) */
    virtual QCString trModulesMembers()
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1592
    { return "模块成员"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1593 1594 1595

    /*! This is an introduction to the page with all modules members (Fortran) */
    virtual QCString trModulesMemberDescription(bool extractAll)
1596
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1597 1598 1599
      // QCString result="Here is a list of all ";
      // if (!extractAll) result+="documented ";
      // result+="module members with links to ";
1600
      // if (extractAll)
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1601 1602 1603
      // {
      //   result+="the module documentation for each member:";
      // }
1604
      // else
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1605 1606 1607 1608 1609
      // {
      //   result+="the modules they belong to:";
      // }
      // return result;
      if(!extractAll) {
1610
        return "这里是有文档的模块成员列表,含有到每个成员所在模块的文档的链接:";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1611
      } else {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1612
        return "这里是模块成员列表,含有到成员所属的模块的链接:";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1613 1614 1615
      }
    }

1616
    /*! This is used in LaTeX as the title of the chapter with the
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1617 1618 1619 1620
     *  index of all modules (Fortran).
     */
    virtual QCString trModulesIndex()
    // { return "Modules Index"; }
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1621
    { return "模块索引"; }
1622

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1623
    /*! This is used for translation of the word that will possibly
1624
     *  be followed by a single name or by a list of names
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1625 1626 1627
     *  of the category.
     */
    virtual QCString trModule(bool, bool)
1628
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1629 1630
      // QCString result((first_capital ? "Module" : "module"));
      // if (!singular)  result+="s";
1631
      // return result;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1632
      return "模块";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1633 1634 1635 1636 1637 1638
    }
    /*! This is put at the bottom of a module documentation page and is
     *  followed by a list of files that were used to generate the page.
     */
    virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType,
        bool)
1639
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1640
      QCString result="该";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1641 1642
      switch(compType)
      {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1643
        case ClassDef::Class:      result+=CN_SPC"模块"; break;
1644 1645 1646 1647
        case ClassDef::Struct:     result+=CN_SPC"结构体"; break;
        case ClassDef::Union:      result+=CN_SPC"联合体"; break;
        case ClassDef::Interface:  result+=CN_SPC"接口"; break;
        case ClassDef::Protocol:   result+=CN_SPC"协议"; break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1648 1649
        case ClassDef::Category:   result+=CN_SPC"目录"; break;
        case ClassDef::Exception:  result+=CN_SPC"异常"; break;
1650
        default: break;
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1651
      }
1652
      result+=CN_SPC"的文档由以下文件生成:";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1653 1654
      return result;
    }
1655

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1656
    /*! This is used for translation of the word that will possibly
1657
     *  be followed by a single name or by a list of names
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1658 1659 1660
     *  of the category.
     */
    virtual QCString trType(bool, bool)
1661
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1662
      return "类型";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1663
    }
1664

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1665
    /*! This is used for translation of the word that will possibly
1666
     *  be followed by a single name or by a list of names
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1667 1668 1669
     *  of the category.
     */
    virtual QCString trSubprogram(bool, bool)
1670
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1671
      return "子程序";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1672 1673 1674 1675 1676
    }

    /*! C# Type Constraint list */
    virtual QCString trTypeConstraints()
    {
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1677
      return "类型限制";
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1678
    }
1679

1680 1681 1682
//////////////////////////////////////////////////////////////////////////
// new since 1.6.0
//////////////////////////////////////////////////////////////////////////
1683 1684 1685 1686 1687 1688
  virtual QCString trDirRelation(const char *name)
  {
    // return QCString(name)+" Relation";
    // unsure
    return QCString(name)+CN_SPC"关系";
  }
1689

1690
    virtual QCString trLoading()
1691 1692 1693
  {
    return "载入中...";
  }
1694

1695 1696 1697 1698
  virtual QCString trGlobalNamespace()
  {
    return "全局命名空间";
  }
1699

1700
    virtual QCString trSearching()
1701 1702 1703
  {
    return "搜索中...";
  }
1704

1705 1706 1707 1708
  virtual QCString trNoMatches()
  {
    return "未找到";
  }
1709 1710 1711 1712 1713

//////////////////////////////////////////////////////////////////////////
// new since 1.6.3
//////////////////////////////////////////////////////////////////////////

1714 1715 1716 1717
  virtual QCString trFileIn(const char *name)
  {
    return (QCString)"文件在"+CN_SPC+name;
  }
1718

1719 1720 1721 1722 1723 1724
  virtual QCString trIncludesFileIn(const char *name)
  {
    return (QCString)"在"CN_SPC+name+CN_SPC"中引用";
  }

  virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
1725 1726
                                int hour,int minutes,int seconds,
                                bool includeTime)
1727 1728
  {
    static const char *days[]   = { "一","二","三","四","五","六","日" };
Dimitri van Heesch's avatar
Dimitri van Heesch committed
1729
      static const char *months[] = { "一","二","三","四","五","六","七","八","九","十","十一","十二" };
1730

1731
    QCString sdate;
1732

1733
    sdate.sprintf("%d年"CN_SPC"%s月"CN_SPC"%d日"CN_SPC"星期%s",year, months[month-1], day, days[dayOfWeek-1]);
1734

1735 1736 1737 1738 1739 1740 1741 1742
    if (includeTime)
    {
      QCString stime;
      stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
      sdate+=stime;
    }
    return sdate;
  }
1743

Dimitri van Heesch's avatar
Dimitri van Heesch committed
1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758
//////////////////////////////////////////////////////////////////////////
// new since 1.7.5
//////////////////////////////////////////////////////////////////////////

    /*! Header for the page with bibliographic citations */
    virtual QCString trCiteReferences()
    { return "参考书目"; }

    /*! Text for copyright paragraph */
    virtual QCString trCopyright()
    { return "版权所有"; }

    /*! Header for the graph showing the directory dependencies */
    virtual QCString trDirDepGraph(const char *name)
    {
1759
      return QCString(name)+CN_SPC"的目录依赖关系图";
1760 1761
    }

1762 1763
//////////////////////////////////////////////////////////////////////////
// new since 1.8.0
1764
//////////////////////////////////////////////////////////////////////////
1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789

    /*! Detail level selector shown for hierarchical indices */
    virtual QCString trDetailLevel()
    { return "详情级别"; }

    /*! Section header for list of template parameters */
    virtual QCString trTemplateParameters()
    { return "模板参数"; }

    /*! Used in dot graph when UML_LOOK is enabled and there are many fields */
    virtual QCString trAndMore(const QCString &number)
    { return "和"CN_SPC+number+CN_SPC"更多..."; }

    /*! Used file list for a Java enum */
    virtual QCString trEnumGeneratedFromFiles(bool /*single*/)
    { return "枚举说明文档从下列文件生成:"; }

    /*! Header of a Java enum page (Java enums are represented as classes). */
    virtual QCString trEnumReference(const char *name)
    { return QCString(name)+CN_SPC"枚举类型参考"; }

    /*! Used for a section containing inherited members */
    virtual QCString trInheritedFrom(const char *members,const char *what)
    { return QCString(members)+CN_SPC"继承自"CN_SPC+what; }

1790 1791
    /*! Header of the sections with inherited members specific for the
     *  base class(es)
1792 1793 1794 1795 1796
     */
    virtual QCString trAdditionalInheritedMembers()
    { return "额外继承的成员函数"; }

//////////////////////////////////////////////////////////////////////////
1797 1798 1799
};

#endif
1800