From 5d868ee9ffe34968c9878341da80a95e8117de7b Mon Sep 17 00:00:00 2001 From: dimitri Date: Thu, 30 Apr 2009 15:16:33 +0000 Subject: Release-1.5.9 --- INSTALL | 4 +- README | 4 +- src/code.l | 2 +- src/definition.cpp | 31 ++++- src/docparser.cpp | 8 +- src/docparser.h | 2 +- src/htmldocvisitor.cpp | 6 +- src/latexdocvisitor.cpp | 2 + src/latexgen.cpp | 1 + src/perlmodgen.cpp | 2 + src/printdocvisitor.h | 2 + src/rtfdocvisitor.cpp | 2 + src/scanner.l | 6 +- src/textdocvisitor.cpp | 2 + src/translator_es.h | 317 ++++++++++++++++++++++++------------------------ src/util.cpp | 89 +++++++++----- src/util.h | 3 +- src/vhdldocgen.cpp | 2 +- src/vhdlscanner.l | 27 +++++ src/xmldocvisitor.cpp | 2 + winbuild/Doxygen.vcproj | 4 + 21 files changed, 312 insertions(+), 206 deletions(-) diff --git a/INSTALL b/INSTALL index 3633c8a..62d4f6e 100644 --- a/INSTALL +++ b/INSTALL @@ -1,7 +1,7 @@ -DOXYGEN Version 1.5.8-20090304 +DOXYGEN Version 1.5.9 Please read the installation section of the manual (http://www.doxygen.org/install.html) for instructions. -------- -Dimitri van Heesch (04 March 2009) +Dimitri van Heesch (30 April 2009) diff --git a/README b/README index d8e2c8c..e273e46 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -DOXYGEN Version 1.5.8_20090304 +DOXYGEN Version 1.5.9 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) (04 March 2009) +Dimitri van Heesch (dimitri@stack.nl) (30 April 2009) diff --git a/src/code.l b/src/code.l index c4a1a29..27ddf50 100644 --- a/src/code.l +++ b/src/code.l @@ -1711,7 +1711,7 @@ TEMPLIST "<"[^\"\}\{\(\)\/\n\>]*">" SCOPETNAME ((({ID}{TEMPLIST}?){BN}*"::"{BN}*)*)((~{BN}*)?{ID}) SCOPEPREFIX ({ID}{TEMPLIST}?{BN}*"::"{BN}*)+ KEYWORD_OBJC ("@public"|"@private"|"@protected"|"@class"|"@implementation"|"@interface"|"@end"|"@selector"|"@protocol"|"@optional"|"@required"|"@throw"|"@synthesize") -KEYWORD ("add"|"asm"|"__assume"|"auto"|"class"|"const"|"delete"|"enum"|"explicit"|"extern"|"false"|"friend"|"gcnew"|"gcroot"|"get"|"inline"|"internal"|"mutable"|"namespace"|"new"|"nullptr"|"override"|"operator"|"pin_ptr"|"private"|"protected"|"public"|"raise"|"register"|"remove"|"self"|"set"|"sizeof"|"static"|"struct"|"__super"|"template"|"generic"|"this"|"true"|"typedef"|"typeid"|"typename"|"union"|"using"|"virtual"|"volatile"|"abstract"|"final"|"import"|"synchronized"|"transient"|{KEYWORD_OBJC}) +KEYWORD ("asm"|"__assume"|"auto"|"class"|"const"|"delete"|"enum"|"explicit"|"extern"|"false"|"friend"|"gcnew"|"gcroot"|"get"|"inline"|"internal"|"mutable"|"namespace"|"new"|"nullptr"|"override"|"operator"|"pin_ptr"|"private"|"protected"|"public"|"raise"|"register"|"remove"|"self"|"set"|"sizeof"|"static"|"struct"|"__super"|"template"|"generic"|"this"|"true"|"typedef"|"typeid"|"typename"|"union"|"using"|"virtual"|"volatile"|"abstract"|"final"|"import"|"synchronized"|"transient"|{KEYWORD_OBJC}) FLOWKW ("break"|"case"|"catch"|"continue"|"default"|"do"|"else"|"finally"|"for"|"foreach"|"for each"|"goto"|"if"|"return"|"switch"|"throw"|"throws"|"try"|"while"|"@try"|"@catch"|"@finally") TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"object"|"short"|"signed"|"unsigned"|"void"|"wchar_t"|"size_t"|"boolean"|"id"|"SEL"|"string") CASTKW ("const_cast"|"dynamic_cast"|"reinterpret_cast"|"static_cast") diff --git a/src/definition.cpp b/src/definition.cpp index cf08933..60709aa 100644 --- a/src/definition.cpp +++ b/src/definition.cpp @@ -844,7 +844,8 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName) void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName, const QCString &text,MemberSDict *members,bool /*funcOnly*/) { - ol.pushGeneratorState(); +static bool latexSourceCode = Config_getBool("LATEX_SOURCE_CODE"); + ol.pushGeneratorState(); if (/*Config_getBool("SOURCE_BROWSER") &&*/ members) { ol.startParagraph(); @@ -890,7 +891,14 @@ void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName, //printf("md->getBodyDef()=%p global=%p\n",md->getBodyDef(),Doxygen::globalScope); // for HTML write a real link ol.pushGeneratorState(); - ol.disableAllBut(OutputGenerator::Html); + //ol.disableAllBut(OutputGenerator::Html); + + ol.disable(OutputGenerator::RTF); + ol.disable(OutputGenerator::Man); + if (!latexSourceCode) + { + ol.disable(OutputGenerator::Latex); + } QCString lineStr,anchorStr; anchorStr.sprintf("l%05d",md->getStartBodyLine()); //printf("Write object link to %s\n",md->getBodyDef()->getSourceFileBase().data()); @@ -899,7 +907,11 @@ void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName, // for the other output formats just mention the name ol.pushGeneratorState(); - ol.disable(OutputGenerator::Html); + ol.disable(OutputGenerator::Html); + if (latexSourceCode) + { + ol.disable(OutputGenerator::Latex); + } ol.docify(name); ol.popGeneratorState(); } @@ -907,7 +919,14 @@ void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName, { // for HTML write a real link ol.pushGeneratorState(); - ol.disableAllBut(OutputGenerator::Html); + //ol.disableAllBut(OutputGenerator::Html); + ol.disable(OutputGenerator::RTF); + ol.disable(OutputGenerator::Man); + if (!latexSourceCode) + { + ol.disable(OutputGenerator::Latex); + } + ol.writeObjectLink(md->getReference(), md->getOutputFileBase(), md->anchor(),name); @@ -916,6 +935,10 @@ void Definition::_writeSourceRefList(OutputList &ol,const char *scopeName, // for the other output formats just mention the name ol.pushGeneratorState(); ol.disable(OutputGenerator::Html); + if (latexSourceCode) + { + ol.disable(OutputGenerator::Latex); + } ol.docify(name); ol.popGeneratorState(); } diff --git a/src/docparser.cpp b/src/docparser.cpp index 8875369..0295ba0 100644 --- a/src/docparser.cpp +++ b/src/docparser.cpp @@ -978,9 +978,11 @@ static void handleLinkedWord(DocNode *parent,QList &children) QString name = linkToText(g_token->name,TRUE); int len = g_token->name.length(); ClassDef *cd=0; + bool ambig; + FileDef *fd = findFileDef(Doxygen::inputNameDict,g_fileName,ambig); //printf("handleLinkedWord(%s) g_context=%s\n",name.data(),g_context.data()); if (!g_insideHtmlLink && - (resolveRef(g_context,g_token->name,g_inSeeBlock,&compound,&member) + (resolveRef(g_context,g_token->name,g_inSeeBlock,&compound,&member,TRUE,fd) || (!g_context.isEmpty() && // also try with global scope resolveRef("",g_token->name,g_inSeeBlock,&compound,&member)) ) @@ -1412,7 +1414,7 @@ DocSymbol::SymType DocSymbol::decodeSymbol(const QString &symName,char *letter) DBG(("decodeSymbol(%s) l=%d\n",symName.data(),l)); if (symName=="©") return DocSymbol::Copy; else if (symName=="™") return DocSymbol::Tm; - else if (symName=="&tm;") return DocSymbol::Tm; // alias for &trace; + else if (symName=="&tm;") return DocSymbol::Tm; // alias for ™ else if (symName=="®") return DocSymbol::Reg; else if (symName=="<") return DocSymbol::Less; else if (symName==">") return DocSymbol::Greater; @@ -1427,6 +1429,8 @@ DocSymbol::SymType DocSymbol::decodeSymbol(const QString &symName,char *letter) else if (symName=="—") return DocSymbol::Mdash; else if (symName=="ß") return DocSymbol::Szlig; else if (symName==" ") return DocSymbol::Nbsp; + else if (symName=="Æ") return DocSymbol::AElig; + else if (symName=="æ") return DocSymbol::Aelig; else if (l==6 && symName.right(4)=="uml;") { *letter=symName.at(1); diff --git a/src/docparser.h b/src/docparser.h index 82d04e4..cdc1379 100644 --- a/src/docparser.h +++ b/src/docparser.h @@ -326,7 +326,7 @@ class DocSymbol : public DocNode enum SymType { Unknown=0, BSlash,At,Less,Greater,Amp,Dollar,Hash,Percent, Copy, Tm, Reg, Apos, Quot, Uml, Acute, Grave, Circ, Tilde, Szlig, Cedil, Ring, Nbsp, Slash, Lsquo, Rsquo, Ldquo, Rdquo, - Ndash, Mdash + Ndash, Mdash, Aelig, AElig }; DocSymbol(DocNode *parent,SymType s,char letter='\0') : m_parent(parent), m_symbol(s), m_letter(letter) {} diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp index fcd8157..efdcf01 100644 --- a/src/htmldocvisitor.cpp +++ b/src/htmldocvisitor.cpp @@ -123,6 +123,8 @@ void HtmlDocVisitor::visit(DocSymbol *s) case DocSymbol::Cedil: m_t << "&" << s->letter() << "cedil;"; break; case DocSymbol::Ring: m_t << "&" << s->letter() << "ring;"; break; case DocSymbol::Nbsp: m_t << " "; break; + case DocSymbol::AElig: m_t << "Æ"; break; + case DocSymbol::Aelig: m_t << "æ"; break; default: err("Error: unknown symbol found\n"); } @@ -1009,13 +1011,13 @@ void HtmlDocVisitor::visitPre(DocXRefItem *x) bool anonymousEnum = x->file()=="@"; if (!anonymousEnum) { - m_t << "
key() << "\" compact>
relPath() << x->file() << Doxygen::htmlFileExtension << "#" << x->anchor() << "\">"; } else { - m_t << "
"; + m_t << "
key() << "\" compact>
"; } filter(x->title()); m_t << ":"; diff --git a/src/latexdocvisitor.cpp b/src/latexdocvisitor.cpp index 15bc429..453f5d6 100644 --- a/src/latexdocvisitor.cpp +++ b/src/latexdocvisitor.cpp @@ -194,6 +194,8 @@ void LatexDocVisitor::visit(DocSymbol *s) case DocSymbol::Cedil: m_t << "\\c{" << s->letter() << "}"; break; case DocSymbol::Ring: m_t << "\\" << s->letter() << s->letter(); break; case DocSymbol::Nbsp: m_t << "~"; break; + case DocSymbol::AElig: m_t << "{\\AE}"; break; + case DocSymbol::Aelig: m_t << "{\\ae}"; break; default: err("Error: unknown symbol found\n"); } diff --git a/src/latexgen.cpp b/src/latexgen.cpp index 10712fc..f3f6be3 100644 --- a/src/latexgen.cpp +++ b/src/latexgen.cpp @@ -304,6 +304,7 @@ static void writeDefaultStyleSheetPart1(QTextStream &t) t << "\\ProvidesPackage{doxygen}\n"; t << "\\RequirePackage{calc}\n"; t << "\\RequirePackage{array}\n"; + t << "\\RequirePackage{color}\n"; t << "\\pagestyle{fancyplain}\n"; //t << "\\addtolength{\\headwidth}{\\marginparsep}\n"; //t << "\\addtolength{\\headwidth}{\\marginparwidth}\n"; diff --git a/src/perlmodgen.cpp b/src/perlmodgen.cpp index 44a54e8..b3018bc 100644 --- a/src/perlmodgen.cpp +++ b/src/perlmodgen.cpp @@ -561,6 +561,8 @@ void PerlModDocVisitor::visit(DocSymbol *sy) case DocSymbol::Reg: symbol = "registered"; break; case DocSymbol::Szlig: symbol = "szlig"; break; case DocSymbol::Apos: s = "\\\'"; break; + case DocSymbol::Aelig: symbol = "aelig"; break; + case DocSymbol::AElig: symbol = "AElig"; break; case DocSymbol::Unknown: err("Error: unknown symbol found\n"); break; diff --git a/src/printdocvisitor.h b/src/printdocvisitor.h index 30e919e..b0c9b5f 100644 --- a/src/printdocvisitor.h +++ b/src/printdocvisitor.h @@ -83,6 +83,8 @@ class PrintDocVisitor : public DocVisitor case DocSymbol::Cedil: printf("&%ccedul;",s->letter()); break; case DocSymbol::Ring: printf("&%cring;",s->letter()); break; case DocSymbol::Nbsp: printf(" "); break; + case DocSymbol::Aelig: printf("æ"); break; + case DocSymbol::AElig: printf("Æ"); break; default: printf("Error: unknown symbol found\n"); } diff --git a/src/rtfdocvisitor.cpp b/src/rtfdocvisitor.cpp index 9bb5888..4d30b2d 100644 --- a/src/rtfdocvisitor.cpp +++ b/src/rtfdocvisitor.cpp @@ -219,6 +219,8 @@ void RTFDocVisitor::visit(DocSymbol *s) break; case DocSymbol::Szlig: m_t << "\337"; break; case DocSymbol::Nbsp: m_t << "\\~ "; break; + case DocSymbol::Aelig: m_t << "\346"; break; + case DocSymbol::AElig: m_t << "\306"; break; default: err("Error: unknown symbol found\n"); } diff --git a/src/scanner.l b/src/scanner.l index 683b40e..bd46a13 100644 --- a/src/scanner.l +++ b/src/scanner.l @@ -554,7 +554,7 @@ static int yyread(char *buf,int max_size) /* start command character */ CMD ("\\"|"@") -SECTIONCMD {CMD}("image"|"author"|"internal"|"version"|"date"|"deprecated"|"param"|"exception"|"return"[s]?|"retval"|"bug"|"warning"|"par"|"sa"|"see"|"pre"|"post"|"invariant"|"note"|"remark"[s]?|"todo"|"test"|"xrefitem"|"ingroup"|"callgraph"|"callergraph"|"latexonly"|"htmlonly"|"xmlonly"|"{"|"verbatim"|"dotfile"|"dot"|"defgroup"|"addtogroup"|"weakgroup"|"class"|"namespace"|"union"|"struct"|"fn"|"var"|"details"|"typedef"|"def"|"overload")|("<"{PRE}">") +SECTIONCMD {CMD}("image"|"author"|"internal"|"version"|"date"|"deprecated"|"param"|"exception"|"return"[s]?|"retval"|"bug"|"warning"|"par"|"sa"|"see"|"pre"|"post"|"invariant"|"note"|"remark"[s]?|"todo"|"test"|"xrefitem"|"ingroup"|"callgraph"|"callergraph"|"latexonly"|"htmlonly"|"xmlonly"|"manonly"|"{"|"verbatim"|"dotfile"|"dot"|"defgroup"|"addtogroup"|"weakgroup"|"class"|"namespace"|"union"|"struct"|"fn"|"var"|"details"|"typedef"|"def"|"overload")|("<"{PRE}">") BN [ \t\n\r] BL [ \t\r]*"\n" B [ \t] @@ -3623,7 +3623,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?) fullArgString+=yytext; BEGIN(CopyArgVerbatim); } -[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"enddot"|"endcode"|"f$"|"f]"|"f}")/[^a-z_A-Z0-9] { // end of verbatim block +[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endmanonly"|"enddot"|"endcode"|"f$"|"f]"|"f}")/[^a-z_A-Z0-9] { // end of verbatim block fullArgString+=yytext; if (yytext[1]=='f') // end of formula { @@ -5144,7 +5144,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?) docBlock+=yytext; BEGIN(DocBlock); } -[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"enddot"|"endcode")/[^a-z_A-Z0-9] { // end of verbatim block +[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endmanonly"|"enddot"|"endcode")/[^a-z_A-Z0-9] { // end of verbatim block docBlock+=yytext; if (&yytext[4]==docBlockName) { diff --git a/src/textdocvisitor.cpp b/src/textdocvisitor.cpp index ae0820d..b76727c 100644 --- a/src/textdocvisitor.cpp +++ b/src/textdocvisitor.cpp @@ -55,6 +55,8 @@ void TextDocVisitor::visit(DocSymbol *s) case DocSymbol::Cedil: m_t << "&" << s->letter() << "cedil;"; break; case DocSymbol::Ring: m_t << "&" << s->letter() << "ring;"; break; case DocSymbol::Nbsp: m_t << " "; break; + case DocSymbol::Aelig: m_t << "æ"; break; + case DocSymbol::AElig: m_t << "Æ"; break; default: err("Error: unknown symbol found\n"); } diff --git a/src/translator_es.h b/src/translator_es.h index 0640e0a..d8342ac 100644 --- a/src/translator_es.h +++ b/src/translator_es.h @@ -23,7 +23,7 @@ * Updated from 1.3.8 to 1.4.6 by Guillermo Ballester Valor (May-05-2006) * Updated fron 1.4.6 to 1.5.1 by Bartomeu Creus Navarro (22-enero-2007) * Updated fron 1.5.1 to 1.5.5 by Bartomeu Creus Navarro (5-febrero-2008) - * Updated from 1.5.5 to 1.5.6, converted to utf-8 output by David Vaquero (28-febrero-2009) + * Updated fron 1.5.5 to 1.5.8 by Bartomeu Creus Navarro (10-abril-2009) */ #ifndef TRANSLATOR_ES_H @@ -67,7 +67,7 @@ class TranslatorSpanish : public Translator /*! return the language charset. This will be used for the HTML output */ virtual QCString idLanguageCharset() { - return "utf-8"; + return "iso-8859-1"; } // --- Language translation methods ------------------- @@ -82,36 +82,36 @@ class TranslatorSpanish : public Translator /*! header that is put before the detailed description of files, classes and namespaces. */ virtual QCString trDetailedDescription() - { return "Descripci贸n detallada"; } + { return "Descripci髇 detallada"; } /*! header that is put before the list of typedefs. */ virtual QCString trMemberTypedefDocumentation() - { return "Documentaci贸n de los 'Tipos Definidos' miembros de la clase"; } + { return "Documentaci髇 de los 'Tipos Definidos' miembros de la clase"; } /*! header that is put before the list of enumerations. */ virtual QCString trMemberEnumerationDocumentation() - { return "Documentaci贸n de las enumeraciones miembro de la clase"; } + { return "Documentaci髇 de las enumeraciones miembro de la clase"; } /*! header that is put before the list of member functions. */ virtual QCString trMemberFunctionDocumentation() - { return "Documentaci贸n de las funciones miembro"; } + { return "Documentaci髇 de las funciones miembro"; } /*! header that is put before the list of member attributes. */ virtual QCString trMemberDataDocumentation() { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Documentaci贸n de los campos"; + return "Documentaci髇 de los campos"; } else { - return "Documentaci贸n de los datos miembro"; + return "Documentaci髇 de los datos miembro"; } } /*! this is the text of a link put after brief descriptions. */ virtual QCString trMore() - { return "M谩s..."; } + { return "M醩..."; } /*! put in the class documentation */ virtual QCString trListOfAllMembers() @@ -133,15 +133,15 @@ class TranslatorSpanish : public Translator * parameter s is name of the project name. */ virtual QCString trGeneratedAutomatically(const char *s) - { QCString result="Generado autom谩ticamente por Doxygen"; + { QCString result="Generado autom醫icamente por Doxygen"; if (s) result+=(QCString)" para "+s; - result+=" del c贸digo fuente."; + result+=" del c骴igo fuente."; return result; } /*! put after an enum name in the list of all members */ virtual QCString trEnumName() - { return "nombre de la enumeraci贸n"; } + { return "nombre de la enumeraci髇"; } /*! put after an enum value in the list of all members */ virtual QCString trEnumValue() @@ -157,11 +157,11 @@ class TranslatorSpanish : public Translator * compounds or files (see the \\group command). */ virtual QCString trModules() - { return "M贸dulos"; } + { return "M骴ulos"; } /*! This is put above each page as a link to the class hierarchy */ virtual QCString trClassHierarchy() - { return "Jerarqu铆a de la clase"; } + { return "Jerarqu韆 de la clase"; } /*! This is put above each page as a link to the list of annotated classes */ virtual QCString trCompoundList() @@ -208,7 +208,7 @@ class TranslatorSpanish : public Translator /*! This is put above each page as a link to all related pages. */ virtual QCString trRelatedPages() - { return "P谩ginas relacionadas"; } + { return "P醙inas relacionadas"; } /*! This is put above each page as a link to all examples. */ virtual QCString trExamples() @@ -221,7 +221,7 @@ class TranslatorSpanish : public Translator /*! This is an introduction to the class hierarchy. */ virtual QCString trClassHierarchyDescription() { return "Esta lista de herencias esta ordenada " - "aproximadamente por orden alfab茅tico:"; + "aproximadamente por orden alfab閠ico:"; } /*! This is an introduction to the list with all files. */ @@ -238,12 +238,12 @@ class TranslatorSpanish : public Translator { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Lista de estructuras con una breve descripci贸n:"; + return "Lista de estructuras con una breve descripci髇:"; } else { return "Lista de las clases, estructuras, " - "uniones e interfaces con una breve descripci贸n:"; + "uniones e interfaces con una breve descripci髇:"; } } @@ -268,11 +268,11 @@ class TranslatorSpanish : public Translator { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - result+="la documentaci贸n de la estructura/uni贸n para cada campo:"; + result+="la documentaci髇 de la estructura/uni髇 para cada campo:"; } else { - result+="la documentaci贸n de la clase para cada miembro:"; + result+="la documentaci髇 de la clase para cada miembro:"; } } else @@ -306,7 +306,7 @@ class TranslatorSpanish : public Translator if (extractAll) result+="a los ficheros a los que corresponden:"; else - result+="a la documentaci贸n:"; + result+="a la documentaci髇:"; return result; } @@ -316,29 +316,29 @@ class TranslatorSpanish : public Translator /*! This is an introduction to the page with the list of related pages */ virtual QCString trRelatedPagesDescription() - { return "Lista de toda la documentaci贸n relacionada:"; } + { return "Lista de toda la documentaci髇 relacionada:"; } /*! This is an introduction to the page with the list of class/file groups */ virtual QCString trModulesDescription() - { return "Lista de todos los m贸dulos:"; } + { return "Lista de todos los m骴ulos:"; } // index titles (the project name is prepended for these) /*! This is used in HTML as the title of index.html. */ virtual QCString trDocumentation() - { return "Documentaci贸n"; } + { return "Documentaci髇"; } /*! This is used in LaTeX as the title of the chapter with the * index of all groups. */ virtual QCString trModuleIndex() - { return "Indice de m贸dulos"; } + { return "Indice de m骴ulos"; } /*! This is used in LaTeX as the title of the chapter with the * class hierarchy. */ virtual QCString trHierarchicalIndex() - { return "Indice jer谩rquico"; } + { return "Indice jer醨quico"; } /*! This is used in LaTeX as the title of the chapter with the * annotated compound index. @@ -347,11 +347,11 @@ class TranslatorSpanish : public Translator { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "脥ndice de estructura de datos"; + return "蚽dice de estructura de datos"; } else { - return "脥ndice de clases"; + return "蚽dice de clases"; } } @@ -365,7 +365,7 @@ class TranslatorSpanish : public Translator * the documentation of all groups. */ virtual QCString trModuleDocumentation() - { return "Documentaci贸n de m贸dulos"; } + { return "Documentaci髇 de m骴ulos"; } /*! This is used in LaTeX as the title of the chapter containing * the documentation of all classes, structs and unions. @@ -374,11 +374,11 @@ class TranslatorSpanish : public Translator { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Documentaci贸n de las estructuras de datos"; + return "Documentaci髇 de las estructuras de datos"; } else { - return "Documentaci贸n de las clases"; + return "Documentaci髇 de las clases"; } } @@ -386,19 +386,19 @@ class TranslatorSpanish : public Translator * the documentation of all files. */ virtual QCString trFileDocumentation() - { return "Documentaci贸n de archivos"; } + { return "Documentaci髇 de archivos"; } /*! This is used in LaTeX as the title of the chapter containing * the documentation of all examples. */ virtual QCString trExampleDocumentation() - { return "Documentaci贸n de ejemplos"; } + { return "Documentaci髇 de ejemplos"; } /*! This is used in LaTeX as the title of the chapter containing * the documentation of all related pages. */ virtual QCString trPageDocumentation() - { return "Documentaci贸n de p谩ginas"; } + { return "Documentaci髇 de p醙inas"; } /*! This is used in LaTeX as the title of the document */ virtual QCString trReferenceManual() @@ -444,43 +444,43 @@ class TranslatorSpanish : public Translator * list of (global) variables */ virtual QCString trEnumerationValues() - { return "Valores de la enumeraci贸n"; } + { return "Valores de la enumeraci髇"; } /*! This is used in the documentation of a file before the list of * documentation blocks for defines */ virtual QCString trDefineDocumentation() - { return "Documentaci贸n de las definiciones"; } + { return "Documentaci髇 de las definiciones"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for function prototypes */ virtual QCString trFunctionPrototypeDocumentation() - { return "Documentaci贸n de las funciones prototipo"; } + { return "Documentaci髇 de las funciones prototipo"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for typedefs */ virtual QCString trTypedefDocumentation() - { return "Documentaci贸n de los tipos definidos"; } + { return "Documentaci髇 de los tipos definidos"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for enumeration types */ virtual QCString trEnumerationTypeDocumentation() - { return "Documentaci贸n de las enumeraciones"; } + { return "Documentaci髇 de las enumeraciones"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for functions */ virtual QCString trFunctionDocumentation() - { return "Documentaci贸n de las funciones"; } + { return "Documentaci髇 de las funciones"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for variables */ virtual QCString trVariableDocumentation() - { return "Documentaci贸n de las variables"; } + { return "Documentaci髇 de las variables"; } /*! This is used in the documentation of a file/namespace/group before * the list of links to documented compounds @@ -527,11 +527,11 @@ class TranslatorSpanish : public Translator /*! this text is generated when the \\warning command is used. */ virtual QCString trWarning() - { return "Atenci贸n"; } + { return "Atenci髇"; } /*! this text is generated when the \\version command is used. */ virtual QCString trVersion() - { return "Versi贸n"; } + { return "Versi髇"; } /*! this text is generated when the \\date command is used. */ virtual QCString trDate() @@ -543,11 +543,11 @@ class TranslatorSpanish : public Translator /*! this text is generated when the \\sa command is used. */ virtual QCString trSeeAlso() - { return "Ver tambi茅n"; } + { return "Ver tambi閚"; } /*! this text is generated when the \\param command is used. */ virtual QCString trParameters() - { return "Par谩metros"; } + { return "Par醡etros"; } /*! this text is generated when the \\exception command is used. */ virtual QCString trExceptions() @@ -569,8 +569,8 @@ class TranslatorSpanish : public Translator virtual QCString trNamespaceListDescription(bool extractAll) { QCString result="Lista de "; - if (!extractAll) result+="toda la documentaci贸n de "; - result+="los namespaces con una breve descripci贸n:"; + if (!extractAll) result+="toda la documentaci髇 de "; + result+="los namespaces con una breve descripci髇:"; return result; } @@ -588,7 +588,7 @@ class TranslatorSpanish : public Translator * related classes */ virtual QCString trRelatedFunctionDocumentation() - { return "Documentaci贸n de las funciones relacionadas y clases amigas"; } + { return "Documentaci髇 de las funciones relacionadas y clases amigas"; } ////////////////////////////////////////////////////////////////////////// // new since 0.49-990425 @@ -605,11 +605,11 @@ class TranslatorSpanish : public Translator { case ClassDef::Class: result+=" la Clase "; break; case ClassDef::Struct: result+=" la Estructura "; break; - case ClassDef::Union: result+=" la Uni贸n "; break; + case ClassDef::Union: result+=" la Uni髇 "; break; case ClassDef::Interface: result+=" la Interfaz "; break; case ClassDef::Protocol: result+="l Protocolo "; break; case ClassDef::Category: result+=" la Categoria "; break; - case ClassDef::Exception: result+=" la Excepci贸n "; break; + case ClassDef::Exception: result+=" la Excepci髇 "; break; } result+=(QCString)clName; return result; @@ -632,34 +632,34 @@ class TranslatorSpanish : public Translator } virtual QCString trPublicMembers() - { return "M茅todos p煤blicos"; } + { return "M閠odos p鷅licos"; } virtual QCString trPublicSlots() - { return "Slots p煤blicos"; } + { return "Slots p鷅licos"; } virtual QCString trSignals() - { return "Se帽ales"; } + { return "Se馻les"; } virtual QCString trStaticPublicMembers() - { return "M茅todos p煤blicos est谩ticos"; } + { return "M閠odos p鷅licos est醫icos"; } virtual QCString trProtectedMembers() - { return "M茅todos protegidos"; } + { return "M閠odos protegidos"; } virtual QCString trProtectedSlots() { return "Slots protegidos"; } virtual QCString trStaticProtectedMembers() - { return "M茅todos protegidos est谩ticos"; } + { return "M閠odos protegidos est醫icos"; } virtual QCString trPrivateMembers() - { return "M茅todos privados"; } + { return "M閠odos privados"; } virtual QCString trPrivateSlots() { return "Slots privados"; } virtual QCString trStaticPrivateMembers() - { return "M茅todos privados est谩ticos"; } + { return "M閠odos privados est醫icos"; } /*! this function is used to produce a comma-separated list of items. * use generateMarker(i) to indicate where item i should be put. @@ -726,12 +726,12 @@ class TranslatorSpanish : public Translator virtual QCString trNamespaceMemberDescription(bool extractAll) { QCString result="Lista de "; - if (!extractAll) result+="toda la documentaci贸n de "; + if (!extractAll) result+="toda la documentaci髇 de "; result+="los miembros del namespace con enlace a "; if (extractAll) result+="los namespace de cada miembro:"; else - result+="la documentaci贸n de los namespaces pertenecientes a:"; + result+="la documentaci髇 de los namespaces pertenecientes a:"; return result; } /*! This is used in LaTeX as the title of the chapter with the @@ -744,7 +744,7 @@ class TranslatorSpanish : public Translator * the documentation of all namespaces. */ virtual QCString trNamespaceDocumentation() - { return "Documentaci贸n de namespaces"; } + { return "Documentaci髇 de namespaces"; } ////////////////////////////////////////////////////////////////////////// // new since 0.49-990522 @@ -767,16 +767,16 @@ class TranslatorSpanish : public Translator bool single) { // here s is one of " Class", " Struct" or " Union" // single is true implies a single file - QCString result=(QCString)"La documentaci贸n para est"; + QCString result=(QCString)"La documentaci髇 para est"; switch(compType) { case ClassDef::Class: result+="a clase"; break; case ClassDef::Struct: result+="a estructura"; break; - case ClassDef::Union: result+="a uni贸n"; break; + case ClassDef::Union: result+="a uni髇"; break; case ClassDef::Interface: result+="e interfaz"; break; case ClassDef::Protocol: result+="e protocolo"; break; - case ClassDef::Category: result+="a categor铆a"; break; - case ClassDef::Exception: result+="a excepci贸n"; break; + case ClassDef::Category: result+="a categor韆"; break; + case ClassDef::Exception: result+="a excepci髇"; break; } result+=" fue generada a partir de"; if (single) result+="l siguiente fichero:"; @@ -788,7 +788,7 @@ class TranslatorSpanish : public Translator * list. */ virtual QCString trAlphabeticalList() - { return "Lista alfab茅tica"; } + { return "Lista alfab閠ica"; } ////////////////////////////////////////////////////////////////////////// // new since 0.49-990901 @@ -801,7 +801,7 @@ class TranslatorSpanish : public Translator /*! This is in the (quick) index as a link to the main page (index.html) */ virtual QCString trMainPage() - { return "P谩gina principal"; } + { return "P醙ina principal"; } /*! This is used in references to page that are put in the LaTeX * documentation. It should be an abbreviation of the word page. @@ -815,11 +815,11 @@ class TranslatorSpanish : public Translator virtual QCString trDefinedAtLineInSourceFile() { - return "Definici贸n en la l铆nea @0 del archivo @1."; + return "Definici髇 en la l韓ea @0 del archivo @1."; } virtual QCString trDefinedInSourceFile() { - return "Definici贸n en el archivo @0."; + return "Definici髇 en el archivo @0."; } ////////////////////////////////////////////////////////////////////////// @@ -838,43 +838,43 @@ class TranslatorSpanish : public Translator /*! this text is put before a collaboration diagram */ virtual QCString trCollaborationDiagram(const char *clName) { - return (QCString)"Diagrama de colaboraci贸n para "+clName+":"; + return (QCString)"Diagrama de colaboraci髇 para "+clName+":"; } /*! this text is put before an include dependency graph */ virtual QCString trInclDepGraph(const char *fName) { - return (QCString)"Dependencia gr谩fica adjunta para "+fName+":"; + return (QCString)"Dependencia gr醘ica adjunta para "+fName+":"; } /*! header that is put before the list of constructor/destructors. */ virtual QCString trConstructorDocumentation() { - return "Documentaci贸n del constructor y destructor"; + return "Documentaci髇 del constructor y destructor"; } /*! Used in the file documentation to point to the corresponding sources. */ virtual QCString trGotoSourceCode() { - return "Ir al c贸digo fuente de este archivo."; + return "Ir al c骴igo fuente de este archivo."; } /*! Used in the file sources to point to the corresponding documentation. */ virtual QCString trGotoDocumentation() { - return "Ir a la documentaci贸n de este archivo."; + return "Ir a la documentaci髇 de este archivo."; } /*! Text for the \\pre command */ virtual QCString trPrecondition() { - return "Precondici贸n"; + return "Precondici髇"; } /*! Text for the \\post command */ virtual QCString trPostcondition() { - return "Postcondici贸n"; + return "Postcondici髇"; } /*! Text for the \\invariant command */ @@ -892,27 +892,27 @@ class TranslatorSpanish : public Translator /*! Text used the source code in the file index */ virtual QCString trCode() { - return "c贸digo"; + return "c骴igo"; } virtual QCString trGraphicalHierarchy() { - return "Representaci贸n gr谩fica de la clase"; + return "Representaci髇 gr醘ica de la clase"; } virtual QCString trGotoGraphicalHierarchy() { - return "Ir a la representaci贸n gr谩fica de la jerarqu铆a de la clase"; + return "Ir a la representaci髇 gr醘ica de la jerarqu韆 de la clase"; } virtual QCString trGotoTextualHierarchy() { - return "Ir a la jerarqu铆a textual de la clase"; + return "Ir a la jerarqu韆 textual de la clase"; } virtual QCString trPageIndex() { - return "P谩gina indice"; + return "P醙ina indice"; } ////////////////////////////////////////////////////////////////////////// @@ -926,7 +926,7 @@ class TranslatorSpanish : public Translator virtual QCString trPublicTypes() { - return "Tipos p煤blicos"; + return "Tipos p鷅licos"; } virtual QCString trPublicAttribs() @@ -937,13 +937,13 @@ class TranslatorSpanish : public Translator } else { - return "Atributos p煤blicos"; + return "Atributos p鷅licos"; } } virtual QCString trStaticPublicAttribs() { - return "Atributos p煤blicos est谩ticos"; + return "Atributos p鷅licos est醫icos"; } virtual QCString trProtectedTypes() @@ -958,7 +958,7 @@ class TranslatorSpanish : public Translator virtual QCString trStaticProtectedAttribs() { - return "Atributos protegidos est谩ticos"; + return "Atributos protegidos est醫icos"; } virtual QCString trPrivateTypes() @@ -973,7 +973,7 @@ class TranslatorSpanish : public Translator virtual QCString trStaticPrivateAttribs() { - return "Atributos privados est谩ticos"; + return "Atributos privados est醫icos"; } ////////////////////////////////////////////////////////////////////////// @@ -1008,12 +1008,12 @@ class TranslatorSpanish : public Translator virtual QCString trAttention() { - return "Atenci贸n"; + return "Atenci髇"; } virtual QCString trInclByDepGraph() { - return "Gr谩fico de los archivos que directa o " + return "Gr醘ico de los archivos que directa o " "indirectamente incluyen a este archivo:"; } @@ -1029,7 +1029,7 @@ class TranslatorSpanish : public Translator /*! title of the graph legend page */ QCString trLegendTitle() { - return "Leyenda del Gr谩fico"; + return "Leyenda del Gr醘ico"; } /*! page explaining how the dot graph's should be interpreted @@ -1038,13 +1038,13 @@ class TranslatorSpanish : public Translator virtual QCString trLegendDocs() { return - "Esta p谩gina explica como interpretar los gr谩ficos que son generados " + "Esta p醙ina explica como interpretar los gr醘icos que son generados " "por doxygen.

\n" "Considere el siguiente ejemplo:\n" "\\code\n" "/*! Clase invisible por truncamiento */\n" "class Invisible { };\n\n" - "/*! Clase truncada, relaci贸n de herencia escondida */\n" + "/*! Clase truncada, relaci髇 de herencia escondida */\n" "class Truncated : public Invisible { };\n\n" "/* Clase no documentada con comentarios de doxygen */\n" "class Undocumented { };\n\n" @@ -1069,31 +1069,31 @@ class TranslatorSpanish : public Translator " Used *m_usedClass;\n" "};\n" "\\endcode\n" - "Si la etiqueta \\c MAX_DOT_GRAPH_HEIGHT en el archivo de configuraci贸n " - "tiene valor 240 resultar谩 en el siguiente gr谩fico:" + "Si la etiqueta \\c MAX_DOT_GRAPH_HEIGHT en el archivo de configuraci髇 " + "tiene valor 240 resultar en el siguiente gr醘ico:" "

\"\"
\n" "

\n" - "Las cajas en el gr谩fico arriba tienen el significado que sigue:\n" + "Las cajas en el gr醘ico arriba tienen el significado que sigue:\n" "

    \n" - "
  • Una caja llena negra representa la estructura o clase para la cu谩l" - "se gener谩 el gr谩fico.\n" - "
  • Una caja con borde negro se帽ala una estructura o clase documentada.\n" - "
  • Una caja con borde griz se帽ala una estructura o clase no documentada.\n" - "
  • una caja con borde rojo se帽ala una estructura o clase documentada" - " de la cu谩l no toda las relaciones de jerarqu铆a/contenido son " - "mostradas. El gr谩fico sera truncado si este no calza dentro de los " - "l铆mites especificados." + "
  • Una caja llena negra representa la estructura o clase para la cu醠" + "se gener el gr醘ico.\n" + "
  • Una caja con borde negro se馻la una estructura o clase documentada.\n" + "
  • Una caja con borde griz se馻la una estructura o clase no documentada.\n" + "
  • una caja con borde rojo se馻la una estructura o clase documentada" + " de la cu醠 no toda las relaciones de jerarqu韆/contenido son " + "mostradas. El gr醘ico sera truncado si este no calza dentro de los " + "l韒ites especificados." "
\n" "Las flechas tienen el siguiente significado:\n" "
    \n" - "
  • Una flecha azul oscuro es usada para visualizar una relaci贸n herencia publica entre dos clases.\n" + "
  • Una flecha azul oscuro es usada para visualizar una relaci髇 herencia publica entre dos clases.\n" "
  • Una flecha verde oscura es usada para herencia protegida.\n" "
  • Una flecha rojo oscura es usada para herencia privada.\n" - "
  • Una flecha segmentada p煤rpura se usa si la clase es contenida o " - "usada por otra clase. La flecha est谩 etiquetada por la variable " + "
  • Una flecha segmentada p鷕pura se usa si la clase es contenida o " + "usada por otra clase. La flecha est etiquetada por la variable " "con que se accede a la clase o estructura apuntada. \n" - "
  • Una flecha segmentada amarilla indica la relaci贸n entre una instancia template y la clase template de la que se ha instanciado." - " La flecha se etiqueta con los par谩metros con que se llama al template.\n" + "
  • Una flecha segmentada amarilla indica la relaci髇 entre una instancia template y la clase template de la que se ha instanciado." + " La flecha se etiqueta con los par醡etros con que se llama al template.\n" "
\n"; } @@ -1126,7 +1126,7 @@ class TranslatorSpanish : public Translator /*! Used as a section header for KDE-2 IDL methods */ virtual QCString trDCOPMethods() { - return "M茅todos DCOP"; + return "M閠odos DCOP"; } ////////////////////////////////////////////////////////////////////////// @@ -1142,7 +1142,7 @@ class TranslatorSpanish : public Translator /*! Used as a section header for IDL property documentation */ virtual QCString trPropertyDocumentation() { - return "Documentaci贸n de Propiedades"; + return "Documentaci髇 de Propiedades"; } ////////////////////////////////////////////////////////////////////////// @@ -1177,7 +1177,7 @@ class TranslatorSpanish : public Translator /*! The description of the package index page */ virtual QCString trPackageListDescription() { - return "Aqu铆 van los paquetes con una breve descripci贸n (si est谩 disponible):"; + return "Aqu van los paquetes con una breve descripci髇 (si et disponible):"; } /*! The link name in the Quick links header for each page */ @@ -1254,7 +1254,7 @@ class TranslatorSpanish : public Translator /*! Used as header RTF general index */ virtual QCString trRTFGeneralIndex() { - return "脥ndice"; + return "蚽dice"; } /*! This is used for translation of the word that will possibly @@ -1285,9 +1285,8 @@ class TranslatorSpanish : public Translator */ virtual QCString trNamespace(bool first_capital, bool singular) { - QCString result((first_capital ? "Espacio" : "espacio")); + QCString result((first_capital ? "Namespace" : "namespace")); if (!singular) result+="s"; - result+=" de nombres"; return result; } @@ -1308,7 +1307,7 @@ class TranslatorSpanish : public Translator */ virtual QCString trPage(bool first_capital, bool singular) { - QCString result((first_capital ? "P谩gina" : "p谩gina")); + QCString result((first_capital ? "P醙ina" : "p醙ina")); if (!singular) result+="s"; return result; } @@ -1418,7 +1417,7 @@ class TranslatorSpanish : public Translator /*! Header used for the documentation section of a class' events. */ virtual QCString trEventDocumentation() { - return "Documentaci贸n de los Eventos"; + return "Documentaci髇 de los Eventos"; } ////////////////////////////////////////////////////////////////////////// @@ -1445,7 +1444,7 @@ class TranslatorSpanish : public Translator */ virtual QCString trStaticPackageMembers() { - return "Funciones Est谩ticas del Paquete"; + return "Funciones Est醫icas del Paquete"; } /*! Used as a heading for a list of Java class variables with package @@ -1461,7 +1460,7 @@ class TranslatorSpanish : public Translator */ virtual QCString trStaticPackageAttribs() { - return "Atributos Est谩ticos del Paquete"; + return "Atributos Est醫icos del Paquete"; } ////////////////////////////////////////////////////////////////////////// @@ -1479,7 +1478,7 @@ class TranslatorSpanish : public Translator /*! Put in front of the call graph for a function. */ virtual QCString trCallGraph() { - return "Gr谩fico de llamadas para esta funci贸n:"; + return "Gr醘ico de llamadas para esta funci髇:"; } ////////////////////////////////////////////////////////////////////////// @@ -1500,7 +1499,7 @@ class TranslatorSpanish : public Translator */ virtual QCString trSearchResultsTitle() { - return "Resultados de la B煤squeda"; + return "Resultados de la B鷖queda"; } /*! This string is put just before listing the search results. The @@ -1515,15 +1514,15 @@ class TranslatorSpanish : public Translator { if (numDocuments==0) { - return "Disculpe, no se encontraron documentos que coincidan con su b煤squeda."; + return "Disculpe, no se encontraron documentos que coincidan con su b鷖queda."; } else if (numDocuments==1) { - return "Se encontr贸 1 documento que coincide con su b煤squeda."; + return "Se encontr 1 documento que coincide con su b鷖queda."; } else { - return "Se encontraron $num documentos que coinciden con su b煤squeda. " + return "Se encontraron $num documentos que coinciden con su b鷖queda. " "Se muestran los mejores resultados primero."; } } @@ -1555,13 +1554,13 @@ class TranslatorSpanish : public Translator * hierarchy. */ virtual QCString trDirIndex() - { return "Jerarqu铆a de Directorio"; } + { return "Jerarqu韆 de Directorio"; } /*! This is used as the name of the chapter containing the documentation * of the directories. */ virtual QCString trDirDocumentation() - { return "Documentaci贸n de Directorio"; } + { return "Documentaci髇 de Directorio"; } /*! 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. @@ -1573,8 +1572,8 @@ class TranslatorSpanish : public Translator * and the fact that it is sorted alphabetically per level */ virtual QCString trDirDescription() - { return "La jeraqu铆a de este directorio est谩 ordenada" - " alfab茅ticamente, de manera aproximada:"; + { return "La jeraqu韆 de este directorio est ordenada" + " alfab閠icamente, de manera aproximada:"; } /*! This returns the title of a directory page. The name of the @@ -1606,9 +1605,9 @@ class TranslatorSpanish : public Translator */ virtual QCString trOverloadText() { - return "Esta es una funci贸n miembro sobrecargada que se " + return "Esta es una funci髇 miembro sobrecargada que se " "suministra por conveniencia. Difiere de la anterior " - "funci贸n solamente en los argumentos que acepta."; + "funci髇 solamente en los argumentos que acepta."; } ////////////////////////////////////////////////////////////////////////// @@ -1618,28 +1617,28 @@ class TranslatorSpanish : public Translator /*! This is used to introduce a caller (or called-by) graph */ virtual QCString trCallerGraph() { - return "Gr谩fico de llamadas a esta funci贸n:"; + return "Gr醘ico de llamadas a esta funci髇:"; } /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for enumeration values */ virtual QCString trEnumerationValueDocumentation() - { return "Documentaci贸n de los valores de la enumeraci贸n"; } + { return "Documentaci髇 de los valores de la enumeraci髇"; } ////////////////////////////////////////////////////////////////////////// // new since 1.5.4 (mainly for Fortran) ////////////////////////////////////////////////////////////////////////// // De parte de Bartomeu: // No conozco el Fortran, salvo un par de ejercicios en la universidad - // hace muchos a帽os. Por lo tanto, las traducciones son del ingl茅s - // al espa帽ol, no de un usuario de Fortran que puede que haya cosas que no + // hace muchos a駉s. Por lo tanto, las traducciones son del ingl閟 + // al espa駉l, no de un usuario de Fortran que puede que haya cosas que no // traduzca o traduzca de otra forma. Que los usuarios de Fortran disculpen - // y espero se animen a mejorar mi traducci贸n. + // y espero se animen a mejorar mi traducci髇. /*! header that is put before the list of member subprograms (Fortran). */ virtual QCString trMemberFunctionDocumentationFortran() - { return "Documetaci贸n de miembros Function/Subroutine"; } + { return "Documetaci髇 de miembros Function/Subroutine"; } /*! This is put above each page as a link to the list of annotated data types (Fortran). */ virtual QCString trCompoundListFortran() @@ -1651,12 +1650,12 @@ class TranslatorSpanish : public Translator /*! This is an introduction to the annotated compound list (Fortran). */ virtual QCString trCompoundListDescriptionFortran() - { return "Aqu铆 est谩n los tipos de datos con una breve descripci贸n:"; } + { return "Aqu est醤 los tipos de datos con una breve descripci髇:"; } /*! This is an introduction to the page with all data types (Fortran). */ virtual QCString trCompoundMembersDescriptionFortran(bool extractAll) { - QCString result="Aqu铆 tiene una lista de todos "; + QCString result="Aqu est una lista de todos "; result+="los miembros de los tipos de datos "; if (!extractAll) { @@ -1665,7 +1664,7 @@ class TranslatorSpanish : public Translator result+="con enlaces a "; if (!extractAll) { - result+="la documentaci贸n de la estructura de datos para cada miembro"; + result+="la documentaci髇 de la estructura de datos para cada miembro"; } else { @@ -1678,13 +1677,13 @@ class TranslatorSpanish : public Translator * annotated compound index (Fortran). */ virtual QCString trCompoundIndexFortran() - { return "脥ndice de tipos de datos"; } + { return "蚽dice de tipos de datos"; } /*! This is used in LaTeX as the title of the chapter containing * the documentation of all data types (Fortran). */ virtual QCString trTypeDocumentation() - { return "Documentaci贸n de tipos de datos"; } + { return "Documentaci髇 de tipos de datos"; } /*! This is used in the documentation of a file as a header before the * list of (global) subprograms (Fortran). @@ -1696,7 +1695,7 @@ class TranslatorSpanish : public Translator * of documentation blocks for subprograms (Fortran) */ virtual QCString trSubprogramDocumentation() - { return "Documentaci贸n de Funciones/Subprogramas"; } + { return "Documentaci髇 de Funciones/Subprogramas"; } /*! This is used in the documentation of a file/namespace/group before * the list of links to documented compounds (Fortran) @@ -1706,14 +1705,14 @@ class TranslatorSpanish : public Translator /*! used as the title of page containing all the index of all modules (Fortran). */ virtual QCString trModulesList() - { return "Lista de m贸dulos"; } + { return "Lista de m骴ulos"; } /*! used as an introduction to the modules list (Fortran) */ virtual QCString trModulesListDescription(bool extractAll) { - QCString result="Lista de todos los m贸dulos "; + QCString result="Lista de todos los m骴ulos "; if (!extractAll) result+="documentados "; - result+="con una breve descripci贸n:"; + result+="con una breve descripci髇:"; return result; } @@ -1726,13 +1725,13 @@ class TranslatorSpanish : public Translator if (isTemplate) result+=" la plantilla de"; switch(compType) { - case ClassDef::Class: result+="l m贸dulo"; break; + case ClassDef::Class: result+="l m骴ulo"; break; case ClassDef::Struct: result+="l tipo"; break; - case ClassDef::Union: result+=" la uni贸n"; break; + case ClassDef::Union: result+=" la uni髇"; break; case ClassDef::Interface: result+=" la interfaz"; break; case ClassDef::Protocol: result+="l protocolo"; break; - case ClassDef::Category: result+=" la categor铆a"; break; - case ClassDef::Exception: result+=" la excepci贸n"; break; + case ClassDef::Category: result+=" la categor韆"; break; + case ClassDef::Exception: result+=" la excepci髇"; break; } result+=(QCString)clName; return result; @@ -1741,28 +1740,28 @@ class TranslatorSpanish : public Translator /*! used as the title of the HTML page of a module (Fortran) */ virtual QCString trModuleReference(const char *namespaceName) { - QCString result="Referencia del m贸dulo "; + QCString result="Referencia m骴ulo "; result+=namespaceName; return result; } /*! This is put above each page as a link to all members of modules. (Fortran) */ virtual QCString trModulesMembers() - { return "Miembros del m贸dulo"; } + { return "Miembros m骴ulo"; } /*! This is an introduction to the page with all modules members (Fortran) */ virtual QCString trModulesMemberDescription(bool extractAll) { - QCString result="Lista de todos los miembros del m贸dulo "; + QCString result="Lista de todos los miembros del m骴ulo "; if (!extractAll) result+="documentados "; result+="con enlaces "; if (extractAll) { - result+="a la documentaci贸n del m贸dulo para cada uno:"; + result+="a la documentaci髇 del m骴ulo para cada uno:"; } else { - result+="al m贸dulo al que pertenecen:"; + result+="al m骴ulo al que pertenecen:"; } return result; } @@ -1771,7 +1770,7 @@ class TranslatorSpanish : public Translator * index of all modules (Fortran). */ virtual QCString trModulesIndex() - { return "脥ndice de m贸dulos"; } + { return "蚽dice de m骴ulos"; } /*! This is used for translation of the word that will possibly * be followed by a single name or by a list of names @@ -1779,7 +1778,7 @@ class TranslatorSpanish : public Translator */ virtual QCString trModule(bool first_capital, bool singular) { - QCString result((first_capital ? "M贸dulo" : "m贸dulo")); + QCString result((first_capital ? "M骴ulo" : "m骴ulo")); if (!singular) result+="s"; return result; } @@ -1791,16 +1790,16 @@ class TranslatorSpanish : public Translator bool single) { // here s is one of " Module", " Struct" or " Union" // single is true implies a single file - QCString result=(QCString)"La documentaci贸n para est"; + QCString result=(QCString)"La documentaci髇 para est"; switch(compType) { - case ClassDef::Class: result+="e m贸dulo"; break; + case ClassDef::Class: result+="e m骴ulo"; break; case ClassDef::Struct: result+="e tipo"; break; - case ClassDef::Union: result+="a uni贸n"; break; + case ClassDef::Union: result+="a uni髇"; break; case ClassDef::Interface: result+="e interfaz"; break; case ClassDef::Protocol: result+="e protocolo"; break; - case ClassDef::Category: result+="a categor铆a"; break; - case ClassDef::Exception: result+="a excepci贸n"; break; + case ClassDef::Category: result+="a categor韆"; break; + case ClassDef::Exception: result+="a excepci髇"; break; } result+=" fue generada de"; if (single) result+="l siguiente fichero:"; diff --git a/src/util.cpp b/src/util.cpp index bde39bd..5072721 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -3551,6 +3551,51 @@ void mergeArguments(ArgumentList *srcAl,ArgumentList *dstAl,bool forceNameOverwr } } +static void findMembersWithSpecificName(MemberName *mn, + const char *args, + bool checkStatics, + FileDef *currentFile, + bool checkCV, + QList &members) +{ + //printf(" Function with global scope name `%s' args=`%s'\n",memberName.data(),args); + MemberListIterator mli(*mn); + MemberDef *md; + for (mli.toFirst();(md=mli.current());++mli) + { + FileDef *fd=md->getFileDef(); + GroupDef *gd=md->getGroupDef(); + //printf(" md->name()=`%s' md->args=`%s' fd=%p gd=%p\n", + // md->name().data(),args,fd,gd); + if ( + ((gd && gd->isLinkable()) || (fd && fd->isLinkable())) && + md->getNamespaceDef()==0 && md->isLinkable() && + (!checkStatics || !md->isStatic() || currentFile==0 || fd==currentFile) // statics must appear in the same file + ) + { + //printf(" fd=%p gd=%p args=`%s'\n",fd,gd,args); + bool match=TRUE; + ArgumentList *argList=0; + if (args && !md->isDefine() && strcmp(args,"()")!=0) + { + argList=new ArgumentList; + LockingPtr mdAl = md->argumentList(); + stringToArgumentList(args,argList); + match=matchArguments2( + md->getOuterScope(),fd,mdAl.pointer(), + Doxygen::globalScope,fd,argList, + checkCV); + delete argList; argList=0; + } + if (match) + { + //printf("Found match!\n"); + members.append(md); + } + } + } +} + /*! * Searches for a member definition given its name `memberName' as a string. * memberName may also include a (partial) scope to indicate the scope @@ -3886,7 +3931,15 @@ bool getDefs(const QCString &scName,const QCString &memberName, //else // no scope => global function { QList members; + // search for matches with strict static checking + findMembersWithSpecificName(mn,args,TRUE,currentFile,checkCV,members); + if (members.count()==0) // nothing found + { + // search again without strict static checking + findMembersWithSpecificName(mn,args,FALSE,currentFile,checkCV,members); + } +#if 0 //printf(" Function with global scope name `%s' args=`%s'\n",memberName.data(),args); MemberListIterator mli(*mn); for (mli.toFirst();(md=mli.current());++mli) @@ -3897,7 +3950,8 @@ bool getDefs(const QCString &scName,const QCString &memberName, // md->name().data(),args,fd,gd); if ( ((gd && gd->isLinkable()) || (fd && fd->isLinkable())) && - md->getNamespaceDef()==0 && md->isLinkable() + md->getNamespaceDef()==0 && md->isLinkable() && + (!md->isStatic() || fd==currentFile) // statics must appear in the same file ) { //printf(" fd=%p gd=%p args=`%s'\n",fd,gd,args); @@ -3921,6 +3975,7 @@ bool getDefs(const QCString &scName,const QCString &memberName, } } } +#endif if (members.count()!=1 && args && !strcmp(args,"()")) { // no exact match found, but if args="()" an arbitrary @@ -3942,32 +3997,9 @@ bool getDefs(const QCString &scName,const QCString &memberName, } } //printf("found %d candidate members\n",members.count()); - if (members.count()==1 || currentFile!=0) + if (members.count()>0) // at least one match { - md=members.first(); - } - else if (members.count()>1) - { - //printf("Found more than one matching member!\n"); - // use some C scoping rules to determine the correct link - // 1. member in current file - // 2. non-static member in different file - if (currentFile==0) - { - bool ambig; - currentFile = findFileDef(Doxygen::inputNameDict,0/*namespaceName*/,ambig); - } - MemberDef *bmd = 0; - for (md=members.first(); md; md=members.next()) - { - if (currentFile && md->getBodyDef()==currentFile) - { - bmd = 0; - break; - } - if (!md->isStatic() || Config_getBool("EXTRACT_STATIC")) bmd = md; - } - if (bmd) md=bmd; + md=members.last(); } if (md) // found a matching global member { @@ -4062,7 +4094,8 @@ bool resolveRef(/* in */ const char *scName, /* in */ bool inSeeBlock, /* out */ Definition **resContext, /* out */ MemberDef **resMember, - bool lookForSpecialization + bool lookForSpecialization, + FileDef *currentFile ) { QCString tsName = name; @@ -4155,7 +4188,7 @@ bool resolveRef(/* in */ const char *scName, if (getDefs(scopeStr,nameStr,argsStr, md,cd,fd,nd,gd, scopePos==0 && !memberScopeFirst, - 0, + currentFile, TRUE ) ) diff --git a/src/util.h b/src/util.h index 2befdbc..2b248a3 100644 --- a/src/util.h +++ b/src/util.h @@ -136,7 +136,8 @@ bool resolveRef(/* in */ const char *scName, /* in */ bool inSeeBlock, /* out */ Definition **resContext, /* out */ MemberDef **resMember, - /* in */ bool lookForSpecializations = TRUE + /* in */ bool lookForSpecializations = TRUE, + /* in */ FileDef *currentFile = 0 ); bool resolveLink(/* in */ const char *scName, diff --git a/src/vhdldocgen.cpp b/src/vhdldocgen.cpp index eb535ce..809fc31 100644 --- a/src/vhdldocgen.cpp +++ b/src/vhdldocgen.cpp @@ -75,7 +75,7 @@ static const char* g_vhdlKeyWordMap0[] = "range", "record", "register", "reject", "report", "return","select", "severity", "shared", "signal", "subtype", "then", "to", "transport", "type","unaffected", "units", "until", "use","variable", "wait", "when", - "while", "with","true","false",0 + "while", "with","true","false","protected",0 }; // type diff --git a/src/vhdlscanner.l b/src/vhdlscanner.l index cedf780..073e0a1 100644 --- a/src/vhdlscanner.l +++ b/src/vhdlscanner.l @@ -417,6 +417,7 @@ static void parseFunctionProto() VhdlDocGen::parseFuncProto(qcs.data(),ql,name,ret); //printf("parseFuncProto(%s)=%s,%s\n",qcs.data(),name.data(),ret.data()); + VhdlDocGen::deleteAllChars(name,';'); current->name=name; current->startLine=iFuncLine; current->bodyLine=iFuncLine; @@ -639,6 +640,11 @@ BRACECLOSE [)]{1} ALLID [^;()\t ] +/* VHDL 2001 */ +ENDPROTECTED ("end"{BR}+"protected"{BR}+{NAME}{BR}*";")|("end"{BR}+"protected"{BR}*";") +ENDPROTECEDBODY "end"{BR}+"protected"{BR}+"body"{BR}+{NAME} + + %option noyywrap /* language parsing states */ @@ -661,6 +667,12 @@ ALLID [^;()\t ] %% +{ENDPROTECTED}|{ENDPROTECEDBODY} { + lineCount(); +} + + + {CONFIG} { // found configuration QCString qcs(vhdlscanYYtext); @@ -986,6 +998,21 @@ ALLID [^;()\t ] BEGIN(ParseType); } + +("is"){BR}+("protected"){BR}+("body") {lineCount(); BEGIN(Start); } + +("is"){BR}+("protected"){BR}+ { + lineCount(); + current->section=Entry::VARIABLE_SEC; + current->spec=VhdlDocGen::TYPE; + current->type="protected"; + newEntry(); + BEGIN(Start); +} + + + + ("is"){BR}*("record") { // find record lineCount(); if (isFunc) diff --git a/src/xmldocvisitor.cpp b/src/xmldocvisitor.cpp index 88ded55..764aa88 100644 --- a/src/xmldocvisitor.cpp +++ b/src/xmldocvisitor.cpp @@ -98,6 +98,8 @@ void XmlDocVisitor::visit(DocSymbol *s) case DocSymbol::Ring: m_t << "letter() << "\"/>"; break; case DocSymbol::Slash: m_t << "letter() << "\"/>"; break; case DocSymbol::Nbsp: m_t << ""; break; + case DocSymbol::Aelig: m_t << ""; break; + case DocSymbol::AElig: m_t << ""; break; default: err("Error: unknown symbol found\n"); } diff --git a/winbuild/Doxygen.vcproj b/winbuild/Doxygen.vcproj index 0edc633..c1dadb4 100644 --- a/winbuild/Doxygen.vcproj +++ b/winbuild/Doxygen.vcproj @@ -1557,6 +1557,10 @@ > + + -- cgit v0.12