Qt 5.8 | QDoc Manual | Qtgui.qdocconf with notes

Qt 5.8.0 Reference Documentation

# Qtgui.qdocconf with notes

This document goes through a typical Qt 5 qdocconf file. The contents is taken from Qt GUI's qtgui.qdocconf file.

Below you will find the full contents of `qtgui.qdocconf`. The subsequent section will discuss every statement in the qdocconf file.

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

      project                 = QtGui
      description             = Qt GUI Reference Documentation
      url                     = http://doc.qt.io/qt-5
      version                 = $QT_VERSION

      examplesinstallpath     = gui

      qhp.projects            = QtGui

      qhp.QtGui.file         = qtgui.qhp
      qhp.QtGui.namespace           = org.qt-project.qtgui.$QT_VERSION_TAG
      qhp.QtGui.virtualFolder       = qtgui
      qhp.QtGui.indexTitle          = Qt GUI
      qhp.QtGui.indexRoot           =

      qhp.QtGui.filterAttributes    = qtgui $QT_VERSION qtrefdoc
      qhp.QtGui.customFilters.Qt.name = Qtgui $QT_VERSION
      qhp.QtGui.customFilters.Qt.filterAttributes = qtgui $QT_VERSION

      qhp.QtGui.subprojects         = classes
      qhp.QtGui.subprojects.classes.title = C++ Classes
      qhp.QtGui.subprojects.classes.indexTitle = Qt GUI C++ Classes
      qhp.QtGui.subprojects.classes.selectors = class fake:headerfile
      qhp.QtGui.subprojects.classes.sortPages = true

      tagfile                 = ../../../doc/qtgui/qtgui.tags

      depends += \
          qtcore \
          qtnetwork \
          qtopengl \
          qtsvg \
          qtqml \
          qtquick \
          qtwidgets \
          qtdoc

      headerdirs  += ..

      sourcedirs  += .. \
                     ../../../examples/gui/doc/src

      excludedirs  = ../../../examples/gui/doc/src/tmp

      exampledirs += ../../../examples/gui \
                     snippets

      imagedirs   += images \
                     ../../../examples/gui/doc/images \
                     ../../../doc/src/images \

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

QDoc inherits the default templates, macros, and settings from the directory specified from the `$QT_INSTALL_DOCS` variable. `qmake` prints the value of the variable.

      qmake -query

See also: include.

      project                 = QtGui

The `project` variable sets the name of the QDoc build. This name is also used to form the index file, which, in this case, will be qtgui.index. The name of the index file doesn't adopt the uppercase letters of the project name.

See also: project.

      description             = Qt GUI Reference Documentation

A short description of the project concerned.

      url                     = http://doc.qt.io/qt-5

The `url` variable holds the base url of the project.

The URL is stored in the generated index file for the project. QDoc will use this as the base URL when constructing external links to content listed in the index.

Note: QDoc omits this value when the -installdir argument is specified when running QDoc.

      examplesinstallpath     = gui

This `examplesinstallpath` variable indicates that the examples will be installed in the gui directory under the parent examples directory (for Qt, this is $QT_INSTALL_EXAMPLES).

Note: The examplepath variable has to match the example directory specified in `exampledirs`.

See also: exampledirs.

      qhp.projects    = QtGui
      qhp.QtGui.file  = qtgui.qhp

The following parameters are for creating a QHP file (.qhp). The qhelpgenerator program can convert the QHP file into a QCH file (.qch), which can be opened in Qt Assistant or Qt Creator.

      qhp.QtGui.namespace           = org.qt-project.qtgui.$QT_VERSION_TAG

A unique identifier which enables QHelpEngine to retrieve the helpfile from a given link. This namespace is also used as a base url for links to the helpfile.

      qhp.QtGui.virtualFolder       = qtgui

Virtual folders group documentation together into a single location. A virtual folder will become the root directory of all files referenced in a compressed help file.

When two manuals are located in the same virtual folder, it is possible to refer to sections of the other manual using relative paths. The virtual folder tag is mandatory and the folder must not contain any '/'.

      qhp.QtGui.indexTitle          = Qt GUI

This is the title of the page that has the contents.

      qhp.QtGui.indexRoot           =

Specifies the title of the root (namespace) page to generate the documentation for. Typically defined as an empty string.

      qhp.QtGui.filterAttributes    = qtgui $QT_VERSION qtrefdoc
      qhp.QtGui.customFilters.Qt.name = QtGui $QT_VERSION
      qhp.QtGui.customFilters.Qt.filterAttributes = qtgui $QT_VERSION

The documentation set (one per QDoc project) can have any number of filter attributes assigned to it. A filter attribute is an ordinary string which can be freely chosen. Additionally, custom filters that reference above attributes can be defined. Qt Assistant will display the name of the custom filter in its Filtered by drop-down list. Only the documentation sets that have their filter attributes match the attributes of the selected custom filter will be shown.

      qhp.QtGui.subprojects         = classes
      qhp.QtGui.subprojects.classes.title = C++ Classes
      qhp.QtGui.subprojects.classes.indexTitle = Qt GUI C++ Classes

The subprojects specify the sections that are displayed in the table of contents for this project. In this example, the subproject, which is displayed in the Assistant's sidebar, is named "C++ Classes" and its index is the page titled "QT GUI C++ Classes".

      qhp.QtGui.subprojects.classes.selectors = class fake:headerfile

Lists all C++ classes and header files.

See Creating Help Project Files for more information.

      tagfile                 = ../../../doc/qtgui/qtgui.tags

This specifies the Doxygen tag file that needs to be written when the html is generated by QDoc.

      depends += \
         qtcore \
         qtnetwork \
         qtopengl \
         qtsvg \
         qtqml \
         qtquick \
         qtwidgets \
         qtdoc

Specifies the modules QDoc needs to load for generating output for Qt GUI. QDoc loads the index files for all modules listed in the depends statement in order to enable linking to pages in these modules.

      headerdirs  += ..

Add the parent directory to the list of directories containing the header files associated with the .cpp source files.

      sourcedirs  += .. \
                     ../../../examples/gui/doc/src

Add the specified directories to the list of directories containing the .cpp and .qdoc files used in the documentation.

      excludedirs  = ../../../examples/gui/doc/src/tmp

The `excludedirs` variable is for listing directories that should not be processed by qdoc, even if the same directories are included by the `sourcedirs` or `headerdirs` variables.

When executed, QDoc will ignore the directories listed. See also: excludefiles.

      exampledirs += ../../../examples/gui \
                     snippets

See also: examples, examplesinstallpath.

Add the two directories specified to the list of directories containing the source code of the example files.

If QDoc encounters both `exampledirs` and `examples`, it will look first in the `examples` directory. QDoc will accept the first matching file it finds. QDoc will search in the directories specified, not in their subdirectories.

      imagedirs   += images \
                     ../../../examples/gui/doc/images \
                     ../../../doc/src/images \

Add the directories specified above to the list of directories where the images can be found.