Commit 6f84cba4 authored by Dimitri van Heesch's avatar Dimitri van Heesch

Release-1.4.6-20060327

parent c8b3a0f8
DOXYGEN Version 1.4.6-20060227
DOXYGEN Version 1.4.6-20060327
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (27 February 2006)
Dimitri van Heesch (27 March 2006)
DOXYGEN Version 1.4.6_20060227
DOXYGEN Version 1.4.6_20060327
Please read INSTALL for compilation instructions.
......@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (27 February 2006)
Dimitri van Heesch (dimitri@stack.nl) (27 March 2006)
......@@ -20,7 +20,7 @@ doxygen_version_minor=4
doxygen_version_revision=6
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20060227
doxygen_version_mmn=20060327
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......
......@@ -7,7 +7,7 @@
<type>void</type>
<name>example</name>
<anchorfile>class_test.html</anchorfile>
<anchor>f7c9e353df7549b5697c934fb0331252</anchor>
<anchor>47b775f65718978f1ffcd96376f8ecfa</anchor>
<arglist>()</arglist>
</member>
</compound>
......
......@@ -54,7 +54,7 @@ public:
{
T elem( this->last() );
if ( !this->isEmpty() )
remove( this->fromLast() );
this->remove( this->fromLast() );
return elem;
}
T& top() { return this->last(); }
......
......@@ -1514,6 +1514,7 @@ void ClassDef::writeMemberDocumentation(OutputList &ol)
if (Config_getBool("SEPARATE_MEMBER_PAGES"))
{
ol.disable(OutputGenerator::Html);
Doxygen::suppressDocWarnings = TRUE;
}
typedefMembers.writeDocumentation(ol,name(),this,
......@@ -1543,6 +1544,7 @@ void ClassDef::writeMemberDocumentation(OutputList &ol)
if (Config_getBool("SEPARATE_MEMBER_PAGES"))
{
ol.enable(OutputGenerator::Html);
Doxygen::suppressDocWarnings = FALSE;
}
}
......
......@@ -1770,11 +1770,6 @@ OPERATOR {ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}
<SkipCPP>\\[\r]?\n {
codifyLines(yytext);
}
<SkipCPP>\n/.*\n {
codifyLines(yytext);
endFontClass();
BEGIN( g_lastSkipCppContext ) ;
}
<SkipCPP>"//" {
g_code->codify(yytext);
}
......@@ -2790,6 +2785,11 @@ OPERATOR {ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}
BEGIN( g_lastCContext ) ;
}
}
<SkipCPP>\n/.*\n {
codifyLines(yytext);
endFontClass();
BEGIN( g_lastSkipCppContext ) ;
}
<*>\n{B}*"//@"[{}].*\n { // remove one-line group marker
if (Config_getBool("STRIP_CODE_COMMENTS"))
{
......
......@@ -561,8 +561,8 @@ void DirDef::writeDepGraph(QTextStream &t)
t << " bgcolor=transparent;\n";
}
t << " compound=true\n";
t << " node [ fontsize=10, fontname=\"Helvetica\"];\n";
t << " edge [ labelfontsize=9, labelfontname=\"Helvetica\"];\n";
t << " node [ fontsize=10, fontname=\"FreeSans.ttf\"];\n";
t << " edge [ labelfontsize=9, labelfontname=\"FreeSans.ttf\"];\n";
QDict<DirDef> dirsInGraph(257);
......@@ -572,7 +572,7 @@ void DirDef::writeDepGraph(QTextStream &t)
t << " subgraph cluster" << parent()->getOutputFileBase() << " {\n";
t << " graph [ bgcolor=\"#ddddee\", pencolor=\"black\", label=\""
<< parent()->shortName()
<< "\" fontname=\"Helvetica\", fontsize=10, URL=\"";
<< "\" fontname=\"FreeSans.ttf\", fontsize=10, URL=\"";
t << parent()->getOutputFileBase() << Doxygen::htmlFileExtension;
t << "\"]\n";
}
......
......@@ -377,6 +377,7 @@ static void detectNoDocumentedParams()
ArgumentList *al = g_memberDef->argumentList();
ArgumentList *declAl = g_memberDef->declArgumentList();
QString returnType = g_memberDef->typeString();
if (!g_memberDef->hasDocumentedParams() &&
g_hasParamCommand)
{
......
......@@ -74,9 +74,9 @@ static void writeGraphHeader(QTextStream &t)
{
t << " bgcolor=\"transparent\";" << endl;
}
t << " edge [fontname=\"Helvetica\",fontsize=10,"
"labelfontname=\"Helvetica\",labelfontsize=10];\n";
t << " node [fontname=\"Helvetica\",fontsize=10,shape=record];\n";
t << " edge [fontname=\"FreeSans.ttf\",fontsize=10,"
"labelfontname=\"FreeSans.ttf\",labelfontsize=10];\n";
t << " node [fontname=\"FreeSans.ttf\",fontsize=10,shape=record];\n";
}
static void writeGraphFooter(QTextStream &t)
......@@ -274,10 +274,10 @@ static bool readBoundingBoxEPS(const char *fileName,int *width,int *height)
{
int numBytes = f.readLine(buf,maxLineLen);
buf[numBytes-1]='\0';
if (strncmp(buf,"%%BoundingBox: ",15)==0)
if (strncmp(buf,"%%PageBoundingBox: ",15)==0)
{
int x,y;
if (sscanf(buf,"%%%%BoundingBox: %d %d %d %d",&x,&y,width,height)!=4)
if (sscanf(buf,"%%%%PageBoundingBox: %d %d %d %d",&x,&y,width,height)!=4)
{
return FALSE;
}
......@@ -667,7 +667,7 @@ void DotNode::writeBox(QTextStream &t,
t << "\",height=0.2,width=0.4";
if (m_isRoot)
{
t << ",color=\"white\", fillcolor=\"black\", style=\"filled\" fontcolor=\"white\"";
t << ",color=\"black\", fillcolor=\"grey75\", style=\"filled\" fontcolor=\"black\"";
}
else
{
......@@ -729,7 +729,7 @@ void DotNode::writeArrow(QTextStream &t,
t << ",arrowhead=\"" << arrowStyle[ei->m_color] << "\"";
}
if (format==BITMAP) t << ",fontname=\"Helvetica\"";
if (format==BITMAP) t << ",fontname=\"FreeSans.ttf\"";
t << "];" << endl;
}
......@@ -2552,23 +2552,23 @@ void generateGraphLegend(const char *path)
}
QTextStream dotText(&dotFile);
writeGraphHeader(dotText);
dotText << " Node9 [shape=\"box\",label=\"Inherited\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",style=\"filled\" fontcolor=\"white\"];\n";
dotText << " Node10 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node10 [shape=\"box\",label=\"PublicBase\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classPublicBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node11 -> Node10 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node11 [shape=\"box\",label=\"Truncated\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"red\",URL=\"$classTruncated" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node13 -> Node9 [dir=back,color=\"darkgreen\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node13 [shape=\"box\",label=\"ProtectedBase\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classProtectedBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node14 -> Node9 [dir=back,color=\"firebrick4\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node14 [shape=\"box\",label=\"PrivateBase\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classPrivateBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node15 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node15 [shape=\"box\",label=\"Undocumented\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"grey75\"];\n";
dotText << " Node16 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"Helvetica\"];\n";
dotText << " Node16 [shape=\"box\",label=\"Templ< int >\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classTempl" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node17 -> Node16 [dir=back,color=\"orange\",fontsize=10,style=\"dashed\",label=\"< int >\",fontname=\"Helvetica\"];\n";
dotText << " Node17 [shape=\"box\",label=\"Templ< T >\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classTempl" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node18 -> Node9 [dir=back,color=\"darkorchid3\",fontsize=10,style=\"dashed\",label=\"m_usedClass\",fontname=\"Helvetica\"];\n";
dotText << " Node18 [shape=\"box\",label=\"Used\",fontsize=10,height=0.2,width=0.4,fontname=\"Helvetica\",color=\"black\",URL=\"$classUsed" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node9 [shape=\"box\",label=\"Inherited\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",fillcolor=\"grey75\",style=\"filled\" fontcolor=\"black\"];\n";
dotText << " Node10 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node10 [shape=\"box\",label=\"PublicBase\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classPublicBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node11 -> Node10 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node11 [shape=\"box\",label=\"Truncated\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"red\",URL=\"$classTruncated" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node13 -> Node9 [dir=back,color=\"darkgreen\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node13 [shape=\"box\",label=\"ProtectedBase\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classProtectedBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node14 -> Node9 [dir=back,color=\"firebrick4\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node14 [shape=\"box\",label=\"PrivateBase\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classPrivateBase" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node15 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node15 [shape=\"box\",label=\"Undocumented\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"grey75\"];\n";
dotText << " Node16 -> Node9 [dir=back,color=\"midnightblue\",fontsize=10,style=\"solid\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node16 [shape=\"box\",label=\"Templ< int >\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classTempl" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node17 -> Node16 [dir=back,color=\"orange\",fontsize=10,style=\"dashed\",label=\"< int >\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node17 [shape=\"box\",label=\"Templ< T >\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classTempl" << Doxygen::htmlFileExtension << "\"];\n";
dotText << " Node18 -> Node9 [dir=back,color=\"darkorchid3\",fontsize=10,style=\"dashed\",label=\"m_usedClass\",fontname=\"FreeSans.ttf\"];\n";
dotText << " Node18 [shape=\"box\",label=\"Used\",fontsize=10,height=0.2,width=0.4,fontname=\"FreeSans.ttf\",color=\"black\",URL=\"$classUsed" << Doxygen::htmlFileExtension << "\"];\n";
writeGraphFooter(dotText);
dotFile.close();
......@@ -3091,8 +3091,8 @@ void DotGroupCollaboration::writeGraphHeader(QTextStream &t)
{
t << " bgcolor=\"transparent\";" << endl;
}
t << " edge [fontname=\"Helvetica\",fontsize=8,"
"labelfontname=\"Helvetica\",labelfontsize=8];\n";
t << " node [fontname=\"Helvetica\",fontsize=10,shape=record];\n";
t << " edge [fontname=\"FreeSans.ttf\",fontsize=8,"
"labelfontname=\"FreeSans.ttf\",labelfontsize=8];\n";
t << " node [fontname=\"FreeSans.ttf\",fontsize=10,shape=record];\n";
t << "rankdir=LR;\n";
}
......@@ -125,6 +125,7 @@ DirSDict Doxygen::directories(17);
SDict<DirRelation> Doxygen::dirRelations(257);
ParserManager *Doxygen::parserManager = 0;
QCString Doxygen::htmlFileExtension;
bool Doxygen::suppressDocWarnings = FALSE;
// locally accessible globals
static QDict<Entry> classEntries(1009);
......@@ -1750,7 +1751,7 @@ static MemberDef *addVariableToClass(
}
Debug::print(Debug::Variables,0,
" class variable:\n"
" %s' %s'::`%s' `%s' prot=`%d ann=%d init=%s\n",
" `%s' `%s'::`%s' `%s' prot=`%d ann=%d init=%s\n",
root->type.data(),
qualScope.data(),
name.data(),
......@@ -4876,6 +4877,7 @@ static void findMember(Entry *root,
else
{
scopeName = mergeScopes(root->parent->name,scopeName);
printf("joinedName=%s\n",scopeName.data());
}
}
else // see if we can prefix a namespace or class that is used from the file
......@@ -9110,9 +9112,6 @@ void generateOutput()
msg("Generating index page...\n");
writeIndex(*outputList);
msg("Generating file index...\n");
writeFileIndex(*outputList);
msg("Generating example documentation...\n");
generateExampleDocs();
......@@ -9126,26 +9125,44 @@ void generateOutput()
msg("Generating file documentation...\n");
generateFileDocs();
msg("Generating class documentation...\n");
generateClassDocs();
msg("Generating page documentation...\n");
generatePageDocs();
msg("Generating group documentation...\n");
generateGroupDocs();
if (Config_getBool("SHOW_DIRECTORIES"))
msg("Generating group index...\n");
writeGroupIndex(*outputList);
msg("Generating class documentation...\n");
generateClassDocs();
if (Config_getBool("HAVE_DOT") && Config_getBool("GRAPHICAL_HIERARCHY"))
{
msg("Generating directory documentation...\n");
generateDirDocs(*outputList);
msg("Generating graphical class hierarchy...\n");
writeGraphicalClassHierarchy(*outputList);
}
msg("Generating namespace index...\n");
generateNamespaceDocs();
msg("Generating group index...\n");
writeGroupIndex(*outputList);
msg("Generating namespace member index...\n");
writeNamespaceMemberIndex(*outputList);
if (Config_getBool("GENERATE_LEGEND"))
{
msg("Generating graph info page...\n");
writeGraphInfo(*outputList);
}
if (Config_getBool("SHOW_DIRECTORIES"))
{
msg("Generating directory documentation...\n");
generateDirDocs(*outputList);
}
msg("Generating file index...\n");
writeFileIndex(*outputList);
if (Config_getBool("SHOW_DIRECTORIES"))
{
......@@ -9159,18 +9176,9 @@ void generateOutput()
msg("Generating file member index...\n");
writeFileMemberIndex(*outputList);
msg("Generating namespace member index...\n");
writeNamespaceMemberIndex(*outputList);
msg("Generating page index...\n");
writePageIndex(*outputList);
if (Config_getBool("GENERATE_LEGEND"))
{
msg("Generating graph info page...\n");
writeGraphInfo(*outputList);
}
//writeDirDependencyGraph(Config_getString("HTML_OUTPUT"));
if (Config_getBool("GENERATE_RTF"))
......@@ -9182,12 +9190,6 @@ void generateOutput()
}
}
if (Config_getBool("HAVE_DOT") && Config_getBool("GRAPHICAL_HIERARCHY"))
{
msg("Generating graphical class hierarchy...\n");
writeGraphicalClassHierarchy(*outputList);
}
if (Doxygen::formulaList.count()>0 && Config_getBool("GENERATE_HTML"))
{
msg("Generating bitmaps for formulas in HTML...\n");
......
......@@ -343,3 +343,15 @@ HR { height: 1px;
font-style: italic;
}
/* End Styling for detailed member documentation */
/* for the tree view */
.ftvtree {
font-family: sans-serif;
margin:0.5em;
}
.directory { font-size: 9pt; font-weight: bold; }
.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }
.directory > h3 { margin-top: 0; }
.directory p { margin: 0px; white-space: nowrap; }
.directory div { display: none; margin: 0px; }
.directory img { vertical-align: -30%; }
......@@ -117,6 +117,7 @@ class Doxygen
static DirSDict directories;
static SDict<DirRelation> dirRelations;
static ParserManager *parserManager;
static bool suppressDocWarnings;
};
void initDoxygen();
......
......@@ -343,3 +343,16 @@
" font-style: italic;\n"
"}\n"
"/* End Styling for detailed member documentation */\n"
"\n"
"/* for the tree view */\n"
".ftvtree {\n"
" font-family: sans-serif;\n"
" margin:0.5em;\n"
"}\n"
".directory { font-size: 9pt; font-weight: bold; }\n"
".directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }\n"
".directory > h3 { margin-top: 0; }\n"
".directory p { margin: 0px; white-space: nowrap; }\n"
".directory div { display: none; margin: 0px; }\n"
".directory img { vertical-align: -30%; }\n"
"\n"
......@@ -653,15 +653,6 @@ void FTVHelp::generateTreeView()
}
t << "\">" << endl;
t << " <title>TreeView</title>\n";
t << " <style type=\"text/css\">\n";
t << " <!--\n";
t << " .directory { font-size: 10pt; font-weight: bold; }\n";
t << " .directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }\n";
t << " .directory p { margin: 0px; white-space: nowrap; }\n";
t << " .directory div { display: none; margin: 0px; }\n";
t << " .directory img { vertical-align: middle; }\n";
t << " -->\n";
t << " </style>\n";
t << " <script type=\"text/javascript\">\n";
t << " <!-- // Hide script from old browsers\n";
t << " \n";
......@@ -722,7 +713,7 @@ void FTVHelp::generateTreeView()
t << " </script>\n";
t << " </head>\n";
t << "\n";
t << " <body>\n";
t << " <body class=\"ftvtree\">\n";
t << " <div class=\"directory\">\n";
t << " <h3>";
QCString &projName = Config_getString("PROJECT_NAME");
......
......@@ -186,7 +186,7 @@ void LatexGenerator::init()
t << "refman.pdf: refman.tex" << endl;
t << "\tpdflatex refman.tex" << endl;
t << "\tmakeindex refman.idx" << endl;
t << "\tpdflatex refman.tex" << endl << endl
t << "\tpdflatex refman.tex" << endl
<< "\tlatex_count=5 ; \\" << endl
<< "\twhile egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\\" << endl
<< "\t do \\" << endl
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -1931,7 +1931,8 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
if (!Config_getBool("EXTRACT_ALL") &&
Config_getBool("WARN_IF_UNDOCUMENTED") &&
Config_getBool("WARN_NO_PARAMDOC"))
Config_getBool("WARN_NO_PARAMDOC") &&
!Doxygen::suppressDocWarnings)
{
if (!hasDocumentedParams())
{
......
......@@ -660,7 +660,7 @@ STARTDOCSYMS ^{B}"##"/[^#]
<SearchMemVars>{
"self."{IDENTIFIER}/{B}"=" {
//printf("Found member variable %s\n",&yytext[5]);
//printf("Found member variable %s in %s\n",&yytext[5],current_root->name.data());
current->name=&yytext[5];
current->section=Entry::VARIABLE_SEC;
current->fileName = yyFileName;
......@@ -900,15 +900,13 @@ STARTDOCSYMS ^{B}"##"/[^#]
YY_CURRENT_BUFFER->yy_at_bol=TRUE;
BEGIN(Search);
}
/*
^{B}/"##" { // start of a special comment
\n/"##" { // start of a special comment at indent 0
yyLineNr++;
endOfDef();
g_hideClassDocs = FALSE;
YY_CURRENT_BUFFER->yy_at_bol=TRUE;
BEGIN(Search);
}
*/
^{BB}/\n { // skip empty line
current->program+=yytext;
}
......
......@@ -559,6 +559,7 @@ TITLE [tT][iI][tT][lL][eE]
CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
IDLATTR ("["[^\]]*"]"){BN}*
TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
%option noyywrap
......@@ -1168,8 +1169,8 @@ IDLATTR ("["[^\]]*"]"){BN}*
BEGIN( CompoundName );
}
<FindMembers>"@class" | // for Objective C class declarations
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"class{" |
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"class"{BN}+ {
<FindMembers>{B}*{TYPEDEFPREFIX}"class{" |
<FindMembers>{B}*{TYPEDEFPREFIX}"class"{BN}+ {
isTypedef=((QCString)yytext).find("typedef")!=-1;
current->section = Entry::CLASS_SEC;
addType( current ) ;
......@@ -1202,8 +1203,8 @@ IDLATTR ("["[^\]]*"]"){BN}*
lineCount();
}
}
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"struct{" |
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"struct"/{BN}+ {
<FindMembers>{B}*{TYPEDEFPREFIX}"struct{" |
<FindMembers>{B}*{TYPEDEFPREFIX}"struct"/{BN}+ {
isTypedef=((QCString)yytext).find("typedef")!=-1;
current->section = Entry::STRUCT_SEC ;
addType( current ) ;
......@@ -1215,8 +1216,8 @@ IDLATTR ("["[^\]]*"]"){BN}*
if (yytext[yyleng-1]=='{') unput('{');
BEGIN( CompoundName ) ;
}
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"union{" |
<FindMembers>{B}*(("typedef"{BN}+)?)("volatile"{BN}+)?"union"{BN}+ {
<FindMembers>{B}*{TYPEDEFPREFIX}"union{" |
<FindMembers>{B}*{TYPEDEFPREFIX}"union"{BN}+ {
isTypedef=((QCString)yytext).find("typedef")!=-1;
current->section = Entry::UNION_SEC ;
addType( current ) ;
......@@ -1228,8 +1229,8 @@ IDLATTR ("["[^\]]*"]"){BN}*
if (yytext[yyleng-1]=='{') unput('{');
BEGIN( CompoundName ) ;
}
<FindMembers>{B}*(("typedef"{BN}+)?){IDLATTR}?"enum{" |
<FindMembers>{B}*(("typedef"{BN}+)?){IDLATTR}?"enum"{BN}+ { // for IDL: typedef [something] enum
<FindMembers>{B}*{TYPEDEFPREFIX}{IDLATTR}?"enum{" |
<FindMembers>{B}*{TYPEDEFPREFIX}{IDLATTR}?"enum"{BN}+ { // for IDL: typedef [something] enum
isTypedef=((QCString)yytext).find("typedef")!=-1;
current->section = Entry::ENUM_SEC ;
addType( current ) ;
......@@ -3421,6 +3422,7 @@ IDLATTR ("["[^\]]*"]"){BN}*
previous->inbodyLine = current->docLine;
previous->inbodyFile = current->docFile;
}
//printf("*** inbodyDocs+=%s\n",current->doc.data());
previous->inbodyDocs += current->doc;
current->doc.resize(0);
}
......@@ -3790,6 +3792,8 @@ IDLATTR ("["[^\]]*"]"){BN}*
curlyCount=0;
if (current_root && // not a nested struct inside an @interface section
current_root->section!=Entry::INTERFACE_SEC &&
(current->section==Entry::INTERFACE_SEC ||
current->section==Entry::OBJCIMPL_SEC) &&
insideObjC
)
{ // ObjC body that ends with @end
......@@ -4393,8 +4397,10 @@ static void newEntry()
static void handleCommentBlock(const QCString &doc,bool brief)
{
static bool hideInBodyDocs = Config_getBool("HIDE_IN_BODY_DOCS");
int position=0;
bool needsEntry=FALSE;
if (docBlockInBody && hideInBodyDocs) return;
if (docBlockInBody)
{
if (previous==0)
......@@ -4837,7 +4843,7 @@ bool CLanguageScanner::needsPreprocessing(const QCString &extension)
QCString fe=extension.lower();
return
!( fe==".java" || fe==".as" || fe==".cs" || fe==".d" || fe==".php" ||
fe==".php4" || fe==".inc" || fe==".phtml" || fe==".m" || fe==".mm"
fe==".php4" || fe==".inc" || fe==".phtml"
);
}
......
......@@ -16,7 +16,7 @@
*/
/******************************************************************************
* Norwegian translation by Lars Erik Jordet <lejordet@gmail.com>
* Norwegian translation by Lars Erik Jordet <lejordet@gmail.com>, parts by Frode Nilsen
*
* This is a new translation made from scratch, not based on my older Norwegian translation (for 1.2.2)
*
......@@ -32,16 +32,20 @@
* som ikke alltid ser like ryddig ut på norsk. Jeg har brukt bindestrek for å få
* det til å se presentabelt ut, men om noen har en bedre idé, send til mailadressen over.
*
* 2006-03-06:
* Jeg bruker ikke doxygen selv lenger, så det går nok litt i lengste laget mellom oppdateringer...
*
* Changelog
*
* 2003-12-18: Initial translation
* 2004-07-19: Fixup to prepare for 1.3.8 (I had forgotten some functions)
* 2006-03-06: Added a .diff from Frode Nilsen, now compatible with 1.4.6.
*/
#ifndef TRANSLATOR_NO_H
#define TRANSLATOR_NO_H
class TranslatorNorwegian : public TranslatorAdapter_1_3_9
class TranslatorNorwegian : public Translator
{
public:
......@@ -85,7 +89,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! used in the compound documentation before a list of related functions. */
virtual QCString trRelatedFunctions()
{ return "Relaterte Funksjoner"; }
{ return "Relaterte funksjoner"; }
/*! subscript for the related functions. */
virtual QCString trRelatedSubscript()
......@@ -93,7 +97,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! header that is put before the detailed description of files, classes and namespaces. */
virtual QCString trDetailedDescription()
{ return "Detaijert Beskrivelse"; }
{ return "Detaljert beskrivelse"; }
/*! header that is put before the list of typedefs. */
virtual QCString trMemberTypedefDocumentation()
......@@ -101,11 +105,11 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! header that is put before the list of enumerations. */
virtual QCString trMemberEnumerationDocumentation()
{ return "Medlemsenumerasjons-dokumentasjon"; }
{ return "Medlemsenumerasjon-dokumentasjon"; }
/*! header that is put before the list of member functions. */
virtual QCString trMemberFunctionDocumentation()
{ return "Medlemsfunksjons-dokumentasjon"; }
{ return "Medlemsfunksjon-dokumentasjon"; }
/*! header that is put before the list of member attributes. */
virtual QCString trMemberDataDocumentation()
......@@ -152,11 +156,11 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! put after an enum name in the list of all members */
virtual QCString trEnumName()
{ return "enumnavn"; }
{ return "enum-navn"; }
/*! put after an enum value in the list of all members */
virtual QCString trEnumValue()
{ return "enumverdi"; }
{ return "enum-verdi"; }
/*! put after an undocumented member in the list of all members */
virtual QCString trDefinedIn()
......@@ -223,7 +227,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! This is put above each page as a link to all related pages. */
virtual QCString trRelatedPages()
{ return "Relaterte Sider"; }
{ return "Relaterte sider"; }
/*! This is put above each page as a link to all examples. */
virtual QCString trExamples()
......@@ -235,8 +239,8 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! This is an introduction to the class hierarchy. */
virtual QCString trClassHierarchyDescription()
{ return "Denne arvelisten er sortert grovt, "
"men ikke fullstendig, alfabetisk:";
{ return "Denne arvelisten er grovsortert alfabetisk "
"(ikke nødvendigvis korrekt):";
}
/*! This is an introduction to the list with all files. */
......@@ -258,8 +262,8 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
}
else
{
return "Her er klasser, structer, "
"unioner og interfacer med korte beskrivelser:";
return "Her er klasser, struct'er, "
"unioner og interface'er med korte beskrivelser:";
}
}
......@@ -284,7 +288,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="struct-/union-dokumentasjon for hvert felt:";
result+="struct/union dokumentasjon for hvert felt:";
}
else
{
......@@ -295,7 +299,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="structene/unionene de hører til:";
result+="struct'ene/unionene de hører til:";
}
else
{
......@@ -312,7 +316,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
result+="funksjoner, variable, definerte, enumer, and typedefer";
result+="funksjoner, variabler, definisjoner, enum'er, og typedef'er";
}
else
{
......@@ -328,7 +332,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! This is an introduction to the page with the list of all header files. */
virtual QCString trHeaderFilesDescription()
{ return "Her er alle header-filene som utgjør API:"; }
{ return "Her er alle header-filene som utgjør API'et:"; }
/*! This is an introduction to the page with the list of all examples */
virtual QCString trExamplesDescription()
......@@ -378,7 +382,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
}
else
{
return "Klasse-indeks";
return "Klasseindeks";
}
}
......@@ -386,7 +390,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* list of all files.
*/
virtual QCString trFileIndex()
{ return "Fil-indeks"; }
{ return "Filindeks"; }
/*! This is used in LaTeX as the title of the chapter containing
* the documentation of all groups.
......@@ -401,7 +405,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
return "Datastruktur-dokumentasjon";
return "Datastrukturdokumentasjon";
}
else
{
......@@ -435,7 +439,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* list of defines
*/
virtual QCString trDefines()
{ return "Definerte"; }
{ return "Definisjoner"; }
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
......@@ -447,7 +451,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* list of typedefs
*/
virtual QCString trTypedefs()
{ return "Typedefer"; }
{ return "Typedef'er"; }
/*! This is used in the documentation of a file as a header before the
* list of enumerations
......@@ -465,7 +469,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* list of (global) variables
*/
virtual QCString trVariables()
{ return "Variable"; }
{ return "Variabler"; }
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
......@@ -483,7 +487,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* of documentation blocks for function prototypes
*/
virtual QCString trFunctionPrototypeDocumentation()
{ return "Funksjonsprototype-dokumentasjon"; }
{ return "Funksjonsprototypedokumentasjon"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
......@@ -495,13 +499,13 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* of documentation blocks for enumeration types
*/
virtual QCString trEnumerationTypeDocumentation()
{ return "Enumerert type-dokumentasjon"; }
{ return "Enumerasjontype dokumentasjon"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
virtual QCString trEnumerationValueDocumentation()
{ return "Enumerert verdi-dokumentasjon"; }
{ return "Enumerasjonsverdi dokumentasjon"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
......@@ -535,7 +539,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
*/
virtual QCString trGeneratedAt(const char *date,const char *projName)
{
QCString result=(QCString)"Generert "+date;
QCString result=(QCString)"Generert "+date;
if (projName) result+=(QCString)" for "+projName;
result+=(QCString)" av";
return result;
......@@ -567,7 +571,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! this text is generated when the \\bug command is used. */
virtual QCString trBugsAndLimitations()
{ return "Bugs og begrensninger"; }
{ return "Feil og begrensninger"; }
/*! this text is generated when the \\version command is used. */
virtual QCString trVersion()
......@@ -603,7 +607,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! used as the title of page containing all the index of all namespaces. */
virtual QCString trNamespaceList()
{ return "Navneromliste"; }
{ return "Navneromsliste"; }
/*! used as an introduction to the namespace list */
virtual QCString trNamespaceListDescription(bool extractAll)
......@@ -628,7 +632,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
* related classes
*/
virtual QCString trRelatedFunctionDocumentation()
{ return "Venner Og Relaterte Funksjoner-dokumentasjon"; }
{ return "Venner og relatert funksjonsdokumentasjon"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
......@@ -659,7 +663,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
virtual QCString trFileReference(const char *fileName)
{
QCString result=fileName;
result+=" Filreferanse";
result+=" filreferanse";
return result;
}
......@@ -667,30 +671,30 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
virtual QCString trNamespaceReference(const char *namespaceName)
{
QCString result=namespaceName;
result+=" Navneromsreferanse";
result+=" navneromsreferanse";
return result;
}
virtual QCString trPublicMembers()
{ return "Public Medlemsfunksjoner"; }
{ return "Public medlemsfunksjoner"; }
virtual QCString trPublicSlots()
{ return "Public Slots"; }
{ return "Public slots"; }
virtual QCString trSignals()
{ return "Signaler"; }
virtual QCString trStaticPublicMembers()
{ return "Statiske Public Medlemsfunksjoner"; }
{ return "Statiske public medlemsfunksjoner"; }
virtual QCString trProtectedMembers()
{ return "Protected Memdlemsfunksjoner"; }
{ return "Protected memdlemsfunksjoner"; }
virtual QCString trProtectedSlots()
{ return "Protected Slots"; }
{ return "Protected slots"; }
virtual QCString trStaticProtectedMembers()
{ return "Statiske Protected Medlemsfunksjoner"; }
{ return "Statiske protected medlemsfunksjoner"; }
virtual QCString trPrivateMembers()
{ return "Private Medlemsfunksjoner"; }
{ return "Private medlemsfunksjoner"; }
virtual QCString trPrivateSlots()
{ return "Private Slots"; }
{ return "Private slots"; }
virtual QCString trStaticPrivateMembers()
{ return "Statiske Private Medlemsfunksjoner"; }
{ return "Statiske private medlemsfunksjoner"; }
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
......@@ -798,16 +802,16 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
bool single)
{ // here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
QCString result=(QCString)"The documentation for this ";
QCString result=(QCString)"Dokumentasjonen for ";
switch(compType)
{
case ClassDef::Class: result+="klasse"; break;
case ClassDef::Struct: result+="struct"; break;
case ClassDef::Union: result+="union"; break;
case ClassDef::Interface: result+="interface"; break;
case ClassDef::Exception: result+="unntak"; break;
case ClassDef::Protocol: result+="protocol"; break;
case ClassDef::Category: result+="category"; break;
case ClassDef::Class: result+="denne klasse"; break;
case ClassDef::Struct: result+="denne struct"; break;
case ClassDef::Union: result+="denne union"; break;
case ClassDef::Interface: result+="dette interface"; break;
case ClassDef::Exception: result+="dette unntak"; break;
case ClassDef::Protocol: result+="denne protocol"; break;
case ClassDef::Category: result+="denne category"; break;
}
result+=" ble generert fra følgende fil";
if (single) result+=":"; else result+="er:";
......@@ -872,18 +876,18 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! this text is put before a collaboration diagram */
virtual QCString trCollaborationDiagram(const char *clName)
{
return (QCString)"Kollaborasjonsdiagram for "+clName+":";
return (QCString)"Samarbeidsdiagram for "+clName+":";
}
/*! this text is put before an include dependency graph */
virtual QCString trInclDepGraph(const char *fName)
{
return (QCString)"Inkluderingsavhengighetsgraf for "+fName+":";
return (QCString)"Avhengighetsgraf for "+fName+":";
}
/*! header that is put before the list of constructor/destructors. */
virtual QCString trConstructorDocumentation()
{
return "Konstruktør- & Destruktør-dokumentasjon";
return "Konstruktør- & destruktør-dokumentasjon";
}
/*! Used in the file documentation to point to the corresponding sources. */
virtual QCString trGotoSourceCode()
......@@ -898,7 +902,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! Text for the \\pre command */
virtual QCString trPrecondition()
{
return "Førbetingelse";
return "Forhåndsbetingelse";
}
/*! Text for the \\post command */
virtual QCString trPostcondition()
......@@ -1200,12 +1204,12 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
/*! Used as a marker that is put before a \\bug item */
virtual QCString trBug()
{
return "Bug";
return "Feil";
}
/*! Used as the header of the bug list */
virtual QCString trBugList()
{
return "Bug-liste";
return "Feil-liste";
}
//////////////////////////////////////////////////////////////////////////
......@@ -1547,6 +1551,66 @@ class TranslatorNorwegian : public TranslatorAdapter_1_3_9
{
return "Kildefil " + filename;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3.9
//////////////////////////////////////////////////////////////////////////
/*! This is used as the name of the chapter containing the directory
* hierarchy.
*/
virtual QCString trDirIndex()
{ return "Katalog hierarki"; }
/*! This is used as the name of the chapter containing the documentation
* of the directories.
*/
virtual QCString trDirDocumentation()
{ return "Katalogdokumentasjon"; }
/*! 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.
*/
virtual QCString trDirectories()
{ return "Kataloger"; }
/*! This returns a sentences that introduces the directory hierarchy.
* and the fact that it is sorted alphabetically per level
*/
virtual QCString trDirDescription()
{ return "Denne katalogen er grovsortert alfabetisk "
"(ikke nødvendigvis korrekt).";
}
/*! 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; result+=" Katalog referanse"; return result; }
/*! This returns the word directory with or without starting capital
* (\a first_capital) and in sigular or plural form (\a singular).
*/
virtual QCString trDir(bool first_capital, bool singular)
{
QCString result((first_capital ? "Katalog" : "katalog"));
if (!singular) result+="er";
return result;
}
//////////////////////////////////////////////////////////////////////////
// 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()
{
return "Dette er en overloaded medlemsfunksjon, "
"generert for deg. Den skiller seg ut fra "
"funksjonen ovenfor i argument(ene) den aksepterer.";
}
};
#endif
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