summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2002-06-02 22:07:26 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2002-06-02 22:07:26 (GMT)
commitc562786745020f7a59d4006537416ed43c2de2ff (patch)
treebd8f2ab65015f145bfdba953a3546c2340641c4a /src
parent6f9fc044cdf4ac15a489746d5b0167c9fc433f66 (diff)
downloadDoxygen-c562786745020f7a59d4006537416ed43c2de2ff.zip
Doxygen-c562786745020f7a59d4006537416ed43c2de2ff.tar.gz
Doxygen-c562786745020f7a59d4006537416ed43c2de2ff.tar.bz2
Doxygen-1.2.16-20020603
Diffstat (limited to 'src')
-rw-r--r--src/code.l15
-rw-r--r--src/doc.l263
-rw-r--r--src/doxygen.cpp2
-rw-r--r--src/translator_pl.h279
4 files changed, 501 insertions, 58 deletions
diff --git a/src/code.l b/src/code.l
index 533f2dd..42eda81 100644
--- a/src/code.l
+++ b/src/code.l
@@ -1057,13 +1057,16 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
if (!name.isEmpty() && g_sourceFileDef)
{
FileName *fn = Doxygen::inputNameDict->find(name);
- FileNameIterator fni(*fn);
- // for each include name
- for (fni.toFirst();!found && (fd=fni.current());++fni)
+ if (fn)
{
- // see if this source file actually includes the file
- found = g_sourceFileDef->isIncluded(fd->absFilePath());
- //printf(" include file %s found=%d\n",fd->absFilePath().data(),found);
+ FileNameIterator fni(*fn);
+ // for each include name
+ for (fni.toFirst();!found && (fd=fni.current());++fni)
+ {
+ // see if this source file actually includes the file
+ found = g_sourceFileDef->isIncluded(fd->absFilePath());
+ //printf(" include file %s found=%d\n",fd->absFilePath().data(),found);
+ }
}
}
}
diff --git a/src/doc.l b/src/doc.l
index 3863d4b..4ffb5a9 100644
--- a/src/doc.l
+++ b/src/doc.l
@@ -39,6 +39,7 @@
#include "language.h"
#include "outputlist.h"
#include "reflist.h"
+#include "page.h"
#ifndef WIN32
#include <unistd.h>
@@ -105,6 +106,44 @@ static QCString caption;
static QStack<char> currentListIndent; // indent stack of all list items
static bool insideItemList = FALSE;
+struct DocLexerContext
+{
+ int rule;
+ int position;
+ const char *inputString;
+ YY_BUFFER_STATE lexerState;
+};
+
+static QStack<DocLexerContext> lexerStack;
+
+static void pushContext()
+{
+ DocLexerContext *ctx = new DocLexerContext;
+ ctx->rule = YY_START;
+ ctx->position = inputPosition;
+ ctx->inputString = inputString;
+ ctx->lexerState = YY_CURRENT_BUFFER;
+ lexerStack.push(ctx);
+ yy_switch_to_buffer(yy_create_buffer(docYYin, YY_BUF_SIZE));
+}
+
+static bool popContext()
+{
+ if (lexerStack.isEmpty()) return TRUE;
+ DocLexerContext *ctx = lexerStack.pop();
+ inputPosition = ctx->position;
+ inputString = ctx->inputString;
+ yy_delete_buffer(YY_CURRENT_BUFFER);
+ yy_switch_to_buffer(ctx->lexerState);
+ BEGIN(ctx->rule);
+ delete ctx;
+ return TRUE;
+}
+
+static QCString copyDocString;
+static QCString copyDocScope;
+static QList<void> copyDocDefList;
+
//-----------------------------------------------------------------------------
static void initParser()
@@ -926,6 +965,119 @@ static void checkArgName(const QCString &name,bool isParam)
}
/* ----------------------------------------------------------------- */
+
+bool findDocsForMemberOrCompound(const char *commandName,
+ QCString *pDoc,
+ Definition **pDef)
+{
+ pDoc->resize(0);
+ *pDef=0;
+ QCString cmdArg=commandName;
+ int l=cmdArg.length();
+ if (l==0) return FALSE;
+
+ int scopeOffset=copyDocScope.length();
+ do // for each scope
+ {
+ int funcStart=cmdArg.find('(');
+ if (funcStart==-1) funcStart=l;
+ int lastScopeStart=cmdArg.findRev("::",funcStart);
+ int lastScopeEnd = lastScopeStart==-1 ? 0 : lastScopeStart+2;
+ QCString scope=cmdArg.left(QMAX(lastScopeStart,0));
+ QCString name=cmdArg.mid(lastScopeEnd,funcStart-lastScopeEnd);
+ QCString args=cmdArg.right(l-funcStart);
+
+ if (scope.isEmpty())
+ {
+ if (scopeOffset>0)
+ {
+ scope=copyDocScope.left(scopeOffset);
+ }
+ }
+ else
+ {
+ if (scopeOffset>0)
+ {
+ scope.prepend(copyDocScope.left(scopeOffset)+"::");
+ }
+ }
+ //printf("findDocsForMemberOrCompound: scope=`%s' name=`%s' arg=`%s'\n",scope.data(),name.data(),args.data());
+
+ // try if the link is to a member
+ MemberDef *md=0;
+ ClassDef *cd=0;
+ FileDef *fd=0;
+ NamespaceDef *nd=0;
+ GroupDef *gd=0;
+ PageInfo *pi=0;
+ bool found = getDefs(scope,name,args,md,cd,fd,nd,gd,FALSE,0,TRUE);
+ if (found && md)
+ {
+ *pDoc=md->documentation();
+ *pDef=md;
+ return TRUE;
+ }
+
+ QCString fullName=cmdArg;
+ if (scopeOffset>0)
+ {
+ fullName.prepend(copyDocScope.left(scopeOffset)+"::");
+ }
+
+ // try class, namespace, group, page, file reference
+ cd = Doxygen::classSDict[fullName];
+ if (cd) // class
+ {
+ *pDoc=cd->documentation();
+ *pDef=cd;
+ return TRUE;
+ }
+ nd = Doxygen::namespaceSDict[fullName];
+ if (nd) // namespace
+ {
+ *pDoc=nd->documentation();
+ *pDef=nd;
+ return TRUE;
+ }
+ gd = Doxygen::groupSDict[cmdArg];
+ if (gd) // group
+ {
+ *pDoc=gd->documentation();
+ *pDef=gd;
+ return TRUE;
+ }
+ pi = Doxygen::pageSDict->find(cmdArg);
+ if (pi) // page
+ {
+ *pDoc=pi->doc;
+ *pDef=(Definition *)pi;
+ return TRUE;
+ }
+ bool ambig;
+ fd = findFileDef(Doxygen::inputNameDict,cmdArg,ambig);
+ if (fd && !ambig) // file
+ {
+ *pDoc=fd->documentation();
+ *pDef=fd;
+ return TRUE;
+ }
+
+ if (scopeOffset==0)
+ {
+ scopeOffset=-1;
+ }
+ else
+ {
+ scopeOffset = copyDocScope.findRev("::",scopeOffset-1);
+ if (scopeOffset==-1) scopeOffset=0;
+ }
+ } while (scopeOffset>0);
+
+
+ return FALSE;
+}
+
+/* ----------------------------------------------------------------- */
#undef YY_INPUT
#define YY_INPUT(buf,result,max_size) result=yyread(buf,max_size);
@@ -943,7 +1095,6 @@ static int yyread(char *buf,int max_size)
//ATTR ((({BN}+[^\>]+)/">")?)
%}
-
CMD ("\\"|"@")
BN [ \t\n\r]
BL [ \t\r]*"\n"
@@ -1012,6 +1163,7 @@ OPARG "("[a-z_A-Z0-9,\<\> \t\*\&]*")"
OPNORM {OPNEW}|{OPDEL}|"+"|"-"|"*"|"/"|"%"|"^"|"&"|"|"|"~"|"!"|"="|"<"|">"|"+="|"-="|"*="|"/="|"%="|"^="|"&="|"|="|"<<"|">>"|"<<="|">>="|"=="|"!="|"<="|">="|"&&"|"||"|"++"|"--"|","|"->*"|"->"|"[]"|"()"
OPCAST {B}+[^(\r\n.,]+
OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
+LINKMASK [a-z_A-Z0-9:#.,~&*/\[\]<>()\-\+]+({B}*("const"|"volatile"))?
%option noyywrap
@@ -1064,6 +1216,9 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
%x DocDotFile
%x DocDotFileOpt
%x DocSkipLanguage
+%x DocCopyFind
+%x DocCopyArg
+%x DocCopySkipVerb
%%
@@ -1219,13 +1374,12 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocScan>{CMD}"link"/{BN} { BEGIN( DocLink ); }
<DocScan>"{"{CMD}"link"{BN}+ { BEGIN( DocJavaLink ); }
<DocSkipWord>[a-z_A-Z0-9.:()]+ { BEGIN( DocScan ); }
-<DocLink>[a-z_A-Z0-9:#.,~&*/\[\]<>()\-\+]+({B}*("const"|"volatile"))? { // TODO: support operators as well!
+<DocLink>{LINKMASK} { // TODO: support operators as well!
linkRef = stripKnownExtensions(yytext);
linkText = "";
BEGIN( DocLinkText );
}
-<DocJavaLink>([a-z_A-Z0-9]+".")+ { /* Skip scope prefix (TODO: fix) */ }
-<DocJavaLink>([a-z_A-Z0-9]*"#")?[a-z_A-Z0-9]+("("[a-z_A-Z0-9.,:~&*()\ \[\]]*")")?({B}*("const"|"volatile"))? { // TODO: support operators as well!
+<DocJavaLink>{LINKMASK} { // TODO: support operators as well!
linkRef = yytext;
linkText = "";
BEGIN( DocJavaLinkText );
@@ -2663,6 +2817,51 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocCode,DocEmphasis,DocBold,DocScan,Text>. {
outDoc->writeChar(*yytext);
}
+<DocCopyFind>{CMD}"copydoc"{B}+ { // found copydoc command
+ BEGIN(DocCopyArg);
+ }
+<DocCopyFind>{CMD}"verbatim"/[^a-z_A-Z0-9] { // skip verbatim sections
+ copyDocString+=yytext;
+ BEGIN(DocCopySkipVerb);
+ }
+<DocCopyFind>[^@\\\n]+ { copyDocString+=yytext; }
+<DocCopyFind>"\\\\"|"@@" { copyDocString+=yytext; /* skip escaped commands */ }
+<DocCopySkipVerb>[^@\\\n]+ { copyDocString+=yytext; }
+<DocCopySkipVerb>{CMD}"endverbatim" { copyDocString+=yytext;
+ BEGIN(DocCopyFind);
+ }
+<DocCopyFind,DocCopySkipVerb>\n { copyDocString+=yytext; }
+<DocCopyFind,DocCopySkipVerb>. { copyDocString+=yytext; }
+<DocCopyArg>{LINKMASK} { //printf("found @copydoc with arg `%s'\n",yytext);
+ QCString doc;
+ Definition *def;
+ if (findDocsForMemberOrCompound(yytext,&doc,&def))
+ {
+ //printf("found docs `%s'\n",doc.data());
+ if (copyDocDefList.findRef(def)!=-1)
+ {
+ warn(yyFileName,yyLineNr,"Recursive @copydoc relation!");
+ }
+ else
+ {
+ copyDocDefList.append(def);
+ pushContext();
+ inputString = doc;
+ inputPosition = 0;
+ BEGIN(DocCopyFind);
+ docYYlex();
+ popContext();
+ copyDocDefList.remove(def);
+ BEGIN(DocCopyFind);
+ }
+ }
+ else // reference not found!
+ {
+ warn(yyFileName,yyLineNr,"Argument `%s' of @copydoc command "
+ "could not be resolved!",yytext);
+ }
+ BEGIN(DocCopyFind);
+ }
<*>\n { yyLineNr++ ; }
<*>.
@@ -2672,57 +2871,33 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
void scanString(const char *s)
{
- const char *oldInputString = inputString;
- int oldInputPosition = inputPosition;
- int oldRule = YY_START;
- YY_BUFFER_STATE oldBuffer = YY_CURRENT_BUFFER;
- yy_switch_to_buffer(yy_create_buffer(docYYin, YY_BUF_SIZE));
+ pushContext();
inputString = s;
inputPosition = 0;
BEGIN( Text );
docYYlex();
- yy_delete_buffer(YY_CURRENT_BUFFER);
- yy_switch_to_buffer(oldBuffer);
- inputString = oldInputString;
- inputPosition = oldInputPosition;
- BEGIN( oldRule );
+ popContext();
}
void scanDoc(const char *s)
{
- const char *oldInputString = inputString;
- int oldInputPosition = inputPosition;
- int oldRule = YY_START;
- YY_BUFFER_STATE oldBuffer = YY_CURRENT_BUFFER;
- yy_switch_to_buffer(yy_create_buffer(docYYin, YY_BUF_SIZE));
+ pushContext();
inputString = s;
inputPosition = 0;
BEGIN( DocScan );
docYYlex();
- yy_delete_buffer(YY_CURRENT_BUFFER);
- yy_switch_to_buffer(oldBuffer);
- inputString = oldInputString;
- inputPosition = oldInputPosition;
- BEGIN( oldRule );
+ popContext();
}
void internalParseDocument(const char *s)
{
if (s==0) return;
- const char *oldInputString = inputString;
- int oldInputPosition = inputPosition;
- int oldRule = YY_START;
- YY_BUFFER_STATE oldBuffer = YY_CURRENT_BUFFER;
- yy_switch_to_buffer(yy_create_buffer(docYYin, YY_BUF_SIZE));
+ pushContext();
inputString = s;
inputPosition = 0;
BEGIN( DocScan );
docYYlex();
- yy_delete_buffer(YY_CURRENT_BUFFER);
- yy_switch_to_buffer(oldBuffer);
- inputString = oldInputString;
- inputPosition = oldInputPosition;
- BEGIN( oldRule );
+ popContext();
}
//----------------------------------------------------------------------------
@@ -2790,9 +2965,27 @@ void parseDocument(OutputDocInterface &od,const QCString &docString)
//----------------------------------------------------------------------------
+// in this pass all @copydoc commands are resolved.
+void resolveCopyDocCommands(const char *scope,QCString &docString)
+{
+ copyDocString.resize(0);
+ copyDocScope = scope;
+ inputString = docString;
+ inputPosition = 0;
+ docYYrestart( docYYin );
+ BEGIN( DocCopyFind );
+ docYYlex();
+ docString = copyDocString;
+}
+
+//----------------------------------------------------------------------------
+
void parseDoc(OutputDocInterface &od,const char *fileName,int startLine,
- const char *clName,MemberDef *md,const QCString &docString)
+ const char *clName,MemberDef *md,const QCString &docStr)
{
+ QCString docString=docStr;
+ resolveCopyDocCommands(clName,docString);
+
//printf("parseDoc(file=`%s',line=%d)\n",fileName,startLine);
initParser();
initParseCodeContext();
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 76a9a2d..20a7b57 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -2166,6 +2166,7 @@ static void findFriends()
fmd->setBodyDef(mmd->getBodyDef());
fmd->setBodyMember(mmd);
}
+ mmd->setDocsForDefinition(fmd->isDocsForDefinition());
}
}
}
@@ -7419,7 +7420,6 @@ void parseInput()
msg("Adding todo/test/bug list items...\n");
addListReferences();
-
}
void generateOutput()
diff --git a/src/translator_pl.h b/src/translator_pl.h
index bee4553..0e3ce6b 100644
--- a/src/translator_pl.h
+++ b/src/translator_pl.h
@@ -13,6 +13,8 @@
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
*
+ * Polish translation was updated to version 1.2.16 by
+ * Piotr Kaminski (Piotr.Kaminski@ctm.gdynia.pl)
*/
#ifndef TRANSLATOR_PL_H
@@ -20,7 +22,7 @@
#include "translator_adapter.h"
-class TranslatorPolish : public TranslatorAdapter_1_2_1
+class TranslatorPolish : public Translator
{
public:
@@ -48,6 +50,10 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
QCString latexBabelPackage()
{ return "polish"; }
+ /*! return the language charset. This will be used for the HTML output */
+ virtual QCString idLanguageCharset()
+ { return "iso-8859-2"; }
+
// --- Language translation methods -------------------
/*! used in the compound documentation before a list of related functions. */
@@ -457,7 +463,7 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
/*! this text is generated when the \\return command is used. */
QCString trReturns()
- { return "Powroty"; }
+ { return "Zwraca"; }
/*! this text is generated when the \\sa command is used. */
QCString trSeeAlso()
@@ -479,14 +485,14 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
/*! used as the title of page containing all the index of all namespaces. */
QCString trNamespaceList()
- { return "Lista Obszarów Nazw"; }
+ { return "Lista Przestrzeni Nazw"; }
/*! used as an introduction to the namespace list */
QCString trNamespaceListDescription(bool extractAll)
{
QCString result="Tutaj znajdują się wszystkie ";
if (!extractAll) result+="udokumentowane ";
- result+="obszary nazw wraz z ich krótkimi opisami:";
+ result+="przestrzenie nazw wraz z ich krótkimi opisami:";
return result;
}
@@ -540,7 +546,7 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
/*! used as the title of the HTML page of a namespace */
QCString trNamespaceReference(const char *namespaceName)
{
- QCString result="Referencje Obszaru Nazw ";
+ QCString result="Referencje Przestrzeni Nazw ";
result+=namespaceName;
return result;
}
@@ -626,7 +632,7 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
/*! This is put above each page as a link to all members of namespaces. */
QCString trNamespaceMembers()
- { return "Składowe Obszaru Nazw"; }
+ { return "Składowe Przestrzeni Nazw"; }
/*! This is an introduction to the page with all namespace members */
QCString trNamespaceMemberDescription(bool extractAll)
@@ -635,22 +641,22 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
if (!extractAll) result+="udokumentowanych ";
result+="składowych wraz z odnośnikami do ";
if (extractAll)
- result+="dokumentacji obszarów nazw dla każdej składowej:";
+ result+="dokumentacji przestrzeni nazw dla każdej składowej:";
else
- result+="obszarów nazw do których składowe te należą:";
+ result+="przestrzeni nazw do których składowe te należą:";
return result;
}
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
QCString trNamespaceIndex()
- { return "Indeks Obszarów Nazw"; }
+ { return "Indeks Przestrzeni Nazw"; }
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all namespaces.
*/
QCString trNamespaceDocumentation()
- { return "Dokumentacja Obszarów Nazw"; }
+ { return "Dokumentacja Przestrzeni Nazw"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990522
@@ -660,7 +666,7 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
* namespaces in a file.
*/
QCString trNamespaces()
- { return "Obszary Nazw"; }
+ { return "Przestrzenie Nazw"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990728
@@ -940,13 +946,13 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
"jest ustawiony na 200, odniesie to rezultat w następującym wykresie:"
"<p><center><img src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center>\n"
"<p>\n"
- "Pudełka w powyższym wykresie mają następujące znaczenie:\n"
+ "Prostokąty w powyższym wykresie mają następujące znaczenie:\n"
"<ul>\n"
- "<li>Wypełnione czarne pudełko reprezentuje strukturę lub klasę dla "
+ "<li>Wypełniony czarny prostokąt reprezentuje strukturę lub klasę dla "
"której został wygenerowany wykres.\n"
- "<li>Pudełko z czarną obwolutą oznacza udokumentowaną strukturę lub klasę.\n"
- "<li>Pudełko z szarą obwolutą oznacza nieudokumentowaną strukturę lub klasę.\n"
- "<li>Pudełko z czerwoną obwolutą oznacza udokumentowaną strukturę lub klasę dla\n"
+ "<li>Prostokąt z czarną obwolutą oznacza udokumentowaną strukturę lub klasę.\n"
+ "<li>Prostokąt z szarą obwolutą oznacza nieudokumentowaną strukturę lub klasę.\n"
+ "<li>Prostokąt z czerwoną obwolutą oznacza udokumentowaną strukturę lub klasę dla\n"
"której nie są pokazane wszystkie relacje dziedziczenia/zawierania. Wykres jest "
"okrojony, jeśli nie mieści się w określonych brzegach."
"</ul>\n"
@@ -981,6 +987,247 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
{
return "Lista Testu";
}
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.1
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a section header for KDE-2 IDL methods */
+ virtual QCString trDCOPMethods()
+ {
+ return "Metody DCOP";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.2
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a section header for IDL properties */
+ virtual QCString trProperties()
+ {
+ return "Właściwości";
+ }
+ /*! Used as a section header for IDL property documentation */
+ virtual QCString trPropertyDocumentation()
+ {
+ return "Dokumentacja Właściwości";
+ }
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.4
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used for Java interfaces in the summary section of Java packages */
+ virtual QCString trInterfaces()
+ {
+ return "Interfejsy";
+ }
+ /*! Used for Java classes in the summary section of Java packages */
+ virtual QCString trClasses()
+ {
+ if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
+ {
+ return "Struktury Danych";
+ }
+ else
+ {
+ return "Klasy";
+ }
+ }
+ /*! Used as the title of a Java package */
+ virtual QCString trPackage(const char *name)
+ {
+ return (QCString)"Pakiet "+name;
+ }
+ /*! Title of the package index page */
+ virtual QCString trPackageList()
+ {
+ return "Lista Pakietów";
+ }
+ /*! The description of the package index page */
+ virtual QCString trPackageListDescription()
+ {
+ return "Oto lista pakietów wraz z krótkim opisem (o ile jest dostępny):";
+ }
+ /*! The link name in the Quick links header for each page */
+ virtual QCString trPackages()
+ {
+ return "Pakiety";
+ }
+ /*! Used as a chapter title for Latex & RTF output */
+ virtual QCString trPackageDocumentation()
+ {
+ return "Dokumentacja Pakietu";
+ }
+ /*! Text shown before a multi-line define */
+ virtual QCString trDefineValue()
+ {
+ return "Wartość:";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.5
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a marker that is put before a \\bug item */
+ virtual QCString trBug()
+ {
+ return "Błąd";
+ }
+ /*! Used as the header of the bug list */
+ virtual QCString trBugList()
+ {
+ return "Lista błędów";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.6-20010422
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as ansicpg for RTF file */
+ virtual QCString trRTFansicp()
+ {
+ return "1250";
+ }
+
+ /*! Used as ansicpg for RTF fcharset */
+ virtual QCString trRTFCharSet()
+ {
+ return "238";
+ }
+
+ /*! Used as header RTF general index */
+ virtual QCString trRTFGeneralIndex()
+ {
+ return "Indeks";
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trClass(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Klas" : "klas"));
+ result+=(singular ? "a" : "y");
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trFile(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Plik" : "plik"));
+ if (!singular) result+="i";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trNamespace(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Przestrze" : "przestrze"));
+ result+=(singular ? "ń" : "nie");
+ result+=" nazw";
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trGroup(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Grupa" : "grupa"));
+ result+=(singular ? "a" : "y");
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trPage(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Ston" : "stron"));
+ result+=(singular ? "a" : "y");
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trMember(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Składow" : "składow"));
+ result+=(singular ? "a" : "e");
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trField(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Pol" : "pol"));
+ result+=(singular ? "e" : "a");
+ return result;
+ }
+
+ /*! This is used for translation of the word that will possibly
+ * be followed by a single name or by a list of names
+ * of the category.
+ */
+ virtual QCString trGlobal(bool first_capital, bool singular)
+ {
+ QCString result((first_capital ? "Global" : "global"));
+ result+=(singular ? "ny" : "ne");
+ return result;
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// 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)
+ {
+ QCString result((first_capital ? "Auto" : "auto"));
+ result += (singular) ? "r" : "rzy";
+ return result;
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.11
+//////////////////////////////////////////////////////////////////////////
+
+ /*! This text is put before the list of members referenced by a member
+ */
+ virtual QCString trReferences()
+ {
+ return "Wskazuje na";
+ }
+
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.2.13
+//////////////////////////////////////////////////////////////////////////
+
+
+ virtual QCString trImplementedFromList(int numEntries)
+ {
+ return "Implementuje "+trWriteList(numEntries)+".";
+ }
+
+ virtual QCString trImplementedInList(int numEntries)
+ {
+ return "Implementowany w "+trWriteList(numEntries)+".";
+ }
};