Commit ea948596 authored by dimitri's avatar dimitri

Release-1.2.6-20010319

parent f280bea9
DOXYGEN Version 1.2.6 DOXYGEN Version 1.2.6-20010319
Please read the installation section of the manual for instructions. Please read the installation section of the manual for instructions.
-------- --------
Dimitri van Heesch (11 March 2001) Dimitri van Heesch (19 March 2001)
DOXYGEN Version 1.2.6 DOXYGEN Version 1.2.6-20010319
Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions.
...@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at ...@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
Enjoy, Enjoy,
Dimitri van Heesch (11 March 2001) Dimitri van Heesch (19 March 2001)
1.2.6 1.2.6-20010319
...@@ -1544,6 +1544,15 @@ void init() ...@@ -1544,6 +1544,15 @@ void init()
ConfigString::File ConfigString::File
); );
addDependency("rtfStylesheetFile","generateRTF"); addDependency("rtfStylesheetFile","generateRTF");
ConfigString::add("rtfExtensionsFile",
"RTF_EXTENSIONS_FILE",
"",
"file to load rtf extensions from",
"Set optional variables used in the generation of an rtf document. \n"
"Syntax is similar to doxygen's config file.\n",
ConfigString::File
);
addDependency("rtfExtensionsFile","generateRTF");
//----------------------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------------------
ConfigInfo::add( "Man","configuration options related to the man page output"); ConfigInfo::add( "Man","configuration options related to the man page output");
//----------------------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------------------
......
...@@ -158,6 +158,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -158,6 +158,7 @@ followed by the descriptions of the tags grouped by category.
<li> \refitem cfg_quiet QUIET <li> \refitem cfg_quiet QUIET
<li> \refitem cfg_recursive RECURSIVE <li> \refitem cfg_recursive RECURSIVE
<li> \refitem cfg_repeat_brief REPEAT_BRIEF <li> \refitem cfg_repeat_brief REPEAT_BRIEF
<li> \refitem cfg_rtf_extensions_file RTF_EXTENSIONS_FILE
<li> \refitem cfg_rtf_hyperlinks RTF_HYPERLINKS <li> \refitem cfg_rtf_hyperlinks RTF_HYPERLINKS
<li> \refitem cfg_rtf_output RTF_OUTPUT <li> \refitem cfg_rtf_output RTF_OUTPUT
<li> \refitem cfg_rtf_stylesheet_file RTF_STYLESHEET_FILE <li> \refitem cfg_rtf_stylesheet_file RTF_STYLESHEET_FILE
...@@ -956,6 +957,13 @@ EXTRA_PACKAGES = times ...@@ -956,6 +957,13 @@ EXTRA_PACKAGES = times
See also section \ref doxygen_usage for information on how to generate See also section \ref doxygen_usage for information on how to generate
the default style sheet that doxygen normally uses. the default style sheet that doxygen normally uses.
\anchor cfg_rtf_extensions_file
<dt>\c RTF_EXTENSIONS_FILE <dd>
Set optional variables used in the generation of an rtf document.
Syntax is similar to doxygen's config file.
A template extensions file can be generated using
<code>doxygen -e rtf extensionFile</code>.
</dl> </dl>
\subsection man_output Man page related options \subsection man_output Man page related options
......
...@@ -175,6 +175,8 @@ Thanks go to: ...@@ -175,6 +175,8 @@ Thanks go to:
<li>The Comms group of <a href="http://www.symbian.com">Symbian</a> for donating <li>The Comms group of <a href="http://www.symbian.com">Symbian</a> for donating
me an ultra cool <a href="http://www.psion.com/revoplus>Revo plus</a> me an ultra cool <a href="http://www.psion.com/revoplus>Revo plus</a>
organizer! organizer!
<li>The band <a href="http://www.porcupinetree.com">Porcupine Tree</a> for
providing hours of great music to listen to while coding.
<li>many, many others for suggestions, patches and bug reports. <li>many, many others for suggestions, patches and bug reports.
</ul> </ul>
*/ */
......
Name: doxygen Name: doxygen
Version: 1.2.6 Version: 1.2.6-20010319
Summary: documentation system for C, C++ and IDL Summary: documentation system for C, C++ and IDL
Release: 1 Release: 1
Source0: doxygen-%{version}.src.tar.gz Source0: doxygen-%{version}.src.tar.gz
......
...@@ -84,7 +84,8 @@ void ClassList::writeDeclaration(OutputList &ol,const ClassDef::CompoundType *fi ...@@ -84,7 +84,8 @@ void ClassList::writeDeclaration(OutputList &ol,const ClassDef::CompoundType *fi
<< "\">" << convertToXML(cd->name()) << "</class>" << endl; << "\">" << convertToXML(cd->name()) << "</class>" << endl;
} }
ol.startMemberItem(FALSE); ol.startMemberItem(FALSE);
ol.writeString(cd->compoundTypeString()); QCString tmp = cd->compoundTypeString();
ol.writeString(tmp);
ol.writeString(" "); ol.writeString(" ");
ol.insertMemberAlign(); ol.insertMemberAlign();
if (isLink) if (isLink)
......
/* This file was generated by configgen on Sun Feb 25 14:30:18 2001 /* This file was generated by configgen on Mon Mar 19 20:34:58 2001
* from config_templ.h * from config_templ.h
* *
* DO NOT EDIT! * DO NOT EDIT!
...@@ -125,6 +125,7 @@ struct Config ...@@ -125,6 +125,7 @@ struct Config
static bool compactRTFFlag; /*!< generate more compact RTF */ static bool compactRTFFlag; /*!< generate more compact RTF */
static bool rtfHyperFlag; /*!< generate hyper links in RTF */ static bool rtfHyperFlag; /*!< generate hyper links in RTF */
static QCString rtfStylesheetFile; /*!< file to load stylesheet definitions from */ static QCString rtfStylesheetFile; /*!< file to load stylesheet definitions from */
static QCString rtfExtensionsFile; /*!< file to load rtf extensions from */
static bool generateMan; /*!< generate Man pages */ static bool generateMan; /*!< generate Man pages */
static QCString manOutputDir; /*!< the directory to put the man pages */ static QCString manOutputDir; /*!< the directory to put the man pages */
static QCString manExtension; /*!< extension the man page files */ static QCString manExtension; /*!< extension the man page files */
......
/* This file was generated by configgen on Mon Feb 26 19:52:21 2001 /* This file was generated by configgen on Mon Mar 19 20:34:59 2001
* from config_templ.l * from config_templ.l
* *
* DO NOT EDIT! * DO NOT EDIT!
...@@ -157,6 +157,7 @@ QCString Config::rtfOutputDir = "rtf"; ...@@ -157,6 +157,7 @@ QCString Config::rtfOutputDir = "rtf";
bool Config::compactRTFFlag = FALSE; bool Config::compactRTFFlag = FALSE;
bool Config::rtfHyperFlag = FALSE; bool Config::rtfHyperFlag = FALSE;
QCString Config::rtfStylesheetFile; QCString Config::rtfStylesheetFile;
QCString Config::rtfExtensionsFile;
bool Config::generateMan = TRUE; bool Config::generateMan = TRUE;
QCString Config::manOutputDir = "man"; QCString Config::manOutputDir = "man";
QCString Config::manExtension = ".3"; QCString Config::manExtension = ".3";
...@@ -446,6 +447,7 @@ static void readIncludeFile(const char *incName) ...@@ -446,6 +447,7 @@ static void readIncludeFile(const char *incName)
<Start>"COMPACT_RTF"[ \t]*"=" { BEGIN(GetBool); b=&Config::compactRTFFlag; } <Start>"COMPACT_RTF"[ \t]*"=" { BEGIN(GetBool); b=&Config::compactRTFFlag; }
<Start>"RTF_HYPERLINKS"[ \t]*"=" { BEGIN(GetBool); b=&Config::rtfHyperFlag; } <Start>"RTF_HYPERLINKS"[ \t]*"=" { BEGIN(GetBool); b=&Config::rtfHyperFlag; }
<Start>"RTF_STYLESHEET_FILE"[ \t]*"=" { BEGIN(GetString); s=&Config::rtfStylesheetFile; s->resize(0); } <Start>"RTF_STYLESHEET_FILE"[ \t]*"=" { BEGIN(GetString); s=&Config::rtfStylesheetFile; s->resize(0); }
<Start>"RTF_EXTENSIONS_FILE"[ \t]*"=" { BEGIN(GetString); s=&Config::rtfExtensionsFile; s->resize(0); }
<Start>"GENERATE_MAN"[ \t]*"=" { BEGIN(GetBool); b=&Config::generateMan; } <Start>"GENERATE_MAN"[ \t]*"=" { BEGIN(GetBool); b=&Config::generateMan; }
<Start>"MAN_OUTPUT"[ \t]*"=" { BEGIN(GetString); s=&Config::manOutputDir; s->resize(0); } <Start>"MAN_OUTPUT"[ \t]*"=" { BEGIN(GetString); s=&Config::manOutputDir; s->resize(0); }
<Start>"MAN_EXTENSION"[ \t]*"=" { BEGIN(GetString); s=&Config::manExtension; s->resize(0); } <Start>"MAN_EXTENSION"[ \t]*"=" { BEGIN(GetString); s=&Config::manExtension; s->resize(0); }
...@@ -762,6 +764,7 @@ void dumpConfig() ...@@ -762,6 +764,7 @@ void dumpConfig()
printf("compactRTFFlag=`%d'\n",Config::compactRTFFlag); printf("compactRTFFlag=`%d'\n",Config::compactRTFFlag);
printf("rtfHyperFlag=`%d'\n",Config::rtfHyperFlag); printf("rtfHyperFlag=`%d'\n",Config::rtfHyperFlag);
printf("rtfStylesheetFile=`%s'\n",Config::rtfStylesheetFile.data()); printf("rtfStylesheetFile=`%s'\n",Config::rtfStylesheetFile.data());
printf("rtfExtensionsFile=`%s'\n",Config::rtfExtensionsFile.data());
printf("# configuration options related to the man page output\n"); printf("# configuration options related to the man page output\n");
printf("generateMan=`%d'\n",Config::generateMan); printf("generateMan=`%d'\n",Config::generateMan);
printf("manOutputDir=`%s'\n",Config::manOutputDir.data()); printf("manOutputDir=`%s'\n",Config::manOutputDir.data());
...@@ -929,6 +932,7 @@ void Config::init() ...@@ -929,6 +932,7 @@ void Config::init()
Config::compactRTFFlag = FALSE; Config::compactRTFFlag = FALSE;
Config::rtfHyperFlag = FALSE; Config::rtfHyperFlag = FALSE;
Config::rtfStylesheetFile.resize(0); Config::rtfStylesheetFile.resize(0);
Config::rtfExtensionsFile.resize(0);
Config::generateMan = TRUE; Config::generateMan = TRUE;
Config::manOutputDir = "man"; Config::manOutputDir = "man";
Config::manExtension = ".3"; Config::manExtension = ".3";
...@@ -2020,6 +2024,16 @@ void writeTemplateConfig(QFile *f,bool sl) ...@@ -2020,6 +2024,16 @@ void writeTemplateConfig(QFile *f,bool sl)
writeStringValue(t,Config::rtfStylesheetFile); writeStringValue(t,Config::rtfStylesheetFile);
t << "\n"; t << "\n";
if (!sl) if (!sl)
{
t << "\n";
t << "# Set optional variables used in the generation of an rtf document. \n";
t << "# Syntax is similar to doxygen's config file.\n";
t << "\n";
}
t << "RTF_EXTENSIONS_FILE = ";
writeStringValue(t,Config::rtfExtensionsFile);
t << "\n";
if (!sl)
{ {
t << "\n"; t << "\n";
} }
...@@ -2698,6 +2712,7 @@ void substituteEnvironmentVars() ...@@ -2698,6 +2712,7 @@ void substituteEnvironmentVars()
substEnvVarsInString( Config::latexHeaderFile ); substEnvVarsInString( Config::latexHeaderFile );
substEnvVarsInString( Config::rtfOutputDir ); substEnvVarsInString( Config::rtfOutputDir );
substEnvVarsInString( Config::rtfStylesheetFile ); substEnvVarsInString( Config::rtfStylesheetFile );
substEnvVarsInString( Config::rtfExtensionsFile );
substEnvVarsInString( Config::manOutputDir ); substEnvVarsInString( Config::manOutputDir );
substEnvVarsInString( Config::manExtension ); substEnvVarsInString( Config::manExtension );
substEnvVarsInStrList( Config::includePath ); substEnvVarsInStrList( Config::includePath );
......
...@@ -344,11 +344,11 @@ void Definition::writeSourceDef(OutputList &ol,const char *) ...@@ -344,11 +344,11 @@ void Definition::writeSourceDef(OutputList &ol,const char *)
void Definition::writeInlineCode(OutputList &ol,const char *scopeName) void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
{ {
ol.pushGeneratorState(); ol.pushGeneratorState();
//printf("Source Fragment %s: %d-%d bodyDef=%p\n",name().data(),
// startBodyLine,endBodyLine,bodyDef);
if (Config::inlineSourceFlag && startBodyLine!=-1 && if (Config::inlineSourceFlag && startBodyLine!=-1 &&
endBodyLine>=startBodyLine && bodyDef) endBodyLine>=startBodyLine && bodyDef)
{ {
//printf("Source Fragment %s: %d-%d\n",name().data(),
// startBodyLine,endBodyLine);
QCString codeFragment; QCString codeFragment;
int actualStart=startBodyLine,actualEnd=endBodyLine; int actualStart=startBodyLine,actualEnd=endBodyLine;
if (readCodeFragment(bodyDef->absFilePath(), if (readCodeFragment(bodyDef->absFilePath(),
...@@ -425,6 +425,7 @@ void Definition::writeSourceRefs(OutputList &ol,const char *scopeName) ...@@ -425,6 +425,7 @@ void Definition::writeSourceRefs(OutputList &ol,const char *scopeName)
} }
parseText(ol,ldefLine.right(ldefLine.length()-index)); parseText(ol,ldefLine.right(ldefLine.length()-index));
ol.writeString("."); ol.writeString(".");
ol.newParagraph();
} }
ol.popGeneratorState(); ol.popGeneratorState();
} }
......
...@@ -625,7 +625,8 @@ static void forceEndItemList() ...@@ -625,7 +625,8 @@ static void forceEndItemList()
enum ImageTypes enum ImageTypes
{ {
IT_Html, IT_Html,
IT_Latex IT_Latex,
IT_RTF
}; };
// search for an image in the imageNameDict and if found // search for an image in the imageNameDict and if found
...@@ -657,6 +658,9 @@ static QCString findAndCopyImage(const char *fileName,ImageTypes type) ...@@ -657,6 +658,9 @@ static QCString findAndCopyImage(const char *fileName,ImageTypes type)
case IT_Latex: case IT_Latex:
outputDir = Config::latexOutputDir; outputDir = Config::latexOutputDir;
break; break;
case IT_RTF:
outputDir = Config::rtfOutputDir;
break;
} }
QCString outputFile = outputDir+"/"+result; QCString outputFile = outputDir+"/"+result;
QFile outImage(QString(outputFile.data())); QFile outImage(QString(outputFile.data()));
...@@ -731,6 +735,16 @@ void writeImage(ImageTypes it,const char *size) ...@@ -731,6 +735,16 @@ void writeImage(ImageTypes it,const char *size)
outDoc->endImage(hasCaption); outDoc->endImage(hasCaption);
} }
break; break;
case IT_RTF:
{
outDoc->disableAllBut(OutputGenerator::RTF);
outDoc->startImage(curImageName,0,hasCaption);
if (hasCaption)
{
scanString(curImageCaption);
}
outDoc->endImage(hasCaption);
}
} }
outDoc->popGeneratorState(); outDoc->popGeneratorState();
} }
...@@ -864,6 +878,8 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG}) ...@@ -864,6 +878,8 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
%x DocHtmlImageOpt %x DocHtmlImageOpt
%x DocLatexImageName %x DocLatexImageName
%x DocLatexImageOpt %x DocLatexImageOpt
%x DocRtfImageName
%x DocRtfImageOpt
%% %%
...@@ -1708,6 +1724,9 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG}) ...@@ -1708,6 +1724,9 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocImage>[lL][aA][tT][eE][xX] { <DocImage>[lL][aA][tT][eE][xX] {
BEGIN(DocLatexImageName); BEGIN(DocLatexImageName);
} }
<DocImage>[rR][tT][fF] {
BEGIN(DocRtfImageName);
}
<DocHtmlImageName>{FILE}|{URLMASK} { <DocHtmlImageName>{FILE}|{URLMASK} {
curImageName = findAndCopyImage(stripQuotes(yytext),IT_Html); curImageName = findAndCopyImage(stripQuotes(yytext),IT_Html);
curImageCaption.resize(0); curImageCaption.resize(0);
...@@ -1727,6 +1746,24 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG}) ...@@ -1727,6 +1746,24 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocHtmlImageOpt>\"[^\n"]*\" { <DocHtmlImageOpt>\"[^\n"]*\" {
curImageCaption=stripQuotes(yytext); curImageCaption=stripQuotes(yytext);
} }
<DocRtfImageName>{FILE} {
curImageName = findAndCopyImage(stripQuotes(yytext),IT_RTF);
curImageCaption.resize(0);
if (curImageName.isEmpty())
{
BEGIN(DocScan);
}
else
{
BEGIN(DocRtfImageOpt);
}
}
<DocRtfImageOpt>\n {
writeImage(IT_RTF,0);
}
<DocRtfImageOpt>\"[^\n"]*\" {
curImageCaption=stripQuotes(yytext);
}
<DocLatexImageName>{FILE} { <DocLatexImageName>{FILE} {
curImageName = findAndCopyImage(stripQuotes(yytext),IT_Latex); curImageName = findAndCopyImage(stripQuotes(yytext),IT_Latex);
curImageCaption.resize(0); curImageCaption.resize(0);
......
...@@ -407,7 +407,6 @@ static void buildGroupList(Entry *root) ...@@ -407,7 +407,6 @@ static void buildGroupList(Entry *root)
gd->addSectionsToDefinition(root->anchors); gd->addSectionsToDefinition(root->anchors);
Doxygen::groupList.append(gd); Doxygen::groupList.append(gd);
Doxygen::groupDict.insert(root->name,gd); Doxygen::groupDict.insert(root->name,gd);
addGroupToGroups(root,gd);
gd->setRefItems(root->todoId,root->testId,root->bugId); gd->setRefItems(root->todoId,root->testId,root->bugId);
} }
} }
...@@ -419,6 +418,25 @@ static void buildGroupList(Entry *root) ...@@ -419,6 +418,25 @@ static void buildGroupList(Entry *root)
} }
} }
static void organizeSubGroups(Entry *root)
{
if (root->section==Entry::GROUPDOC_SEC && !root->name.isEmpty())
{
GroupDef *gd;
if ((gd=Doxygen::groupDict[root->name]))
{
addGroupToGroups(root,gd);
}
}
EntryListIterator eli(*root->sublist);
Entry *e;
for (;(e=eli.current());++eli)
{
organizeSubGroups(e);
}
}
//---------------------------------------------------------------------- //----------------------------------------------------------------------
static void buildFileList(Entry *root) static void buildFileList(Entry *root)
...@@ -3813,12 +3831,13 @@ static void findMemberDocumentation(Entry *root) ...@@ -3813,12 +3831,13 @@ static void findMemberDocumentation(Entry *root)
compoundKeywordDict.find(root->type)==0 // that is not a keyword compoundKeywordDict.find(root->type)==0 // that is not a keyword
// (to skip forward declaration of class etc.) // (to skip forward declaration of class etc.)
) )
) && !root->stat && // not static ) && !root->stat // not static
(!root->doc.isEmpty() || // has detailed docs /* && (
!root->brief.isEmpty() || // has brief docs !root->doc.isEmpty() || // has detailed docs
(root->memSpec&Entry::Inline) || // is inline !root->brief.isEmpty() || // has brief docs
root->mGrpId!=-1 // is part of a group (root->memSpec&Entry::Inline) || // is inline
) root->mGrpId!=-1 || // is part of a group
) */
) )
{ {
//printf("Documentation for member `%s' found args=`%s' excp=`%s'\n", //printf("Documentation for member `%s' found args=`%s' excp=`%s'\n",
...@@ -4423,9 +4442,9 @@ static void addSourceReferences() ...@@ -4423,9 +4442,9 @@ static void addSourceReferences()
NamespaceDef *nd=md->getNamespaceDef(); NamespaceDef *nd=md->getNamespaceDef();
FileDef *fd=md->getBodyDef(); FileDef *fd=md->getBodyDef();
GroupDef *gd=md->getGroupDef(); GroupDef *gd=md->getGroupDef();
if (md->getStartBodyLine()!=-1 && md->isLinkableInProject() && if (fd && md->getStartBodyLine()!=-1 && md->isLinkableInProject() &&
((nd && nd->isLinkableInProject()) || ((nd && nd->isLinkableInProject()) ||
(fd && fd->isLinkableInProject()) || (fd->isLinkableInProject()) ||
(gd && gd->isLinkableInProject()) (gd && gd->isLinkableInProject())
) )
) )
...@@ -5661,6 +5680,8 @@ static void usage(const char *name) ...@@ -5661,6 +5680,8 @@ static void usage(const char *name)
msg(" RTF: %s -w rtf styleSheetFile\n",name); msg(" RTF: %s -w rtf styleSheetFile\n",name);
msg(" HTML: %s -w html headerFile footerFile styleSheetFile [configFile]\n",name); msg(" HTML: %s -w html headerFile footerFile styleSheetFile [configFile]\n",name);
msg(" LaTeX: %s -w latex headerFile styleSheetFile [configFile]\n\n",name); msg(" LaTeX: %s -w latex headerFile styleSheetFile [configFile]\n\n",name);
msg("5) Use doxygen to generate an rtf extensions file\n");
msg(" RTF: %s -e rtf extensionsFile\n\n",name);
msg("If -s is specified the comments in the config file will be omitted.\n"); msg("If -s is specified the comments in the config file will be omitted.\n");
msg("If configName is omitted `Doxyfile' will be used as a default.\n\n"); msg("If configName is omitted `Doxyfile' will be used as a default.\n\n");
exit(1); exit(1);
...@@ -5726,6 +5747,30 @@ void readConfiguration(int argc, char **argv) ...@@ -5726,6 +5747,30 @@ void readConfiguration(int argc, char **argv)
case 'u': case 'u':
updateConfig=TRUE; updateConfig=TRUE;
break; break;
case 'e':
formatName=getArg(argc,argv,optind);
if (!formatName)
{
err("Error:option -e is missing format specifier rtf.\n");
exit(1);
}
if (stricmp(formatName,"rtf")==0)
{
if (optind+1>=argc)
{
err("Error: option \"-e rtf\" is missing an extensions file name\n");
exit(1);
}
QFile f;
if (openOutputFile(argv[optind+1],f))
{
RTFGenerator::writeExtensionsFile(f);
}
exit(1);
}
err("Error: option \"-e\" has invalid format specifier.\n");
exit(1);
break;
case 'w': case 'w':
formatName=getArg(argc,argv,optind); formatName=getArg(argc,argv,optind);
if (!formatName) if (!formatName)
...@@ -5982,7 +6027,12 @@ void parseInput() ...@@ -5982,7 +6027,12 @@ void parseInput()
s=Config::inputSources.first(); s=Config::inputSources.first();
while (s) while (s)
{ {
inputSize+=readFileOrDirectory(s,&Doxygen::inputNameList, QCString path=s;
uint l = path.length();
// strip trailing slashes
if (path.at(l-1)=='\\' || path.at(l-1)=='/') path=path.left(l-1);
inputSize+=readFileOrDirectory(path,&Doxygen::inputNameList,
Doxygen::inputNameDict,&excludeNameDict, Doxygen::inputNameDict,&excludeNameDict,
&Config::filePatternList, &Config::filePatternList,
&Config::excludePatternList, &Config::excludePatternList,
...@@ -6108,6 +6158,7 @@ void parseInput() ...@@ -6108,6 +6158,7 @@ void parseInput()
msg("Building group list...\n"); msg("Building group list...\n");
buildGroupList(root); buildGroupList(root);
organizeSubGroups(root);
msg("Building namespace list...\n"); msg("Building namespace list...\n");
buildNamespaceList(root); buildNamespaceList(root);
......
...@@ -668,10 +668,11 @@ void FileDef::addIncludedByDependency(FileDef *fd,const char *incName,bool local ...@@ -668,10 +668,11 @@ void FileDef::addIncludedByDependency(FileDef *fd,const char *incName,bool local
bool FileDef::generateSourceFile() const bool FileDef::generateSourceFile() const
{ {
QCString extension = name().right(4);
return !isReference() && return !isReference() &&
(Config::sourceBrowseFlag || (Config::sourceBrowseFlag ||
(Config::verbatimHeaderFlag && guessSection(name())==Entry::HEADER_SEC) (Config::verbatimHeaderFlag && guessSection(name())==Entry::HEADER_SEC)
) && ) &&
name().right(4)!=".doc" && name().right(4)!=".txt"; extension!=".doc" && extension!=".txt" && extension!=".dox";
} }
...@@ -38,6 +38,7 @@ GroupDef::GroupDef(const char *df,int dl,const char *na,const char *t) : ...@@ -38,6 +38,7 @@ GroupDef::GroupDef(const char *df,int dl,const char *na,const char *t) :
fileList = new FileList; fileList = new FileList;
classList = new ClassList; classList = new ClassList;
groupList = new GroupList; groupList = new GroupList;
parentGroupList = new GroupList;
namespaceList = new NamespaceList; namespaceList = new NamespaceList;
pageDict = new PageSDict(257); pageDict = new PageSDict(257);
exampleDict = new PageSDict(257); exampleDict = new PageSDict(257);
...@@ -63,6 +64,7 @@ GroupDef::~GroupDef() ...@@ -63,6 +64,7 @@ GroupDef::~GroupDef()
delete fileList; delete fileList;
delete classList; delete classList;
delete groupList; delete groupList;
delete parentGroupList;
delete namespaceList; delete namespaceList;
delete pageDict; delete pageDict;
delete exampleDict; delete exampleDict;
...@@ -242,6 +244,20 @@ void GroupDef::addGroup(const GroupDef *def) ...@@ -242,6 +244,20 @@ void GroupDef::addGroup(const GroupDef *def)
groupList->append(def); groupList->append(def);
} }
void GroupDef::addParentGroup(const GroupDef *def)
{
if (Config::sortMembersFlag)
parentGroupList->inSort(def);
else
parentGroupList->append(def);
}
bool GroupDef::isASubGroup() const
{
return parentGroupList->count()!=0;
}
int GroupDef::countMembers() const int GroupDef::countMembers() const
{ {
return fileList->count()+ return fileList->count()+
...@@ -569,6 +585,7 @@ void addGroupToGroups(Entry *root,GroupDef *subGroup) ...@@ -569,6 +585,7 @@ void addGroupToGroups(Entry *root,GroupDef *subGroup)
if (!s->isEmpty() && (gd=Doxygen::groupDict[*s])) if (!s->isEmpty() && (gd=Doxygen::groupDict[*s]))
{ {
gd->addGroup(subGroup); gd->addGroup(subGroup);
subGroup->addParentGroup(gd);
} }
} }
} }
......
...@@ -52,6 +52,7 @@ class GroupDef : public Definition ...@@ -52,6 +52,7 @@ class GroupDef : public Definition
void addClass(const ClassDef *def); void addClass(const ClassDef *def);
void addNamespace(const NamespaceDef *def); void addNamespace(const NamespaceDef *def);
void addGroup(const GroupDef *def); void addGroup(const GroupDef *def);
void addParentGroup(const GroupDef *def);
void addPage(PageInfo *def); // pages in this group void addPage(PageInfo *def); // pages in this group
void addExample(const PageInfo *def); // examples in this group void addExample(const PageInfo *def); // examples in this group
void insertMember(MemberDef *def); void insertMember(MemberDef *def);
...@@ -65,6 +66,7 @@ class GroupDef : public Definition ...@@ -65,6 +66,7 @@ class GroupDef : public Definition
{ {
return isLinkableInProject() || isReference(); return isLinkableInProject() || isReference();
} }
bool isASubGroup() const;
void computeAnchors(); void computeAnchors();
void addMembersToMemberGroup(); void addMembersToMemberGroup();
...@@ -72,7 +74,8 @@ class GroupDef : public Definition ...@@ -72,7 +74,8 @@ class GroupDef : public Definition
bool visited; // number of times accessed for output - KPW bool visited; // number of times accessed for output - KPW
friend void writeGroupTreeNode(OutputList&, GroupDef*); // make accessible for writing tree view of group in index.cpp - KPW friend void writeGroupTreeNode(OutputList&, GroupDef*,bool);
// make accessible for writing tree view of group in index.cpp - KPW
protected: protected:
void addMemberListToGroup(MemberList *,bool (MemberDef::*)() const); void addMemberListToGroup(MemberList *,bool (MemberDef::*)() const);
...@@ -84,6 +87,7 @@ class GroupDef : public Definition ...@@ -84,6 +87,7 @@ class GroupDef : public Definition
ClassList *classList; // list of classes in the group ClassList *classList; // list of classes in the group
NamespaceList *namespaceList; // list of namespaces in the group NamespaceList *namespaceList; // list of namespaces in the group
GroupList *groupList; // list of sub groups. GroupList *groupList; // list of sub groups.
GroupList *parentGroupList; // list of parent groups.
PageSDict *pageDict; // list of pages in the group PageSDict *pageDict; // list of pages in the group
PageSDict *exampleDict; // list of examples in the group PageSDict *exampleDict; // list of examples in the group
......
...@@ -2122,7 +2122,7 @@ void writeGraphInfo(OutputList &ol) ...@@ -2122,7 +2122,7 @@ void writeGraphInfo(OutputList &ol)
* \author KPW * \author KPW
*/ */
void writeGroupTreeNode(OutputList &ol, GroupDef *gd) void writeGroupTreeNode(OutputList &ol, GroupDef *gd,bool subLevel)
{ {
HtmlHelp *htmlHelp=0; HtmlHelp *htmlHelp=0;
FTVHelp *ftvHelp = 0; FTVHelp *ftvHelp = 0;
...@@ -2139,7 +2139,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd) ...@@ -2139,7 +2139,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd)
GroupDef *subgd = 0; GroupDef *subgd = 0;
GroupListIterator gli(*gd->groupList); GroupListIterator gli(*gd->groupList);
if (!gd->visited) if (!gd->visited && (!gd->isASubGroup() || subLevel))
{ {
//printf("gd->name()=%s #members=%d\n",gd->name().data(),gd->countMembers()); //printf("gd->name()=%s #members=%d\n",gd->name().data(),gd->countMembers());
// write group info // write group info
...@@ -2200,7 +2200,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd) ...@@ -2200,7 +2200,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd)
ol.startIndexList(); ol.startIndexList();
for (gli.toLast();(subgd=gli.current());--gli) for (gli.toLast();(subgd=gli.current());--gli)
{ {
writeGroupTreeNode(ol,subgd); writeGroupTreeNode(ol,subgd,TRUE);
} }
ol.endIndexList(); ol.endIndexList();
} }
...@@ -2403,7 +2403,7 @@ void writeGroupHierarchy(OutputList &ol) ...@@ -2403,7 +2403,7 @@ void writeGroupHierarchy(OutputList &ol)
GroupDef *gd; GroupDef *gd;
for (;(gd=gli.current());++gli) for (;(gd=gli.current());++gli)
{ {
writeGroupTreeNode(ol,gd); writeGroupTreeNode(ol,gd,FALSE);
} }
ol.endIndexList(); ol.endIndexList();
} }
......
...@@ -1432,7 +1432,7 @@ bool MemberDef::isLinkable() ...@@ -1432,7 +1432,7 @@ bool MemberDef::isLinkable()
bool MemberDef::detailsAreVisible() const bool MemberDef::detailsAreVisible() const
{ {
return !documentation().isEmpty() || // has detailed docs return !documentation().isEmpty() || // has detailed docs
//(Config::sourceBrowseFlag && startBodyLine!=-1 && bodyDef) || // has reference to sources //((Config::sourceBrowseFlag || Config::inlineSourceFlag) && startBodyLine!=-1 && bodyDef) || // has reference to sources
(mtype==Enumeration && docEnumValues) || // has enum values (mtype==Enumeration && docEnumValues) || // has enum values
(mtype==EnumValue && !briefDescription().isEmpty()) || // is doc enum value (mtype==EnumValue && !briefDescription().isEmpty()) || // is doc enum value
(!briefDescription().isEmpty() && (!briefDescription().isEmpty() &&
......
...@@ -46,6 +46,16 @@ struct ListItemInfo ...@@ -46,6 +46,16 @@ struct ListItemInfo
}; };
static ListItemInfo listItemInfo[indentLevels]; static ListItemInfo listItemInfo[indentLevels];
static QCString title;
static QCString subject;
static QCString comments;
static QCString company;
static QCString logoFilename;
static QCString author;
static QCString manager;
static QCString documentType;
static QCString documentId;
static QCString keywords;
// it is undocumented as far as I know, but // it is undocumented as far as I know, but
// "."'s in a bookmarkname are converted to "_"'s // "."'s in a bookmarkname are converted to "_"'s
...@@ -582,6 +592,102 @@ static void loadStylesheet(const char *name, QDict<StyleData>& dict) ...@@ -582,6 +592,102 @@ static void loadStylesheet(const char *name, QDict<StyleData>& dict)
static QDict<StyleData> Rtf_Style(257); static QDict<StyleData> Rtf_Style(257);
void RTFGenerator::writeExtensionsFile(QFile &file)
{
QTextStream t(&file);
t << "# Generated by doxygen " << versionString << "\n\n";
t << "# This file describes extensions used for generating RTF output.\n";
t << "# All text after a hash (#) is considered a comment and will be ignored.\n";
t << "# Remove a hash to activate a line.\n\n";
t << "# Overrides the project title.\n";
t << "#Title = \n\n";
t << "# Name of the company that produced this document.\n";
t << "#Company = \n\n";
t << "# Filename of a company or project logo.\n";
t << "#LogoFilename = \n\n";
t << "# Author of the document.\n";
t << "#Author = \n\n";
t << "# Type of document (e.g. Design Specification, User Manual, etc.).\n";
t << "#DocumentType = \n\n";
t << "# Document tracking number.\n";
t << "#DocumentId = \n\n";
t << "# Name of the author's manager.\n";
t << "# This field is not displayed in the document itself, but it is \n";
t << "# available in the information block of the rtf file. In Microsoft \n";
t << "# Word, it is available under File:Properties.\n";
t << "#Manager = \n\n";
t << "# Subject of the document.\n";
t << "# This field is not displayed in the document itself, but it is \n";
t << "# available in the information block of the rtf file. In Microsoft \n";
t << "# Word, it is available under File:Properties.\n";
t << "#Subject = \n\n";
t << "# Comments regarding the document.\n";
t << "# This field is not displayed in the document itself, but it is \n";
t << "# available in the information block of the rtf file. In Microsoft \n";
t << "# Word, it is available under File:Properties.\n";
t << "#Comments = \n\n";
t << "# Keywords associated with the document.\n";
t << "# This field is not displayed in the document itself, but it is \n";
t << "# available in the information block of the rtf file. In Microsoft \n";
t << "# Word, it is available under File:Properties.\n";
t << "#Keywords = \n\n";
}
static void loadExtensions(const char *name)
{
QFile file(name);
if (!file.open(IO_ReadOnly))
{
err("Can't open RTF extensions file %s. Using defaults.\n",name);
return;
}
msg("Loading RTF extensions %s...\n",name);
static const QRegExp separator("[ \t]*=[ \t]*");
uint lineNr=1;
QTextStream t(&file);
while (!t.eof())
{
QCString s(4096); // string buffer of max line length
s = t.readLine().stripWhiteSpace();
if (s.length()==0 || s.at(0)=='#') continue; // skip blanks & comments
int sepLength;
int sepStart = separator.match(s,0,&sepLength);
if (sepStart<=0) // no valid assignment statement
{
warn(name,lineNr,"Assignment of extension field expected!\n");
continue;
}
QCString key=s.left(sepStart);
QCString data=s.data() + sepStart + sepLength;
if (key == "Title") title = data.data();
if (key == "Subject") subject = data.data();
if (key == "Comments") comments = data.data();
if (key == "Company") company = data.data();
if (key == "LogoFilename") logoFilename = data.data();
if (key == "Author") author = data.data();
if (key == "Manager") manager = data.data();
if (key == "DocumentType") documentType = data.data();
if (key == "DocumentId") documentId = data.data();
if (key == "Keywords") keywords = data.data();
lineNr++;
}
}
void RTFGenerator::init() void RTFGenerator::init()
{ {
QCString dir=Config::rtfOutputDir; QCString dir=Config::rtfOutputDir;
...@@ -607,6 +713,12 @@ void RTFGenerator::init() ...@@ -607,6 +713,12 @@ void RTFGenerator::init()
// overwrite some (or all) definitions from file // overwrite some (or all) definitions from file
if (!Config::rtfStylesheetFile.isEmpty()) if (!Config::rtfStylesheetFile.isEmpty())
loadStylesheet(Config::rtfStylesheetFile, Rtf_Style); loadStylesheet(Config::rtfStylesheetFile, Rtf_Style);
// If user has defined an extension file, load its contents.
if (Config::rtfExtensionsFile)
{
loadExtensions(Config::rtfExtensionsFile);
}
} }
static QCString makeIndexName(const char *s,int i) static QCString makeIndexName(const char *s,int i)
...@@ -768,11 +880,20 @@ void RTFGenerator::startIndexSection(IndexSections is) ...@@ -768,11 +880,20 @@ void RTFGenerator::startIndexSection(IndexSections is)
case isTitlePageStart: case isTitlePageStart:
// basic RTFstart // basic RTFstart
// get readyfor author etc // get readyfor author etc
t << "{\\info \n"; t << "{\\info \n";
t << "{\\title "; t << "{\\title {\\comment ";
break; break;
case isTitlePageAuthor: case isTitlePageAuthor:
t << "}\n{\\author "; t << "}\n";
if (subject) t << "{\\subject " << subject << "}\n";
if (comments) t << "{\\comment " << comments << "}\n";
if (company) t << "{\\company " << company << "}\n";
if (author) t << "{\\author " << author << "}\n";
if (manager) t << "{\\manager " << manager << "}\n";
if (documentType) t << "{\\category " << documentType << "}\n";
if (keywords) t << "{\\keywords " << keywords << "}\n";
t << "{\\comment ";
break; break;
case isMainPage: case isMainPage:
//Introduction //Introduction
...@@ -917,29 +1038,64 @@ void RTFGenerator::endIndexSection(IndexSections is) ...@@ -917,29 +1038,64 @@ void RTFGenerator::endIndexSection(IndexSections is)
switch (is) switch (is)
{ {
case isTitlePageStart: case isTitlePageStart:
if (title)
// User has overridden document title in extensions file
t << "}" << title;
else
t << "}" << Config::projectName;
break; break;
case isTitlePageAuthor: case isTitlePageAuthor:
{ {
t << " Doxygen}\n" t << "Doxgyen. }\n";
"{\\creatim " << dateToRTFDateString() << "}\n" t << "{\\creatim " << dateToRTFDateString() << "}\n}";
"}"; DBG_RTF(t << "{\\comment end of infoblock}\n");
DBG_RTF(t << "{\\comment end of infoblock}\n")
// setup for this section // setup for this section
t << Rtf_Style_Reset <<"\n"; t << Rtf_Style_Reset <<"\n";
t <<"\\sectd\\pgnlcrm\n"; t <<"\\sectd\\pgnlcrm\n";
t <<"{\\footer "<<Rtf_Style["Footer"]->reference << "{\\chpgn}}\n"; t <<"{\\footer "<<Rtf_Style["Footer"]->reference << "{\\chpgn}}\n";
// the title entry // the title entry
DBG_RTF(t << "{\\comment begin title page}\n") DBG_RTF(t << "{\\comment begin title page}\n")
t << Rtf_Style_Reset << Rtf_Style["SubTitle"]->reference << endl; // set to title style
t << "\\vertalc\\qc\\par\\par\\par\\par\\par\\par\\par";
if (logoFilename)
{
t << "{\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE " << logoFilename;
t << " \\\\*MERGEFORMAT} {\\fldrslt IMAGE }}\\par\\par\n";
}
if (company)
{
t << company << "\\par\\par\n";
}
t << Rtf_Style_Reset << Rtf_Style["Title"]->reference << endl; // set to title style t << Rtf_Style_Reset << Rtf_Style["Title"]->reference << endl; // set to title style
t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt TITLE}}\\par" << endl; t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt TITLE}}\\par" << endl;
t << Rtf_Style_Reset << Rtf_Style["SubTitle"]->reference << endl; // set to title style
t << "\\par\n";
if (documentType)
{
t << documentType << "\\par\n";
}
if (documentId)
{
t << documentId << "\\par\n";
}
t << "\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\n";
t << Rtf_Style_Reset << Rtf_Style["SubTitle"]->reference << endl; // set to subtitle style t << Rtf_Style_Reset << Rtf_Style["SubTitle"]->reference << endl; // set to subtitle style
t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt AUTHOR}}\\par" << endl; t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt AUTHOR}}\\par" << endl;
t << "Version " << Config::projectNumber << "\\par";
t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}" t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}"
"{\\fldrslt CREATEDATE}}\\par"<<endl; "{\\fldrslt CREATEDATE}}\\par"<<endl;
t << "\\page\\page";
DBG_RTF(t << "{\\comment End title page}" << endl) DBG_RTF(t << "{\\comment End title page}" << endl)
// table of contents section // table of contents section
DBG_RTF(t << "{\\comment Table of contents}\n") DBG_RTF(t << "{\\comment Table of contents}\n")
t << "\\vertalt\n";
t << Rtf_Style_Reset << endl; t << Rtf_Style_Reset << endl;
t << "{\\field\\fldedit {\\*\\fldinst TOC \\\\f \\\\*MERGEFORMAT}{\\fldrslt Table of contents}}\\par\n"; t << "{\\field\\fldedit {\\*\\fldinst TOC \\\\f \\\\*MERGEFORMAT}{\\fldrslt Table of contents}}\\par\n";
t << Rtf_Style_Reset << endl; t << Rtf_Style_Reset << endl;
...@@ -1743,7 +1899,7 @@ void RTFGenerator::endMemberDescription() ...@@ -1743,7 +1899,7 @@ void RTFGenerator::endMemberDescription()
endEmphasis(); endEmphasis();
newParagraph(); newParagraph();
decrementIndentLevel(); decrementIndentLevel();
t << "}" << endl; t << "\\par}" << endl;
} }
void RTFGenerator::startDescList() void RTFGenerator::startDescList()
...@@ -2013,9 +2169,15 @@ void RTFGenerator::endMemberList() ...@@ -2013,9 +2169,15 @@ void RTFGenerator::endMemberList()
#endif #endif
} }
void RTFGenerator::startImage(const char *,const char *,bool) void RTFGenerator::startImage(const char *name,const char *,bool)
{ {
// not yet implemented newParagraph();
t << "{" << endl;
t << Rtf_Style_Reset << endl;
t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE ";
t << name;
t << " \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par" << endl;
t << "}" << endl;
} }
void RTFGenerator::endImage(bool) void RTFGenerator::endImage(bool)
......
...@@ -29,6 +29,7 @@ class RTFGenerator : public OutputGenerator ...@@ -29,6 +29,7 @@ class RTFGenerator : public OutputGenerator
~RTFGenerator(); ~RTFGenerator();
static void init(); static void init();
static void writeStyleSheetFile(QFile &f); static void writeStyleSheetFile(QFile &f);
static void writeExtensionsFile(QFile &file);
OutputGenerator *copy(); OutputGenerator *copy();
//OutputGenerator *clone() { return new RTFGenerator(*this); } //OutputGenerator *clone() { return new RTFGenerator(*this); }
......
...@@ -372,6 +372,7 @@ FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+] ...@@ -372,6 +372,7 @@ FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
FILEECHAR [a-z_A-Z0-9\-\+] FILEECHAR [a-z_A-Z0-9\-\+]
FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]+"\"") FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]+"\"")
ID [a-z_A-Z][a-z_A-Z0-9]* ID [a-z_A-Z][a-z_A-Z0-9]*
LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
SCOPEID {ID}({ID}*{BN}*"::"{BN}*)*({ID}?) SCOPEID {ID}({ID}*{BN}*"::"{BN}*)*({ID}?)
SCOPENAME (({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID}) SCOPENAME (({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
ATTR ({B}+[^>\n]*)? ATTR ({B}+[^>\n]*)?
...@@ -3149,13 +3150,13 @@ TITLE [tT][iI][tT][lL][eE] ...@@ -3149,13 +3150,13 @@ TITLE [tT][iI][tT][lL][eE]
<SkipCode>. { <SkipCode>. {
*pSkipDoc+=*yytext; *pSkipDoc+=*yytext;
} }
<AnchorLabel>{ID} { <AnchorLabel>{LABELID} {
sectionLabel=yytext; sectionLabel=yytext;
addSection(); addSection();
current->doc += "\\anchor "+sectionLabel+"\n"; current->doc += "\\anchor "+sectionLabel+"\n";
BEGIN(lastAnchorContext); BEGIN(lastAnchorContext);
} }
<SectionLabel>{ID} { <SectionLabel>{LABELID} {
sectionLabel=yytext; sectionLabel=yytext;
sectionTitle.resize(0); sectionTitle.resize(0);
BEGIN(SectionTitle); BEGIN(SectionTitle);
......
...@@ -93,6 +93,11 @@ ...@@ -93,6 +93,11 @@
// 2001/02/26 (Petr Prikryl) // 2001/02/26 (Petr Prikryl)
// - Update for "new since 1.2.5" version (trBug(), trBugList()). // - Update for "new since 1.2.5" version (trBug(), trBugList()).
// //
// 2001/03/12 (Petr Prikryl)
// - Minor correction of comments which copied the same
// corrections in translator.h (doubled backslash) just after
// 1.2.6 release.
//
// Notices: // Notices:
// -------- // --------
// The conditional compilation ensures or the neutral functionality // The conditional compilation ensures or the neutral functionality
...@@ -224,7 +229,7 @@ class TranslatorCzech : public Translator ...@@ -224,7 +229,7 @@ class TranslatorCzech : public Translator
// quick reference sections // quick reference sections
/*! This is put above each page as a link to the list of all groups of /*! This is put above each page as a link to the list of all groups of
* compounds or files (see the \group command). * compounds or files (see the \\group command).
*/ */
virtual QCString trModules() virtual QCString trModules()
{ return Decode("Moduly"); } { return Decode("Moduly"); }
...@@ -534,48 +539,48 @@ class TranslatorCzech : public Translator ...@@ -534,48 +539,48 @@ class TranslatorCzech : public Translator
return Decode((QCString)"Diagram dìdiènosti pro tøídu "+clName); return Decode((QCString)"Diagram dìdiènosti pro tøídu "+clName);
} }
/*! this text is generated when the \internal command is used. */ /*! this text is generated when the \\internal command is used. */
virtual QCString trForInternalUseOnly() virtual QCString trForInternalUseOnly()
{ return Decode("Pouze pro vnitøní použití."); } { return Decode("Pouze pro vnitøní použití."); }
/*! this text is generated when the \reimp command is used. */ /*! this text is generated when the \\reimp command is used. */
virtual QCString trReimplementedForInternalReasons() virtual QCString trReimplementedForInternalReasons()
{ return Decode("Reimplementováno z interních dùvodù; " { return Decode("Reimplementováno z interních dùvodù; "
"aplikaèní rozhraní zachováno."); } "aplikaèní rozhraní zachováno."); }
/*! this text is generated when the \warning command is used. */ /*! this text is generated when the \\warning command is used. */
virtual QCString trWarning() virtual QCString trWarning()
{ return Decode("Pozor"); } { return Decode("Pozor"); }
/*! this text is generated when the \bug command is used. */ /*! this text is generated when the \\bug command is used. */
virtual QCString trBugsAndLimitations() virtual QCString trBugsAndLimitations()
{ return Decode("Chyby a omezení"); } { return Decode("Chyby a omezení"); }
/*! this text is generated when the \version command is used. */ /*! this text is generated when the \\version command is used. */
virtual QCString trVersion() virtual QCString trVersion()
{ return Decode("Verze"); } { return Decode("Verze"); }
/*! this text is generated when the \date command is used. */ /*! this text is generated when the \\date command is used. */
virtual QCString trDate() virtual QCString trDate()
{ return Decode("Datum"); } { return Decode("Datum"); }
/*! this text is generated when the \author command is used. */ /*! this text is generated when the \\author command is used. */
virtual QCString trAuthors() virtual QCString trAuthors()
{ return Decode("Autor/autoøi"); } { return Decode("Autor/autoøi"); }
/*! this text is generated when the \return command is used. */ /*! this text is generated when the \\return command is used. */
virtual QCString trReturns() virtual QCString trReturns()
{ return Decode("Návratová hodnota"); } { return Decode("Návratová hodnota"); }
/*! this text is generated when the \sa command is used. */ /*! this text is generated when the \\sa command is used. */
virtual QCString trSeeAlso() virtual QCString trSeeAlso()
{ return Decode("Viz také"); } { return Decode("Viz také"); }
/*! this text is generated when the \param command is used. */ /*! this text is generated when the \\param command is used. */
virtual QCString trParameters() virtual QCString trParameters()
{ return Decode("Parametry"); } { return Decode("Parametry"); }
/*! this text is generated when the \exception command is used. */ /*! this text is generated when the \\exception command is used. */
virtual QCString trExceptions() virtual QCString trExceptions()
{ return Decode("Výjimky"); } { return Decode("Výjimky"); }
...@@ -1195,7 +1200,7 @@ class TranslatorCzech : public Translator ...@@ -1195,7 +1200,7 @@ class TranslatorCzech : public Translator
// new since 1.2.5 // new since 1.2.5
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a \bug item */ /*! Used as a marker that is put before a \\bug item */
virtual QCString trBug() virtual QCString trBug()
{ {
return Decode("Chyba"); return Decode("Chyba");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment