Fixing Documentation issues#
<inject-documentation> element can be used to add texts.
"replace" mode is currently not implemented, though.
Snippets can replaced by placing a Python equivalent under
The directory structure matches that of Qt. To replace a snippet with the id 0 in
qtbase/examples/foo/snippet.cpp, place a file
under that directory (one snippet per file with the snippet id appended to the base name).
More complicated mappings can be added to
# Recreating the module descriptions after a Qt major version change
The source tree contains .rst files containing the module description in doc/extras (named for example “QtCore.rst”). They are extracted/adapted from the C++ module descriptions. If there is no module description file, shiboken will extract the module description from the webxml files generated by qdoc. This ends up in the build directory under doc/rst/PySide6/<module>/index.rst. It can be used as a starting point for a module description file. C++ specific information like build instructions should be removed.
The descriptions may link to tutorials which can be added to additionaldocs.lst for webxml extraction.
The file is a list of additional documentation files. These are basically Qt tutorials referenced by the documentation. They will receive some Python adaption by shiboken/sphinx.
The list can be created by the below script and some hand-editing. It will find almost all documents. Quite a number of them might be unreferenced, but there is no good way of filtering for this. Pages of examples that exist in Python should be removed.
for F in *.webxml do echo "$F" | egrep '(-index)|(-module)|(-qmlmodule)\.webxml$' > /dev/null if [ $? -ne 0 ] then if fgrep '<para>' "$F" > /dev/null # Exclude reference only then egrep "(<class )|(<namespace )" $F > /dev/null || echo $F fi fi done
inheritance_diagram.pyproject lists the script involved in inheritance
inheritance_diagram.py being the main one used by sphinx.
The others have main-test drivers for checking.
There are 2 scripts used for determining the inheritance:
json_inheritance.py (env var
INHERITANCE_FILE) reads a
inheritance.json file containing the class hierarchy generated by shiboken’s doc generator.
import_inheritance.pyactually tries to import the class (legacy)