Differences with m.css

dox++html is based on the m.css Doxygen backend tool, and it output is fairly similar. We have however customized the templates to work with data as generated by dox++parse, so that dox++html needs to do less work to translate the data for those templates. We have also made some tweaks to the CSS.

These are the more important differences:

  1. Classes, structs and unions that only have variables as members are not documented on a separate page. Their detailed documentation is instead shown on the parent’s page (namespace, class, file or module).

  2. Pages for classes and namespaces that belong to a module have a link back to the module, next to the link to the header file.

  3. Classes don’t have separate sections for private and protected members. They are all shown together, the tag clearly indicates accessibility.

  4. Section, subsection and subsubsection headings are added to the search index.

  5. Assignment operators are shown in the same section as the constructors and conversion operators.

  6. Undocumented classes, namespaces and files that have documented members are shown in the documentation even if the option to show undocumented members is turned off. This prevents having to add documentation to things just to be able to document their members.

  7. The detailed documentation of related functions, aliases and variables are shown on the page of the class they are related to, not on the page of the namespace or module they are declared in.

  8. The CSS allows for a bit more space in between headers and content, and tables are formatted differently.