diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/clangparser.cpp | 68 | ||||
-rw-r--r-- | src/commentscan.l | 7 | ||||
-rw-r--r-- | src/config.l | 5 | ||||
-rw-r--r-- | src/config.xml | 29 | ||||
-rw-r--r-- | src/configoptions.cpp | 24 | ||||
-rw-r--r-- | src/docparser.cpp | 4 | ||||
-rw-r--r-- | src/doctokenizer.l | 59 | ||||
-rw-r--r-- | src/doxygen.cpp | 3 | ||||
-rw-r--r-- | src/doxygen.sty | 464 | ||||
-rw-r--r-- | src/doxygen_sty.h | 464 | ||||
-rw-r--r-- | src/latexgen.cpp | 469 | ||||
-rw-r--r-- | src/libdoxygen.pro.in | 1 | ||||
-rw-r--r-- | src/libdoxygen.t.in | 3 | ||||
-rw-r--r-- | src/markdown.cpp | 9 | ||||
-rw-r--r-- | src/pagedef.cpp | 17 | ||||
-rw-r--r-- | src/pre.l | 2 | ||||
-rw-r--r-- | src/scanner.l | 11 | ||||
-rw-r--r-- | src/translator_ar.h | 2 | ||||
-rw-r--r-- | src/translator_ro.h | 649 | ||||
-rw-r--r-- | src/translator_sk.h | 59 |
20 files changed, 1600 insertions, 749 deletions
diff --git a/src/clangparser.cpp b/src/clangparser.cpp index d35f5da..459fd26 100644 --- a/src/clangparser.cpp +++ b/src/clangparser.cpp @@ -40,8 +40,10 @@ ClangParser *ClangParser::s_instance = 0; class ClangParser::Private { public: + enum DetectedLang { Detected_Cpp, Detected_ObjC, Detected_ObjCpp }; Private() : tu(0), tokens(0), numTokens(0), cursors(0), - ufs(0), sources(0), numFiles(0), fileMapping(257) + ufs(0), sources(0), numFiles(0), fileMapping(257), + detectedLang(Detected_Cpp) { fileMapping.setAutoDelete(TRUE); } int getCurrentTokenLine(); CXIndex index; @@ -56,6 +58,7 @@ class ClangParser::Private QCString *sources; uint numFiles; QDict<uint> fileMapping; + DetectedLang detectedLang; }; static QCString detab(const QCString &s) @@ -112,28 +115,6 @@ static QCString detab(const QCString &s) return out.get(); } -static QStrList getClangOptions() -{ - static QCString clangOptions = Config_getString("CLANG_OPTIONS"); - int p=0,i; - QStrList options; - while ((i=clangOptions.find(' ',p))!=-1) - { - QCString opt = clangOptions.mid(p,i-p).stripWhiteSpace(); - if (!opt.isEmpty()) - { - options.append(opt); - } - p=i+1; - } - QCString opt = clangOptions.right(clangOptions.length()-p).stripWhiteSpace(); - if (!opt.isEmpty()) - { - options.append(opt); - } - return options; -} - /** Callback function called for each include in a translation unit */ static void inclusionVisitor(CXFile includedFile, CXSourceLocation* /*inclusionStack*/, @@ -177,7 +158,7 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit) { static bool clangAssistedParsing = Config_getBool("CLANG_ASSISTED_PARSING"); static QStrList &includePath = Config_getList("INCLUDE_PATH"); - static QStrList clangOptions = getClangOptions(); + static QStrList clangOptions = Config_getList("CLANG_OPTIONS"); if (!clangAssistedParsing) return; //printf("ClangParser::start(%s)\n",fileName); p->fileName = fileName; @@ -207,8 +188,43 @@ void ClangParser::start(const char *fileName,QStrList &filesInTranslationUnit) } // extra options argv[argc++]=strdup("-ferror-limit=0"); - argv[argc++]=strdup("-x"); // force C++ - argv[argc++]=strdup("c++"); + argv[argc++]=strdup("-x"); + + // Since we can be presented with a .h file that can contain C/C++ or + // Objective C code and we need to configure the parser before knowing this, + // we use the source file to detected the language. Detection will fail if you + // pass a bunch of .h files containing ObjC code, and no sources :-( + SrcLangExt lang = getLanguageFromFileName(fileName); + if (lang==SrcLangExt_ObjC || p->detectedLang!=ClangParser::Private::Detected_Cpp) + { + QCString fn = fileName; + if (p->detectedLang==ClangParser::Private::Detected_Cpp && + (fn.right(4).lower()==".cpp" || fn.right(4).lower()==".cxx" || + fn.right(3).lower()==".cc" || fn.right(2).lower()==".c")) + { // fall back to C/C++ once we see an extension that indicates this + p->detectedLang = ClangParser::Private::Detected_Cpp; + } + else if (fn.right(3).lower()==".mm") // switch to Objective C++ + { + p->detectedLang = ClangParser::Private::Detected_ObjCpp; + } + else if (fn.right(2).lower()==".m") // switch to Objective C + { + p->detectedLang = ClangParser::Private::Detected_ObjC; + } + } + switch(p->detectedLang) + { + case ClangParser::Private::Detected_Cpp: + argv[argc++]=strdup("c++"); + break; + case ClangParser::Private::Detected_ObjC: + argv[argc++]=strdup("objective-c"); + break; + case ClangParser::Private::Detected_ObjCpp: + argv[argc++]=strdup("objective-c++"); + break; + } // provide the input and and its dependencies as unsaved files so we can // pass the filtered versions diff --git a/src/commentscan.l b/src/commentscan.l index 1644a6d..45f5425 100644 --- a/src/commentscan.l +++ b/src/commentscan.l @@ -871,7 +871,7 @@ DOCNL "\n"|"\\_linebr" LC "\\"{B}*"\n" NW [^a-z_A-Z0-9] FILESCHAR [a-z_A-Z0-9\x80-\xFF\\:\\\/\-\+@&#] -FILEECHAR [a-z_A-Z0-9\x80-\xFF\-\+] +FILEECHAR [a-z_A-Z0-9\x80-\xFF\-\+@&#] FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]*"\"") ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]* LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]* @@ -2528,6 +2528,11 @@ static bool handleEndIf(const QCString &) delete guards.pop(); } enabledSectionFound=FALSE; + if (g_spaceBeforeCmd) + { + addOutput(' '); + g_spaceBeforeCmd=FALSE; + } BEGIN( GuardParamEnd ); return FALSE; } diff --git a/src/config.l b/src/config.l index 8a4188e..58717ab 100644 --- a/src/config.l +++ b/src/config.l @@ -1113,7 +1113,7 @@ void Config::check() if (paperType!="a4" && paperType!="a4wide" && paperType!="letter" && paperType!="legal" && paperType!="executive") { - config_err("Error: Unknown page type specified"); + config_err("Error: Unknown page type specified\n"); } QCString &outputLanguage=Config_getEnum("OUTPUT_LANGUAGE"); @@ -1261,7 +1261,8 @@ void Config::check() if (dotFontName=="FreeSans" || dotFontName=="FreeSans.ttf") { config_err("Warning: doxygen no longer ships with the FreeSans font.\n" - "You may want to clear DOT_FONTPATH or risk wrong fonts being used for dot generated graphs.\n"); + "You may want to clear or change DOT_FONTPATH.\n" + "Otherwise you run the risk that the wrong font is being used for dot generated graphs.\n"); } diff --git a/src/config.xml b/src/config.xml index 5bbc6e6..0b67283 100644 --- a/src/config.xml +++ b/src/config.xml @@ -344,7 +344,7 @@ symbols. If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in documentation are documented, even if no documentation was available. Private class members and static file members will be hidden unless -the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES +the EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES ' defval='0'/> <option type='bool' id='EXTRACT_PRIVATE' docs=' If the EXTRACT_PRIVATE tag is set to YES all private members of a class @@ -800,14 +800,14 @@ which an include is specified. Set to NO to disable this. ' defval='1'/> <option type='bool' id='CLANG_ASSISTED_PARSING' setting='USE_LIBCLANG' docs=' If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser -for better parsing at the cost of reduced performance. This can be particularly -helpful with template rich C++ code for which doxygen's built-in +for more acurate parsing at the cost of reduced performance. This can be +particularly helpful with template rich C++ code for which doxygen's built-in parser lacks the necessairy type information. ' defval='0'/> - <option type='string' id='CLANG_OPTIONS' setting='USE_LIBCLANG' docs=' + <option type='list' id='CLANG_OPTIONS' setting='USE_LIBCLANG' docs=' If clang assisted parsing is enabled you can provide the compiler with command line options that you would normally use when invoking the compiler. Note that -the include paths will be set by doxygen based on the files and directory +the include paths will already be set by doxygen for the files and directories specified at INPUT and INCLUDE_PATH. ' defval='' depends='CLANG_ASSISTED_PARSING'/> </group> @@ -821,13 +821,13 @@ contains a lot of classes, structs, unions or interfaces. If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in which this list will be split (can be a number in the range [1..20]) -' minval='1' maxval='20' defval='5'/> +' minval='1' maxval='20' defval='5' depends='ALPHABETICAL_INDEX'/> <option type='list' id='IGNORE_PREFIX' format='string' docs=' In case all classes in a project start with a common prefix, all classes will be put under the same header in the alphabetical index. The IGNORE_PREFIX tag can be used to specify one or more prefixes that should be ignored while generating the index headers. -'> +' depends='ALPHABETICAL_INDEX'> </option> </group> <group name='HTML' docs='configuration options related to the HTML output'> @@ -1112,13 +1112,13 @@ rendering instead of using prerendered bitmaps. Use this if you do not have LaTeX installed or if you want to formulas look prettier in the HTML output. When enabled you may also need to install MathJax separately and configure the path to it using the MATHJAX_RELPATH option. -' defval='0'/> +' defval='0' depends='GENERATE_HTML'/> <option type='enum' id='MATHJAX_FORMAT' defval='HTML-CSS' docs=' When MathJax is enabled you can set the default output format to be used for the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and SVG. The default value is HTML-CSS, which is slower, but has the best compatibility. -'> +' depends='USE_MATHJAX'> <value name="HTML-CSS"/> <value name="NativeMML"/> <value name="SVG"/> @@ -1132,7 +1132,7 @@ MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax Content Delivery Network so you can quickly see the result without installing MathJax. However, it is strongly recommended to install a local copy of MathJax from http://www.mathjax.org before deployment. -' defval='http://cdn.mathjax.org/mathjax/latest'/> +' defval='http://cdn.mathjax.org/mathjax/latest' depends='USE_MATHJAX'/> <option type='list' id='MATHJAX_EXTENSIONS' format='string' docs=' The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension names that should be enabled during MathJax rendering. @@ -1187,7 +1187,7 @@ When SERVER_BASED_SEARCH AND EXTERNAL_SEARCH are both enabled the EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple projects and redirect the results back to the right project. -' defval='' dependes='SEARCHENGINE'/> +' defval='' depends='SEARCHENGINE'/> <option type='list' id='EXTRA_SEARCH_MAPPINGS' docs=' The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen projects other than the one defined by this configuration file, but that are @@ -1227,10 +1227,9 @@ save some trees in general. <option type='enum' id='PAPER_TYPE' defval='a4' docs=' The PAPER_TYPE tag can be used to set the paper type that is used by the printer. Possible values are: a4, letter, legal and -executive. If left blank a4wide will be used. +executive. If left blank a4 will be used. ' depends='GENERATE_LATEX'> <value name='a4'/> - <value name='a4wide'/> <value name='letter'/> <value name='legal'/> <value name='executive'/> @@ -1460,7 +1459,7 @@ pointed to by INCLUDE_PATH will be searched when a #include is found. The INCLUDE_PATH tag can be used to specify one or more directories that contain include files that are not input files but should be processed by the preprocessor. -' depends='ENABLE_PREPROCESSING'> +' depends='SEARCH_INCLUDES'> </option> <option type='list' id='INCLUDE_FILE_PATTERNS' format='string' docs=' You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard @@ -1565,7 +1564,7 @@ allowed to run in parallel. When set to 0 (the default) doxygen will base this on the number of processors available in the system. You can set it explicitly to a value larger than 0 to get control over the balance between CPU load and processing speed. -' defval='0' minval='0' maxval='32' dependes='HAVE_DOT'/> +' defval='0' minval='0' maxval='32' depends='HAVE_DOT'/> <option type='string' id='DOT_FONTNAME' format='string' docs=' By default doxygen will use the Helvetica font for all dot files that doxygen generates. When you want a differently looking font you can specify diff --git a/src/configoptions.cpp b/src/configoptions.cpp index 1cb144d..11a7f43 100644 --- a/src/configoptions.cpp +++ b/src/configoptions.cpp @@ -484,7 +484,7 @@ void addConfigOptions(Config *cfg) "If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in\n" "documentation are documented, even if no documentation was available.\n" "Private class members and static file members will be hidden unless\n" - "the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES", + "the EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES", FALSE ); //---- @@ -1138,8 +1138,8 @@ void addConfigOptions(Config *cfg) cb = cfg->addBool( "CLANG_ASSISTED_PARSING", "If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser\n" - "for better parsing at the cost of reduced performance. This can be particularly\n" - "helpful with template rich C++ code for which doxygen's built-in\n" + "for more acurate parsing at the cost of reduced performance. This can be\n" + "particularly helpful with template rich C++ code for which doxygen's built-in\n" "parser lacks the necessairy type information.", FALSE ); @@ -1148,14 +1148,14 @@ void addConfigOptions(Config *cfg) #endif #if USE_LIBCLANG //---- - cs = cfg->addString( + cl = cfg->addList( "CLANG_OPTIONS", "If clang assisted parsing is enabled you can provide the compiler with command\n" "line options that you would normally use when invoking the compiler. Note that\n" - "the include paths will be set by doxygen based on the files and directory\n" + "the include paths will already be set by doxygen for the files and directories\n" "specified at INPUT and INCLUDE_PATH." ); - cs->addDependency("CLANG_ASSISTED_PARSING"); + cl->addDependency("CLANG_ASSISTED_PARSING"); #else cfg->addDisabled("CLANG_OPTIONS"); #endif @@ -1179,6 +1179,7 @@ void addConfigOptions(Config *cfg) "in which this list will be split (can be a number in the range [1..20])", 1,20,5 ); + ci->addDependency("ALPHABETICAL_INDEX"); //---- cl = cfg->addList( "IGNORE_PREFIX", @@ -1187,6 +1188,7 @@ void addConfigOptions(Config *cfg) "The IGNORE_PREFIX tag can be used to specify one or more prefixes that\n" "should be ignored while generating the index headers." ); + cl->addDependency("ALPHABETICAL_INDEX"); //--------------------------------------------------------------------------- cfg->addInfo("HTML","configuration options related to the HTML output"); //--------------------------------------------------------------------------- @@ -1644,6 +1646,7 @@ void addConfigOptions(Config *cfg) "configure the path to it using the MATHJAX_RELPATH option.", FALSE ); + cb->addDependency("GENERATE_HTML"); //---- ce = cfg->addEnum( "MATHJAX_FORMAT", @@ -1656,6 +1659,7 @@ void addConfigOptions(Config *cfg) ce->addValue("HTML-CSS"); ce->addValue("NativeMML"); ce->addValue("SVG"); + ce->addDependency("USE_MATHJAX"); //---- cs = cfg->addString( "MATHJAX_RELPATH", @@ -1670,6 +1674,7 @@ void addConfigOptions(Config *cfg) "copy of MathJax from http://www.mathjax.org before deployment." ); cs->setDefaultValue("http://cdn.mathjax.org/mathjax/latest"); + cs->addDependency("USE_MATHJAX"); //---- cl = cfg->addList( "MATHJAX_EXTENSIONS", @@ -1751,6 +1756,7 @@ void addConfigOptions(Config *cfg) "useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple\n" "projects and redirect the results back to the right project." ); + cs->addDependency("SEARCHENGINE"); //---- cl = cfg->addList( "EXTRA_SEARCH_MAPPINGS", @@ -1819,11 +1825,10 @@ void addConfigOptions(Config *cfg) "PAPER_TYPE", "The PAPER_TYPE tag can be used to set the paper type that is used\n" "by the printer. Possible values are: a4, letter, legal and\n" - "executive. If left blank a4wide will be used.", + "executive. If left blank a4 will be used.", "a4" ); ce->addValue("a4"); - ce->addValue("a4wide"); ce->addValue("letter"); ce->addValue("legal"); ce->addValue("executive"); @@ -2196,7 +2201,7 @@ void addConfigOptions(Config *cfg) "contain include files that are not input files but should be processed by\n" "the preprocessor." ); - cl->addDependency("ENABLE_PREPROCESSING"); + cl->addDependency("SEARCH_INCLUDES"); cl->setWidgetType(ConfigList::Dir); //---- cl = cfg->addList( @@ -2350,6 +2355,7 @@ void addConfigOptions(Config *cfg) "between CPU load and processing speed.", 0,32,0 ); + ci->addDependency("HAVE_DOT"); //---- cs = cfg->addString( "DOT_FONTNAME", diff --git a/src/docparser.cpp b/src/docparser.cpp index aa9153a..1cc3b3c 100644 --- a/src/docparser.cpp +++ b/src/docparser.cpp @@ -4403,10 +4403,6 @@ int DocAutoListItem::parse() int retval = RetVal_OK; g_nodeStack.push(this); - //retval=m_paragraph->parse(); - //m_paragraph->markFirst(); - //m_paragraph->markLast(); - // first parse any number of paragraphs bool isFirst=TRUE; DocPara *lastPar=0; diff --git a/src/doctokenizer.l b/src/doctokenizer.l index c884976..cdf2933 100644 --- a/src/doctokenizer.l +++ b/src/doctokenizer.l @@ -338,7 +338,7 @@ ATTRIB {ATTRNAME}{WS}*("="{WS}*(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'">< URLCHAR [a-z_A-Z0-9\!\~\,\:\;\'\$\?\@\&\%\#\.\-\+\/\=] URLMASK ({URLCHAR}+([({]{URLCHAR}*[)}])?)+ FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+@&#] -FILEECHAR [a-z_A-Z0-9\-\+] +FILEECHAR [a-z_A-Z0-9\-\+@&#] HFILEMASK ("."{FILESCHAR}*{FILEECHAR}+)* FILEMASK ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|{HFILEMASK} LINKMASK [^ \t\n\r\\@<&${}]+("("[^\n)]*")")?({BLANK}*("const"|"volatile"){BLANK}+)? @@ -690,34 +690,37 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3} g_token->name = yytext; return TK_COMMAND; } +<St_Para>({BLANK}*\n)+{BLANK}*\n/{LISTITEM} { /* skip trailing paragraph followed by new list item */ + if (g_insidePre) + { + REJECT; + } + } +<St_Para>({BLANK}*\n)+{BLANK}*\n/{MLISTITEM} { /* skip trailing paragraph followed by new list item */ + if (!Doxygen::markdownSupport || g_insidePre) + { + REJECT; + } + } +<St_Para>({BLANK}*\n)+{BLANK}*\n/{OLISTITEM} { /* skip trailing paragraph followed by new list item */ + if (!Doxygen::markdownSupport || g_insidePre) + { + REJECT; + } + } <St_Para>({BLANK}*\n)+{BLANK}*\n{BLANK}* { - // g_insidePre was always FALSE, so the next section - // was never executed, now g_insidePre is set properly - // again, so the section is commented out to keep the - // old behavior. - //if (g_insidePre) - //{ - // /* Inside a <pre>..</pre> blank lines are treated - // * as whitespace. - // */ - // g_token->chars=yytext; - // return TK_WHITESPACE; - //} - //else // found end of a paragraph - { - g_token->indent=computeIndent(yytext,(int)yyleng); - int i; - // put back the indentation (needed for list items) - for (i=0;i<g_token->indent;i++) - { - unput(' '); - } - // tell flex that after putting the last indent - // back we are at the beginning of the line - YY_CURRENT_BUFFER->yy_at_bol=1; - // start of a new paragraph - return TK_NEWPARA; - } + g_token->indent=computeIndent(yytext,(int)yyleng); + int i; + // put back the indentation (needed for list items) + for (i=0;i<g_token->indent;i++) + { + unput(' '); + } + // tell flex that after putting the last indent + // back we are at the beginning of the line + YY_CURRENT_BUFFER->yy_at_bol=1; + // start of a new paragraph + return TK_NEWPARA; } <St_CodeOpt>{BLANK}*"{"(".")?{LABELID}"}" { g_token->name = yytext; diff --git a/src/doxygen.cpp b/src/doxygen.cpp index d97c0f6..e1fe597 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -11249,8 +11249,9 @@ void generateOutput() if (Config_getBool("GENERATE_LEGEND")) { - msg("Generating graph info page...\n"); + g_s.begin("Generating graph info page...\n"); writeGraphInfo(*g_outputList); + g_s.end(); } g_s.begin("Generating directory documentation...\n"); diff --git a/src/doxygen.sty b/src/doxygen.sty new file mode 100644 index 0000000..199abf8 --- /dev/null +++ b/src/doxygen.sty @@ -0,0 +1,464 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{doxygen} + +% Packages used by this style file +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{calc} +\RequirePackage{float} +\RequirePackage{ifthen} +\RequirePackage{verbatim} +\RequirePackage[table]{xcolor} +\RequirePackage{xtab} + +%---------- Internal commands used in this style file ---------------- + +\newcommand{\ensurespace}[1]{% + \begingroup% + \setlength{\dimen@}{#1}% + \vskip\z@\@plus\dimen@% + \penalty -100\vskip\z@\@plus -\dimen@% + \vskip\dimen@% + \penalty 9999% + \vskip -\dimen@% + \vskip\z@skip% hide the previous |\vskip| from |\addvspace| + \endgroup% +} + +\newcommand{\DoxyLabelFont}{} +\newcommand{\entrylabel}[1]{% + {% + \parbox[b]{\labelwidth-4pt}{% + \makebox[0pt][l]{\DoxyLabelFont#1}% + \vspace{1.5\baselineskip}% + }% + }% +} + +\newenvironment{DoxyDesc}[1]{% + \ensurespace{4\baselineskip}% + \begin{list}{}{% + \settowidth{\labelwidth}{20pt}% + \setlength{\parsep}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\leftmargin}{\labelwidth+\labelsep}% + \renewcommand{\makelabel}{\entrylabel}% + }% + \item[#1]% +}{% + \end{list}% +} + +\newsavebox{\xrefbox} +\newlength{\xreflength} +\newcommand{\xreflabel}[1]{% + \sbox{\xrefbox}{#1}% + \setlength{\xreflength}{\wd\xrefbox}% + \ifthenelse{\xreflength>\labelwidth}{% + \begin{minipage}{\textwidth}% + \setlength{\parindent}{0pt}% + \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}% + \end{minipage}% + }{% + \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}% + }% +} + +%---------- Commands used by doxygen LaTeX output generator ---------- + +% Used by <pre> ... </pre> +\newenvironment{DoxyPre}{% + \small% + \begin{alltt}% +}{% + \end{alltt}% + \normalsize% +} + +% Used by @code ... @endcode +\newenvironment{DoxyCode}{% + \par% + \scriptsize% + \begin{alltt}% +}{% + \end{alltt}% + \normalsize% +} + +% Used by @example, @include, @includelineno and @dontinclude +\newenvironment{DoxyCodeInclude}{% + \DoxyCode% +}{% + \endDoxyCode% +} + +% Used by @verbatim ... @endverbatim +\newenvironment{DoxyVerb}{% + \footnotesize% + \verbatim% +}{% + \endverbatim% + \normalsize% +} + +% Used by @verbinclude +\newenvironment{DoxyVerbInclude}{% + \DoxyVerb% +}{% + \endDoxyVerb% +} + +% Used by numbered lists (using '-#' or <ol> ... </ol>) +\newenvironment{DoxyEnumerate}{% + \enumerate% +}{% + \endenumerate% +} + +% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>) +\newenvironment{DoxyItemize}{% + \itemize% +}{% + \enditemize% +} + +% Used by description lists (using <dl> ... </dl>) +\newenvironment{DoxyDescription}{% + \description% +}{% + \enddescription% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if caption is specified) +\newenvironment{DoxyImage}{% + \begin{figure}[H]% + \begin{center}% +}{% + \end{center}% + \end{figure}% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if no caption is specified) +\newenvironment{DoxyImageNoCaption}{% +}{% +} + +% Used by @attention +\newenvironment{DoxyAttention}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @author and @authors +\newenvironment{DoxyAuthor}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @date +\newenvironment{DoxyDate}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @invariant +\newenvironment{DoxyInvariant}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @note +\newenvironment{DoxyNote}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @post +\newenvironment{DoxyPostcond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @pre +\newenvironment{DoxyPrecond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @copyright +\newenvironment{DoxyCopyright}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @remark +\newenvironment{DoxyRemark}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @return and @returns +\newenvironment{DoxyReturn}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @since +\newenvironment{DoxySince}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @see +\newenvironment{DoxySeeAlso}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @version +\newenvironment{DoxyVersion}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @warning +\newenvironment{DoxyWarning}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @internal +\newenvironment{DoxyInternal}[1]{% + \paragraph*{#1}% +}{% +} + +% Used by @par and @paragraph +\newenvironment{DoxyParagraph}[1]{% + \begin{list}{}{% + \settowidth{\labelwidth}{40pt}% + \setlength{\leftmargin}{\labelwidth}% + \setlength{\parsep}{0pt}% + \setlength{\itemsep}{-4pt}% + \renewcommand{\makelabel}{\entrylabel}% + }% + \item[#1]% +}{% + \end{list}% +} + +% Used by parameter lists +\newenvironment{DoxyParams}[2][]{% + \par% + \tabletail{\hline}% + \tablelasttail{\hline}% + \tablefirsthead{}% + \tablehead{}% + \ifthenelse{\equal{#1}{}}% + {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}% + \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|% + p{0.805\textwidth}|}}% + {\ifthenelse{\equal{#1}{1}}% + {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}% + \begin{xtabular}{|>{\centering}p{0.10\textwidth}|% + >{\raggedleft\hspace{0pt}}p{0.15\textwidth}|% + p{0.678\textwidth}|}}% + {\tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]}% + \begin{xtabular}{|>{\centering}p{0.10\textwidth}|% + >{\centering\hspace{0pt}}p{0.15\textwidth}|% + >{\raggedleft\hspace{0pt}}p{0.15\textwidth}|% + p{0.501\textwidth}|}}% + }\hline% +}{% + \end{xtabular}% + \tablefirsthead{}% + \vspace{6pt}% +} + +% Used for fields of simple structs +\newenvironment{DoxyFields}[1]{% + \par% + \tabletail{\hline}% + \tablelasttail{\hline}% + \tablehead{}% + \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}% + \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.15\textwidth}|% + p{0.15\textwidth}|% + p{0.63\textwidth}|}% + \hline% +}{% + \end{xtabular}% + \tablefirsthead{}% + \vspace{6pt}% +} + +% Used for parameters within a detailed function description +\newenvironment{DoxyParamCaption}{% + \renewcommand{\item}[2][]{##1 {\em ##2}}% +}{% +} + +% Used by return value lists +\newenvironment{DoxyRetVals}[1]{% + \par% + \tabletail{\hline}% + \tablelasttail{\hline}% + \tablehead{}% + \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}% + \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|% + p{0.705\textwidth}|}% + \hline% +}{% + \end{xtabular}% + \tablefirsthead{}% + \vspace{6pt}% +} + +% Used by exception lists +\newenvironment{DoxyExceptions}[1]{% + \par% + \tabletail{\hline}% + \tablelasttail{\hline}% + \tablehead{}% + \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}% + \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|% + p{0.705\textwidth}|}% + \hline% +}{% + \end{xtabular}% + \tablefirsthead{}% + \vspace{6pt}% +} + +% Used by template parameter lists +\newenvironment{DoxyTemplParams}[1]{% + \par% + \tabletail{\hline}% + \tablelasttail{\hline}% + \tablehead{}% + \tablefirsthead{\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]}% + \begin{xtabular}{|>{\raggedleft\hspace{0pt}}p{0.25\textwidth}|% + p{0.705\textwidth}|}% + \hline% +}{% + \end{xtabular}% + \tablefirsthead{}% + \vspace{6pt}% +} + +% Used for member lists +\newenvironment{DoxyCompactItemize}{% + \begin{itemize}% + \setlength{\itemsep}{-3pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \setlength{\partopsep}{0pt}% +}{% + \end{itemize}% +} + +% Used for member descriptions +\newenvironment{DoxyCompactList}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + \setlength{\itemsep}{0pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \renewcommand{\makelabel}{\hfill}% + }% +}{% + \end{list}% +} + +% Used for reference lists (@bug, @deprecated, @todo, etc.) +\newenvironment{DoxyRefList}{% + \begin{list}{}{% + \setlength{\labelwidth}{10pt}% + \setlength{\leftmargin}{\labelwidth}% + \addtolength{\leftmargin}{\labelsep}% + \renewcommand{\makelabel}{\xreflabel}% + }% +}{% + \end{list}% +} + +% Used by @bug, @deprecated, @todo, etc. +\newenvironment{DoxyRefDesc}[1]{% + \begin{list}{}{% + \renewcommand\makelabel[1]{\textbf{##1}}% + \settowidth\labelwidth{\makelabel{#1}}% + \setlength\leftmargin{\labelwidth+\labelsep}% + }% +}{% + \end{list}% +} + +% Used by parameter lists and simple sections +\newenvironment{Desc} +{\begin{list}{}{% + \settowidth{\labelwidth}{40pt}% + \setlength{\leftmargin}{\labelwidth}% + \setlength{\parsep}{0pt}% + \setlength{\itemsep}{-4pt}% + \renewcommand{\makelabel}{\entrylabel}% + } +}{% + \end{list}% +} + +% Used by tables +\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}% +\newlength{\tmplength}% +\newenvironment{TabularC}[1]% +{% +\setlength{\tmplength}% + {\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)}% + \par\begin{xtabular*}{\linewidth}% + {*{#1}{|>{\PBS\raggedright\hspace{0pt}}p{\the\tmplength}}|}% +}% +{\end{xtabular*}\par}% + +% Used for member group headers +\newenvironment{Indent}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + }% + \item[]\ignorespaces% +}{% + \unskip% + \end{list}% +} + +% Used when hyperlinks are turned off +\newcommand{\doxyref}[3]{% + \textbf{#1} (\textnormal{#2}\,\pageref{#3})% +} + +% Used for syntax highlighting +\definecolor{comment}{rgb}{0.5,0.0,0.0} +\definecolor{keyword}{rgb}{0.0,0.5,0.0} +\definecolor{keywordtype}{rgb}{0.38,0.25,0.125} +\definecolor{keywordflow}{rgb}{0.88,0.5,0.0} +\definecolor{preprocessor}{rgb}{0.5,0.38,0.125} +\definecolor{stringliteral}{rgb}{0.0,0.125,0.25} +\definecolor{charliteral}{rgb}{0.0,0.5,0.5} +\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0} +\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43} +\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0} +\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0} diff --git a/src/doxygen_sty.h b/src/doxygen_sty.h new file mode 100644 index 0000000..fedbd17 --- /dev/null +++ b/src/doxygen_sty.h @@ -0,0 +1,464 @@ +"\\NeedsTeXFormat{LaTeX2e}\n" +"\\ProvidesPackage{doxygen}\n" +"\n" +"% Packages used by this style file\n" +"\\RequirePackage{alltt}\n" +"\\RequirePackage{array}\n" +"\\RequirePackage{calc}\n" +"\\RequirePackage{float}\n" +"\\RequirePackage{ifthen}\n" +"\\RequirePackage{verbatim}\n" +"\\RequirePackage[table]{xcolor}\n" +"\\RequirePackage{xtab}\n" +"\n" +"%---------- Internal commands used in this style file ----------------\n" +"\n" +"\\newcommand{\\ensurespace}[1]{%\n" +" \\begingroup%\n" +" \\setlength{\\dimen@}{#1}%\n" +" \\vskip\\z@\\@plus\\dimen@%\n" +" \\penalty -100\\vskip\\z@\\@plus -\\dimen@%\n" +" \\vskip\\dimen@%\n" +" \\penalty 9999%\n" +" \\vskip -\\dimen@%\n" +" \\vskip\\z@skip% hide the previous |\\vskip| from |\\addvspace|\n" +" \\endgroup%\n" +"}\n" +"\n" +"\\newcommand{\\DoxyLabelFont}{}\n" +"\\newcommand{\\entrylabel}[1]{%\n" +" {%\n" +" \\parbox[b]{\\labelwidth-4pt}{%\n" +" \\makebox[0pt][l]{\\DoxyLabelFont#1}%\n" +" \\vspace{1.5\\baselineskip}%\n" +" }%\n" +" }%\n" +"}\n" +"\n" +"\\newenvironment{DoxyDesc}[1]{%\n" +" \\ensurespace{4\\baselineskip}%\n" +" \\begin{list}{}{%\n" +" \\settowidth{\\labelwidth}{20pt}%\n" +" \\setlength{\\parsep}{0pt}%\n" +" \\setlength{\\itemsep}{0pt}%\n" +" \\setlength{\\leftmargin}{\\labelwidth+\\labelsep}%\n" +" \\renewcommand{\\makelabel}{\\entrylabel}%\n" +" }%\n" +" \\item[#1]%\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"\\newsavebox{\\xrefbox}\n" +"\\newlength{\\xreflength}\n" +"\\newcommand{\\xreflabel}[1]{%\n" +" \\sbox{\\xrefbox}{#1}%\n" +" \\setlength{\\xreflength}{\\wd\\xrefbox}%\n" +" \\ifthenelse{\\xreflength>\\labelwidth}{%\n" +" \\begin{minipage}{\\textwidth}%\n" +" \\setlength{\\parindent}{0pt}%\n" +" \\hangindent=15pt\\bfseries #1\\vspace{1.2\\itemsep}%\n" +" \\end{minipage}%\n" +" }{%\n" +" \\parbox[b]{\\labelwidth}{\\makebox[0pt][l]{\\textbf{#1}}}%\n" +" }%\n" +"}\n" +"\n" +"%---------- Commands used by doxygen LaTeX output generator ----------\n" +"\n" +"% Used by <pre> ... </pre>\n" +"\\newenvironment{DoxyPre}{%\n" +" \\small%\n" +" \\begin{alltt}%\n" +"}{%\n" +" \\end{alltt}%\n" +" \\normalsize%\n" +"}\n" +"\n" +"% Used by @code ... @endcode\n" +"\\newenvironment{DoxyCode}{%\n" +" \\par%\n" +" \\scriptsize%\n" +" \\begin{alltt}%\n" +"}{%\n" +" \\end{alltt}%\n" +" \\normalsize%\n" +"}\n" +"\n" +"% Used by @example, @include, @includelineno and @dontinclude\n" +"\\newenvironment{DoxyCodeInclude}{%\n" +" \\DoxyCode%\n" +"}{%\n" +" \\endDoxyCode%\n" +"}\n" +"\n" +"% Used by @verbatim ... @endverbatim\n" +"\\newenvironment{DoxyVerb}{%\n" +" \\footnotesize%\n" +" \\verbatim%\n" +"}{%\n" +" \\endverbatim%\n" +" \\normalsize%\n" +"}\n" +"\n" +"% Used by @verbinclude\n" +"\\newenvironment{DoxyVerbInclude}{%\n" +" \\DoxyVerb%\n" +"}{%\n" +" \\endDoxyVerb%\n" +"}\n" +"\n" +"% Used by numbered lists (using '-#' or <ol> ... </ol>)\n" +"\\newenvironment{DoxyEnumerate}{%\n" +" \\enumerate%\n" +"}{%\n" +" \\endenumerate%\n" +"}\n" +"\n" +"% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)\n" +"\\newenvironment{DoxyItemize}{%\n" +" \\itemize%\n" +"}{%\n" +" \\enditemize%\n" +"}\n" +"\n" +"% Used by description lists (using <dl> ... </dl>)\n" +"\\newenvironment{DoxyDescription}{%\n" +" \\description%\n" +"}{%\n" +" \\enddescription%\n" +"}\n" +"\n" +"% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n" +"% (only if caption is specified)\n" +"\\newenvironment{DoxyImage}{%\n" +" \\begin{figure}[H]%\n" +" \\begin{center}%\n" +"}{%\n" +" \\end{center}%\n" +" \\end{figure}%\n" +"}\n" +"\n" +"% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n" +"% (only if no caption is specified)\n" +"\\newenvironment{DoxyImageNoCaption}{%\n" +"}{%\n" +"}\n" +"\n" +"% Used by @attention\n" +"\\newenvironment{DoxyAttention}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @author and @authors\n" +"\\newenvironment{DoxyAuthor}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @date\n" +"\\newenvironment{DoxyDate}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @invariant\n" +"\\newenvironment{DoxyInvariant}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @note\n" +"\\newenvironment{DoxyNote}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @post\n" +"\\newenvironment{DoxyPostcond}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @pre\n" +"\\newenvironment{DoxyPrecond}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @copyright\n" +"\\newenvironment{DoxyCopyright}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @remark\n" +"\\newenvironment{DoxyRemark}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @return and @returns\n" +"\\newenvironment{DoxyReturn}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @since\n" +"\\newenvironment{DoxySince}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @see\n" +"\\newenvironment{DoxySeeAlso}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @version\n" +"\\newenvironment{DoxyVersion}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @warning\n" +"\\newenvironment{DoxyWarning}[1]{%\n" +" \\begin{DoxyDesc}{#1}%\n" +"}{%\n" +" \\end{DoxyDesc}%\n" +"}\n" +"\n" +"% Used by @internal\n" +"\\newenvironment{DoxyInternal}[1]{%\n" +" \\paragraph*{#1}%\n" +"}{%\n" +"}\n" +"\n" +"% Used by @par and @paragraph\n" +"\\newenvironment{DoxyParagraph}[1]{%\n" +" \\begin{list}{}{%\n" +" \\settowidth{\\labelwidth}{40pt}%\n" +" \\setlength{\\leftmargin}{\\labelwidth}%\n" +" \\setlength{\\parsep}{0pt}%\n" +" \\setlength{\\itemsep}{-4pt}%\n" +" \\renewcommand{\\makelabel}{\\entrylabel}%\n" +" }%\n" +" \\item[#1]%\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used by parameter lists\n" +"\\newenvironment{DoxyParams}[2][]{%\n" +" \\par%\n" +" \\tabletail{\\hline}%\n" +" \\tablelasttail{\\hline}%\n" +" \\tablefirsthead{}%\n" +" \\tablehead{}%\n" +" \\ifthenelse{\\equal{#1}{}}%\n" +" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" +" p{0.805\\textwidth}|}}%\n" +" {\\ifthenelse{\\equal{#1}{1}}%\n" +" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\centering}p{0.10\\textwidth}|%\n" +" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" +" p{0.678\\textwidth}|}}%\n" +" {\\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #2}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\centering}p{0.10\\textwidth}|%\n" +" >{\\centering\\hspace{0pt}}p{0.15\\textwidth}|%\n" +" >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" +" p{0.501\\textwidth}|}}%\n" +" }\\hline%\n" +"}{%\n" +" \\end{xtabular}%\n" +" \\tablefirsthead{}%\n" +" \\vspace{6pt}%\n" +"}\n" +"\n" +"% Used for fields of simple structs\n" +"\\newenvironment{DoxyFields}[1]{%\n" +" \\par%\n" +" \\tabletail{\\hline}%\n" +" \\tablelasttail{\\hline}%\n" +" \\tablehead{}%\n" +" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" +" p{0.15\\textwidth}|%\n" +" p{0.63\\textwidth}|}%\n" +" \\hline%\n" +"}{%\n" +" \\end{xtabular}%\n" +" \\tablefirsthead{}%\n" +" \\vspace{6pt}%\n" +"}\n" +"\n" +"% Used for parameters within a detailed function description\n" +"\\newenvironment{DoxyParamCaption}{%\n" +" \\renewcommand{\\item}[2][]{##1 {\\em ##2}}%\n" +"}{%\n" +"}\n" +"\n" +"% Used by return value lists\n" +"\\newenvironment{DoxyRetVals}[1]{%\n" +" \\par%\n" +" \\tabletail{\\hline}%\n" +" \\tablelasttail{\\hline}%\n" +" \\tablehead{}%\n" +" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" +" p{0.705\\textwidth}|}%\n" +" \\hline%\n" +"}{%\n" +" \\end{xtabular}%\n" +" \\tablefirsthead{}%\n" +" \\vspace{6pt}%\n" +"}\n" +"\n" +"% Used by exception lists\n" +"\\newenvironment{DoxyExceptions}[1]{%\n" +" \\par%\n" +" \\tabletail{\\hline}%\n" +" \\tablelasttail{\\hline}%\n" +" \\tablehead{}%\n" +" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" +" p{0.705\\textwidth}|}%\n" +" \\hline%\n" +"}{%\n" +" \\end{xtabular}%\n" +" \\tablefirsthead{}%\n" +" \\vspace{6pt}%\n" +"}\n" +"\n" +"% Used by template parameter lists\n" +"\\newenvironment{DoxyTemplParams}[1]{%\n" +" \\par%\n" +" \\tabletail{\\hline}%\n" +" \\tablelasttail{\\hline}%\n" +" \\tablehead{}%\n" +" \\tablefirsthead{\\multicolumn{2}{l}{\\hspace{-6pt}\\bfseries\\fontseries{bc}\\selectfont\\color{darkgray} #1}\\\\[1ex]}%\n" +" \\begin{xtabular}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" +" p{0.705\\textwidth}|}%\n" +" \\hline%\n" +"}{%\n" +" \\end{xtabular}%\n" +" \\tablefirsthead{}%\n" +" \\vspace{6pt}%\n" +"}\n" +"\n" +"% Used for member lists\n" +"\\newenvironment{DoxyCompactItemize}{%\n" +" \\begin{itemize}%\n" +" \\setlength{\\itemsep}{-3pt}%\n" +" \\setlength{\\parsep}{0pt}%\n" +" \\setlength{\\topsep}{0pt}%\n" +" \\setlength{\\partopsep}{0pt}%\n" +"}{%\n" +" \\end{itemize}%\n" +"}\n" +"\n" +"% Used for member descriptions\n" +"\\newenvironment{DoxyCompactList}{%\n" +" \\begin{list}{}{%\n" +" \\setlength{\\leftmargin}{0.5cm}%\n" +" \\setlength{\\itemsep}{0pt}%\n" +" \\setlength{\\parsep}{0pt}%\n" +" \\setlength{\\topsep}{0pt}%\n" +" \\renewcommand{\\makelabel}{\\hfill}%\n" +" }%\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used for reference lists (@bug, @deprecated, @todo, etc.)\n" +"\\newenvironment{DoxyRefList}{%\n" +" \\begin{list}{}{%\n" +" \\setlength{\\labelwidth}{10pt}%\n" +" \\setlength{\\leftmargin}{\\labelwidth}%\n" +" \\addtolength{\\leftmargin}{\\labelsep}%\n" +" \\renewcommand{\\makelabel}{\\xreflabel}%\n" +" }%\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used by @bug, @deprecated, @todo, etc.\n" +"\\newenvironment{DoxyRefDesc}[1]{%\n" +" \\begin{list}{}{%\n" +" \\renewcommand\\makelabel[1]{\\textbf{##1}}%\n" +" \\settowidth\\labelwidth{\\makelabel{#1}}%\n" +" \\setlength\\leftmargin{\\labelwidth+\\labelsep}%\n" +" }%\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used by parameter lists and simple sections\n" +"\\newenvironment{Desc}\n" +"{\\begin{list}{}{%\n" +" \\settowidth{\\labelwidth}{40pt}%\n" +" \\setlength{\\leftmargin}{\\labelwidth}%\n" +" \\setlength{\\parsep}{0pt}%\n" +" \\setlength{\\itemsep}{-4pt}%\n" +" \\renewcommand{\\makelabel}{\\entrylabel}%\n" +" }\n" +"}{%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used by tables\n" +"\\newcommand{\\PBS}[1]{\\let\\temp=\\\\#1\\let\\\\=\\temp}%\n" +"\\newlength{\\tmplength}%\n" +"\\newenvironment{TabularC}[1]%\n" +"{%\n" +"\\setlength{\\tmplength}%\n" +" {\\linewidth/(#1)-\\tabcolsep*2-\\arrayrulewidth*(#1+1)/(#1)}%\n" +" \\par\\begin{xtabular*}{\\linewidth}%\n" +" {*{#1}{|>{\\PBS\\raggedright\\hspace{0pt}}p{\\the\\tmplength}}|}%\n" +"}%\n" +"{\\end{xtabular*}\\par}%\n" +"\n" +"% Used for member group headers\n" +"\\newenvironment{Indent}{%\n" +" \\begin{list}{}{%\n" +" \\setlength{\\leftmargin}{0.5cm}%\n" +" }%\n" +" \\item[]\\ignorespaces%\n" +"}{%\n" +" \\unskip%\n" +" \\end{list}%\n" +"}\n" +"\n" +"% Used when hyperlinks are turned off\n" +"\\newcommand{\\doxyref}[3]{%\n" +" \\textbf{#1} (\\textnormal{#2}\\,\\pageref{#3})%\n" +"}\n" +"\n" +"% Used for syntax highlighting\n" +"\\definecolor{comment}{rgb}{0.5,0.0,0.0}\n" +"\\definecolor{keyword}{rgb}{0.0,0.5,0.0}\n" +"\\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}\n" +"\\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}\n" +"\\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}\n" +"\\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}\n" +"\\definecolor{charliteral}{rgb}{0.0,0.5,0.5}\n" +"\\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}\n" +"\\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}\n" +"\\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}\n" +"\\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}\n" diff --git a/src/latexgen.cpp b/src/latexgen.cpp index ac73331..1434dca 100644 --- a/src/latexgen.cpp +++ b/src/latexgen.cpp @@ -37,6 +37,10 @@ #include "namespacedef.h" #include "filename.h" +static const char doxygenLatexStyle[] = +#include "doxygen_sty.h" +; + //static QCString filterTitle(const char *s) //{ // QCString tmp=s,result; @@ -505,470 +509,7 @@ static void writeDefaultHeaderPart3(FTextStream &t) static void writeDefaultStyleSheet(FTextStream &t) { - // part 1 - t << "\\NeedsTeXFormat{LaTeX2e}\n" - "\\ProvidesPackage{doxygen}\n" - "\n"; - t << "% Packages used by this style file\n" - "\\RequirePackage{alltt}\n" - "\\RequirePackage{array}\n" - "\\RequirePackage{calc}\n" - "\\RequirePackage{float}\n" - "\\RequirePackage{ifthen}\n" - "\\RequirePackage{longtable}\n" - "\\RequirePackage{verbatim}\n" - "\\RequirePackage[table]{xcolor}\n" - "\\RequirePackage{xtab}\n" - "\n" - "\n"; - t << "%---------- Internal commands used in this style file ----------------\n" - "\n"; - t << "\\newcommand{\\ensurespace}[1]{%\n" - " \\begingroup%\n" - " \\setlength{\\dimen@}{#1}%\n" - " \\vskip\\z@\\@plus\\dimen@%\n" - " \\penalty -100\\vskip\\z@\\@plus -\\dimen@%\n" - " \\vskip\\dimen@%\n" - " \\penalty 9999%\n" - " \\vskip -\\dimen@%\n" - " \\vskip\\z@skip% hide the previous |\\vskip| from |\\addvspace|\n" - " \\endgroup%\n" - "}\n" - "\n"; - t << "\\newcommand{\\DoxyLabelFont}{}\n" - "\\newcommand{\\entrylabel}[1]{%\n" - " {%\n" - " \\parbox[b]{\\labelwidth-4pt}{%\n" - " \\makebox[0pt][l]{\\DoxyLabelFont#1}%\n" - " \\vspace{1.5\\baselineskip}%\n" - " }%\n" - " }%\n" - "}\n" - "\n"; - t << "\\newenvironment{DoxyDesc}[1]{%\n" - " \\ensurespace{4\\baselineskip}%\n" - " \\begin{list}{}{%\n" - " \\settowidth{\\labelwidth}{40pt}%\n" - " \\setlength{\\leftmargin}{\\labelwidth}%\n" - " \\setlength{\\parsep}{0pt}%\n" - " \\setlength{\\itemsep}{-4pt}%\n" - " \\renewcommand{\\makelabel}{\\entrylabel}%\n" - " }%\n" - " \\item[#1]%\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "\\newsavebox{\\xrefbox}\n" - "\\newlength{\\xreflength}\n" - "\\newcommand{\\xreflabel}[1]{%\n" - " \\sbox{\\xrefbox}{#1}%\n" - " \\setlength{\\xreflength}{\\wd\\xrefbox}%\n" - " \\ifthenelse{\\xreflength>\\labelwidth}{%\n" - " \\begin{minipage}{\\textwidth}%\n" - " \\setlength{\\parindent}{0pt}%\n" - " \\hangindent=15pt\\bfseries #1\\vspace{1.2\\itemsep}%\n" - " \\end{minipage}%\n" - " }{%\n" - " \\parbox[b]{\\labelwidth}{\\makebox[0pt][l]{\\textbf{#1}}}%\n" - " }%\n" - "}\n" - "\n" - "\n"; - t << "%---------- Commands used by doxygen LaTeX output generator ----------\n" - "\n"; - t << "% Used by <pre> ... </pre>\n" - "\\newenvironment{DoxyPre}{%\n" - " \\small%\n" - " \\begin{alltt}%\n" - "}{%\n" - " \\end{alltt}%\n" - " \\normalsize%\n" - "}\n" - "\n"; - t << "% Used by @code ... @endcode\n" - "\\newenvironment{DoxyCode}{%\n" - " \\par%\n" - " \\scriptsize%\n" - " \\begin{alltt}%\n" - "}{%\n" - " \\end{alltt}%\n" - " \\normalsize%\n" - "}\n" - "\n"; - t << "% Used by @example, @include, @includelineno and @dontinclude\n" - "\\newenvironment{DoxyCodeInclude}{%\n" - " \\DoxyCode%\n" - "}{%\n" - " \\endDoxyCode%\n" - "}\n" - "\n"; - t << "% Used by @verbatim ... @endverbatim\n" - "\\newenvironment{DoxyVerb}{%\n" - " \\footnotesize%\n" - " \\verbatim%\n" - "}{%\n" - " \\endverbatim%\n" - " \\normalsize%\n" - "}\n" - "\n"; - t << "% Used by @verbinclude\n" - "\\newenvironment{DoxyVerbInclude}{%\n" - " \\DoxyVerb%\n" - "}{%\n" - " \\endDoxyVerb%\n" - "}\n" - "\n"; - t << "% Used by numbered lists (using '-#' or <ol> ... </ol>)\n" - "\\newenvironment{DoxyEnumerate}{%\n" - " \\enumerate%\n" - "}{%\n" - " \\endenumerate%\n" - "}\n" - "\n"; - t << "% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)\n" - "\\newenvironment{DoxyItemize}{%\n" - " \\itemize%\n" - "}{%\n" - " \\enditemize%\n" - "}\n" - "\n"; - t << "% Used by description lists (using <dl> ... </dl>)\n" - "\\newenvironment{DoxyDescription}{%\n" - " \\description%\n" - "}{%\n" - " \\enddescription%\n" - "}\n" - "\n"; - t << "% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n" - "% (only if caption is specified)\n" - "\\newenvironment{DoxyImage}{%\n" - " \\begin{figure}[H]%\n" - " \\begin{center}%\n" - "}{%\n" - " \\end{center}%\n" - " \\end{figure}%\n" - "}\n" - "\n"; - t << "% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc\n" - "% (only if no caption is specified)\n" - "\\newenvironment{DoxyImageNoCaption}{%\n" - "}{%\n" - "}\n" - "\n"; - t << "% Used by @attention\n" - "\\newenvironment{DoxyAttention}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @author and @authors\n" - "\\newenvironment{DoxyAuthor}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @date\n" - "\\newenvironment{DoxyDate}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @invariant\n" - "\\newenvironment{DoxyInvariant}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @note\n" - "\\newenvironment{DoxyNote}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @post\n" - "\\newenvironment{DoxyPostcond}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @pre\n" - "\\newenvironment{DoxyPrecond}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @copyright\n" - "\\newenvironment{DoxyCopyright}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @remark\n" - "\\newenvironment{DoxyRemark}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @return and @returns\n" - "\\newenvironment{DoxyReturn}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @since\n" - "\\newenvironment{DoxySince}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @see\n" - "\\newenvironment{DoxySeeAlso}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @version\n" - "\\newenvironment{DoxyVersion}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @warning\n" - "\\newenvironment{DoxyWarning}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - "}{%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by @internal\n" - "\\newenvironment{DoxyInternal}[1]{%\n" - " \\paragraph*{#1}%\n" - "}{%\n" - "}\n" - "\n"; - t << "% Used by @par and @paragraph\n" - "\\newenvironment{DoxyParagraph}[1]{%\n" - " \\begin{list}{}{%\n" - " \\settowidth{\\labelwidth}{40pt}%\n" - " \\setlength{\\leftmargin}{\\labelwidth}%\n" - " \\setlength{\\parsep}{0pt}%\n" - " \\setlength{\\itemsep}{-4pt}%\n" - " \\renewcommand{\\makelabel}{\\entrylabel}%\n" - " }%\n" - " \\item[#1]%\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used by parameter lists\n" - "\\newenvironment{DoxyParams}[2][]{%\n" - " \\begin{DoxyDesc}{#2}%\n" - " \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n" - " \\settowidth{\\labelwidth}{40pt}%\n" - " \\setlength{\\LTleft}{0pt}%\n" - " \\setlength{\\tabcolsep}{0.01\\textwidth}%\n" - " \\ifthenelse{\\equal{#1}{}}%\n" // default: name, docs columns - " {\\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" - " p{0.815\\textwidth}|}}%\n" - " {\\ifthenelse{\\equal{#1}{1}}%\n" // inout, name, docs columns, or type, name, docs columns - " {\\begin{longtable}{|>{\\centering}p{0.10\\textwidth}|%\n" - " >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" - " p{0.685\\textwidth}|}}%\n" - " {\\begin{longtable}{|>{\\centering}p{0.10\\textwidth}|%\n" // inout, type, name, docs columns - " >{\\centering\\hspace{0pt}}p{0.15\\textwidth}|%\n" - " >{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" - " p{0.515\\textwidth}|}}%\n" - " }\\hline%\n" - "}{%\n" - " \\end{longtable}%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used for fields of simple structs\n" - "\\newenvironment{DoxyFields}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - " \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n" - " \\settowidth{\\labelwidth}{40pt}%\n" - " \\setlength{\\LTleft}{0pt}%\n" - " \\setlength{\\tabcolsep}{0.01\\textwidth}%\n" - " \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.15\\textwidth}|%\n" - " p{0.15\\textwidth}|%\n" - " p{0.635\\textwidth}|}%\n" - " \\hline%\n" - "}{%\n" - " \\end{longtable}%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used for parameters within a detailed function description\n" - "\\newenvironment{DoxyParamCaption}{%\n" - " \\renewcommand{\\item}[2][]{##1 {\\em ##2}}%\n" - "}{%\n" - "}\n" - "\n"; - t << "% Used by return value lists\n" - "\\newenvironment{DoxyRetVals}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - " \\begin{description}%\n" - " \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n" - " \\setlength{\\tabcolsep}{0.01\\textwidth}%\n" - " \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" - " p{0.705\\textwidth}|}%\n" - " \\hline%\n" - "}{%\n" - " \\end{longtable}%\n" - " \\end{description}%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by exception lists\n" - "\\newenvironment{DoxyExceptions}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - " \\begin{description}%\n" - " \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n" - " \\setlength{\\tabcolsep}{0.01\\textwidth}%\n" - " \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" - " p{0.705\\textwidth}|}%\n" - " \\hline%\n" - "}{%\n" - " \\end{longtable}%\n" - " \\end{description}%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used by template parameter lists\n" - "\\newenvironment{DoxyTemplParams}[1]{%\n" - " \\begin{DoxyDesc}{#1}%\n" - " \\begin{description}%\n" - " \\item[] \\hspace{\\fill} \\vspace{-25pt}%\n" - " \\setlength{\\tabcolsep}{0.01\\textwidth}%\n" - " \\begin{longtable}{|>{\\raggedleft\\hspace{0pt}}p{0.25\\textwidth}|%\n" - " p{0.705\\textwidth}|}%\n" - " \\hline%\n" - "}{%\n" - " \\end{longtable}%\n" - " \\end{description}%\n" - " \\end{DoxyDesc}%\n" - "}\n" - "\n"; - t << "% Used for member lists\n" - "\\newenvironment{DoxyCompactItemize}{%\n" - " \\begin{itemize}%\n" - " \\setlength{\\itemsep}{-3pt}%\n" - " \\setlength{\\parsep}{0pt}%\n" - " \\setlength{\\topsep}{0pt}%\n" - " \\setlength{\\partopsep}{0pt}%\n" - "}{%\n" - " \\end{itemize}%\n" - "}\n" - "\n"; - t << "% Used for member descriptions\n" - "\\newenvironment{DoxyCompactList}{%\n" - " \\begin{list}{}{%\n" - " \\setlength{\\leftmargin}{0.5cm}%\n" - " \\setlength{\\itemsep}{0pt}%\n" - " \\setlength{\\parsep}{0pt}%\n" - " \\setlength{\\topsep}{0pt}%\n" - " \\renewcommand{\\makelabel}{\\hfill}%\n" - " }%\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used for reference lists (@bug, @deprecated, @todo, etc.)\n" - "\\newenvironment{DoxyRefList}{%\n" - " \\begin{list}{}{%\n" - " \\setlength{\\labelwidth}{10pt}%\n" - " \\setlength{\\leftmargin}{\\labelwidth}%\n" - " \\addtolength{\\leftmargin}{\\labelsep}%\n" - " \\renewcommand{\\makelabel}{\\xreflabel}%\n" - " }%\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used by @bug, @deprecated, @todo, etc.\n" - "\\newenvironment{DoxyRefDesc}[1]{%\n" - " \\begin{list}{}{%\n" - " \\renewcommand\\makelabel[1]{\\textbf{##1}}%\n" - " \\settowidth\\labelwidth{\\makelabel{#1}}%\n" - " \\setlength\\leftmargin{\\labelwidth+\\labelsep}%\n" - " }%\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used by parameter lists and simple sections\n" - "\\newenvironment{Desc}\n" - "{\\begin{list}{}{%\n" - " \\settowidth{\\labelwidth}{40pt}%\n" - " \\setlength{\\leftmargin}{\\labelwidth}%\n" - " \\setlength{\\parsep}{0pt}%\n" - " \\setlength{\\itemsep}{-4pt}%\n" - " \\renewcommand{\\makelabel}{\\entrylabel}%\n" - " }\n" - "}{%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used by tables\n" - "\\newcommand{\\PBS}[1]{\\let\\temp=\\\\#1\\let\\\\=\\temp}\n" - "\\newlength{\\tmplength}\n" - "\\newenvironment{TabularC}[1]{%\n" - " \\setlength{\\tmplength}{%\n" - " \\linewidth/(#1)-\\tabcolsep*2-\\arrayrulewidth*(#1+1)/(#1)%\n" - " }%\n" - " \\par%\n" - " \\begin{xtabular*}{\\linewidth}{%\n" - " *{#1}{|>{\\PBS\\raggedright\\hspace{0pt}}p{\\the\\tmplength}}|%\n" - " }%\n" - "}{%\n" - " \\end{xtabular*}%\n" - " \\par%\n" - "}\n" - "\n"; - t << "% Used for member group headers\n" - "\\newenvironment{Indent}{%\n" - " \\begin{list}{}{%\n" - " \\setlength{\\leftmargin}{0.5cm}%\n" - " }%\n" - " \\item[]\\ignorespaces%\n" - "}{%\n" - " \\unskip%\n" - " \\end{list}%\n" - "}\n" - "\n"; - t << "% Used when hyperlinks are turned off\n" - "\\newcommand{\\doxyref}[3]{%\n" - " \\textbf{#1} (\\textnormal{#2}\\,\\pageref{#3})%\n" - "}\n" - "\n"; - t << "% Used for syntax highlighting\n" - "\\definecolor{comment}{rgb}{0.5,0.0,0.0}\n" - "\\definecolor{keyword}{rgb}{0.0,0.5,0.0}\n" - "\\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}\n" - "\\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}\n" - "\\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}\n" - "\\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}\n" - "\\definecolor{charliteral}{rgb}{0.0,0.5,0.5}\n" - "\\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}\n" - "\\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}\n" - "\\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}\n" - "\\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}\n"; + t << doxygenLatexStyle; } static void writeDefaultFooter(FTextStream &t) diff --git a/src/libdoxygen.pro.in b/src/libdoxygen.pro.in index 48bd7df..d63f7ac 100644 --- a/src/libdoxygen.pro.in +++ b/src/libdoxygen.pro.in @@ -47,6 +47,7 @@ HEADERS = arguments.h \ doxygen.h \ doxygen_bst.h \ doxygen_css.h \ + doxygen_sty.h \ eclipsehelp.h \ entry.h \ example.h \ diff --git a/src/libdoxygen.t.in b/src/libdoxygen.t.in index 6b45ce7..526a097 100644 --- a/src/libdoxygen.t.in +++ b/src/libdoxygen.t.in @@ -144,6 +144,9 @@ extsearch_js.h: extsearch.js doxygen_css.h: doxygen.css cat doxygen.css | $(TO_C_CMD) >doxygen_css.h +doxygen_sty.h: doxygen.sty + cat doxygen.sty | $(TO_C_CMD) >doxygen_sty.h + navtree_js.h: navtree.js cat navtree.js | $(TO_C_CMD) >navtree_js.h diff --git a/src/markdown.cpp b/src/markdown.cpp index c15516e..a3ac468 100644 --- a/src/markdown.cpp +++ b/src/markdown.cpp @@ -1466,19 +1466,20 @@ int findTableColumns(const char *data,int size,int &start,int &end,int &columns) // count columns between start and end columns=0; - if (n==2) // table row has | ... | - { - columns++; - } if (end>start) { i=start; while (i<=end) // look for more column markers { if (data[i]=='|' && (i==0 || data[i-1]!='\\')) columns++; + if (columns==1) columns++; // first | make a non-table into a two column table i++; } } + if (n==2 && columns==0) // table row has | ... | + { + columns++; + } //printf("findTableColumns(start=%d,end=%d,columns=%d) eol=%d\n", // start,end,columns,eol); return eol; diff --git a/src/pagedef.cpp b/src/pagedef.cpp index 113eaa5..e93b3fd 100644 --- a/src/pagedef.cpp +++ b/src/pagedef.cpp @@ -90,8 +90,9 @@ void PageDef::writeDocumentation(OutputList &ol) static bool generateTreeView = Config_getBool("GENERATE_TREEVIEW"); //outputList->disable(OutputGenerator::Man); - QCString pageName; - pageName=escapeCharsInString(name(),FALSE,TRUE); + QCString pageName,manPageName; + pageName = escapeCharsInString(name(),FALSE,TRUE); + manPageName = escapeCharsInString(name(),TRUE,TRUE); //printf("PageDef::writeDocumentation: %s\n",getOutputFileBase().data()); @@ -110,7 +111,15 @@ void PageDef::writeDocumentation(OutputList &ol) ol.enable(OutputGenerator::Html); } + ol.pushGeneratorState(); + //2.{ + ol.disableAllBut(OutputGenerator::Man); + startFile(ol,getOutputFileBase(),manPageName,title(),HLI_Pages,!generateTreeView); + ol.enableAll(); + ol.disable(OutputGenerator::Man); startFile(ol,getOutputFileBase(),pageName,title(),HLI_Pages,!generateTreeView); + ol.popGeneratorState(); + //2.} if (!generateTreeView) { @@ -126,8 +135,8 @@ void PageDef::writeDocumentation(OutputList &ol) ol.pushGeneratorState(); //2.{ ol.disableAllBut(OutputGenerator::Man); - ol.startTitleHead(pageName); - ol.endTitleHead(pageName, pageName); + ol.startTitleHead(manPageName); + ol.endTitleHead(manPageName, manPageName); if (si) { ol.generateDoc(docFile(),docLine(),this,0,si->title,TRUE,FALSE,0,TRUE,FALSE); @@ -2522,6 +2522,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) g_ccomment=FALSE; } g_condCtx=YY_START; + startCondSection(" "); BEGIN(SkipCond); } <SkipCond>\n { g_yyLineNr++; outputChar('\n'); } @@ -2940,6 +2941,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output) g_macroExpansion = Config_getBool("MACRO_EXPANSION"); g_expandOnlyPredef = Config_getBool("EXPAND_ONLY_PREDEF"); + g_skip=FALSE; g_curlyCount=0; g_nospaces=FALSE; g_inputBuf=&input; diff --git a/src/scanner.l b/src/scanner.l index 32f00c8..6bbf1c4 100644 --- a/src/scanner.l +++ b/src/scanner.l @@ -1119,6 +1119,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\" current->type = "id"; } current->name = yytext; + if (insideCpp || insideObjC) + { + current->id = ClangParser::instance()->lookup(yyLineNr,yytext); + } } <ObjCMethod>":"{B}* { // start of parameter list current->name += ':'; @@ -6074,6 +6078,10 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\" docBlock.resize(docBlock.length() - 3); lineCount(); } +<DocLine>{B}*"///"[/]+{B}*/"\n" { // ignore marker line (see bug700345) + handleCommentBlock(docBlock.data(),current->brief.isEmpty()); + BEGIN( docBlockContext ); + } <DocLine>[^\n]*/"\n" { // whole line docBlock+=yytext; handleCommentBlock(docBlock.data(),current->brief.isEmpty()); @@ -6833,7 +6841,8 @@ void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf, bool CLanguageScanner::needsPreprocessing(const QCString &extension) { QCString fe=extension.lower(); - return + SrcLangExt lang = getLanguageFromFileName(extension); + return (SrcLangExt_Cpp == lang) || !( fe==".java" || fe==".as" || fe==".d" || fe==".php" || fe==".php4" || fe==".inc" || fe==".phtml" ); diff --git a/src/translator_ar.h b/src/translator_ar.h index 156a471..89be422 100644 --- a/src/translator_ar.h +++ b/src/translator_ar.h @@ -71,7 +71,7 @@ class TranslatorArabic : public TranslatorAdapter_1_4_6 /*! return the language charset. This will be used for the HTML output */ virtual QCString idLanguageCharset() { - return "cp1256"; + return "utf-8"; } // --- Language translation methods ------------------- diff --git a/src/translator_ro.h b/src/translator_ro.h index 1cba127..70da281 100644 --- a/src/translator_ro.h +++ b/src/translator_ro.h @@ -1,12 +1,12 @@ /****************************************************************************** * - * + * * * Copyright (C) 1997-2013 by Dimitri van Heesch. * * Permission to use, copy, modify, and distribute this software and its - * documentation under the terms of the GNU General Public License is hereby - * granted. No representations are made about the suitability of this software + * documentation under the terms of the GNU General Public License is hereby + * granted. No representations are made about the suitability of this software * for any purpose. It is provided "as is" without express or implied warranty. * See the GNU General Public License for more details. * @@ -20,12 +20,13 @@ * * ------------------------------------------- * Project start : 20.09.2000 - * Last Doxygen version covered : 1.5.8 - * Last revision : 15.01.2009 + * Last Doxygen version covered : 1.8.4 + * Last revision : 17.05.2013 * ------------------------------------------- * * Revision history * ---------------- + * 17.05.2013 - Updated translation to cover Doxygen 1.8.4 (Ionuț Dumitrașcu) * 15.01.2009 - Updated Romanian translation to Doxygen 1.5.8 and modified strings to UTF-8, as well as some other changes (Ionuţ Dumitraşcu) * 28.07.2008 - Updated version - covering Doxygen 1.5.6 - and some minor changes (Ionuţ Dumitraşcu) * @@ -41,23 +42,23 @@ #define TRANSLATOR_RO_H -class TranslatorRomanian : public TranslatorAdapter_1_6_0 +class TranslatorRomanian : public Translator { public: // --- Language control methods ------------------- - - /*! Used for identification of the language. The identification - * should not be translated. It should be replaced by the name + + /*! Used for identification of the language. The identification + * should not be translated. It should be replaced by the name * of the language in English using lower-case characters only - * (e.g. "czech", "japanese", "russian", etc.). It should be equal to + * (e.g. "czech", "japanese", "russian", etc.). It should be equal to * the identification used in language.cpp. */ virtual QCString idLanguage() { return "romanian"; } - /*! Used to get the LaTeX command(s) for the language support. + /*! Used to get the LaTeX command(s) for the language support. * This method should return string with commands that switch - * LaTeX to the desired language. For example + * LaTeX to the desired language. For example * <pre>"\\usepackage[german]{babel}\n" * </pre> * or @@ -65,7 +66,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 * "\\usepackage[latin2]{inputenc}\n" * "\\usepackage[T1]{fontenc}\n" * </pre> - * + * * The English LaTeX does not use such commands. Because of this * the empty string is returned in this implementation. */ @@ -97,31 +98,31 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! header that is put before the list of typedefs. */ virtual QCString trMemberTypedefDocumentation() { return "Documentaţia Definiţiilor de Tipuri (typedef) Membre"; } - + /*! header that is put before the list of enumerations. */ virtual QCString trMemberEnumerationDocumentation() { return "Documentaţia Enumerărilor Membre"; } - + /*! header that is put before the list of member functions. */ virtual QCString trMemberFunctionDocumentation() { return "Documentaţia Funcţiilor Membre"; } - + /*! header that is put before the list of member attributes. */ virtual QCString trMemberDataDocumentation() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Documentaţia Câmpurilor"; + return "Documentaţia Câmpurilor"; } else { - return "Documentaţia Datelor Membre"; + return "Documentaţia Datelor Membre"; } } /*! this is the text of a link put after brief descriptions. */ - virtual QCString trMore() + virtual QCString trMore() { return "Mai mult..."; } /*! put in the class documentation */ @@ -139,65 +140,65 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! this is the remainder of the sentence after the class name */ virtual QCString trIncludingInheritedMembers() { return ", inclusiv a tuturor membrilor moşteniţi."; } - + /*! this is put at the author sections at the bottom of man pages. * parameter s is name of the project name. */ virtual QCString trGeneratedAutomatically(const char *s) { QCString result="Generat automat de Doxygen"; if (s) result+=(QCString)" pentru "+s; - result+=" din codul sursă."; + result+=" din codul sursă."; return result; } /*! put after an enum name in the list of all members */ virtual QCString trEnumName() { return "nume enumerare"; } - + /*! put after an enum value in the list of all members */ virtual QCString trEnumValue() { return "valoare enumerare"; } - + /*! put after an undocumented member in the list of all members */ virtual QCString trDefinedIn() { return "definit în"; } // quick reference sections - /*! This is put above each page as a link to the list of all groups of + /*! This is put above each page as a link to the list of all groups of * compounds or files (see the \\group command). */ virtual QCString trModules() { return "Module"; } - + /*! This is put above each page as a link to the class hierarchy */ virtual QCString trClassHierarchy() { return "Ierarhia Claselor"; } - + /*! This is put above each page as a link to the list of annotated classes */ virtual QCString trCompoundList() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { return "Structuri de Date"; } else { - return "Lista Claselor"; + return "Lista Claselor"; } } - + /*! This is put above each page as a link to the list of documented files */ virtual QCString trFileList() { return "Lista fişierelor"; } /*! This is put above each page as a link to all members of compounds. */ virtual QCString trCompoundMembers() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Câmpurile de Date"; + return "Câmpurile de Date"; } else { @@ -208,10 +209,10 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This is put above each page as a link to all members of files. */ virtual QCString trFileMembers() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Globale"; + return "Globale"; } else { @@ -250,15 +251,15 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This is an introduction to the annotated compound list. */ virtual QCString trCompoundListDescription() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Lista structurilor de date, cu scurte descrieri:"; + return "Lista structurilor de date, cu scurte descrieri:"; } else { return "Lista claselor, structurilor, uniunilor şi interfeţelor" - ", cu scurte descrieri:"; + ", cu scurte descrieri:"; } } @@ -267,7 +268,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 virtual QCString trCompoundMembersDescription(bool extractAll) { QCString result="Lista tuturor "; - + if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { result+="câmpurilor "; @@ -281,7 +282,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+="din toate clasele "; } result+=", cu legături către "; - if (!extractAll) + if (!extractAll) { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { @@ -292,7 +293,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+="documentaţia clasei pentru fiecare membru în parte:"; } } - else + else { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { @@ -303,7 +304,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+="clasele de care aparţin:"; } } - + return result; } @@ -323,9 +324,9 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+="din toate fişierele"; } result+=", cu legături către "; - if (extractAll) + if (extractAll) result+="fişierele de care aparţin:"; - else + else result+="documentaţia aferentă:"; return result; @@ -343,37 +344,37 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 virtual QCString trModulesDescription() { return "Lista tuturor modulelor:"; } - // index titles (the project name is prepended for these) + // index titles (the project name is prepended for these) /*! This is used in HTML as the title of index.html. */ virtual QCString trDocumentation() { return "Documentaţie"; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * index of all groups. */ virtual QCString trModuleIndex() { return "Indexul Modulelor"; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * class hierarchy. */ virtual QCString trHierarchicalIndex() { return "Index Ierarhic"; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * annotated compound index. */ virtual QCString trCompoundIndex() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) - { + { return "Indexul Structurilor de Date"; } else { - return "Indexul Claselor"; + return "Indexul Claselor"; } } @@ -381,7 +382,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This is used in LaTeX as the title of the chapter with the * list of all files. */ - virtual QCString trFileIndex() + virtual QCString trFileIndex() { return "Indexul Fişierelor"; } /*! This is used in LaTeX as the title of the chapter containing @@ -394,14 +395,14 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 * the documentation of all classes, structs and unions. */ virtual QCString trClassDocumentation() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Documentaţia Structurilor de Date"; + return "Documentaţia Structurilor de Date"; } else { - return "Documentaţia Claselor"; + return "Documentaţia Claselor"; } } @@ -427,106 +428,106 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This is used in LaTeX as the title of the document */ virtual QCString trReferenceManual() { return "Manual de utilizare"; } - - /*! This is used in the documentation of a file as a header before the + + /*! This is used in the documentation of a file as a header before the * list of defines */ virtual QCString trDefines() { return "Definiţii"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of function prototypes */ virtual QCString trFuncProtos() { return "Prototipuri de funcţii"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of typedefs */ virtual QCString trTypedefs() { return "Definiţii de tipuri"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of enumerations */ virtual QCString trEnumerations() { return "Enumerări"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of (global) functions */ virtual QCString trFunctions() { return "Funcţii"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of (global) variables */ virtual QCString trVariables() { return "Variabile"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of (global) variables */ virtual QCString trEnumerationValues() { return "Valori de enumerări"; } - + /*! This is used in the documentation of a file before the list of * documentation blocks for defines */ virtual QCString trDefineDocumentation() { return "Documentaţia definiţiilor"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for function prototypes */ virtual QCString trFunctionPrototypeDocumentation() { return "Documentaţia prototipurilor de funcţii"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for typedefs */ virtual QCString trTypedefDocumentation() { return "Documentaţia definiţiilor de tipuri"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for enumeration types */ virtual QCString trEnumerationTypeDocumentation() { return "Documentaţia enumerărilor"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for functions */ virtual QCString trFunctionDocumentation() { return "Documentaţia funcţiilor"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for variables */ virtual QCString trVariableDocumentation() { return "Documentaţia variabilelor"; } - /*! This is used in the documentation of a file/namespace/group before + /*! This is used in the documentation of a file/namespace/group before * the list of links to documented compounds */ virtual QCString trCompounds() - { + { if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C")) { - return "Structuri de Date"; + return "Structuri de Date"; } else { - return "Membri"; + return "Membri"; } } - /*! This is used in the standard footer of each page and indicates when - * the page was generated + /*! This is used in the standard footer of each page and indicates when + * the page was generated */ virtual QCString trGeneratedAt(const char *date,const char *projName) - { + { QCString result=(QCString)"Generat "+date; if (projName) result+=(QCString)" pentru "+projName; result+=(QCString)" de către"; @@ -544,7 +545,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return (QCString)"Diagrama de relaţii pentru "+clName; } - + /*! this text is generated when the \\internal command is used. */ virtual QCString trForInternalUseOnly() { return "Doar pentru uz intern."; } @@ -576,13 +577,13 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! this text is generated when the \\exception command is used. */ virtual QCString trExceptions() { return "Excepţii"; } - + /*! this text is used in the title page of a LaTeX document. */ virtual QCString trGeneratedBy() { return "Generat de"; } // new since 0.49-990307 - + /*! used as the title of page containing all the index of all namespaces. */ virtual QCString trNamespaceList() { return "Lista de Namespace-uri"; } @@ -602,17 +603,17 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 */ virtual QCString trFriends() { return "Prieteni"; } - + ////////////////////////////////////////////////////////////////////////// // new since 0.49-990405 ////////////////////////////////////////////////////////////////////////// - + /*! used in the class documentation as a header before the list of all - * related classes + * related classes */ virtual QCString trRelatedFunctionDocumentation() { return "Documentaţia funcţiilor prietene sau înrudite"; } - + ////////////////////////////////////////////////////////////////////////// // new since 0.49-990425 ////////////////////////////////////////////////////////////////////////// @@ -655,7 +656,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+=namespaceName; return result; } - + /* these are for the member sections of a class, struct or union */ virtual QCString trPublicMembers() { return "Metode Publice"; } @@ -677,7 +678,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Conectori (slots) Privaţi"; } virtual QCString trStaticPrivateMembers() { return "Metode Statice Private"; } - + /*! this function is used to produce a comma-separated list of items. * use generateMarker(i) to indicate where item i should be put. */ @@ -686,23 +687,23 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 QCString result; int i; // the inherits list contain `numEntries' classes - for (i=0;i<numEntries;i++) + for (i=0;i<numEntries;i++) { // use generateMarker to generate placeholders for the class links! - result+=generateMarker(i); // generate marker for entry i in the list + result+=generateMarker(i); // generate marker for entry i in the list // (order is left to right) - + if (i!=numEntries-1) // not the last entry, so we need a separator { - if (i<numEntries-2) // not the fore last entry + if (i<numEntries-2) // not the fore last entry result+=", "; else // the fore last entry result+=" şi "; } } - return result; + return result; } - + /*! used in class documentation to produce a list of base classes, * if class diagrams are disabled. */ @@ -719,7 +720,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 return "Moştenit de "+trWriteList(numEntries)+"."; } - /*! used in member documentation blocks to produce a list of + /*! used in member documentation blocks to produce a list of * members that are hidden by this one. */ virtual QCString trReimplementedFromList(int numEntries) @@ -741,18 +742,18 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This is an introduction to the page with all namespace members */ virtual QCString trNamespaceMemberDescription(bool extractAll) - { + { QCString result="Lista tuturor membrilor "; if (!extractAll) result+="documentaţi "; result+="din toate namespace-urile, cu legături către "; - - if (extractAll) + + if (extractAll) result+="documentaţia namespace-ului pentru fiecare membru în parte:"; - else + else result+="namespace-urile de care aparţin:"; return result; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * index of all namespaces. */ virtual QCString trNamespaceIndex() @@ -821,7 +822,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 virtual QCString trMainPage() { return "Pagina principală"; } - /*! This is used in references to page that are put in the LaTeX + /*! This is used in references to page that are put in the LaTeX * documentation. It should be an abbreviation of the word page. */ virtual QCString trPageAbbreviation() @@ -866,7 +867,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! header that is put before the list of constructor/destructors. */ virtual QCString trConstructorDocumentation() { - return "Documentaţia pentru Constructori şi Destructori"; + return "Documentaţia pentru Constructori şi Destructori"; } /*! Used in the file documentation to point to the corresponding sources. */ virtual QCString trGotoSourceCode() @@ -923,7 +924,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 ////////////////////////////////////////////////////////////////////////// // new since 1.1.0 ////////////////////////////////////////////////////////////////////////// - + virtual QCString trNote() { return "Notă"; @@ -942,7 +943,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Atribute Publice"; } - + } virtual QCString trStaticPublicAttribs() { @@ -1013,7 +1014,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Din"; } - + ////////////////////////////////////////////////////////////////////////// // new since 1.1.5 ////////////////////////////////////////////////////////////////////////// @@ -1026,7 +1027,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! page explaining how the dot graph's should be interpreted */ virtual QCString trLegendDocs() { - return + return "Această pagină arată modul în care trebuie să interpretaţi " "grafurile generate de doxygen.<p>\n" "Consideraţi următorul exemplu:\n" @@ -1088,11 +1089,11 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "legenda"; } - + ////////////////////////////////////////////////////////////////////////// // new since 1.2.0 ////////////////////////////////////////////////////////////////////////// - + /*! Used as a marker that is put before a test item */ virtual QCString trTest() { @@ -1170,11 +1171,11 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Valoare:"; } - + ////////////////////////////////////////////////////////////////////////// // new since 1.2.5 ////////////////////////////////////////////////////////////////////////// - + /*! Used as a marker that is put before a \\bug item */ virtual QCString trBug() { @@ -1190,9 +1191,9 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.2.6 ////////////////////////////////////////////////////////////////////////// - /*! Used as ansicpg for RTF file - * - * The following table shows the correlation of Charset name, Charset Value and + /*! Used as ansicpg for RTF file + * + * The following table shows the correlation of Charset name, Charset Value and * <pre> * Codepage number: * Charset Name Charset Value(hex) Codepage number @@ -1213,15 +1214,15 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 * GB2313_CHARSET 134 (x86) 936 * CHINESEBIG5_CHARSET 136 (x88) 950 * </pre> - * + * */ virtual QCString trRTFansicp() { return "1250"; //EASTEUROPE_CHARSET } - - /*! Used as ansicpg for RTF fcharset + + /*! Used as ansicpg for RTF fcharset * \see trRTFansicp() for a table of possible values. */ virtual QCString trRTFCharSet() @@ -1234,82 +1235,82 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Index"; } - + /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trClass(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Clas" : "clas")); result+= singular ? "a":"ele"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trFile(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Fişier" : "fişier")); result+= singular ? "ul":"ele"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trNamespace(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Namespace" : "namespace")); result+= singular ? "-ul":"-urile"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trGroup(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Grupu" : "grupu")); result+= singular ? "l":"rile"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trPage(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Pagin" : "pagin")); result+= singular ? "a":"ile"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trMember(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Membr" : "membr")); result+= singular ? "ul":"ii"; - return result; + return result; } - + /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trGlobal(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Global" : "global")); if (!singular) result+="e"; - return result; + return result; } ////////////////////////////////////////////////////////////////////////// @@ -1319,10 +1320,10 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! This text is generated when the \\author command is used and * for the author section in man pages. */ virtual QCString trAuthor(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Autor" : "autor")); result+= singular ? "ul":"ii"; - return result; + return result; } ////////////////////////////////////////////////////////////////////////// @@ -1340,7 +1341,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.2.13 ////////////////////////////////////////////////////////////////////////// - /*! used in member documentation blocks to produce a list of + /*! used in member documentation blocks to produce a list of * members that are implemented by this one. */ virtual QCString trImplementedFromList(int numEntries) @@ -1372,8 +1373,8 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.2.17 ////////////////////////////////////////////////////////////////////////// - /*! Used as the header of the list of item that have been - * flagged deprecated + /*! Used as the header of the list of item that have been + * flagged deprecated */ virtual QCString trDeprecatedList() { @@ -1384,7 +1385,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.2.18 ////////////////////////////////////////////////////////////////////////// - /*! Used as a header for declaration section of the events found in + /*! Used as a header for declaration section of the events found in * a C# program */ virtual QCString trEvents() @@ -1404,35 +1405,35 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 /*! Used as a heading for a list of Java class types with package scope. */ virtual QCString trPackageTypes() - { + { return "Tipuri în pachet"; } - /*! Used as a heading for a list of Java class functions with package - * scope. + /*! Used as a heading for a list of Java class functions with package + * scope. */ virtual QCString trPackageMembers() - { + { return "Funcţii în pachet"; } - /*! Used as a heading for a list of static Java class functions with + /*! Used as a heading for a list of static Java class functions with * package scope. */ virtual QCString trStaticPackageMembers() - { + { return "Funcţii statice în pachet"; } - /*! Used as a heading for a list of Java class variables with package + /*! Used as a heading for a list of Java class variables with package * scope. */ virtual QCString trPackageAttribs() - { + { return "Atribute în pachet"; } - /*! Used as a heading for a list of static Java class variables with + /*! Used as a heading for a list of static Java class variables with * package scope. */ virtual QCString trStaticPackageAttribs() - { + { return "Atribute statice în pachet"; } @@ -1440,7 +1441,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.3.1 ////////////////////////////////////////////////////////////////////////// - /*! Used in the quick index of a class/file/namespace member list page + /*! Used in the quick index of a class/file/namespace member list page * to link to the unfiltered list of all members. */ virtual QCString trAll() @@ -1457,9 +1458,9 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 // new since 1.3.3 ////////////////////////////////////////////////////////////////////////// - /*! When the search engine is enabled this text is put in the header - * of each page before the field where one can enter the text to search - * for. + /*! When the search engine is enabled this text is put in the header + * of each page before the field where one can enter the text to search + * for. */ virtual QCString trSearchForIndex() { @@ -1476,7 +1477,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 * text can be different depending on the number of documents found. * Inside the text you can put the special marker $num to insert * the number representing the actual number of search results. - * The @a numDocuments parameter can be either 0, 1 or 2, where the + * The @a numDocuments parameter can be either 0, 1 or 2, where the * value 2 represents 2 or more matches. HTML markup is allowed inside * the returned string. */ @@ -1490,13 +1491,13 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Am găsit <b>1</b> document corespunzând cererii."; } - else + else { return "Am găsit <b>$num</b> documente corespunzând cererii. " "Lista documentelor găsite, sortate după relevanţă."; } } - /*! This string is put before the list of matched words, for each search + /*! This string is put before the list of matched words, for each search * result. What follows is the list of words that matched the query. */ virtual QCString trSearchMatches() @@ -1549,9 +1550,9 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 * directory is passed via \a dirName. */ virtual QCString trDirReference(const char *dirName) - { - QCString result="Director-referinţă "; result+=dirName; - return result; + { + QCString result="Director-referinţă "; result+=dirName; + return result; } /*! This returns the word directory with or without starting capital @@ -1588,7 +1589,7 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 return "Graful de apeluri pentru această funcţie:"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for enumeration values */ virtual QCString trEnumerationValueDocumentation() @@ -1597,12 +1598,12 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 ////////////////////////////////////////////////////////////////////////// // new since 1.5.4 (mainly for Fortran) ////////////////////////////////////////////////////////////////////////// - + /*! header that is put before the list of member subprograms (Fortran). */ virtual QCString trMemberFunctionDocumentationFortran() { return "Documentaţia Funcţiei Membre/Subrutinei"; } - /*! This is put above each page as a link to the list of annotated data types (Fortran). */ + /*! This is put above each page as a link to the list of annotated data types (Fortran). */ virtual QCString trCompoundListFortran() { return "Lista Tipurilor de Date"; } @@ -1623,18 +1624,18 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result+="documentate "; } result+=" cu legături către "; - if (!extractAll) + if (!extractAll) { result+="documentaţia structurii de date pentru fiecare membru"; } - else + else { result+="tipurile de date de care aparţin:"; } return result; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * annotated compound index (Fortran). */ virtual QCString trCompoundIndexFortran() @@ -1646,24 +1647,24 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 virtual QCString trTypeDocumentation() { return "Documentaţia Tipurilor de Date"; } - /*! This is used in the documentation of a file as a header before the + /*! This is used in the documentation of a file as a header before the * list of (global) subprograms (Fortran). */ virtual QCString trSubprograms() { return "Funcţii/Subrutine"; } - /*! This is used in the documentation of a file/namespace before the list + /*! This is used in the documentation of a file/namespace before the list * of documentation blocks for subprograms (Fortran) */ virtual QCString trSubprogramDocumentation() { return "Documentaţia Funcţiilor/Subrutinelor"; } - /*! This is used in the documentation of a file/namespace/group before + /*! This is used in the documentation of a file/namespace/group before * the list of links to documented compounds (Fortran) */ virtual QCString trDataTypes() { return "Tipuri de Date"; } - + /*! used as the title of page containing all the index of all modules (Fortran). */ virtual QCString trModulesList() { return "Lista Modulelor"; } @@ -1705,44 +1706,44 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 result += namespaceName; return result; } - + /*! This is put above each page as a link to all members of modules. (Fortran) */ virtual QCString trModulesMembers() { return "Membrii Modulului"; } /*! This is an introduction to the page with all modules members (Fortran) */ virtual QCString trModulesMemberDescription(bool extractAll) - { + { QCString result="Lista tuturor membrilor "; if (!extractAll) result+="documentaţi ai "; result+="modulului cu legături către "; - if (extractAll) + if (extractAll) { result+="documentaţia modulului pentru fiecare membru:"; } - else + else { result+="modulele de care aparţin:"; } return result; } - /*! This is used in LaTeX as the title of the chapter with the + /*! This is used in LaTeX as the title of the chapter with the * index of all modules (Fortran). */ virtual QCString trModulesIndex() { return "Indexul Modulelor"; } - + /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trModule(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Modul" : "modul")); if (singular) result+="ul"; else result += "ele"; - return result; + return result; } /*! This is put at the bottom of a module documentation page and is * followed by a list of files that were used to generate the page. @@ -1768,26 +1769,26 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trType(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Tip" : "tip")); if (singular) result+="ul"; else result += "urile"; - return result; + return result; } /*! This is used for translation of the word that will possibly - * be followed by a single name or by a list of names + * be followed by a single name or by a list of names * of the category. */ virtual QCString trSubprogram(bool first_capital, bool singular) - { + { QCString result((first_capital ? "Subprogram" : "subprogram")); if (singular) result+="ul"; - else result += "urile"; - return result; + else result += "ele"; + return result; } /*! C# Type Constraint list */ @@ -1795,7 +1796,279 @@ class TranslatorRomanian : public TranslatorAdapter_1_6_0 { return "Constrângerile de Tip"; } - + +////////////////////////////////////////////////////////////////////////// +// new since 1.6.0 (mainly for the new search engine) +////////////////////////////////////////////////////////////////////////// + + /*! directory relation for \a name */ + virtual QCString trDirRelation(const char *name) + { + return QCString(name)+" Relație"; + } + + /*! Loading message shown when loading search results */ + virtual QCString trLoading() + { + return "Se încarcă..."; + } + + /*! Label used for search results in the global namespace */ + virtual QCString trGlobalNamespace() + { + return "Namespace Global"; + } + + /*! Message shown while searching */ + virtual QCString trSearching() + { + return "Căutare..."; + } + + /*! Text shown when no search results are found */ + virtual QCString trNoMatches() + { + return "Niciun rezultat"; + } + +////////////////////////////////////////////////////////////////////////// +// new since 1.6.3 (missing items for the directory pages) +////////////////////////////////////////////////////////////////////////// + + /*! introduction text for the directory dependency graph */ + virtual QCString trDirDependency(const char *name) + { + return (QCString)"Grafic de dependență a directoarelor pentru "+name; + } + + /*! when clicking a directory dependency label, a page with a + * table is shown. The heading for the first column mentions the + * source file that has a relation to another file. + */ + virtual QCString trFileIn(const char *name) + { + return (QCString)"Fișierul din "+name; + } + + /*! when clicking a directory dependency label, a page with a + * table is shown. The heading for the second column mentions the + * destination file that is included. + */ + virtual QCString trIncludesFileIn(const char *name) + { + return (QCString)"Include fișierul din "+name; + } + + /** Compiles a date string. + * @param year Year in 4 digits + * @param month Month of the year: 1=January + * @param day Day of the Month: 1..31 + * @param dayOfWeek Day of the week: 1=Monday..7=Sunday + * @param hour Hour of the day: 0..23 + * @param minutes Minutes in the hour: 0..59 + * @param seconds Seconds within the minute: 0..59 + * @param includeTime Include time in the result string? + */ + virtual QCString trDateTime(int year,int month,int day,int dayOfWeek, + int hour,int minutes,int seconds, + bool includeTime) + { + static const char *days[] = { "Luni","Marți","Miercuri","Joi","Vineri","Sâmbătă","Duminică" }; + static const char *months[] = { "Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Noi","Dec" }; + QCString sdate; + sdate.sprintf("%s %s %d %d",days[dayOfWeek-1],months[month-1],day,year); + if (includeTime) + { + QCString stime; + stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds); + sdate+=stime; + } + return sdate; + } + +////////////////////////////////////////////////////////////////////////// +// new since 1.7.5 +////////////////////////////////////////////////////////////////////////// + + /*! Header for the page with bibliographic citations */ + virtual QCString trCiteReferences() + { return "Referințe Bibliografice"; } + + /*! Text for copyright paragraph */ + virtual QCString trCopyright() + { return "Copyright"; } + + /*! Header for the graph showing the directory dependencies */ + virtual QCString trDirDepGraph(const char *name) + { return QCString("Grafic de dependență a directoarelor pentru ")+name+":"; } + +////////////////////////////////////////////////////////////////////////// +// new since 1.8.0 +////////////////////////////////////////////////////////////////////////// + + /*! Detail level selector shown for hierarchical indices */ + virtual QCString trDetailLevel() + { return "nivel de detaliu"; } + + /*! Section header for list of template parameters */ + virtual QCString trTemplateParameters() + { return "Parametri Template"; } + + /*! Used in dot graph when UML_LOOK is enabled and there are many fields */ + virtual QCString trAndMore(const QCString &number) + { return "și încă " + number; } + + /*! Used file list for a Java enum */ + virtual QCString trEnumGeneratedFromFiles(bool single) + { QCString result = "Documentația pentru acest enum a fost generată din "; + if (single) + result += "următorul fișier:"; + else + result += "următoarele fișiere:"; + return result; + } + + /*! Header of a Java enum page (Java enums are represented as classes). */ + virtual QCString trEnumReference(const char *name) + { return QCString(name)+" Referință Enum"; } + + /*! Used for a section containing inherited members */ + virtual QCString trInheritedFrom(const char *members,const char *what) + { return QCString(members)+" moștenit(e) din "+what; } + + /*! Header of the sections with inherited members specific for the + * base class(es) + */ + virtual QCString trAdditionalInheritedMembers() + { return "Membri Moșteniți Adiționali"; } + +////////////////////////////////////////////////////////////////////////// +// new since 1.8.2 +////////////////////////////////////////////////////////////////////////// + + /*! Used as a tooltip for the toggle button that appears in the + * navigation tree in the HTML output when GENERATE_TREEVIEW is + * enabled. This tooltip explains the meaning of the button. + */ + virtual QCString trPanelSynchronisationTooltip(bool enable) + { + QCString opt = enable ? "activa" : "dezactiva"; + return "apasă 'click' pentru a "+opt+" sincronizarea panourilor"; + } + + /*! Used in a method of an Objective-C class that is declared in a + * a category. Note that the @1 marker is required and is replaced + * by a link. + */ + virtual QCString trProvidedByCategory() + { + return "Furnizat de categoria @1."; + } + + /*! Used in a method of an Objective-C category that extends a class. + * Note that the @1 marker is required and is replaced by a link to + * the class method. + */ + virtual QCString trExtendsClass() + { + return "Extinde clasa @1."; + } + + /*! Used as the header of a list of class methods in Objective-C. + * These are similar to static public member functions in C++. + */ + virtual QCString trClassMethods() + { + return "Metodele Clasei"; + } + + /*! Used as the header of a list of instance methods in Objective-C. + * These are similar to public member functions in C++. + */ + virtual QCString trInstanceMethods() + { + return "Metodele Instanței"; + } + + /*! Used as the header of the member functions of an Objective-C class. + */ + virtual QCString trMethodDocumentation() + { + return "Documentația Metodelor"; + } + + /*! Used as the title of the design overview picture created for the + * VHDL output. + */ + virtual QCString trDesignOverview() + { + return "Vedere de Ansamblu a Designului"; + } + +////////////////////////////////////////////////////////////////////////// +// new since 1.8.4 +////////////////////////////////////////////////////////////////////////// + + /** old style UNO IDL services: implemented interfaces */ + virtual QCString trInterfaces() + { return "Interfețe exportate"; } + + /** old style UNO IDL services: inherited services */ + virtual QCString trServices() + { return "Servicii Incluse"; } + + /** UNO IDL constant groups */ + virtual QCString trConstantGroups() + { return "Grupuri Constante"; } + + /** UNO IDL constant groups */ + virtual QCString trConstantGroupReference(const char *namespaceName) + { + QCString result=namespaceName; + result+=" Referință Grup Constant"; + return result; + } + /** UNO IDL service page title */ + virtual QCString trServiceReference(const char *sName) + { + QCString result=(QCString)sName; + result+=" Referință Serviciu"; + return result; + } + /** UNO IDL singleton page title */ + virtual QCString trSingletonReference(const char *sName) + { + QCString result=(QCString)sName; + result+=" Referință Singleton"; + return result; + } + /** UNO IDL service page */ + virtual QCString trServiceGeneratedFromFiles(bool single) + { + // single is true implies a single file + QCString result=(QCString)"Documentația pentru acest serviciu " + "a fost generată din "; + if (single) + result += "următorul fișier:"; + else + result += "următoarele fișiere:"; + return result; + } + /** UNO IDL singleton page */ + virtual QCString trSingletonGeneratedFromFiles(bool single) + { + // single is true implies a single file + QCString result=(QCString)"Documentația pentru acest singleton " + "a fost generată din "; + if (single) + result += "următorul fișier:"; + else + result += "următoarele fișiere:"; + return result; + } + +////////////////////////////////////////////////////////////////////////// + }; #endif diff --git a/src/translator_sk.h b/src/translator_sk.h index 4fd63ec..836d7f2 100644 --- a/src/translator_sk.h +++ b/src/translator_sk.h @@ -17,6 +17,7 @@ // Updates: // -------- +// 2013/05/14 - Updates for "new since 1.8.4". // 2012/08/02 - Updates for "new since 1.8.2". // 2012/04/18 - Updates for "new since 1.8.0". // 2011/07/28 - Updates for "new since 1.7.5". @@ -31,7 +32,7 @@ #ifndef TRANSLATOR_SK_H #define TRANSLATOR_SK_H -class TranslatorSlovak : public TranslatorAdapter_1_8_2 +class TranslatorSlovak : public Translator { public: // --- Language control methods ------------------- @@ -1963,6 +1964,62 @@ class TranslatorSlovak : public TranslatorAdapter_1_8_2 } ////////////////////////////////////////////////////////////////////////// +// new since 1.8.4 +////////////////////////////////////////////////////////////////////////// + + /** old style UNO IDL services: implemented interfaces */ + virtual QCString trInterfaces() + { return "Exportované rozhrania"; } + + /** old style UNO IDL services: inherited services */ + virtual QCString trServices() + { return "Začlenené služby"; } + + /** UNO IDL constant groups */ + virtual QCString trConstantGroups() + { return "Konštantné skupiny"; } + + /** UNO IDL constant groups */ + virtual QCString trConstantGroupReference(const char *namespaceName) + { + QCString result="Konštantné skupiny z "; + result += namespaceName; + return result; + } + /** UNO IDL service page title */ + virtual QCString trServiceReference(const char *sName) + { + QCString result="Popis služby "; + result += sName; + return result; + } + /** UNO IDL singleton page title */ + virtual QCString trSingletonReference(const char *sName) + { + QCString result="Popis singletonu "; + result += sName; + return result; + } + /** UNO IDL service page */ + virtual QCString trServiceGeneratedFromFiles(bool single) + { + // single is true implies a single file + QCString result="Dokumentácia k tejto službe bola vygenerovaná "; + if (single) result+="z nasledujúceho súboru:"; + else result+="z nasledujúcich súborov:"; + return result; + } + /** UNO IDL singleton page */ + virtual QCString trSingletonGeneratedFromFiles(bool single) + { + // single is true implies a single file + QCString result="Dokumentácia k tomuto singletonu bola vygenerovaná "; + if (single) result+="z nasledujúceho súboru:"; + else result+="z nasledujúcich súborov:"; + return result; + } + +////////////////////////////////////////////////////////////////////////// }; #endif // TRANSLATOR_SK_H |