Doxygen — это кросс-платформенная система документирования исходных текстов, которая поддерживает C++, Си, Objective-C, Java, IDL и, частично, PHP, C#, D.
Генерирует документацию на основе набора исходных текстов и также может быть настроен для извлечения структуры программы из недокументированных исходных кодов. Возможно составление графов зависимостей программных объектов, диаграмм классов и исходных кодов с гиперссылками.
Doxygen имеет встроенную поддержку генерации документации в формате HTML, , man, RTF и XML. Также вывод может быть легко сконвертирован в CHM, PostScript, PDF.
Doxygen используется многими проектами, в том числе KDE, Pidgin, Torque Game Engine, AbiWord, Mozilla, FOX toolkit, Crystal Space. Есть встроенная поддержка в KDevelop.
Автором программы является голландец Димитри ван Хееш (Dimitri van Heesch).
Doxygen написан с использованием кроссплатформенной библиотеки Qt. Сама по себе программа представляет консольное приложение, принимающее на вход текстовый файл конфигурации. Также в дистрибутив входит программа doxywizard, обеспечивающая графический интерфейс для более комфортного изменения файла конфигурации.
It is now based on Qt version 4. (4.3 or higher is required)
Different layout that allows easy switching between wizard and expert mode, without losing settings.
Running doxygen can be done without first having to save the configuration file.
For HTML output, there is a button to show the results in the default browser.
Option to change the default configuration that is used when you first start the wizard.
Non-default options are shown with red label, and there is context menu to reset them back to the default.
Included Qt help update by Sebastian Pipping introducing three new options to define custom filter sections and attributes: QHP_CUST_FILTER_NAME, QHP_CUST_FILTER_ATTRS, QHP_SECT_FILTER_ATTRS. Doxygen now directly generates the indices needed by the qthelpgenerator. Qt customers can have a look at issue 28 of the Qt Quarterly for more information.
New features
id 131496, 522488, 541649, 554800: Add new option EXTENSION_MAPPING, which can be used to change the mapping of file extension to language parser, e.g. defining EXTENSION_MAPPING = f=C will make doxygen parse files with the .f extension as if it were C files.
Added support for Vietnamese (thanks to Dang Minh Tuan) Thanks to Emin Ilker Cetinbas doxygen can now also produce Turkish documentation.
id 143218: It is now possible to add the direction attributes normally used with the @param command to document parameters inline, e.g. void foo(int v /**< [in] input parameter docs */);
Bug fixes
TYPEDEF_HIDES_STRUCT did not work correctly if the typedef did a forward declaration of the struct/union.
id 153222: Fixed issue following recursive symbolic links.
id 423223: Detailed description was not visible for group functions when SEPARATE_MEMBER_PAGES was enabled.
id 437346: Fixed issue handling multibyte characters in the RTF output.
id 475377: Improved error handling in case of character encoding problems.
id 486747: Inherited typedefs were not resolved propertly.
id 508752: Add support for BLOCK DATA to the fortran parser.
id 532695: included documentation update about the use of \public and friends for object-oriented programming in C.
id 532808: References to class variables in PHP code did not already work.
id 536394: Warning "no matching file member found" was given for a static variables in multiple anonymous namespaces.
id 537686: Fixed invalid empty section for enum in a member group.
id 539590: C# generics with the same name but different template parameters where merged.
id 540321: A using declaration in a header file was not taken into account in the source file that included it.
id 540520: Have two C# enum values with the same name in different enums was not handled properly.
id 543036: //## comments were extracted even if they were not part of Rose documentation.
id 547436: Fixed issue combining Python docstrings and doxygen comments.
id 551615: A multiline C# comment with @ was not shown correctly in the source browser.
id 544598: A multiline comment as part of a #define could case wrong line counting and missing cross-references.
id 545128: \overload didn't work if it was the last statement in a comment and not followed by a newline.
id 553380: Removed bogus warning refering to a namespace member from with a brief description that was converted to a tooltip.
id 553968: Added support for JavaDoc command {@code ... }
id 554444: Bullet lists were no longer correctly indented when using IE6.
id 554674: Fixed index rendering bug in the RTF output.
id 555174: The .qch file didn't include generated images.
id 555200: Fixed potential crash bug when parsing special comment inside an if at global scope level of a PHP code fragment.
id 556240: Tree view in HTML output was not encoded correctly.
id 557001: VHDL Parser got confused when -- is in a string literal.
id 557014: Undocumented VHDL record member's internal record prefix was not removed.
id 557026: Obj-C Protocols and interfaces had wrong type/name in DocSets.
id 557031: Obj-C methods no longer require a space after the initial - or +.
id 557034: Fixed problem parsing property in Objective-C code.
id 557038: Items in tabs.css could not be overridden by custom style sheet.
id 557419: $relpath$ was no longer expanded in custom HTML headers.
id 557735: Summary for member groups was missing for groups and files.
id 558078: collaboration graph of a class using std::list of another class was not correct if the classes where inside a namespace.
id 558460: When using \subpage, any section in the sub page was missing from the LaTeX output.
id 558525: Template classes produced invalid HTML in the tree view.
id 559338: PHP Parser could get confused when there was a comment inside an array initializer.
id 559650: Obj-C @interface without body was handle correctly.
id 560623: Mixin template classes where not shown properly in the inheritance diagram if the classes where inside a namespace.
id 563136: The brief sentence is not shown for groups with no children.
id 563384: call graphs were not generated for Qt signals and slots Included VHDL fix by Martin Kreis.
grouping of multiple @todo's (and friends) didn't work anymore, causing duplicate sections and labels.
Some issues related to the Qt help output were fixed.
Added new option LATEX_SOURCE_CODE, which when enabled adds source code also to the latex output (typically to be used in combination with SOURCE_BROWSER)
Included updates for the Finnish, Romanian, Korean, German, Japanese, and Hongarian translation.
Added translation support for Esperanto.
id 579630: Added class attribute to the \todo and \bug HTML code so they can be customized via CSS.
id 578740: Added support for Æ and æ characters.
Bug fixes
id 395169: Some links via tagfiles were not correct in combination with CREATE_SUBDIRS=YES
id 539080: Having the same comment for the declaration and definition of a function could result in duplicate documentation in case the indentation level was different.
id 566713: Dot font was not removed even though DOT_CLEANUP was YES.
id 566925: Fixed problem resolving symbolic links.
id 567044: Fully qualified name was not shown correctly for nested classes.
id 567375: Fixed parse problem for typedefs with redundant braces.
id 567535: Fixed problem when parsing operator%= for CLI/C++ code.
id 567777: Fixed problem with latex output when using enums.
id 567990: Doxygen could crash when there was a symlink in project.
id 568237: Non-ascii values entered where not saved according to the INPUT_ENCODING.
id 568505: Fixed build problem for old Linux distributions.
id 569478: Fixed line continuation issue with the Fortran parser.
id 570960: C++ class defined in a .mm file was sometimes parsed as Objective-C code.
id 571013: In the wizard, editing a text field in the middle of the text in the expert tab caused the cursor to jump to the end of the line.
id 571096: Fixed Objective-C parsing problem when multiple protocol forward declarations are put on one line.
id 571990: Fixed compiler issue with portable_iconv by moving the function to a C file.
id 572560: Fixed parse issue when a #define is inside an enum.
id 572740: Fixed problem parsing C++ comments using line continuation.
id 573057: Included update for Swedish translator and changed the language code from SE to SV to comply with ISO 639.
id 578382: When referring to a static variable or function doxygen will now look at the file context in case of ambiguity.
id 580924, 541234: Replaced the PHP based search engine by a Javascript/DHTML based one. As a result the search feature no longer requires a HTTP server with PHP enabled to be usable. Searching is limited to symbols though, but it is now possible to filter on symbol type.
id 519886: Make the HTML output XHTML 1.0 compliant.
id 579950: Objective-C categories are now merged with their base class, unless there is no base class.
Member groups with the same header within the same scope are now merged. This also works for Objective-C categories.
Changed the LaTeX style sheet such that more of the markup is configurable. Please update your style sheet if you use a custom one.
id 584844: Treat \details inside a brief description as a new paragraph command.
Split GENERATE_TREEVIEW into two separate options: GENERATE_TREEVIEW and USE_INLINE_TREES.
Removed the dependencies on libpng and libz, doxygen now generates gifs again for internal class diagrams (like it did 7 years ago ;-)
New features
Added option SORT_MEMBERS_CTORS_1ST, which when enabled places the constructors and destructors first in an otherwise sorted list.
id 581518: Applied patch by Tobias Hunger that adds support for documenting DBus XML interface descriptions.
Included QtHelp patch by Karsten Heimrich which adds missing reference and keyword for methods.
Included updates for the Korean and Polish translation.
Bug fixes
id 131989: Fixed preprocessor handling for C# code.
id 133418: -- was not rendered correctly for LaTeX output
id 157485: Missing link in todo page.
id 318061: Two template functions that only differed in the number of template arguments were seen as the same function.
id 443939: HIDE_UNDOC_CLASSES did not work properly.
id 509348: Fixed problem with syncing the information of declaration and definition in the presence of an extra forward declaration in the source code.
id 522193: For C# enum values were merged together if the same enum name was used in different scopes.
id 523167: Included patch to handle PROGRAM statement in Fortran as subroutines/functions.
id 554636: Remove spacing around brackets for Obj-C protocols.
id 557026: Included patch for fixing wrongly labeled items in docsets.
id 560512: Improved parser to better disambiguate nested templates ending with >> from the bitshift right operator.
id 570238: Fixed matching problem for method in nested class, where the outer class is a template.
id 581746: Segfault/realloc error when a very long path was used.
id 582469: documented #define with guard caused wrong documentation.
id 582276: Doxywizard could crash on exit in some cases.
id 582676: Regression: a struct ivar in ObjC class screws up method identification.
id 583213: Included patch that avoids trailing spaces in the generated Doxyfile template.
id 584192: Included VHDL patch by Martin Klein
id 585543: Fixed case where matching declaration and definition did not work correctly.
id 585260: The "more..." link for files was broken, since the anchor was not generated.
id 586925: Fixed parsing problem when an unpaired apostrophe appeared in a Python comment.
id 588291: Included fix for doxywizard makefile.
id 588587: Added missing virtual destructor to CompAccept base class.
id 588968: Fixed segmentation fault for specific case in PHP code.
Fixed some issues building for Windows.
id 589514: Fixed problem handling strings like a"\b" within a comment.
id 589616: Fixed problem matching explicitly scoped parameter in a template class.
id 590712: A namespaced with name "internal" (C++/CLI keyword) could confuse doxygen's C++ parser.
id 591749: @optional/@required attributes for Objective-C were missing from the XML output.
id 594787: Autolinking to all-lower case words has been disabled, in accordance with the documentation.
id 604543: Doxygen now allows any extension supported by dot via the DOT_IMAGE_FORMAT option.
Switched back to using PNGs for built-in diagrams and formulas using the Lode Vandevenne's PNG encoder.
New features
Added new option SERVER_BASED_SEARCH to re-enable searching via a PHP enabled web browser instead of only using javascript locally. This method better scales to larger projects and allows full text search.
Added new options GENERATE_ECLIPSEHELP and ECLIPSE_DOC_ID to generate an index file that can be used to embed doxygen's HTML output into Eclipse as a help plugin (thanks to a patch by Ondrej Starek).
Wrote new documentation regarding the methods of searching in the HTML output. Included patch by Ed Rosten to render formulas with proper anti-aliasing on non-white backgrounds using transparency.
Add new option FORCE_LOCAL_INCLUDES to make the default #include appearance in class documentation with "" i.s.o sharp brackets.
id 558457: Make \addindex put keywords into the .qhp file.
id 595214: #cmakedefine is now treated the same was as #define (for users of the CMake build system).
Added compilation support for OSX 10.6 (aka Snow Leopard)
Included language update for Brazilian.
Bug fixes (ids refer to the bugzilla database)
Doxywizard did not warn when it failed to save its config file.
id 557035: Empty class definitions were not included in Tokens file for docsets.
id 563233: GENERATE_QHP details was considered even though it is not defined.
id 567346: Comment parser could get stuck in certain cases.
id 570369: GENERATE_QHP should generate keywords for classes in generated *.qhc.
id 571964: Fixed two issues in the compound.xsd schema definition.
id 592991: Fixed wrong default destination directory.
id 593040: Fixed problem with distributing member group documentation for anonymous member groups.
id 593273: GENERATE_TODOLIST=NO and friends not longer worked.
id 593928: Added support for UCS-2 encoded input files.
id 594391: Fixed problem parsing fully-qualified java annotations.
id 594592,596815: Fixed problem handling quotes.
id 595191: Not all configuration options appeared in the index of the documentation and some were not sorted correctly.
id 595253: formulas had the .png extension while they were gifs.
id 595833: Fixed recursive lockup while resolving template relations.
id 595935: Doxygen's preprocessor got confused when /**/ appeared as part of a macro definition.
id 596085: Removed obsolete option USE_WINDOWS_ENCODING from the docs.
id 596233: RTF output was missing a new paragraph for brief member descriptions.
id 596807,596819: Code reformatting done for the LaTeX output could break multibyte UTF-8 characters causing invalid output.
id 596809: Using multibyte characters in a page label caused invalid output.
id 596816: Documented the interaction between LATEX_CMD_NAME and USE_PDFLATEX.
id 597015: Todo items for two inner classes with the same name where collapsed together in the todo list when HIDE_SCOPE_NAMES was enabled.
id 597016: Scope was not hidden for members in the todo list even though HIDE_SCOPE_NAMES was set to YES.
id 598497: Struct variable with explicit struct keyword got labelled with [read] attribute.
id 596902: PHP was not parsed properly when it appeared in a <script language="php"> section.
id 597415: Fixed problem matching base class member against the member in the derived class.
id 597518: Makefile for Docsets now honors DESTDIR.
id 598298: Made browsing for HHC_LOCATION via the wizard yield an absolute path.
id 599128: Changed default for CHM_INDEX_ENCODING to CP1250 to avoid issues in a Solaris environment.
id 595931: Removed unnecessary paragraphs from HTML table cells.
id 597541: referring to page labels of the form a-1 did not work.
id 599224: Code generators could produce extra tags.
id 599974: Included the PHP search engine again (with new config option SERVER_BASED_SEARCH to enable it)
id 600544: Doxygen produced invalid Latex output for RCS tags.
id 600563: Fixed issue with include dependency tracking that could cause macro expansion not to work properly.
id 600940: Fixed issue with VHDL call graph (thank to Martin Kreis for the fix).
id 601138: Fixed problem parsing C++ function-try-blocks.
id 601222: #include inside a class could cause line numbers to be off.
id 601223: Fixed parsing problem skipping over /**/ comment.
id 601694: Fixed problem handling Javadoc style {@code ... } blocks.
id 601771: Special commands did not work in the title of the @mainpage.
id 602818: Fixed problem parsing files that start with UTF-8 BOM.
id 603001: Fixed problem parsing friend function with explicit scope.
id 603238: Fixed perlmod generation issue.
id 604948: Project number was not centered anymore in the HTML output.
id 604503: Using %word in a page title incorrectly did show the %.
* Changed the look of the HTML output. * Made several internal changes that should have a positive effect on the overall performance.
New features
* The color of the HTML output can now easily be adjusted using three new options: HTML_COLORSTYLE_HUE, HTML_COLORSTYLE_SAT, and HTML_COLORSTYLE_GAMMA, which control respectively the hue, saturation, and gamma of all elements in the HTML output. * Moved dot invocations to the end of a doxygen run. Doxygen will now run multiple instances of dot in parallel (for better CPU utilisation on multi-core systems). The new config option DOT_NUM_THREADS determines the number of threads used (were 0 is auto-detect). * Added option EXT_LINKS_IN_WINDOW which controls whether or not links to symbols imported via tag files will be opened in a new window. * Included various language updates (thanks to Petr for coordinating). * Included patch by Stefan Oberhumer that allows customizing the way parameter lists are shown in the LaTeX output.
Bug fixes (ids refer to the bugzilla database)
* id 306076: source browser could miss links for used namespaces. * id 361476,620924: \if and \endif did not work properly inside auto lists. * id 557164: No warning for missing return type documentation even though WARN_NO_PARAMDOC was set to YES. * id 577005: Handling of nesting \defgroup's was not always working properly. * id 578739: ø was not translated correctly in the LaTeX output. * id 583526: Use relative paths for mscgen diagrams to avoid errors in the LaTeX output. * id 592991: The "Use current settings at startup" feature of Doxywizard was broken. * id 593679: Links in the search results were broken if they pointed to symbols imported via tag files using an absolute path or URL. * id 593760,615682: Fixed man page output problem when using @par. * id 594021: A C comment before a #endif caused the preprocessor statement to be ignored. * id 597013: When HIDE_SCOPE_NAMES was enabled also the scope for nested classes was stripped. Now only the namespace scope will be stripped as before. * id 600829: Autolinks to namespace members did not work if an explicit # or :: was used. * id 602732: Slashes inside strings in java annotations were not handled properly. * id 606335: Fixed the "show html output" button in doxywizard for Windows when IE was set as the default browser. * id 608292: Formatting was lost for section copied with \copydoc. * id 608359: Fixed C++ parse issue for "class : public base {} var;" construct. * id 611056: Generated HTML footer file did not have UTF-8 encoding and the relative path marker needed when using CREATE_SUBDIRS = YES. * id 611193: Fixed parsing problem with try-functions having multiple catch handlers. * id 611642: Specialized private template member function appeared as public. * id 611888: Include dependency graphs were sometimes wrong. * id 612170: Some lines in the generated Doxyfile where too long. * id 612275: Fixed auto-link problem for certain URLs. * id 612292: Improved handling of ellipsis inside brief description when JAVADOC_AUTOBRIEF is enabled. * id 612364: Accessibility of macros was not handled properly in all cases. * id 612310: Enabling REFERENCED_BY_RELATION without SOURCE_BROWSER could result in broken links. * id 612458: Fixed problem handling @copydoc for function operators. * id 612609: A raw C# string constant could end up in the next string. * id 612969: subpages were not part of the XML output. * id 613024: First list item in the paragraph after a @todo item was not parsed properly. * id 614204: Generated man page links were having a heading underscore. * id 614443: Made include guard detect a bit more strict to avoid false positives. * id 614447: The labels of CVS tags were missing a colon. * id 614438: Fixed problem parsing Q_PROPERTY with template type and spaces. * id 615165: Made the date string in the HTML footer translatable, along with some other sentences on the directory pages. * id 612858: Inline attribute was shown also for non-inline template members. * id 615583: Fixed problem handling @copy for operators with const qualifier. * id 615755: Fixed problem handling '"' inside comments. * id 615957: Made the LaTeX output a bit less spatious using \input. * id 615695: Fixed preprocessor issue where a macro that was redefined was not resolved. * Fixed character encoding issue on the search results page. * id 615670: C# namespaces are now extracted also without comment block (the language spec does not allow XML documentation). * id 616209: included patch that fixes some typos in the code. * id 616344,610604: Pages with an underscore in the label generated a file name containing two underscores. * id 616387: text of the form something.symbol got autolinked when symbol had a global scope. * id 616761: Call graph could be wrong when local variable has the same name as a global function. * id 616947: Added documentation patch on how to create URL links with custom text. * id 616988: Doxywizard now removes non-existant files from the recent list and has an option to clear the list completely. * id 617051: A macro defined via PREDEFINED did not always overrule a macro definition in the code. * id 617278: Enabling call graphs produced invalid XHTML output. * id 617871: Non ascii characters in file or directory names caused problems on Windows. * id 618079: An ALIAS with parameters spanning multiple lines caused problems with /// style comments. * id 618632: Included patch to prevent image overflowing the page in the LaTeX output. * id 619728: Fixed problem using EXTENSION_MAPPING for C# (thanks to Vsevolod Kukol for the patch). * id 619978: Links to external files could be wrong when CREATE_SUBDIR was enabled. * id 620229: /* characters in a print broke parsing within an conditional section. * id 620926: \if and \endif did not work properly inside HTML tables. * Using @include in combination with LATEX_SOURCE_CODE caused wrong output. * Included a patch by Guido Tack which adds two new options for docsets (DOCSET_PUBLISHER_ID and DOCSET_PUBLISHER_NAME) and fixes an issue with linking to docset members. * Included patch by Stefan Oberhumer to support escaped {}'s in alias definition and parameters. Downloads (~3,9 Mb)_ftp://ftp.stack.nl/p...7.0.src.tar.gz
ЭЖД, 25.06.2010 - 19:21
doxygen 1.7.1
Changes
* id 621695: Made warning and error messages appear with lower case "warning:" and "error:" prefix to make it easier to use the messages from Visual Studio.
New features
* id 621908: Added new config option FORMULA_TRANSPARENT which allows selecting between transparent (YES) or non-transparent (NO) PNGs for formulas in the HTML output. * Update for Turkish translation.
Bug fixes (ids refer to the bugzilla database)
* id 533821: Inheritance relation for a C# class deriving from a generic class was not handled correctly. * id 554638: Changing DOT_IMAGE_FORMAT did not cause the graphs to be regenerated. * id 576533: A field of the form "enum E *p" was ignore. * id 597016: Hide scope name was not working properly for todo items inside class members, where the class was inside a namespace. * id 617761: In dot graphs now also @ref worked (previously only \ref was supported). * id 621653: Fixed error when compiling doxygen for Solaris 8. * id 621733: Removed bogus warning about undocument return type for define when WARN_NO_PARAMDOC was enabled. * id 621780: Fixed parsing support for a function that returns a struct definition. * id 621785: Doxygen could hang when using \copydoc in a function with \param. * id 621805: Using //!< after a #define no longer worked. * id 621854,622219,622593: html help compiler (and also the Qt help compiler) was called before all dot images were generated. * id 621984: Using a auto-list in combination with \subpage cause the items to be inlined. * id 622018: Fixed problem parsing a @param command where the text part started with a formula. * id 622019: Added some instructions how to document Fortran code. * id 622041: Using \var multiple times in a comment block did not work properly. * id 622413: Tooltips could get wrongly truncated when multi-byte UTF-8 characters were used. * id 622471: Argument matching failed for typedef in another namespace. * Fixed crash situation while handling commands inside a @ref section. * Treeview icons were missing in the HTML output when setting GENERATE_TREEVIEW to NO and USE_INLINE_TREES to YES. Downloads (~3,9 Mb)_ftp://ftp.stack.nl/p...7.1.src.tar.gz
ЭЖД, 9.10.2010 - 18:28
doxygen 1.7.2
Changes
* Changed the default font of the LaTeX output to helvetica. * Changed the way parameters and return values are represented in the LaTeX and RTF output. They are now listed using tables.
New features
* added support for Apple's block object extension for C/Obj-C/C++. * added support for detecting Python constructors and destructors. * id 624575: Added \endinternal command that can be used to force the end of a section started with \internal. * id 552605: Added parsing support for PHP 5.3+ style namespaces. * id 582532: added \mscfile command which can be used to insert a message sequence chart given a .msc file. Also added a new config option MSCFILE_DIRS to provide directories were msc files are searched (Thanks to Adrien for the patch). * Added support for type specifiers for documenting PHP parameters, format: "@param type $paramname docs" * Added support for rendering formulas in the HTML output using MathJax instead of using prerendered bitmaps. For this purpose the options USE_MATHJAX and MATHJAX_RELPATH were added.
Bug fixes (ids refer to the bugzilla database)
* id 306076: Fixed case where using of a namespace did not work inside an example. * id 336053,487871: /// were not stripped from formulas and \dot..\enddot * id 563698: dropped support for a4wide paper format for LaTeX, since it is on the LaTeX taboo list. * id 571014: Behaviour of CLASS_DIAGRAM=NO in combination with HAVE_DOT=YES, was not propely documented. * id 576291: Python comments for next class or method could end up in code of a method/class when enabling INLINE_SOURCES. * id 611174: Fixed problem handling nestes classes in Python. * id 621733: removed unexpected warnings about undocumented return types * id 622737: Undefined function macros could cause constant expression errors. * id 622780: updated copyright statement in PDF docs. * id 622935: C# generics appeared with -g extension in the output in some situations. * id 623023: Fixed parsing problem for "int &foo1(),&foo2();" * id 623052: Link to destructor was wrong in the member index. * id 623424: Fixed problem where struct description gets added to variable of struct type. * id 623673: Anchors were missing in the Qhp index for members. * id 623733: Fixed potential crash due to uninitialized line number. * id 623765: closed.png was wrongly linked when GENERATE_SUBDIRS and HTML_DYNAMIC_SECTIONS were enabled. * id 624014: Function macro was not handled properly when there was a line continuation directly after the name. * id 624095: Linking to a class via a tag file did not work if the class was in an undocumented namespace. * id 624104: Fixed a couple of typos in lodepng.h * id 624323: Graph legend image was missing form the index files. * Fixed a number of typos in the config file documentation (thanks to Jens Schweikhardt) * id 624514: Some enums were not cross-referenced. * id 624829: Missing \endcond could cause preprocessor issues in next file(s) to be parsed. * id 625070: a function definition in a namespace, documented in the header did not always get cross-referenced. * id 625296: Removed superfluous
from parameter list in HTML output. * id 625317: Unterminated comment could crash doxygen. * id 625531: Inherited documentation was only included for the last derived class in case of multiple inheritance. * id 625578: In the HTML output
was missing for built-in class diagrams. * id 625555: References in example files with underscores were wrong. * id 625982: When using japanese characters mixed with ascii characters doxygen incorrected ended the brief description with a dot. * id 625952: setting MULTILINE_CPP_IS_BRIEF to YES, cause /// to appear in the output. * id 626033,567774: EXTENSION_MAPPING did not work if a the mapped language was handled by the same parser as used for the original extension. * id 626175: Fixed bracket bug in LaTeX fancy headers. * id 626508: Allow hyphen in key argument of \xrefitem. * id 626647: \copydoc did not work for array type arguments (e.g. int[]). * Use \dotfile did not produce the correct map file, so URLs in dot files did not work. * id 627371: #define's in files only found via INCLUDE_PATH were not correctly handled. * id 628065: auto brief description ending with .) cause the ) to end up in the detailed part. * id 628242: Fixed encoding issue for the Spanish translation. * id 628678: Fixed segmentation fault in case of very long errors. * id 629040: Fixed type in search page of the documentation. * id 629182: Fixed problem detecting include guard. * id 629270: Made file extension to parser mapping case insensitive. * id 629485: Latex makefile clean target used rm command also for Windows. * id 629942: the EXCLUDE_SYMBOLS option was missing form the online docs. * id 631094: \htmlinclude and \verbinclude ended the brief description. * id 631380: Inconsistent behaviour when a brief description was given following by a detailed comment block with JAVADOC_AUTOBRIEF enabled. * Fixed a number of typos in the documentation (thanks to Albert van der Meer) * Fixed potential hangup when scanning directories defined as symlinks to absolute paths. * HTML attributes other than src were not copied for the tag. Downloads (~4,0 Mb)_ftp://ftp.stack.nl/p...7.2.src.tar.gz
ЭЖД, 5.01.2011 - 15:47
doxygen 1.7.3
Changes
* Added a header for each HTML page above the navigation menu, showing the project name and logo and a short descriptin (all optional). Disabling the index (with DISABLE_INDEX) still shows the new header (you can still customize this using HTML_HEADER). This now works nicely in combination with GENERATE_TREEVIEW = YES and/or SEARCH_ENGINE = YES. * Redesigned the treeview feature. Instead of using frames, the navigation tree is now loaded on each page dynamically. This allows bookmarking a page and always keeps the top menu visible. Also the current item is automatically highlighted in the tree. Also updated the icons in the treeview to match the overall look'n'feel. Note: if you now use a custom HTML header, please update it using doxygen with the -w and the edit the default header.
New features
* id 499544: Added SVG support to doxygen's dot output (setting DOT_IMAGE_FORMAT to svg now works as expected) * Added control to the wizard to configure the color of the output visually. * Added options to specify project synopsis and select a project logo to the wizard. * Added option PROJECT_ICON which can be used to specify an image which will be shown in the header of each HTML page along with the project name (PROJECT_NAME option). * Added option PROJECT_BRIEF which can be used to specify a brief description which will be shown in the header of each HTML page just below the project name. * Added new option FILTER_SOURCE_PATTERNS which can be used in combination with FILTER_SOURCE_FILES to filter files used for the source browser based on file extension, which can overwrite the filter set by FILTER_PATTERNS and/or INPUT_FILTER. * Added new option STRICT_PROTO_MATCHING which is disabled by default, and makes the parameter matching to be less strict, resulting in fewer "No matching class member found" warnings.
Bug fixes (ids refer to the bugzilla database)
* id 306076: code blocks with using directives did not get hyperlinked. * id 313527: enum values with bitfields did not get parsed correctly. * id 565715,630582: Included a patch that fixes a couple of Fortran issues (thanks to Albert). * id 615507: Fixed problem handling @cond..@endcond in Fortran code. * id 619040: Scope was missing in Tokens.xml when using docsets. * id 625517,523156: Applied patch tp avoid stripping prefixes for Fortran subroutines. * id 626476: allow label before end statement in Fortran * id 630901: was not handled properly in comment block. * id 632311: Fixed potential crash for empty verbatim section. * id 632426: closing brace of a function with one parameter has wrong color in HTML. * id 632543: Added support for Fortan TYPEs with languge bindings. (thanks to a patch by Daniel Franke) * id 632879: An explicit link request such as #blah did not longer produce a warning if no symbol named blah was found. * id 633891: warnings in "inbody" documentation were shown with "unknown" file name. * id 634116: Titles customized via the layout file did not appear in the title page and navigation tree, only in the top menu. * id 634600: Fixed problem resolving typedef. * id 634775: Fixed a problem were // inside a code block got removed. * id 634857: Added support for escaping :: by using \:: (or @: * id 634962: #include with relative path to parent dir did not get hyperlinked. * id 634986: Removed double definition of docParamName in compound.xsd. * id 635198: C++/CLI Finalizer methods were not parsed properly. * id 636475: Objective-C method names can now be used as the the first argument of \ref. * id 636588: Fixed a couple of problems in the compound.xsd schema used for XML output. * id 636598: DISTRIBUTE_GROUP_DOC now works again for enum values. * id 636947: Improved matching of typedef'ed array parameter and non typedef'ed array parameter. * id 637610: Added a number of fixed for Fortran interfaces. * id 637712: Handle files with the .for extension as Fortran. * id 637987: Fixed error in the grouping documentation. * Fixed line number sync problem when using Objective-C #import statements. * Fixed problem handling /** @cond */ in the preprocessor. * Member groups could get reordered in the output. Downloads (~4 Mb)_ftp://ftp.stack.nl/p...7.3.src.tar.gz