Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

QDoc Project Templates

From Qt Wiki
Jump to navigation Jump to search

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

This page is part of the Qt Writing Guidelines.

QDoc configuration may be imported by using include(). The templates may be referenced using environment variables, relevant paths, or absolute paths.

Note This feature is only supported in Qt 5 that is not shadow-built.

Qt 5 Module Defaults

Projects that are part of Qt 5 as an Essential or Add-On can simply include the templates in Qt 5's qtbase/doc/global directory. These projects should receive the QT_INSTALL_DOCS variable from QMake. See Checklist for Adding Documentation for a New Module

There are several templates in Qt 5, but the basic one which all Qt 5 modules should include is qt-module-defaults.qdocconf:

include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)

This template will include the necessary HTML templates, C++ macros, and other QDoc configurations. Note that this include should be at the top of the .qdocconf file.

Note Including this template also applies the Qt Project copyright notices which may not be appropriate for some projects.

Projects Outside of Qt 5

For projects outside of Qt 5, the includes can vary, depending on which configuration is desired. For a typical project, the following should suffice:

include($QT_INSTALL_DOCS/global/macros.qdocconf) #macros for QDoc commands
include($QT_INSTALL_DOCS/global/qt-cpp-defines.qdocconf) #needed by C++ projects
include($QT_INSTALL_DOCS/global/compat.qdocconf) #compatibility macros
include($QT_INSTALL_DOCS/global/fileextensions.qdocconf) #configuration common among QDoc projects
include($QT_INSTALL_DOCS/global/qt-html-templates-offline.qdocconf) #offline HTML template for documentation shipped to Qt Creator

Customizing the HTML template

It is possible to customize the look-and-feel of the HTML template by including different templates.

  1. For projects that package documentation to Qt Assistant or Qt Creator:
include($QT_INSTALL_DOCS/global/qt-html-templates-offline.qdocconf) #offline HTML template for documentation shipped to Qt Creator
  1. For projects that wish to look like the documentation snapshots (doc-snapshot.qt.io)
include($QT_INSTALL_DOCS/global/qt-html-templates-online.qdocconf)

To further customize, the templates in 1 and 2 include several other HTML-related configurations.