Commit a32c2461 authored by dimitri's avatar dimitri

Release-1.7.2

parent a80f9320
DOXYGEN Version 1.7.1-20100920 DOXYGEN Version 1.7.2
Please read the installation section of the manual Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions. (http://www.doxygen.org/install.html) for instructions.
-------- --------
Dimitri van Heesch (20 September 2010) Dimitri van Heesch (08 October 2010)
DOXYGEN Version 1.7.1_20100920 DOXYGEN Version 1.7.2
Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions.
The latest version of doxygen can be obtained at The latest version of doxygen can be obtained from:
http://www.doxygen.org/ http://www.doxygen.org/
There are two mailing lists There are three mailing lists:
doxygen-users@lists.sourceforge.net doxygen-users@lists.sourceforge.net For doxygen users
doxygen-develop@lists.sourceforge.net doxygen-develop@lists.sourceforge.net For doxygen developers
doxygen-announce@lists.sourceforge.net Announcement of new releases only
please follow the link in please follow the link in
...@@ -15,6 +16,14 @@ please follow the link in ...@@ -15,6 +16,14 @@ please follow the link in
to subscribe to the lists or to visit the archives. to subscribe to the lists or to visit the archives.
Use the bug tracker to report bugs:
https://bugzilla.gnome.org/enter_bug.cgi?product=doxygen
Before reporting a bug, please check that it has not already been reported.
Also, please use the bug tracker for reporting bugs rather than the help
forum.
Enjoy, Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (20 September 2010) Dimitri van Heesch (dimitri@stack.nl) (08 October 2010)
...@@ -191,7 +191,7 @@ void MainWindow::about() ...@@ -191,7 +191,7 @@ void MainWindow::about()
t << QString::fromAscii("<qt><center>A tool to configure and run doxygen version ")+ t << QString::fromAscii("<qt><center>A tool to configure and run doxygen version ")+
QString::fromAscii(versionString)+ QString::fromAscii(versionString)+
QString::fromAscii(" on your source files.</center><p><br>" QString::fromAscii(" on your source files.</center><p><br>"
"<center>Written by<br> Dimitri van Heesch<br>&copy; 2000-2009</center><p>" "<center>Written by<br> Dimitri van Heesch<br>&copy; 2000-2010</center><p>"
"</qt>"); "</qt>");
QMessageBox::about(this,tr("Doxygen GUI"),msg); QMessageBox::about(this,tr("Doxygen GUI"),msg);
} }
......
...@@ -17,10 +17,10 @@ ...@@ -17,10 +17,10 @@
doxygen_version_major=1 doxygen_version_major=1
doxygen_version_minor=7 doxygen_version_minor=7
doxygen_version_revision=1 doxygen_version_revision=2
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package. #NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20100920 doxygen_version_mmn=NO
bin_dirs=`echo $PATH | sed -e "s/:/ /g"` bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......
...@@ -43,6 +43,7 @@ documentation: ...@@ -43,6 +43,7 @@ documentation:
\refitem cmdarg \\arg \refitem cmdarg \\arg
\refitem cmdattention \\attention \refitem cmdattention \\attention
\refitem cmdauthor \\author \refitem cmdauthor \\author
\refitem cmdauthors \\authors
\refitem cmdb \\b \refitem cmdb \\b
\refitem cmdbrief \\brief \refitem cmdbrief \\brief
\refitem cmdbug \\bug \refitem cmdbug \\bug
...@@ -80,6 +81,7 @@ documentation: ...@@ -80,6 +81,7 @@ documentation:
\refitem cmdendlink \\endlink \refitem cmdendlink \\endlink
\refitem cmdendmanonly \\endmanonly \refitem cmdendmanonly \\endmanonly
\refitem cmdendmsc \\endmsc \refitem cmdendmsc \\endmsc
\refitem cmdendrtfonly \\endrtfonly
\refitem cmdendverbatim \\endverbatim \refitem cmdendverbatim \\endverbatim
\refitem cmdendxmlonly \\endxmlonly \refitem cmdendxmlonly \\endxmlonly
\refitem cmdenum \\enum \refitem cmdenum \\enum
...@@ -138,14 +140,20 @@ documentation: ...@@ -138,14 +140,20 @@ documentation:
\refitem cmdpublic \\public \refitem cmdpublic \\public
\refitem cmdpublic \\publicsection \refitem cmdpublic \\publicsection
\refitem cmdref \\ref \refitem cmdref \\ref
\refitem cmdrelated \\related
\refitem cmdrelates \\relates \refitem cmdrelates \\relates
\refitem cmdrelatedalso \\relatedalso
\refitem cmdrelatesalso \\relatesalso \refitem cmdrelatesalso \\relatesalso
\refitem cmdremark \\remark
\refitem cmdremarks \\remarks \refitem cmdremarks \\remarks
\refitem cmdreturn \\return \refitem cmdreturn \\return
\refitem cmdreturns \\returns
\refitem cmdretval \\retval \refitem cmdretval \\retval
\refitem cmdrtfonly \\rtfonly
\refitem cmdsa \\sa \refitem cmdsa \\sa
\refitem cmdsection \\section \refitem cmdsection \\section
\refitem cmdsee \\see \refitem cmdsee \\see
\refitem cmdshort \\short
\refitem cmdshowinitializer \\showinitializer \refitem cmdshowinitializer \\showinitializer
\refitem cmdsince \\since \refitem cmdsince \\since
\refitem cmdskip \\skip \refitem cmdskip \\skip
...@@ -156,6 +164,7 @@ documentation: ...@@ -156,6 +164,7 @@ documentation:
\refitem cmdsubsubsection \\subsubsection \refitem cmdsubsubsection \\subsubsection
\refitem cmdtest \\test \refitem cmdtest \\test
\refitem cmdthrow \\throw \refitem cmdthrow \\throw
\refitem cmdthrows \\throws
\refitem cmdtodo \\todo \refitem cmdtodo \\todo
\refitem cmdtparam \\tparam \refitem cmdtparam \\tparam
\refitem cmdtypedef \\typedef \refitem cmdtypedef \\typedef
...@@ -828,6 +837,12 @@ Structural indicators ...@@ -828,6 +837,12 @@ Structural indicators
for the corresponding HTML documentation that is generated by doxygen. for the corresponding HTML documentation that is generated by doxygen.
\endhtmlonly \endhtmlonly
<hr>
\section cmdrelated \\related <name>
\addindex related
Equivalent to \ref cmdrelates "\\relates"
<hr> <hr>
\section cmdrelatesalso \\relatesalso <name> \section cmdrelatesalso \\relatesalso <name>
...@@ -839,6 +854,12 @@ Structural indicators ...@@ -839,6 +854,12 @@ Structural indicators
non-friend functions that are nevertheless strongly coupled to a certain non-friend functions that are nevertheless strongly coupled to a certain
class. It only works for functions. class. It only works for functions.
<hr>
\section cmdrelatedalso \\relatedalso <name>
\addindex relatedalso
Equivalent to \ref cmdrelatesalso "\\relatesalso"
<hr> <hr>
\section cmdshowinitializer \\showinitializer \section cmdshowinitializer \\showinitializer
...@@ -940,6 +961,11 @@ Section indicators ...@@ -940,6 +961,11 @@ Section indicators
Click <a href="$(DOXYGEN_DOCDIR)/examples/author/html/class_windows_n_t.html">here</a> Click <a href="$(DOXYGEN_DOCDIR)/examples/author/html/class_windows_n_t.html">here</a>
for the corresponding HTML documentation that is generated by doxygen. for the corresponding HTML documentation that is generated by doxygen.
\endhtmlonly \endhtmlonly
<hr>
\section cmdauthors \\authors { list of authors }
\addindex \\authors
Equivalent to \ref cmdauthor "\\author".
<hr> <hr>
\section cmdbrief \\brief {brief description} \section cmdbrief \\brief {brief description}
...@@ -1337,9 +1363,9 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1337,9 +1363,9 @@ void memcpy(void *dest, const void *src, size_t n);
sectioning command is encountered. sectioning command is encountered.
<hr> <hr>
\section cmdremarks \\remarks { remark text } \section cmdremark \\remark { remark text }
\addindex \\remarks \addindex \\remark
Starts a paragraph where one or more remarks may be entered. Starts a paragraph where one or more remarks may be entered.
The paragraph will be indented. The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual The text of the paragraph has no special internal structure. All visual
...@@ -1350,6 +1376,12 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1350,6 +1376,12 @@ void memcpy(void *dest, const void *src, size_t n);
several remarks. The \\remark command ends when a blank line or some other several remarks. The \\remark command ends when a blank line or some other
sectioning command is encountered. sectioning command is encountered.
<hr>
\section cmdremarks \\remarks { remark text }
\addindex \\remarks
Equivalent to \ref cmdremark "\\remark".
<hr> <hr>
\section cmdreturn \\return { description of the return value } \section cmdreturn \\return { description of the return value }
...@@ -1362,11 +1394,17 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1362,11 +1394,17 @@ void memcpy(void *dest, const void *src, size_t n);
sectioning command is encountered. See section \ref cmdfn "\\fn" for an sectioning command is encountered. See section \ref cmdfn "\\fn" for an
example. example.
<hr>
\section cmdreturns \\returns { description of the return value }
\addindex \\returns
Equivalent to \ref cmdreturn "\\return".
<hr> <hr>
\section cmdretval \\retval <return value> { description } \section cmdretval \\retval <return value> { description }
\addindex \\retval \addindex \\retval
Starts a return value description for a function with name Starts a description for a function's return value with name
\<return value\>. Followed by a description of the return value. \<return value\>. Followed by a description of the return value.
The text of the paragraph that forms the description has no special The text of the paragraph that forms the description has no special
internal structure. All visual enhancement commands may be used inside the internal structure. All visual enhancement commands may be used inside the
...@@ -1399,6 +1437,12 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1399,6 +1437,12 @@ void memcpy(void *dest, const void *src, size_t n);
\addindex \\see \addindex \\see
Equivalent to \ref cmdsa "\\sa". Introduced for compatibility with Javadoc. Equivalent to \ref cmdsa "\\sa". Introduced for compatibility with Javadoc.
<hr>
\section cmdshort \\short {short description}
\addindex \\short
Equivalent to \\ref cmdbrief "\\brief".
<hr> <hr>
\section cmdsince \\since { text } \section cmdsince \\since { text }
...@@ -1428,6 +1472,12 @@ void memcpy(void *dest, const void *src, size_t n); ...@@ -1428,6 +1472,12 @@ void memcpy(void *dest, const void *src, size_t n);
\par Note: \par Note:
the tag \\throws is a synonym for this tag. the tag \\throws is a synonym for this tag.
<hr>
\section cmdthrows \\throws <exception-object> { exception description }
\addindex \\throws
Equivalent to \ref cmdthrows "\\throws".
<hr> <hr>
\section cmdtodo \\todo { paragraph describing what is to be done } \section cmdtodo \\todo { paragraph describing what is to be done }
...@@ -2201,13 +2251,22 @@ class Receiver ...@@ -2201,13 +2251,22 @@ class Receiver
\sa section \ref cmdmanonly "\\manonly". \sa section \ref cmdmanonly "\\manonly".
<hr>
\section cmdendrtfonly \\endrtfonly
\addindex \\endrtfonly
Ends a block of text that was started with a \\rtfonly command.
\sa section \ref cmdrtfonly "\\rtfonly".
<hr> <hr>
\section cmdendverbatim \\endverbatim \section cmdendverbatim \\endverbatim
\addindex \\endverbatim \addindex \\endverbatim
Ends a block of text that was started with a \\verbatim command. Ends a block of text that was started with a \\verbatim command.
\sa section \ref cmdendcode "\\endcode", section \ref cmdverbatim "\\verbatim". \sa section \ref cmdverbatim "\\verbatim".
<hr> <hr>
\section cmdendxmlonly \\endxmlonly \section cmdendxmlonly \\endxmlonly
...@@ -2262,7 +2321,7 @@ class Receiver ...@@ -2262,7 +2321,7 @@ class Receiver
\addindex \\htmlonly \addindex \\htmlonly
Starts a block of text that will be verbatim included in the Starts a block of text that will be verbatim included in the
generated HTML documentation only. The block ends with a generated HTML documentation only. The block ends with a
endhtmlonly command. \ref cmdhtmlonly "\\endhtmlonly" command.
This command can be used to include HTML code that is too complex This command can be used to include HTML code that is too complex
for doxygen (i.e. applets, java-scripts, and HTML tags that for doxygen (i.e. applets, java-scripts, and HTML tags that
...@@ -2273,8 +2332,9 @@ class Receiver ...@@ -2273,8 +2332,9 @@ class Receiver
environment variables (like \$(HOME) ) are resolved inside a environment variables (like \$(HOME) ) are resolved inside a
HTML-only block. HTML-only block.
\sa section \ref cmdmanonly "\\manonly" and section \sa section \ref cmdmanonly "\\manonly", section
\ref cmdlatexonly "\\latexonly". \ref cmdlatexonly "\\latexonly", and section
\ref cmdrtfonly "\\rtfonly".
<hr> <hr>
\section cmdimage \\image <format> <file> ["caption"] [<sizeindication>=<size>] \section cmdimage \\image <format> <file> ["caption"] [<sizeindication>=<size>]
...@@ -2337,7 +2397,7 @@ class Receiver ...@@ -2337,7 +2397,7 @@ class Receiver
\addindex \\latexonly \addindex \\latexonly
Starts a block of text that will be verbatim included in the Starts a block of text that will be verbatim included in the
generated \f$\mbox{\LaTeX}\f$ documentation only. The block ends with a generated \f$\mbox{\LaTeX}\f$ documentation only. The block ends with a
endlatexonly command. \ref cmdendlatexonly "\\endlatexonly" command.
This command can be used to include \f$\mbox{\LaTeX}\f$ code that is too This command can be used to include \f$\mbox{\LaTeX}\f$ code that is too
complex for doxygen (i.e. images, formulas, special characters). You can complex for doxygen (i.e. images, formulas, special characters). You can
...@@ -2348,8 +2408,9 @@ class Receiver ...@@ -2348,8 +2408,9 @@ class Receiver
environment variables (like \$(HOME) ) are resolved inside a environment variables (like \$(HOME) ) are resolved inside a
\f$\mbox{\LaTeX}\f$-only block. \f$\mbox{\LaTeX}\f$-only block.
\sa section \ref cmdlatexonly "\\latexonly" \sa section \ref cmdrtfonly "\\rtfonly",
and section \ref cmdhtmlonly "\\htmlonly". section \ref cmdmanonly "\\manonly", and
section \ref cmdhtmlonly "\\htmlonly".
<hr> <hr>
\section cmdmanonly \\manonly \section cmdmanonly \\manonly
...@@ -2357,15 +2418,16 @@ class Receiver ...@@ -2357,15 +2418,16 @@ class Receiver
\addindex \\manonly \addindex \\manonly
Starts a block of text that will be verbatim included in the Starts a block of text that will be verbatim included in the
generated MAN documentation only. The block ends with a generated MAN documentation only. The block ends with a
endmanonly command. \ref cmdendmanonly "\\endmanonly" command.
This command can be used to include groff code directly into This command can be used to include groff code directly into
MAN pages. You can use the \\htmlonly and \\latexonly and MAN pages. You can use the \\htmlonly and \\latexonly and
\\endhtmlonly and \\endlatexonly pairs to provide proper \\endhtmlonly and \\endlatexonly pairs to provide proper
HTML and \f$\mbox{\LaTeX}\f$ alternatives. HTML and \f$\mbox{\LaTeX}\f$ alternatives.
\sa section \ref cmdhtmlonly "\\htmlonly" and section \sa section \ref cmdhtmlonly "\\htmlonly",
\ref cmdlatexonly "\\latexonly". section \ref cmdrtfonly "\\rtfonly", and
section \ref cmdlatexonly "\\latexonly".
<hr> <hr>
\section cmdli \\li { item-description } \section cmdli \\li { item-description }
...@@ -2423,19 +2485,39 @@ class Receiver ...@@ -2423,19 +2485,39 @@ class Receiver
Equivalent to \ref cmdc "\\c" Equivalent to \ref cmdc "\\c"
<hr>
\section cmdrtfonly \\rtfonly
\addindex \\rtfonly
Starts a block of text that will be verbatim included in the
generated RTF documentation only. The block ends with a
\ref cmdendrtfonly "\\endrtfonly" command.
This command can be used to include RTF code that is too complex
for doxygen.
\b Note:
environment variables (like \$(HOME) ) are resolved inside a
RTF-only block.
\sa section \ref cmdmanonly "\\manonly", section
\ref cmdlatexonly "\\latexonly", and section
\ref cmdhtmlonly "\\htmlonly".
<hr> <hr>
\section cmdverbatim \\verbatim \section cmdverbatim \\verbatim
\addindex \\verbatim \addindex \\verbatim
Starts a block of text that will be verbatim included in both the Starts a block of text that will be verbatim included in
HTML and the the documentation. The block should end with a
\f$\mbox{\LaTeX}\f$ documentation. The block should end with a \ref cmdendverbatim "\\endverbatim" block.
\\endverbatim block. All commands are disabled in a verbatim block. All commands are disabled in a verbatim block.
\warning Make sure you include a \\endverbatim command for each \warning Make sure you include a \\endverbatim command for each
\\verbatim command or the parser will get confused! \\verbatim command or the parser will get confused!
\sa section \ref cmdcode "\\code", and section \ref cmdverbinclude "\\verbinclude". \sa section \ref cmdcode "\\code", and
section \ref cmdverbinclude "\\verbinclude".
<hr> <hr>
\section cmdxmlonly \\xmlonly \section cmdxmlonly \\xmlonly
...@@ -2454,16 +2536,16 @@ class Receiver ...@@ -2454,16 +2536,16 @@ class Receiver
\section cmdbackslash \\\\ \section cmdbackslash \\\\
\addindex \\\\ \addindex \\\\
This command writes a backslash character (\\) to the HTML and This command writes a backslash character (\\) to the
\f$\mbox{\LaTeX}\f$ output. The backslash has to be escaped in some output. The backslash has to be escaped in some
cases because doxygen uses it to detect commands. cases because doxygen uses it to detect commands.
<hr> <hr>
\section cmdat \\\@ \section cmdat \\\@
\addindex \\\@ \addindex \\\@
This command writes an at-sign (\@) to the HTML and This command writes an at-sign (\@) to the output.
\f$\mbox{\LaTeX}\f$ output. The at-sign has to be escaped in some cases The at-sign has to be escaped in some cases
because doxygen uses it to detect JavaDoc commands. because doxygen uses it to detect JavaDoc commands.
<hr> <hr>
......
...@@ -67,6 +67,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -67,6 +67,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_caller_graph CALLER_GRAPH \refitem cfg_caller_graph CALLER_GRAPH
\refitem cfg_case_sense_names CASE_SENSE_NAMES \refitem cfg_case_sense_names CASE_SENSE_NAMES
\refitem cfg_chm_file CHM_FILE \refitem cfg_chm_file CHM_FILE
\refitem cfg_chm_index_encoding CHM_INDEX_ENCODING
\refitem cfg_class_diagrams CLASS_DIAGRAMS \refitem cfg_class_diagrams CLASS_DIAGRAMS
\refitem cfg_class_graph CLASS_GRAPH \refitem cfg_class_graph CLASS_GRAPH
\refitem cfg_collaboration_graph COLLABORATION_GRAPH \refitem cfg_collaboration_graph COLLABORATION_GRAPH
...@@ -155,6 +156,9 @@ followed by the descriptions of the tags grouped by category. ...@@ -155,6 +156,9 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_hide_undoc_members HIDE_UNDOC_MEMBERS \refitem cfg_hide_undoc_members HIDE_UNDOC_MEMBERS
\refitem cfg_hide_undoc_relations HIDE_UNDOC_RELATIONS \refitem cfg_hide_undoc_relations HIDE_UNDOC_RELATIONS
\refitem cfg_html_align_members HTML_ALIGN_MEMBERS \refitem cfg_html_align_members HTML_ALIGN_MEMBERS
\refitem cfg_html_colorstyle_gamma HTML_COLORSTYLE_GAMMA
\refitem cfg_html_colorstyle_hue HTML_COLORSTYLE_HUE
\refitem cfg_html_colorstyle_sat HTML_COLORSTYLE_SAT
\refitem cfg_html_dynamic_sections HTML_DYNAMIC_SECTIONS \refitem cfg_html_dynamic_sections HTML_DYNAMIC_SECTIONS
\refitem cfg_html_file_extension HTML_FILE_EXTENSION \refitem cfg_html_file_extension HTML_FILE_EXTENSION
\refitem cfg_html_footer HTML_FOOTER \refitem cfg_html_footer HTML_FOOTER
...@@ -165,6 +169,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -165,6 +169,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_idl_property_support IDL_PROPERTY_SUPPORT \refitem cfg_idl_property_support IDL_PROPERTY_SUPPORT
\refitem cfg_ignore_prefix IGNORE_PREFIX \refitem cfg_ignore_prefix IGNORE_PREFIX
\refitem cfg_image_path IMAGE_PATH \refitem cfg_image_path IMAGE_PATH
\refitem cfg_include_file_patterns INCLUDE_FILE_PATTERNS
\refitem cfg_include_graph INCLUDE_GRAPH \refitem cfg_include_graph INCLUDE_GRAPH
\refitem cfg_include_path INCLUDE_PATH \refitem cfg_include_path INCLUDE_PATH
\refitem cfg_included_by_graph INCLUDED_BY_GRAPH \refitem cfg_included_by_graph INCLUDED_BY_GRAPH
...@@ -182,12 +187,14 @@ followed by the descriptions of the tags grouped by category. ...@@ -182,12 +187,14 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_latex_header LATEX_HEADER \refitem cfg_latex_header LATEX_HEADER
\refitem cfg_latex_hide_indices LATEX_HIDE_INDICES \refitem cfg_latex_hide_indices LATEX_HIDE_INDICES
\refitem cfg_latex_output LATEX_OUTPUT \refitem cfg_latex_output LATEX_OUTPUT
\refitem cfg_latex_source_code LATEX_SOURCE_CODE
\refitem cfg_layout_file LAYOUT_FILE \refitem cfg_layout_file LAYOUT_FILE
\refitem cfg_macro_expansion MACRO_EXPANSION \refitem cfg_macro_expansion MACRO_EXPANSION
\refitem cfg_makeindex_cmd_name MAKEINDEX_CMD_NAME \refitem cfg_makeindex_cmd_name MAKEINDEX_CMD_NAME
\refitem cfg_man_extension MAN_EXTENSION \refitem cfg_man_extension MAN_EXTENSION
\refitem cfg_man_links MAN_LINKS \refitem cfg_man_links MAN_LINKS
\refitem cfg_man_output MAN_OUTPUT \refitem cfg_man_output MAN_OUTPUT
\refitem cfg_mathjax_relpath MATHJAX_RELPATH
\refitem cfg_max_dot_graph_depth MAX_DOT_GRAPH_DEPTH \refitem cfg_max_dot_graph_depth MAX_DOT_GRAPH_DEPTH
\refitem cfg_max_initializer_lines MAX_INITIALIZER_LINES \refitem cfg_max_initializer_lines MAX_INITIALIZER_LINES
\refitem cfg_mscfile_dirs MSCFILE_DIRS \refitem cfg_mscfile_dirs MSCFILE_DIRS
...@@ -257,6 +264,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -257,6 +264,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_uml_look UML_LOOK \refitem cfg_uml_look UML_LOOK
\refitem cfg_use_htags USE_HTAGS \refitem cfg_use_htags USE_HTAGS
\refitem cfg_use_inline_trees USE_INLINE_TREES \refitem cfg_use_inline_trees USE_INLINE_TREES
\refitem cfg_use_mathjax USE_MATHJAX
\refitem cfg_use_pdflatex USE_PDFLATEX \refitem cfg_use_pdflatex USE_PDFLATEX
\refitem cfg_verbatim_headers VERBATIM_HEADERS \refitem cfg_verbatim_headers VERBATIM_HEADERS
\refitem cfg_warn_format WARN_FORMAT \refitem cfg_warn_format WARN_FORMAT
...@@ -401,18 +409,6 @@ followed by the descriptions of the tags grouped by category. ...@@ -401,18 +409,6 @@ followed by the descriptions of the tags grouped by category.
definition is used. Otherwise one should specify the include paths that definition is used. Otherwise one should specify the include paths that
are normally passed to the compiler using the -I flag. are normally passed to the compiler using the -I flag.
\anchor cfg_case_sense_names
<dt>\c CASE_SENSE_NAMES <dd>
\addindex CASE_SENSE_NAMES
If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
will only generate file names in lower-case letters. If set to
\c YES upper-case letters are also allowed. This is useful if you have
classes or files whose names only differ in case and if your file system
supports case sensitive file names. Windows users are advised to set this
option to NO.
\anchor cfg_short_names \anchor cfg_short_names
<dt>\c SHORT_NAMES <dd> <dt>\c SHORT_NAMES <dd>
\addindex SHORT_NAMES \addindex SHORT_NAMES
...@@ -710,6 +706,16 @@ function's detailed documentation block. ...@@ -710,6 +706,16 @@ function's detailed documentation block.
to \c NO (the default) then the documentation will be excluded. to \c NO (the default) then the documentation will be excluded.
Set it to \c YES to include the internal documentation. Set it to \c YES to include the internal documentation.
\anchor cfg_case_sense_names
<dt>\c CASE_SENSE_NAMES <dd>
\addindex CASE_SENSE_NAMES
If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
will only generate file names in lower-case letters. If set to
\c YES upper-case letters are also allowed. This is useful if you have
classes or files whose names only differ in case and if your file system
supports case sensitive file names. Windows users are advised to set this
option to NO.
\anchor cfg_hide_scope_names \anchor cfg_hide_scope_names
<dt>\c HIDE_SCOPE_NAMES <dd> <dt>\c HIDE_SCOPE_NAMES <dd>
\addindex HIDE_SCOPE_NAMES \addindex HIDE_SCOPE_NAMES
...@@ -861,6 +867,50 @@ function's detailed documentation block. ...@@ -861,6 +867,50 @@ function's detailed documentation block.
Namespaces page. This will remove the Namespaces entry from the Quick Index Namespaces page. This will remove the Namespaces entry from the Quick Index
and from the Folder Tree View (if specified). The default is \c YES. and from the Folder Tree View (if specified). The default is \c YES.
\anchor cfg_file_version_filter
<dt>\c FILE_VERSION_FILTER <dd>
\addindex FILE_VERSION_FILTER
The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
doxygen should invoke to get the current version for each file (typically from the
version control system). Doxygen will invoke the program by executing (via
popen()) the command <code>command input-file</code>, where \c command is
the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name
of an input file provided by doxygen.
Whatever the program writes to standard output is used as the file version.
Example of using a shell script as a filter for Unix:
\verbatim
FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
\endverbatim
Example shell script for CVS:
\verbatim
#!/bin/sh
cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
\endverbatim
Example shell script for Subversion:
\verbatim
#!/bin/sh
svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
\endverbatim
Example filter for ClearCase:
\verbatim
FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\endverbatim
\anchor cfg_layout_file
<dt>\c LAYOUT_FILE <dd>
The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
doxygen. The layout file controls the global structure of the generated output files
in an output format independent way. The create the layout file that represents
doxygen's defaults, run doxygen with the -l option. You can optionally specify a
file name after the option, if omitted DoxygenLayout.xml will be used as the name
of the layout file. Note that if you run doxygen from a directory containing
a file called DoxygenLayout.xml, doxygen will parse it automatically even if
the \c LAYOUT_FILE tag is left empty.
</dl> </dl>
\section messages_input Options related to warning and progress messages \section messages_input Options related to warning and progress messages
...@@ -956,54 +1006,11 @@ function's detailed documentation block. ...@@ -956,54 +1006,11 @@ function's detailed documentation block.
(like \c *.cpp and \c *.h ) to filter out the source-files (like \c *.cpp and \c *.h ) to filter out the source-files
in the directories. If left blank the following patterns are tested: in the directories. If left blank the following patterns are tested:
<code> <code>
*.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
*.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
*.f90 *.f *.vhd *.vhdl
</code> </code>
\anchor cfg_file_version_filter
<dt>\c FILE_VERSION_FILTER <dd>
\addindex FILE_VERSION_FILTER
The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
doxygen should invoke to get the current version for each file (typically from the
version control system). Doxygen will invoke the program by executing (via
popen()) the command <code>command input-file</code>, where \c command is
the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name
of an input file provided by doxygen.
Whatever the program writes to standard output is used as the file version.
Example of using a shell script as a filter for Unix:
\verbatim
FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
\endverbatim
Example shell script for CVS:
\verbatim
#!/bin/sh
cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
\endverbatim
Example shell script for Subversion:
\verbatim
#!/bin/sh
svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
\endverbatim
Example filter for ClearCase:
\verbatim
FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\endverbatim
\anchor cfg_layout_file
<dt>\c LAYOUT_FILE <dd>
The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
doxygen. The layout file controls the global structure of the generated output files
in an output format independent way. The create the layout file that represents
doxygen's defaults, run doxygen with the -l option. You can optionally specify a
file name after the option, if omitted DoxygenLayout.xml will be used as the name
of the layout file. Note that if you run doxygen from a directory containing
a file called DoxygenLayout.xml, doxygen will parse it automatically even if
the \c LAYOUT_FILE tag is left empty.
\anchor cfg_recursive \anchor cfg_recursive
<dt>\c RECURSIVE <dd> <dt>\c RECURSIVE <dd>
\addindex RECURSIVE \addindex RECURSIVE
...@@ -1307,6 +1314,33 @@ AClass::ANamespace, ANamespace::*Test ...@@ -1307,6 +1314,33 @@ AClass::ANamespace, ANamespace::*Test
See also section \ref doxygen_usage for information on how to generate See also section \ref doxygen_usage for information on how to generate
the style sheet that doxygen normally uses. the style sheet that doxygen normally uses.
\anchor cfg_html_colorstyle_hue
<dt>\c HTML_COLORSTYLE_HUE <dd>
\addindex HTML_COLOR_STYLE_HUE
The \c HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
Doxygen will adjust the colors in the stylesheet and background images
according to this color. Hue is specified as an angle on a colorwheel,
see http://en.wikipedia.org/wiki/Hue for more information.
For instance the value 0 represents red, 60 is yellow, 120 is green,
180 is cyan, 240 is blue, 300 purple, and 360 is red again.
The allowed range is 0 to 359.
\anchor cfg_html_colorstyle_sat
<dt>\c HTML_COLORSTYLE_SAT <dd>
\addindex HTML_COLORSTYLE_SAT
The \c HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
the colors in the HTML output. For a value of 0 the output will use
grayscales only. A value of 255 will produce the most vivid colors.
\anchor cfg_html_colorstyle_gamma
<dt>\c HTML_COLORSTYLE_GAMMA <dd>
The \c HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
the luminance component of the colors in the HTML output. Values below
100 gradually make the output lighter, whereas values above 100 make
the output darker. The value divided by 100 is the actual gamma applied,
so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
and 100 does not change the gamma.
\anchor cfg_html_timestamp \anchor cfg_html_timestamp
<dt>\c HTML_TIMESTAMP <dd> <dt>\c HTML_TIMESTAMP <dd>
\addindex HTML_TIMESTAMP \addindex HTML_TIMESTAMP
...@@ -1417,6 +1451,13 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. ...@@ -1417,6 +1451,13 @@ The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
controls if a separate .chi index file is generated (<code>YES</code>) or that controls if a separate .chi index file is generated (<code>YES</code>) or that
it should be included in the master .chm file (<code>NO</code>). it should be included in the master .chm file (<code>NO</code>).
\anchor cfg_chm_index_encoding
<dt>\c CHM_INDEX_ENCODING <dd>
\addindex CHM_INDEX_ENCODING
If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c CHM_INDEX_ENCODING
is used to encode HtmlHelp index (hhk), content (hhc) and project file
content.
\anchor cfg_binary_toc \anchor cfg_binary_toc
<dt>\c BINARY_TOC <dd> <dt>\c BINARY_TOC <dd>
\addindex BINARY_TOC \addindex BINARY_TOC
...@@ -1611,6 +1652,28 @@ and Class Hierarchy pages using a tree view instead of an ordered list. ...@@ -1611,6 +1652,28 @@ and Class Hierarchy pages using a tree view instead of an ordered list.
Note that when changing this option you need to delete any form_*.png files Note that when changing this option you need to delete any form_*.png files
in the HTML output before the changes have effect. in the HTML output before the changes have effect.
\anchor cfg_use_mathjax
<dt>\c USE_MATHJAX <dd>
\addindex USE_MATHJAX
Enable the \c USE_MATHJAX option to render LaTeX formulas using MathJax
(see http://www.mathjax.org) which uses client side Javascript for the
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 also need to install MathJax separately and
configure the path to it using the \ref cfg_mathjax_relpath "MATHJAX_RELPATH" option.
\anchor cfg_mathjax_relpath
<dt>\c MATHJAX_RELPATH <dd>
\addindex MATHJAX_RELPATH
When MathJax is enabled you need to specify the location relative to the
HTML output directory using the \c MATHJAX_RELPATH option. The destination
directory should contain the MathJax.js script. For instance, if the mathjax
directory is located at the same level as the HTML output directory, then
\c MATHJAX_RELPATH should be <code>../mathjax</code>. The default value points to
the http://www.mathjax.org site, so you can quickly see the result without installing
MathJax, but it is strongly recommended to install a local copy of MathJax
before deployment.
</dl> </dl>
\section latex_output LaTeX related options \section latex_output LaTeX related options
\anchor cfg_generate_latex \anchor cfg_generate_latex
...@@ -1735,6 +1798,13 @@ EXTRA_PACKAGES = times ...@@ -1735,6 +1798,13 @@ EXTRA_PACKAGES = times
include the index chapters (such as File Index, Compound Index, etc.) include the index chapters (such as File Index, Compound Index, etc.)
in the output. in the output.
\anchor cfg_latex_source_code
<dt>\c LATEX_SOURCE_CODE <dd>
If \c LATEX_SOURCE_CODE is set to \c YES then doxygen will include
source code with syntax highlighting in the LaTeX output.
Note that which sources are shown also depends on other settings
such as \ref cfg_source_browser "SOURCE_BROWSER".
</dl> </dl>
\section rtf_output RTF related options \section rtf_output RTF related options
\anchor cfg_generate_rtf \anchor cfg_generate_rtf
...@@ -1957,6 +2027,14 @@ EXTRA_PACKAGES = times ...@@ -1957,6 +2027,14 @@ EXTRA_PACKAGES = times
contain include files that are not input files but should be processed by contain include files that are not input files but should be processed by
the preprocessor. the preprocessor.
\anchor cfg_include_file_patterns
<dt>\c INCLUDE_FILE_PATTERNS <dd>
\addindex INCLUDE_FILE_PATTERNS
You can use the \c INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
patterns (like *.h and *.hpp) to filter out the header-files in the
directories. If left blank, the patterns specified with \c FILE_PATTERNS will
be used.
\anchor cfg_predefined \anchor cfg_predefined
<dt>\c PREDEFINED <dd> <dt>\c PREDEFINED <dd>
\addindex PREDEFINED \addindex PREDEFINED
...@@ -2109,24 +2187,6 @@ The default size is 10pt. ...@@ -2109,24 +2187,6 @@ The default size is 10pt.
different font using \c DOT_FONTNAME you can set the path where dot different font using \c DOT_FONTNAME you can set the path where dot
can find it using this tag. can find it using this tag.
<dt>\c DOT_FONTNAME <dd>
\addindex DOT_FONTNAME
By default doxygen will write a font called FreeSans.ttf to the output
directory and reference it in all dot files that doxygen generates. This
font does not include all possible unicode characters however, so when you need
these (or just want a differently looking font) you can specify the font name
using \c DOT_FONTNAME. You need need to make sure dot is able to find the font,
which can be done by putting it in a standard location or by setting the \c DOTFONTPATH
environment variable or by setting \c DOT_FONTPATH to the directory containing
the font.
<dt>\c DOT_FONTPATH <dd>
\addindex DOT_FONTPATH
By default doxygen will tell dot to use the output directory to look for the
FreeSans.ttf font (which doxygen will put there itself). If you specify a
different font using \c DOT_FONTNAME you can set the path where dot
can find it using this tag.
\anchor cfg_class_graph \anchor cfg_class_graph
<dt>\c CLASS_GRAPH <dd> <dt>\c CLASS_GRAPH <dd>
\addindex CLASS_GRAPH \addindex CLASS_GRAPH
......
...@@ -75,7 +75,7 @@ doxygen -w latex header.tex doxygen.sty ...@@ -75,7 +75,7 @@ doxygen -w latex header.tex doxygen.sty
\endverbatim \endverbatim
If you need non-default options (for instance to use pdflatex) you need If you need non-default options (for instance to use pdflatex) you need
to make a config file with those options set correctly and then specify to make a config file with those options set correctly and then specify
that config file as the forth argument. that config file as the third argument.
<li>For RTF output, you can generate the default style sheet file (see <li>For RTF output, you can generate the default style sheet file (see
\ref cfg_rtf_stylesheet_file "RTF_STYLESHEET_FILE") using: \ref cfg_rtf_stylesheet_file "RTF_STYLESHEET_FILE") using:
\verbatim \verbatim
......
...@@ -29,6 +29,11 @@ have the following tools installed ...@@ -29,6 +29,11 @@ have the following tools installed
<li>\c gs: the GhostScript interpreter for converting PostScript files <li>\c gs: the GhostScript interpreter for converting PostScript files
to bitmaps. I have used Aladdin GhostScript 8.0 for testing. to bitmaps. I have used Aladdin GhostScript 8.0 for testing.
</ul> </ul>
For the HTML output there is also an alternative solution using
<a href="http://www.mathjax.org">MathJax</a> which does not
require the above tools. If you enable \ref cfg_use_mathjax "USE_MATHJAX" in
the config then the latex formulas will be copied to the HTML "as is" and a
client side javascript will parse them and turn them into (interactive) images.
There are three ways to include formulas in the documentation. There are three ways to include formulas in the documentation.
<ol> <ol>
......
...@@ -122,7 +122,7 @@ when the translator was updated. ...@@ -122,7 +122,7 @@ when the translator was updated.
<td>Esperanto</td> <td>Esperanto</td>
<td>Ander Martinez</td> <td>Ander Martinez</td>
<td>dwarfnauko at gmail dot com</td> <td>dwarfnauko at gmail dot com</td>
<td>1.6.3</td> <td>up-to-date</td>
</tr> </tr>
<tr bgcolor="#ffffff"> <tr bgcolor="#ffffff">
<td>Finnish</td> <td>Finnish</td>
...@@ -222,8 +222,8 @@ when the translator was updated. ...@@ -222,8 +222,8 @@ when the translator was updated.
</tr> </tr>
<tr bgcolor="#ffffff"> <tr bgcolor="#ffffff">
<td>Portuguese</td> <td>Portuguese</td>
<td>Rui Godinho Lopes</td> <td>Rui Godinho Lopes<br/><span style="color: red; background-color: yellow">-- searching for the maintainer --</span></td>
<td><span style="color: brown">[resigned]</span></td> <td><span style="color: brown">[resigned]</span><br/><span style="color: brown">[Please, try to help to find someone.]</span></td>
<td>1.3.3</td> <td>1.3.3</td>
</tr> </tr>
<tr bgcolor="#ffffff"> <tr bgcolor="#ffffff">
...@@ -334,7 +334,7 @@ when the translator was updated. ...@@ -334,7 +334,7 @@ when the translator was updated.
\hline \hline
English & Dimitri van Heesch & {\tt\tiny dimitri at stack dot nl} & up-to-date \\ English & Dimitri van Heesch & {\tt\tiny dimitri at stack dot nl} & up-to-date \\
\hline \hline
Esperanto & Ander Martinez & {\tt\tiny dwarfnauko at gmail dot com} & 1.6.3 \\ Esperanto & Ander Martinez & {\tt\tiny dwarfnauko at gmail dot com} & up-to-date \\
\hline \hline
Finnish & Antti Laine & {\tt\tiny antti dot a dot laine at tut dot fi} & 1.6.0 \\ Finnish & Antti Laine & {\tt\tiny antti dot a dot laine at tut dot fi} & 1.6.0 \\
\hline \hline
...@@ -377,10 +377,11 @@ when the translator was updated. ...@@ -377,10 +377,11 @@ when the translator was updated.
Persian & Ali Nadalizadeh & {\tt\tiny nadalizadeh at gmail dot com} & up-to-date \\ Persian & Ali Nadalizadeh & {\tt\tiny nadalizadeh at gmail dot com} & up-to-date \\
\hline \hline
Polish & Piotr Kaminski & {\tt\tiny [unreachable] Piotr dot Kaminski at ctm dot gdynia dot pl} & 1.6.3 \\ Polish & Piotr Kaminski & {\tt\tiny [unreachable] Piotr dot Kaminski at ctm dot gdynia dot pl} & 1.6.3 \\
~ & Grzegorz Kowal & {\tt\tiny [unreachable] g_kowal at poczta dot onet dot pl} & ~ \\ ~ & Grzegorz Kowal & {\tt\tiny [unreachable] g\_kowal at poczta dot onet dot pl} & ~ \\
~ & Krzysztof Kral & {\tt\tiny krzysztof dot kral at gmail dot com} & ~ \\ ~ & Krzysztof Kral & {\tt\tiny krzysztof dot kral at gmail dot com} & ~ \\
\hline \hline
Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.3.3 \\ Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.3.3 \\
~ & -- searching for the maintainer -- & {\tt\tiny [Please, try to help to find someone.]} & ~ \\
\hline \hline
Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & 1.6.0 \\ Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & 1.6.0 \\
~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\ ~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\
......
...@@ -111,6 +111,7 @@ Krzysztof Kral: krzysztof dot kral at gmail dot com ...@@ -111,6 +111,7 @@ Krzysztof Kral: krzysztof dot kral at gmail dot com
TranslatorPortuguese TranslatorPortuguese
Rui Godinho Lopes: [resigned] rgl at ruilopes dot com Rui Godinho Lopes: [resigned] rgl at ruilopes dot com
-- searching for the maintainer --: [Please, try to help to find someone.]
TranslatorRomanian TranslatorRomanian
Ionut Dumitrascu: reddumy at yahoo dot com Ionut Dumitrascu: reddumy at yahoo dot com
......
...@@ -59,7 +59,9 @@ ...@@ -59,7 +59,9 @@
2010/08/20 - maintainers.txt to UTF-8, related processin of unicode strings 2010/08/20 - maintainers.txt to UTF-8, related processin of unicode strings
- [any mark] introduced instead of [unreachable] only - [any mark] introduced instead of [unreachable] only
- marks hihglighted in HTML - marks hihglighted in HTML
2010/09/30 - Highlighting in what will be the table in langhowto.html modified. 2010/08/30 - Highlighting in what will be the table in langhowto.html modified.
2010/09/27 - The underscore in \latexonly part of the generated language.doc
was prefixed by backslash (was LaTeX related error).
""" """
from __future__ import generators from __future__ import generators
...@@ -1955,12 +1957,12 @@ class TrManager: ...@@ -1955,12 +1957,12 @@ class TrManager:
if obj.status == 'En': if obj.status == 'En':
# Check whether there is the coupled non-English. # Check whether there is the coupled non-English.
classId = obj.classId[:-2] classId = obj.classId[:-2]
if self.__translDic.has_key(classId): if classId in self.__translDic:
langNE = self.__translDic[classId].langReadable langNE = self.__translDic[classId].langReadable
maintainer = u'see the %s language' % langNE maintainer = u'see the %s language' % langNE
email = u'~' email = u'~'
if not maintainer and self.__maintainersDic.has_key(obj.classId): if not maintainer and (obj.classId in self.__maintainersDic):
lm = [ m[0] for m in self.__maintainersDic[obj.classId] ] lm = [ m[0] for m in self.__maintainersDic[obj.classId] ]
maintainer = maintainers[0][0] maintainer = maintainers[0][0]
email = maintainers[0][1] email = maintainers[0][1]
...@@ -1969,8 +1971,11 @@ class TrManager: ...@@ -1969,8 +1971,11 @@ class TrManager:
# Use the template to produce the line of the table and insert # Use the template to produce the line of the table and insert
# the hline plus the constructed line into the table content. # the hline plus the constructed line into the table content.
# The underscore character must be escaped.
trlst.append(u'\n \\hline') trlst.append(u'\n \\hline')
trlst.append(latexLineTpl % (lang, maintainer, email, status)) s = latexLineTpl % (lang, maintainer, email, status)
s = s.replace(u'_', u'\\_')
trlst.append(s)
# List the other maintainers for the language. Do not set # List the other maintainers for the language. Do not set
# lang and status for them. # lang and status for them.
...@@ -1979,7 +1984,9 @@ class TrManager: ...@@ -1979,7 +1984,9 @@ class TrManager:
for m in maintainers[1:]: for m in maintainers[1:]:
maintainer = m[0] maintainer = m[0]
email = m[1] email = m[1]
trlst.append(latexLineTpl % (lang, maintainer, email, status)) s = latexLineTpl % (lang, maintainer, email, status)
s = s.replace(u'_', u'\\_')
trlst.append(s)
# Join the table lines and insert into the template. # Join the table lines and insert into the template.
latexTable = latexTableTpl % (u''.join(trlst)) latexTable = latexTableTpl % (u''.join(trlst))
......
...@@ -10,7 +10,7 @@ Persian, Polish, Portuguese, Romanian, Russian, Serbian, ...@@ -10,7 +10,7 @@ Persian, Polish, Portuguese, Romanian, Russian, Serbian,
SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian, SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian,
and Vietnamese. and Vietnamese.
Of them, 11 translators are up-to-date, 27 translators are based on Of them, 12 translators are up-to-date, 26 translators are based on
some adapter class, and 2 are English based. some adapter class, and 2 are English based.
---------------------------------------------------------------------- ----------------------------------------------------------------------
...@@ -24,6 +24,7 @@ still may be some details listed even for them: ...@@ -24,6 +24,7 @@ still may be some details listed even for them:
TranslatorCzech TranslatorCzech
TranslatorDutch TranslatorDutch
TranslatorEnglish TranslatorEnglish
TranslatorEsperanto
TranslatorGreek TranslatorGreek
TranslatorKorean -- Change the base class to Translator. TranslatorKorean -- Change the base class to Translator.
TranslatorPersian -- The MAX_DOT_GRAPH_HEIGHT found in trLegendDocs() TranslatorPersian -- The MAX_DOT_GRAPH_HEIGHT found in trLegendDocs()
...@@ -42,7 +43,6 @@ must be implemented to become up-to-date: ...@@ -42,7 +43,6 @@ must be implemented to become up-to-date:
TranslatorFrench 1.6.3 4 methods to implement (1 %) TranslatorFrench 1.6.3 4 methods to implement (1 %)
Note: Reimplementation using UTF-8 suggested. Note: Reimplementation using UTF-8 suggested.
TranslatorEsperanto 1.6.3 4 methods to implement (1 %)
TranslatorCatalan 1.6.3 4 methods to implement (1 %) TranslatorCatalan 1.6.3 4 methods to implement (1 %)
TranslatorVietnamese 1.6.0 9 methods to implement (4 %) TranslatorVietnamese 1.6.0 9 methods to implement (4 %)
TranslatorSwedish 1.6.0 9 methods to implement (4 %) TranslatorSwedish 1.6.0 9 methods to implement (4 %)
...@@ -288,19 +288,6 @@ TranslatorDanish (TranslatorAdapter_1_5_4) 31 methods to implement (13 %) ...@@ -288,19 +288,6 @@ TranslatorDanish (TranslatorAdapter_1_5_4) 31 methods to implement (13 %)
virtual QCString trSubprogramDocumentation() virtual QCString trSubprogramDocumentation()
TranslatorEsperanto (TranslatorAdapter_1_6_3) 4 methods to implement (1 %)
-------------------
Implements 221 of the required methods (98 %).
Missing methods (should be implemented):
virtual QCString trDateTime(int year, int month, int day, int dayOfWeek, int hour, int minutes, int seconds, bool includeTime)
virtual QCString trFileIn(const char * name)
virtual QCString trDirDependency(const char * name)
virtual QCString trIncludesFileIn(const char * name)
TranslatorFinnish (TranslatorAdapter_1_6_0) 9 methods to implement (4 %) TranslatorFinnish (TranslatorAdapter_1_6_0) 9 methods to implement (4 %)
----------------- -----------------
......
...@@ -211,7 +211,7 @@ static DocCmdMap docCmdMap[] = ...@@ -211,7 +211,7 @@ static DocCmdMap docCmdMap[] =
{ "copydetails", 0, TRUE }, { "copydetails", 0, TRUE },
{ "date", 0, TRUE }, { "date", 0, TRUE },
{ "dotfile", 0, TRUE }, { "dotfile", 0, TRUE },
{ "htmlinclude", 0, TRUE }, { "htmlinclude", 0, FALSE },
{ "image", 0, TRUE }, { "image", 0, TRUE },
{ "include", 0, TRUE }, { "include", 0, TRUE },
{ "includelineno", 0, TRUE }, { "includelineno", 0, TRUE },
...@@ -236,7 +236,7 @@ static DocCmdMap docCmdMap[] = ...@@ -236,7 +236,7 @@ static DocCmdMap docCmdMap[] =
{ "throw", 0, TRUE }, { "throw", 0, TRUE },
{ "throws", 0, TRUE }, { "throws", 0, TRUE },
{ "until", 0, TRUE }, { "until", 0, TRUE },
{ "verbinclude", 0, TRUE }, { "verbinclude", 0, FALSE },
{ "version", 0, TRUE }, { "version", 0, TRUE },
{ "warning", 0, TRUE }, { "warning", 0, TRUE },
{ 0, 0, FALSE } { 0, 0, FALSE }
...@@ -720,6 +720,7 @@ static inline void setOutput(OutputContext ctx) ...@@ -720,6 +720,7 @@ static inline void setOutput(OutputContext ctx)
else else
{ {
pOutputString = &current->doc; pOutputString = &current->doc;
inContext = OutputDoc; // need to switch to detailed docs, see bug 631380
} }
break; break;
case OutputXRef: case OutputXRef:
...@@ -2556,7 +2557,7 @@ bool parseCommentBlock(/* in */ ParserInterface *parser, ...@@ -2556,7 +2557,7 @@ bool parseCommentBlock(/* in */ ParserInterface *parser,
newEntryNeeded = needNewEntry; newEntryNeeded = needNewEntry;
// if we did not proceed during this call, it does not make // if we did not proceed during this call, it does not make
// sence to continue, since we get stuck. See bug 567346 for situations // sense to continue, since we get stuck. See bug 567346 for situations
// were this happens // were this happens
if (parseMore && position==inputPosition) parseMore=FALSE; if (parseMore && position==inputPosition) parseMore=FALSE;
......
...@@ -555,8 +555,9 @@ If the value of the INPUT tag contains directories, you can use the ...@@ -555,8 +555,9 @@ If the value of the INPUT tag contains directories, you can use the
FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
and *.h) to filter out the source-files in the directories. If left and *.h) to filter out the source-files in the directories. If left
blank the following patterns are tested: blank the following patterns are tested:
*.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
*.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
*.f90 *.f *.vhd *.vhdl
'> '>
<value name='*.c'/> <value name='*.c'/>
<value name='*.cc'/> <value name='*.cc'/>
...@@ -984,6 +985,24 @@ not supported properly for IE 6.0, but are supported on all modern browsers. ...@@ -984,6 +985,24 @@ not supported properly for IE 6.0, but are supported on all modern browsers.
Note that when changing this option you need to delete any form_*.png files Note that when changing this option you need to delete any form_*.png files
in the HTML output before the changes have effect. in the HTML output before the changes have effect.
' defval='1' depends='GENERATE_HTML'/> ' defval='1' depends='GENERATE_HTML'/>
<option type='bool' id='USE_MATHJAX' docs='
Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
(see http://www.mathjax.org) which uses client side Javascript for the
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 also need to install MathJax separately and
configure the path to it using the MATHJAX_RELPATH option.
' defval='0'/>
<option type='string' id='MATHJAX_RELPATH' docs='
When MathJax is enabled you need to specify the location relative to the
HTML output directory using the MATHJAX_RELPATH option. The destination
directory should contain the MathJax.js script. For instance, if the mathjax
directory is located at the same level as the HTML output directory, then
MATHJAX_RELPATH should be ../mathjax. The default value points to the
mathjax.org site, so you can quickly see the result without installing
MathJax, but it is strongly recommended to install a local copy of MathJax
before deployment.
' defval='http://www.mathjax.org/mathjax'/>
<option type='bool' id='SEARCHENGINE' docs=' <option type='bool' id='SEARCHENGINE' docs='
When the SEARCHENGINE tag is enabled doxygen will generate a search box When the SEARCHENGINE tag is enabled doxygen will generate a search box
for the HTML output. The underlying search engine uses javascript for the HTML output. The underlying search engine uses javascript
......
...@@ -402,7 +402,7 @@ void addConfigOptions(Config *cfg) ...@@ -402,7 +402,7 @@ void addConfigOptions(Config *cfg)
"causing a significant performance penality.\n" "causing a significant performance penality.\n"
"If the system has enough physical memory increasing the cache will improve the\n" "If the system has enough physical memory increasing the cache will improve the\n"
"performance by keeping more symbols in memory. Note that the value works on\n" "performance by keeping more symbols in memory. Note that the value works on\n"
"a logarithmic scale so increasing the size by one will rougly double the\n" "a logarithmic scale so increasing the size by one will roughly double the\n"
"memory usage. The cache size is given by this formula:\n" "memory usage. The cache size is given by this formula:\n"
"2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,\n" "2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,\n"
"corresponding to a cache size of 2^16 = 65536 symbols", "corresponding to a cache size of 2^16 = 65536 symbols",
...@@ -801,8 +801,9 @@ void addConfigOptions(Config *cfg) ...@@ -801,8 +801,9 @@ void addConfigOptions(Config *cfg)
"FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp\n" "FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp\n"
"and *.h) to filter out the source-files in the directories. If left\n" "and *.h) to filter out the source-files in the directories. If left\n"
"blank the following patterns are tested:\n" "blank the following patterns are tested:\n"
"*.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx\n" "*.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh\n"
"*.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90" "*.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py\n"
"*.f90 *.f *.vhd *.vhdl"
); );
cl->addValue("*.c"); cl->addValue("*.c");
cl->addValue("*.cc"); cl->addValue("*.cc");
...@@ -1460,6 +1461,29 @@ void addConfigOptions(Config *cfg) ...@@ -1460,6 +1461,29 @@ void addConfigOptions(Config *cfg)
); );
cb->addDependency("GENERATE_HTML"); cb->addDependency("GENERATE_HTML");
//---- //----
cb = cfg->addBool(
"USE_MATHJAX",
"Enable the USE_MATHJAX option to render LaTeX formulas using MathJax\n"
"(see http://www.mathjax.org) which uses client side Javascript for the\n"
"rendering instead of using prerendered bitmaps. Use this if you do not\n"
"have LaTeX installed or if you want to formulas look prettier in the HTML\n"
"output. When enabled you also need to install MathJax separately and\n"
"configure the path to it using the MATHJAX_RELPATH option.",
FALSE
);
//----
cs = cfg->addString(
"MATHJAX_RELPATH",
"When MathJax is enabled you need to specify the location relative to the\n"
"HTML output directory using the MATHJAX_RELPATH option. The destination\n"
"directory should contain the MathJax.js script. For instance, if the mathjax\n"
"directory is located at the same level as the HTML output directory, then\n"
"MATHJAX_RELPATH should be ../mathjax. The default value points to the mathjax.org site, so you can quickly see the result without installing\n"
"MathJax, but it is strongly recommended to install a local copy of MathJax\n"
"before deployment."
);
cs->setDefaultValue("http://www.mathjax.org/mathjax");
//----
cb = cfg->addBool( cb = cfg->addBool(
"SEARCHENGINE", "SEARCHENGINE",
"When the SEARCHENGINE tag is enabled doxygen will generate a search box\n" "When the SEARCHENGINE tag is enabled doxygen will generate a search box\n"
...@@ -1480,7 +1504,7 @@ void addConfigOptions(Config *cfg) ...@@ -1480,7 +1504,7 @@ void addConfigOptions(Config *cfg)
"using Javascript. Doxygen will generate the search PHP script and index\n" "using Javascript. Doxygen will generate the search PHP script and index\n"
"file to put on the web server. The advantage of the server\n" "file to put on the web server. The advantage of the server\n"
"based approach is that it scales better to large projects and allows\n" "based approach is that it scales better to large projects and allows\n"
"full text search. The disadvances is that it is more difficult to setup\n" "full text search. The disadvantages are that it is more difficult to setup\n"
"and does not have live searching capabilities.", "and does not have live searching capabilities.",
FALSE FALSE
); );
......
...@@ -8628,6 +8628,7 @@ static void parseFiles(Entry *root,EntryNav *rootNav) ...@@ -8628,6 +8628,7 @@ static void parseFiles(Entry *root,EntryNav *rootNav)
static QCString resolveSymlink(QCString path) static QCString resolveSymlink(QCString path)
{ {
int sepPos=0; int sepPos=0;
int oldPos=0;
QFileInfo fi; QFileInfo fi;
QDict<void> nonSymlinks; QDict<void> nonSymlinks;
QDict<void> known; QDict<void> known;
...@@ -8651,7 +8652,8 @@ static QCString resolveSymlink(QCString path) ...@@ -8651,7 +8652,8 @@ static QCString resolveSymlink(QCString path)
if (fi.isSymLink()) if (fi.isSymLink())
{ {
QString target = fi.readLink(); QString target = fi.readLink();
if (QFileInfo(target).isRelative()) bool isRelative = QFileInfo(target).isRelative();
if (isRelative)
{ {
target = QDir::cleanDirPath(oldPrefix+"/"+target.data()); target = QDir::cleanDirPath(oldPrefix+"/"+target.data());
} }
...@@ -8667,13 +8669,23 @@ static QCString resolveSymlink(QCString path) ...@@ -8667,13 +8669,23 @@ static QCString resolveSymlink(QCString path)
sepPos = 0; sepPos = 0;
if (known.find(result)) return QCString(); // recursive symlink! if (known.find(result)) return QCString(); // recursive symlink!
known.insert(result,(void*)0x8); known.insert(result,(void*)0x8);
if (isRelative)
{
sepPos = oldPos;
}
else // link to absolute path
{
sepPos = 0;
oldPrefix = "/";
}
} }
else else
{ {
nonSymlinks.insert(prefix,(void*)0x8); nonSymlinks.insert(prefix,(void*)0x8);
}
oldPrefix = prefix; oldPrefix = prefix;
} }
oldPos = sepPos;
}
} }
while (sepPos!=-1); while (sepPos!=-1);
return QDir::cleanDirPath(result).data(); return QDir::cleanDirPath(result).data();
...@@ -10473,7 +10485,8 @@ void generateOutput() ...@@ -10473,7 +10485,8 @@ void generateOutput()
//writeDirDependencyGraph(Config_getString("HTML_OUTPUT")); //writeDirDependencyGraph(Config_getString("HTML_OUTPUT"));
if (Doxygen::formulaList.count()>0 && Config_getBool("GENERATE_HTML")) if (Doxygen::formulaList.count()>0 && Config_getBool("GENERATE_HTML")
&& !Config_getBool("USE_MATHJAX"))
{ {
msg("Generating bitmaps for formulas in HTML...\n"); msg("Generating bitmaps for formulas in HTML...\n");
Doxygen::formulaList.generateBitmaps(Config_getString("HTML_OUTPUT")); Doxygen::formulaList.generateBitmaps(Config_getString("HTML_OUTPUT"));
......
...@@ -490,6 +490,26 @@ void HtmlDocVisitor::visit(DocFormula *f) ...@@ -490,6 +490,26 @@ void HtmlDocVisitor::visit(DocFormula *f)
forceEndParagraph(f); forceEndParagraph(f);
m_t << "<p class=\"formulaDsp\">" << endl; m_t << "<p class=\"formulaDsp\">" << endl;
} }
if (Config_getBool("USE_MATHJAX"))
{
QCString text = f->text();
bool closeInline = FALSE;
if (!bDisplay && !text.isEmpty() && text.at(0)=='$' &&
text.at(text.length()-1)=='$')
{
closeInline=TRUE;
text = text.mid(1,text.length()-2);
m_t << "\\(";
}
m_t << convertToHtml(text);
if (closeInline)
{
m_t << "\\)";
}
}
else
{
m_t << "<img class=\"formula" m_t << "<img class=\"formula"
<< (bDisplay ? "Dsp" : "Inl"); << (bDisplay ? "Dsp" : "Inl");
m_t << "\" alt=\""; m_t << "\" alt=\"";
...@@ -498,6 +518,8 @@ void HtmlDocVisitor::visit(DocFormula *f) ...@@ -498,6 +518,8 @@ void HtmlDocVisitor::visit(DocFormula *f)
/// @todo cache image dimensions on formula generation and give height/width /// @todo cache image dimensions on formula generation and give height/width
/// for faster preloading and better rendering of the page /// for faster preloading and better rendering of the page
m_t << " src=\"" << f->relPath() << f->name() << ".png\"/>"; m_t << " src=\"" << f->relPath() << f->name() << ".png\"/>";
}
if (bDisplay) if (bDisplay)
{ {
m_t << endl << "</p>" << endl; m_t << endl << "</p>" << endl;
......
...@@ -902,6 +902,24 @@ static void writeDefaultHeaderFile(FTextStream &t, const char *title, ...@@ -902,6 +902,24 @@ static void writeDefaultHeaderFile(FTextStream &t, const char *title,
t << "<link href=\"" << relPathStr << "search/search.css\" rel=\"stylesheet\" type=\"text/css\"/>\n"; t << "<link href=\"" << relPathStr << "search/search.css\" rel=\"stylesheet\" type=\"text/css\"/>\n";
t << "<script type=\"text/javaScript\" src=\"" << relPathStr << "search/search.js\"></script>\n"; t << "<script type=\"text/javaScript\" src=\"" << relPathStr << "search/search.js\"></script>\n";
} }
if (Config_getBool("USE_MATHJAX"))
{
QCString path = Config_getString("MATHJAX_RELPATH");
if (!path.isEmpty() && path.at(path.length()-1)!='/')
{
path+="/";
}
if (path.isEmpty() || path.left(2)=="..") // relative path
{
path.prepend(relPathStr);
}
t << "<script src=\"" << path << "MathJax.js\">\n";
t << " MathJax.Hub.Config({\n";
t << " extensions: [\"tex2jax.js\"],\n";
t << " jax: [\"input/TeX\",\"output/HTML-CSS\"],\n";
t << "});\n";
t << "</script>\n";
}
t << "<link "; t << "<link ";
t << "href=\""; t << "href=\"";
if (Config_getString("HTML_STYLESHEET").isEmpty()) if (Config_getString("HTML_STYLESHEET").isEmpty())
......
...@@ -483,6 +483,7 @@ void HtmlHelp::createProjectFile() ...@@ -483,6 +483,7 @@ void HtmlHelp::createProjectFile()
t << s << endl; t << s << endl;
s = indexFiles.next(); s = indexFiles.next();
} }
// items not found by the html help compiler scan.
t << "tabs.css" << endl; t << "tabs.css" << endl;
t << "tab_a.png" << endl; t << "tab_a.png" << endl;
t << "tab_b.png" << endl; t << "tab_b.png" << endl;
...@@ -490,10 +491,11 @@ void HtmlHelp::createProjectFile() ...@@ -490,10 +491,11 @@ void HtmlHelp::createProjectFile()
t << "tab_s.png" << endl; t << "tab_s.png" << endl;
t << "nav_h.png" << endl; t << "nav_h.png" << endl;
t << "nav_f.png" << endl; t << "nav_f.png" << endl;
t << "bc_s.png" << endl;
if (Config_getBool("HTML_DYNAMIC_SECTIONS")) if (Config_getBool("HTML_DYNAMIC_SECTIONS"))
{ {
t << "open.gif" << endl; t << "open.png" << endl;
t << "closed.gif" << endl; t << "closed.png" << endl;
} }
f.close(); f.close();
} }
......
...@@ -1411,6 +1411,10 @@ void LatexDocVisitor::startDotFile(const QCString &fileName, ...@@ -1411,6 +1411,10 @@ void LatexDocVisitor::startDotFile(const QCString &fileName,
{ {
m_t << "[height=" << height << "]"; m_t << "[height=" << height << "]";
} }
else
{
m_t << "[width=\\textwidth]";
}
m_t << "{" << baseName << "}"; m_t << "{" << baseName << "}";
if (hasCaption) if (hasCaption)
...@@ -1474,6 +1478,10 @@ void LatexDocVisitor::startMscFile(const QCString &fileName, ...@@ -1474,6 +1478,10 @@ void LatexDocVisitor::startMscFile(const QCString &fileName,
{ {
m_t << "[height=" << height << "]"; m_t << "[height=" << height << "]";
} }
else
{
m_t << "[width=\\textwidth]";
}
m_t << "{" << baseName << "}"; m_t << "{" << baseName << "}";
if (hasCaption) if (hasCaption)
......
...@@ -1863,6 +1863,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) ...@@ -1863,6 +1863,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
} }
} }
<SkipCommand>"endif" { <SkipCommand>"endif" {
g_expectGuard = FALSE;
decrLevel(); decrLevel();
if (--g_ifcount<0) if (--g_ifcount<0)
{ {
...@@ -2629,7 +2630,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output) ...@@ -2629,7 +2630,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output)
BEGIN( Start ); BEGIN( Start );
g_expectGuard = TRUE; g_expectGuard = guessSection(fileName)==Entry::HEADER_SEC;
g_lastGuardName.resize(0); g_lastGuardName.resize(0);
g_guardExpr.resize(0); g_guardExpr.resize(0);
......
...@@ -15,6 +15,8 @@ ...@@ -15,6 +15,8 @@
* *
*/ */
/* Tradukita kaj ĝisdatigata de Ander Martinez. */
#ifndef TRANSLATOR_EO_H #ifndef TRANSLATOR_EO_H
#define TRANSLATOR_EO_H #define TRANSLATOR_EO_H
...@@ -40,7 +42,7 @@ ...@@ -40,7 +42,7 @@
Translator class (by the local maintainer) when the localized Translator class (by the local maintainer) when the localized
translator is made up-to-date again. translator is made up-to-date again.
*/ */
class TranslatorEsperanto : public TranslatorAdapter_1_6_3 class TranslatorEsperanto : public Translator
{ {
public: public:
...@@ -1809,6 +1811,70 @@ class TranslatorEsperanto : public TranslatorAdapter_1_6_3 ...@@ -1809,6 +1811,70 @@ class TranslatorEsperanto : public TranslatorAdapter_1_6_3
return "Nenia kongruo"; return "Nenia kongruo";
} }
//////////////////////////////////////////////////////////////////////////
// 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)"Diagramo de dependecoj dosierujaj por "+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)"Dosiero en "+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)"Inkluzivas dosieron en "+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[] = { "lundo","mardo","merkredo",
"ĵaŭdo","vendredo","sabato",
"dimanĉo" };
static const char *months[] = { "Januaro", "Februaro", "Marto",
"Aprilo", "Majo", "Junio",
"Julio", "Aŭgusto", "Septembro",
"Oktobro", "Novembro",
"Decembro"
};
QCString sdate;
sdate.sprintf("%s, %d-a de %s %d",days[dayOfWeek-1],day,months[month-1],year);
if (includeTime)
{
QCString stime;
stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
sdate+=stime;
}
return sdate;
}
}; };
#endif #endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment