summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTopi Reinio <topi.reinio@qt.io>2018-02-07 13:21:09 +0100
committerTopi Reiniƶ <topi.reinio@qt.io>2018-02-09 12:07:25 +0000
commitc8964b8f1cf56718a189b0f57bad446cec30a8b8 (patch)
tree221f917586c8c50f862361cc7c41e0865499e4ef
parentc8a48a9a28889598cb2a06fc8d5deb9b803509ca (diff)
Doc: Divide documentation into submodules
QDoc in Qt 5.11 will use Clang (libclang) to parse C++ documentation. In order to do that, Clang needs to have the include paths available when parsing source; qmake provides that information to QDoc but only when the documentation project is located under the correct module (source) path. By having dedicated doc projects for Qt 3D Core, Render, Input, etc. the number of documentation warnings is signicantly reduced. A top-level 'Qt 3D' project is still kept, and contains the landing page, overview, examples, and top-level 'C++ classes' and 'QML types' pages that list all types documented across all Qt 3D submodules. Change-Id: Id5936de36f31c2a8764a64e1e9d7ae0d10e8ab14 Reviewed-by: Martin Smith <martin.smith@qt.io>
-rw-r--r--src/animation/animation.pro2
-rw-r--r--src/animation/doc/qt3danimation.qdocconf43
-rw-r--r--src/animation/doc/src/qt3danimation-module.qdoc (renamed from src/doc/src/qt3danimation-module.qdoc)6
-rw-r--r--src/core/core.pro2
-rw-r--r--src/core/doc/qt3dcore.qdocconf47
-rw-r--r--src/core/doc/src/qcircularbuffer.qdoc (renamed from src/doc/src/qcircularbuffer.qdoc)0
-rw-r--r--src/core/doc/src/qt3dcore-module.qdoc81
-rw-r--r--src/doc/qt3d-config.qdocconf36
-rw-r--r--src/doc/qt3d.qdocconf91
-rw-r--r--src/doc/src/qt3d-module.qdoc38
-rw-r--r--src/extras/doc/qt3dextras.qdocconf43
-rw-r--r--src/extras/doc/src/qmlextracontrollers.qdoc (renamed from src/doc/src/qmlextracontrollers.qdoc)0
-rw-r--r--src/extras/doc/src/qmlextramaterials.qdoc (renamed from src/doc/src/qmlextramaterials.qdoc)0
-rw-r--r--src/extras/doc/src/qt3dextras-module.qdoc (renamed from src/doc/src/qt3dextras-module.qdoc)3
-rw-r--r--src/extras/extras.pro2
-rw-r--r--src/input/doc/qt3dinput.qdocconf43
-rw-r--r--src/input/doc/src/qt3dinput-module.qdoc (renamed from src/doc/src/qt3dinput-module.qdoc)1
-rw-r--r--src/input/input.pro2
-rw-r--r--src/logic/doc/qt3dlogic.qdocconf43
-rw-r--r--src/logic/doc/src/qt3dlogic-module.qdoc (renamed from src/doc/src/qt3dlogic-module.qdoc)1
-rw-r--r--src/logic/logic.pro2
-rw-r--r--src/quick3d/quick3dscene2d/doc/qt3dscene2d.qdocconf45
-rw-r--r--src/quick3d/quick3dscene2d/doc/src/qt3dscene2d-module.qdoc (renamed from src/doc/src/qt3dscene2d-module.qdoc)3
-rw-r--r--src/quick3d/quick3dscene2d/quick3dscene2d.pro2
-rw-r--r--src/render/doc/qt3drender.qdocconf43
-rw-r--r--src/render/doc/src/levelofdetailloader.qdoc (renamed from src/doc/src/levelofdetailloader.qdoc)0
-rw-r--r--src/render/doc/src/qt3drender-framegraph.qdoc (renamed from src/doc/src/qt3drender-framegraph.qdoc)16
-rw-r--r--src/render/doc/src/qt3drender-geometry.qdoc (renamed from src/doc/src/qt3drender-geometry.qdoc)8
-rw-r--r--src/render/doc/src/qt3drender-module.qdoc (renamed from src/doc/src/qt3drender-module.qdoc)3
-rw-r--r--src/render/doc/src/qt3drender-protips.qdoc (renamed from src/doc/src/qt3drender-protips.qdoc)19
-rw-r--r--src/render/render.pro2
31 files changed, 493 insertions, 134 deletions
diff --git a/src/animation/animation.pro b/src/animation/animation.pro
index b7d08416c..066985760 100644
--- a/src/animation/animation.pro
+++ b/src/animation/animation.pro
@@ -21,4 +21,6 @@ HEADERS += \
SOURCES += \
animationlogging.cpp
+QMAKE_DOCS = $$PWD/doc/qt3danimation.qdocconf
+
load(qt_module)
diff --git a/src/animation/doc/qt3danimation.qdocconf b/src/animation/doc/qt3danimation.qdocconf
new file mode 100644
index 000000000..74c185e7f
--- /dev/null
+++ b/src/animation/doc/qt3danimation.qdocconf
@@ -0,0 +1,43 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DAnimation
+description = Qt 3D Animation Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DAnimation
+
+qhp.Qt3DAnimation.file = qt3danimation.qhp
+qhp.Qt3DAnimation.namespace = org.qt-project.qt3danimation.$QT_VERSION_TAG
+qhp.Qt3DAnimation.virtualFolder = qt3danimation
+qhp.Qt3DAnimation.indexTitle = Qt 3D Animation
+qhp.Qt3DAnimation.indexRoot =
+
+qhp.Qt3DAnimation.filterAttributes = qt3danimation $QT_VERSION qtrefdoc
+qhp.Qt3DAnimation.customFilters.Qt.name = Qt3DAnimation $QT_VERSION
+qhp.Qt3DAnimation.customFilters.Qt.filterAttributes = qt3danimation $QT_VERSION
+
+qhp.Qt3DAnimation.subprojects = classes qmltypes
+
+qhp.Qt3DAnimation.subprojects.classes.title = C++ Classes
+qhp.Qt3DAnimation.subprojects.classes.indexTitle = Qt 3D Animation C++ Classes
+qhp.Qt3DAnimation.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DAnimation.subprojects.classes.sortPages = true
+
+qhp.Qt3DAnimation.subprojects.qmltypes.title = QML Types
+qhp.Qt3DAnimation.subprojects.qmltypes.indexTitle = Qt 3D Animation QML Types
+qhp.Qt3DAnimation.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DAnimation.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3danimation.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3drender qt3dlogic \
+ qt3dinput qt3dextras qt3dscene2d
+
+sourcedirs += ..
+headerdirs += ..
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qt3danimation-module.qdoc b/src/animation/doc/src/qt3danimation-module.qdoc
index ed3406aa4..a056447e8 100644
--- a/src/doc/src/qt3danimation-module.qdoc
+++ b/src/animation/doc/src/qt3danimation-module.qdoc
@@ -29,7 +29,7 @@
/*!
\module Qt3DAnimation
\title Qt 3D Animation C++ Classes
-
+ \keyword Qt 3D Animation
\brief The Qt 3D Animation modules provides a set of prebuilt elements to help
you get started with Qt 3D.
@@ -41,7 +41,7 @@
\qtvariable 3danimation
\code
- #include <Qt3DAnimation>
+ #include <Qt3DAnimation>
\endcode
To link against the corresponding C++ library, add the following to your qmake project file:
@@ -225,4 +225,6 @@
\badcode
import Qt3D.Animation 2.9
\endcode
+
+ \section1 QML Types
*/
diff --git a/src/core/core.pro b/src/core/core.pro
index 8e65fafab..742085ac7 100644
--- a/src/core/core.pro
+++ b/src/core/core.pro
@@ -20,4 +20,6 @@ include(transforms/transforms.pri)
include(resources/resources.pri)
include(services/services.pri)
+QMAKE_DOCS = $$PWD/doc/qt3dcore.qdocconf
+
load(qt_module)
diff --git a/src/core/doc/qt3dcore.qdocconf b/src/core/doc/qt3dcore.qdocconf
new file mode 100644
index 000000000..3b772aec1
--- /dev/null
+++ b/src/core/doc/qt3dcore.qdocconf
@@ -0,0 +1,47 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DCore
+description = Qt 3D Core Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DCore
+
+qhp.Qt3DCore.file = qt3dcore.qhp
+qhp.Qt3DCore.namespace = org.qt-project.qt3dcore.$QT_VERSION_TAG
+qhp.Qt3DCore.virtualFolder = qt3dcore
+qhp.Qt3DCore.indexTitle = Qt 3D Core
+qhp.Qt3DCore.indexRoot =
+
+qhp.Qt3DCore.filterAttributes = qt3dcore $QT_VERSION qtrefdoc
+qhp.Qt3DCore.customFilters.Qt.name = Qt3DCore $QT_VERSION
+qhp.Qt3DCore.customFilters.Qt.filterAttributes = qt3dcore $QT_VERSION
+
+qhp.Qt3DCore.subprojects = classes qmltypes
+
+qhp.Qt3DCore.subprojects.classes.title = C++ Classes
+qhp.Qt3DCore.subprojects.classes.indexTitle = Qt 3D Core C++ Classes
+qhp.Qt3DCore.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DCore.subprojects.classes.sortPages = true
+
+qhp.Qt3DCore.subprojects.qmltypes.title = QML Types
+qhp.Qt3DCore.subprojects.qmltypes.indexTitle = Qt 3D Core QML Types
+qhp.Qt3DCore.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DCore.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3dcore.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3drender qt3dlogic qt3dinput \
+ qt3dextras qt3danimation qt3dscene2d
+
+sourcedirs += .. \
+ ../../quick3d/quick3d
+
+headerdirs += .. \
+ ../../quick3d/quick3d
+
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qcircularbuffer.qdoc b/src/core/doc/src/qcircularbuffer.qdoc
index e313a7375..e313a7375 100644
--- a/src/doc/src/qcircularbuffer.qdoc
+++ b/src/core/doc/src/qcircularbuffer.qdoc
diff --git a/src/core/doc/src/qt3dcore-module.qdoc b/src/core/doc/src/qt3dcore-module.qdoc
new file mode 100644
index 000000000..20e8f6e02
--- /dev/null
+++ b/src/core/doc/src/qt3dcore-module.qdoc
@@ -0,0 +1,81 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Qt3D module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \module Qt3DCore
+ \title Qt 3D Core C++ Classes
+ \keyword Qt 3D Core
+ \brief The Qt 3D module contains functionality to support near-realtime simulation systems.
+
+ \ingroup modules
+ \ingroup qt3d-modules
+ \qtvariable 3dcore
+
+ The Qt 3D module provides the foundations and core types used for near-realtime
+ simulations built on the Qt 3D framework.
+*/
+
+/*!
+ \namespace Qt3DCore
+ \inmodule Qt3DCore
+ \ingroup qt3d-namespaces
+
+ \brief Contains classes that are the foundation for Qt 3D simulation
+ framework, as well as classes that provide the ability to render using the
+ Qt 3D framework.
+*/
+
+/*!
+ \qmlmodule Qt3D.Core 2.0
+ \title Qt 3D Core QML Types
+ \ingroup qmlmodules
+ \ingroup qt3d-qmlmodules
+
+ \brief Provides core Qt 3D QML types.
+
+ To import and use the module's QML types, use the following statement:
+
+ \badcode
+ import Qt3D.Core 2.0
+ \endcode
+
+ See \l {Qt 3D QML Types} for a list of all QML types in Qt 3D.
+
+ \section1 QML Types
+*/
diff --git a/src/doc/qt3d-config.qdocconf b/src/doc/qt3d-config.qdocconf
new file mode 100644
index 000000000..b5f1fad8f
--- /dev/null
+++ b/src/doc/qt3d-config.qdocconf
@@ -0,0 +1,36 @@
+examplesinstallpath = qt3d
+
+# Dependencies to Qt documentation
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# Exclude private header files from the documentation build
+excludefiles += "*_p.h"
+
+examples.fileextensions += "*.fraq *.geom *.vert"
+examples.imageextensions += "*.png"
+
+macro.TODO = " "
+
+Cpp.ignoretokens += QT3DINPUTSHARED_EXPORT \
+ QT3DCORESHARED_EXPORT \
+ QT3DLOGIC_PRIVATE_EXPORT \
+ QT3DLOGICSHARED_EXPORT \
+ QT3DRENDERSHARED_EXPORT \
+ QT3DRENDERSHARED_PRIVATE_EXPORT \
+ QT3DQUICKSHARED_PRIVATE_EXPORT \
+ QT3DEXTRASSHARED_EXPORT \
+ QT3DANIMATIONSHARED_EXPORT \
+ QT3DQUICKSCENE2DSHARED_EXPORT
+
+Cpp.ignoredirectives += Q_DECLARE_LOGGING_CATEGORY
+
+manifestmeta.highlighted.names = \
+ "Qt3D/Qt 3D: Advanced custom material QML Example" \
+ "Qt3D/Qt 3D: Audio Visualizer Example" \
+ "Qt3D/Qt 3D: Planets QML Example"
+
+manifestmeta.thumbnail.names += "Qt3D/Qt 3D: Deferred Renderer C++ Example"
+
+navigation.landingpage = "Qt 3D"
+navigation.cppclassespage = "Qt 3D C++ Classes"
+navigation.qmltypespage = "Qt 3D QML Types"
diff --git a/src/doc/qt3d.qdocconf b/src/doc/qt3d.qdocconf
index 7da047ced..b397f1837 100644
--- a/src/doc/qt3d.qdocconf
+++ b/src/doc/qt3d.qdocconf
@@ -1,17 +1,10 @@
include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(qt3d-config.qdocconf)
project = Qt3D
description = Qt 3D Reference Documentation
version = $QT_VERSION
-examplesinstallpath = qt3d
-
-indexes += $QT_INSTALL_DOCS/qtcore/qtcore.index \
- $QT_INSTALL_DOCS/qtgui/qtgui.index \
- $QT_INSTALL_DOCS/qtqml/qtqml.index \
- $QT_INSTALL_DOCS/qtquick/qtquick.index \
- $QT_INSTALL_DOCS/qmake/qmake.index
-
qhp.projects = Qt3D
qhp.Qt3D.file = qt3d.qhp
@@ -24,87 +17,33 @@ qhp.Qt3D.filterAttributes = qt3d $QT_VERSION qtrefdoc
qhp.Qt3D.customFilters.Qt.name = Qt3D $QT_VERSION
qhp.Qt3D.customFilters.Qt.filterAttributes = qt3d $QT_VERSION
-qhp.Qt3D.subprojects = classes qmltypes
+qhp.Qt3D.subprojects = classes qmltypes examples
qhp.Qt3D.subprojects.classes.title = C++ Classes
qhp.Qt3D.subprojects.classes.indexTitle = Qt 3D C++ Classes
-qhp.Qt3D.subprojects.classes.selectors = class fake:headerfile
+qhp.Qt3D.subprojects.classes.selectors = class doc:headerfile
qhp.Qt3D.subprojects.classes.sortPages = true
qhp.Qt3D.subprojects.qmltypes.title = QML Types
qhp.Qt3D.subprojects.qmltypes.indexTitle = Qt 3D QML Types
-qhp.Qt3D.subprojects.qmltypes.selectors = qmlclass
+qhp.Qt3D.subprojects.qmltypes.selectors = qmltype
qhp.Qt3D.subprojects.qmltypes.sortPages = true
-tagfile = qt3d.tags
-
-depends += qtcore qtgui qtqml qtquick qtdoc
+qhp.Qt3D.subprojects.examples.title = Examples
+qhp.Qt3D.subprojects.examples.indexTitle = Qt 3D Examples
+qhp.Qt3D.subprojects.examples.selectors = doc:example
+qhp.Qt3D.subprojects.examples.sortPages = true
-headerdirs += . \
- ../render \
- ../core \
- ../logic \
- ../plugins \
- ../quick3d/quick3d \
- ../input \
- ../extras \
- ../animation \
- ../quick3d/quick3dscene2d
+# dependencies to other Qt 3D modules
+depends += qt3dcore qt3drender qt3dlogic qt3dinput \
+ qt3dextras qt3danimation qt3dscene2d
-# Exclude private header files from the documentation build
-excludefiles += "*_p.h"
+tagfile = qt3d.tags
-sourcedirs += . \
- ../render \
- ../core \
- ../logic \
- ../plugins \
- ../quick3d/quick3d \
- ../input \
- ../extras \
- ../animation \
- ../quick3d/quick3dscene2d
+headerdirs += src
+sourcedirs += src
exampledirs += ../../examples/qt3d \
snippets
-examples.fileextensions += "*.fraq *.geom *.vert"
-examples.imageextensions += "*.png"
-
-excludedirs += \
- ../plugins/renderplugins
-
-macro.TODO = " "
-imagedirs += images \
- ../../examples/qt3d/shadow-map-qml/doc/images \
- ../../examples/qt3d/basicshapes-cpp/doc/images \
- ../../examples/qt3d/planets-qml/doc/images \
- ../../examples/qt3d/wireframe/doc/images \
- ../../examples/qt3d/audio-visualizer-qml/doc/images \
- ../../examples/qt3d/simplecustommaterial/doc/images \
- ../../examples/qt3d/scene2d/doc/images \
- ../../examples/qt3d/advancedcustommaterial/doc/images
-
-Cpp.ignoretokens += QT3DINPUTSHARED_EXPORT \
- QT3DCORESHARED_EXPORT \
- QT3DLOGIC_PRIVATE_EXPORT \
- QT3DLOGICSHARED_EXPORT \
- QT3DRENDERSHARED_EXPORT \
- QT3DRENDERSHARED_PRIVATE_EXPORT \
- QT3DQUICKSHARED_PRIVATE_EXPORT \
- QT3DEXTRASSHARED_EXPORT \
- QT3DANIMATIONSHARED_EXPORT \
- QT3DQUICKSCENE2DSHARED_EXPORT
-
-Cpp.ignoredirectives += Q_DECLARE_LOGGING_CATEGORY
-
-manifestmeta.highlighted.names = \
- "Qt3D/Qt 3D: Advanced custom material QML Example" \
- "Qt3D/Qt 3D: Audio Visualizer Example" \
- "Qt3D/Qt 3D: Planets QML Example"
-
-manifestmeta.thumbnail.names += "Qt3D/Qt 3D: Deferred Renderer C++ Example"
-
-navigation.landingpage = "Qt 3D"
-navigation.cppclassespage = "Qt 3D C++ Classes"
-navigation.qmltypespage = "Qt 3D QML Types"
+imagedirs += images
diff --git a/src/doc/src/qt3d-module.qdoc b/src/doc/src/qt3d-module.qdoc
index 86a17342e..c7d589c2a 100644
--- a/src/doc/src/qt3d-module.qdoc
+++ b/src/doc/src/qt3d-module.qdoc
@@ -38,19 +38,6 @@
****************************************************************************/
/*!
- \module Qt3DCore
- \title Qt 3D Core C++ Classes
- \brief The Qt 3D module contains functionality to support near-realtime simulation systems.
-
- \ingroup modules
- \ingroup qt3d-modules
- \qtvariable 3dcore
-
- The Qt 3D module provides the foundations and core types used for near-realtime
- simulations built on the Qt 3D framework.
-*/
-
-/*!
\page qt3d-cpp.html
\title Qt 3D C++ Classes
\brief The Qt 3D module contains functionality to support near-realtime simulation systems.
@@ -86,38 +73,27 @@
*/
/*!
- \namespace Qt3DCore
- \inmodule Qt3DCore
- \ingroup qt3d-namespaces
-
- \brief Contains classes that are the foundation for Qt 3D simulation
- framework, as well as classes that provide the ability to render using the
- Qt 3D framework.
-*/
-
-/*!
- \qmlmodule Qt3D.Core 2.0
+ \page qt3d-qml.html
\title Qt 3D QML Types
- \ingroup qmlmodules
- \ingroup qt3d-qmlmodules
-
- \brief Provides core Qt 3D QML types.
+ \brief QML Types for the Qt 3D module.
- To import and use the module's QML types, use the following statement:
+ The Qt 3D core QML types are imported with
\badcode
import Qt3D.Core 2.0
\endcode
- For collision detection, renderer, and input-related QML types, use the
- following import statements:
+ Other modules import functionality for collision detection, rendering, input,
+ and animation. The complete list of Qt 3D import statements:
\badcode
+ import Qt3D.Core 2.0
import Qt3D.Render 2.0
import Qt3D.Input 2.0
import Qt3D.Logic 2.0
import Qt3D.Extras 2.0
import Qt3D.Animation 2.9
+ import Qt3D.Scene2D 2.9
\endcode
\section1 QML Types
diff --git a/src/extras/doc/qt3dextras.qdocconf b/src/extras/doc/qt3dextras.qdocconf
new file mode 100644
index 000000000..470a80450
--- /dev/null
+++ b/src/extras/doc/qt3dextras.qdocconf
@@ -0,0 +1,43 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DExtras
+description = Qt 3D Extras Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DExtras
+
+qhp.Qt3DExtras.file = qt3dextras.qhp
+qhp.Qt3DExtras.namespace = org.qt-project.qt3dextras.$QT_VERSION_TAG
+qhp.Qt3DExtras.virtualFolder = qt3dextras
+qhp.Qt3DExtras.indexTitle = Qt 3D Extras
+qhp.Qt3DExtras.indexRoot =
+
+qhp.Qt3DExtras.filterAttributes = qt3dextras $QT_VERSION qtrefdoc
+qhp.Qt3DExtras.customFilters.Qt.name = Qt3DExtras $QT_VERSION
+qhp.Qt3DExtras.customFilters.Qt.filterAttributes = qt3dextras $QT_VERSION
+
+qhp.Qt3DExtras.subprojects = classes qmltypes
+
+qhp.Qt3DExtras.subprojects.classes.title = C++ Classes
+qhp.Qt3DExtras.subprojects.classes.indexTitle = Qt 3D Extras C++ Classes
+qhp.Qt3DExtras.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DExtras.subprojects.classes.sortPages = true
+
+qhp.Qt3DExtras.subprojects.qmltypes.title = QML Types
+qhp.Qt3DExtras.subprojects.qmltypes.indexTitle = Qt 3D Extras QML Types
+qhp.Qt3DExtras.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DExtras.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3dextras.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3drender qt3dlogic \
+ qt3dinput qt3danimation qt3dscene2d
+
+sourcedirs += ..
+headerdirs += ..
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qmlextracontrollers.qdoc b/src/extras/doc/src/qmlextracontrollers.qdoc
index 737d0f823..737d0f823 100644
--- a/src/doc/src/qmlextracontrollers.qdoc
+++ b/src/extras/doc/src/qmlextracontrollers.qdoc
diff --git a/src/doc/src/qmlextramaterials.qdoc b/src/extras/doc/src/qmlextramaterials.qdoc
index 48f1a2326..48f1a2326 100644
--- a/src/doc/src/qmlextramaterials.qdoc
+++ b/src/extras/doc/src/qmlextramaterials.qdoc
diff --git a/src/doc/src/qt3dextras-module.qdoc b/src/extras/doc/src/qt3dextras-module.qdoc
index b9a7cc28a..5461a5b09 100644
--- a/src/doc/src/qt3dextras-module.qdoc
+++ b/src/extras/doc/src/qt3dextras-module.qdoc
@@ -40,6 +40,7 @@
/*!
\module Qt3DExtras
\title Qt 3D Extras C++ Classes
+ \keyword Qt 3D Extras
\brief The Qt 3D Extras modules provides a set of prebuilt elements to help
you get started with Qt 3D.
@@ -125,4 +126,6 @@
\badcode
import Qt3D.Extras 2.0
\endcode
+
+ \section1 QML Types
*/
diff --git a/src/extras/extras.pro b/src/extras/extras.pro
index 22c9fcb93..700d39dea 100644
--- a/src/extras/extras.pro
+++ b/src/extras/extras.pro
@@ -7,6 +7,8 @@ DEFINES += QT3DEXTRAS_LIBRARY
# Qt3D is free of Q_FOREACH - make sure it stays that way:
DEFINES += QT_NO_FOREACH
+QMAKE_DOCS = $$PWD/doc/qt3dextras.qdocconf
+
load(qt_module)
include (geometries/geometries.pri)
diff --git a/src/input/doc/qt3dinput.qdocconf b/src/input/doc/qt3dinput.qdocconf
new file mode 100644
index 000000000..6ca49d09a
--- /dev/null
+++ b/src/input/doc/qt3dinput.qdocconf
@@ -0,0 +1,43 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DInput
+description = Qt 3D Input Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DInput
+
+qhp.Qt3DInput.file = qt3dinput.qhp
+qhp.Qt3DInput.namespace = org.qt-project.qt3dinput.$QT_VERSION_TAG
+qhp.Qt3DInput.virtualFolder = qt3dinput
+qhp.Qt3DInput.indexTitle = Qt 3D Input
+qhp.Qt3DInput.indexRoot =
+
+qhp.Qt3DInput.filterAttributes = qt3dinput $QT_VERSION qtrefdoc
+qhp.Qt3DInput.customFilters.Qt.name = Qt3DInput $QT_VERSION
+qhp.Qt3DInput.customFilters.Qt.filterAttributes = qt3dinput $QT_VERSION
+
+qhp.Qt3DInput.subprojects = classes qmltypes
+
+qhp.Qt3DInput.subprojects.classes.title = C++ Classes
+qhp.Qt3DInput.subprojects.classes.indexTitle = Qt 3D Input C++ Classes
+qhp.Qt3DInput.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DInput.subprojects.classes.sortPages = true
+
+qhp.Qt3DInput.subprojects.qmltypes.title = QML Types
+qhp.Qt3DInput.subprojects.qmltypes.indexTitle = Qt 3D Input QML Types
+qhp.Qt3DInput.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DInput.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3dinput.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3drender qt3dlogic \
+ qt3dextras qt3danimation qt3dscene2d
+
+sourcedirs += ..
+headerdirs += ..
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qt3dinput-module.qdoc b/src/input/doc/src/qt3dinput-module.qdoc
index b14380e3a..2d9fc478b 100644
--- a/src/doc/src/qt3dinput-module.qdoc
+++ b/src/input/doc/src/qt3dinput-module.qdoc
@@ -28,6 +28,7 @@
/*!
\module Qt3DInput
\title Qt 3D Input C++ Classes
+ \keyword Qt 3D Input
\brief The Qt 3D Input module provides classes for handling user input in
applications using Qt3D.
diff --git a/src/input/input.pro b/src/input/input.pro
index 73a571c9f..7db74cfde 100644
--- a/src/input/input.pro
+++ b/src/input/input.pro
@@ -17,4 +17,6 @@ HEADERS += \
qt3dinput_global.h \
qt3dinput_global_p.h
+QMAKE_DOCS = $$PWD/doc/qt3dinput.qdocconf
+
load(qt_module)
diff --git a/src/logic/doc/qt3dlogic.qdocconf b/src/logic/doc/qt3dlogic.qdocconf
new file mode 100644
index 000000000..8f7196991
--- /dev/null
+++ b/src/logic/doc/qt3dlogic.qdocconf
@@ -0,0 +1,43 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DLogic
+description = Qt 3D Logic Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DLogic
+
+qhp.Qt3DLogic.file = qt3dlogic.qhp
+qhp.Qt3DLogic.namespace = org.qt-project.qt3dlogic.$QT_VERSION_TAG
+qhp.Qt3DLogic.virtualFolder = qt3dlogic
+qhp.Qt3DLogic.indexTitle = Qt 3D Logic
+qhp.Qt3DLogic.indexRoot =
+
+qhp.Qt3DLogic.filterAttributes = qt3dlogic $QT_VERSION qtrefdoc
+qhp.Qt3DLogic.customFilters.Qt.name = Qt3DLogic $QT_VERSION
+qhp.Qt3DLogic.customFilters.Qt.filterAttributes = qt3dlogic $QT_VERSION
+
+qhp.Qt3DLogic.subprojects = classes qmltypes
+
+qhp.Qt3DLogic.subprojects.classes.title = C++ Classes
+qhp.Qt3DLogic.subprojects.classes.indexTitle = Qt 3D Logic C++ Classes
+qhp.Qt3DLogic.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DLogic.subprojects.classes.sortPages = true
+
+qhp.Qt3DLogic.subprojects.qmltypes.title = QML Types
+qhp.Qt3DLogic.subprojects.qmltypes.indexTitle = Qt 3D Logic QML Types
+qhp.Qt3DLogic.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DLogic.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3dlogic.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3drender qt3dinput \
+ qt3dextras qt3danimation qt3dscene2d
+
+sourcedirs += ..
+headerdirs += ..
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qt3dlogic-module.qdoc b/src/logic/doc/src/qt3dlogic-module.qdoc
index 826ac1e4f..db21e050f 100644
--- a/src/doc/src/qt3dlogic-module.qdoc
+++ b/src/logic/doc/src/qt3dlogic-module.qdoc
@@ -28,6 +28,7 @@
/*!
\module Qt3DLogic
\title Qt 3D Logic C++ Classes
+ \keyword Qt 3D Logic
\brief The Qt 3D Logic module enables synchronizing frames with the Qt 3D
backend.
\ingroup modules
diff --git a/src/logic/logic.pro b/src/logic/logic.pro
index 584b9af4b..2fd73391c 100644
--- a/src/logic/logic.pro
+++ b/src/logic/logic.pro
@@ -13,4 +13,6 @@ gcov {
include(logic.pri)
+QMAKE_DOCS = $$PWD/doc/qt3dlogic.qdocconf
+
load(qt_module)
diff --git a/src/quick3d/quick3dscene2d/doc/qt3dscene2d.qdocconf b/src/quick3d/quick3dscene2d/doc/qt3dscene2d.qdocconf
new file mode 100644
index 000000000..06e67daa5
--- /dev/null
+++ b/src/quick3d/quick3dscene2d/doc/qt3dscene2d.qdocconf
@@ -0,0 +1,45 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../../doc/qt3d-config.qdocconf)
+
+project = Qt3DScene2D
+description = Qt 3D Scene2D Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DScene2D
+
+qhp.Qt3DScene2D.file = qt3dscene2d.qhp
+qhp.Qt3DScene2D.namespace = org.qt-project.qt3dscene2d.$QT_VERSION_TAG
+qhp.Qt3DScene2D.virtualFolder = qt3dscene2d
+qhp.Qt3DScene2D.indexTitle = Qt 3D Scene2D
+qhp.Qt3DScene2D.indexRoot =
+
+qhp.Qt3DScene2D.filterAttributes = qt3dscene2d $QT_VERSION qtrefdoc
+qhp.Qt3DScene2D.customFilters.Qt.name = Qt3DScene2D $QT_VERSION
+qhp.Qt3DScene2D.customFilters.Qt.filterAttributes = qt3dscene2d $QT_VERSION
+
+qhp.Qt3DScene2D.subprojects = classes qmltypes
+
+qhp.Qt3DScene2D.subprojects.classes.title = C++ Classes
+qhp.Qt3DScene2D.subprojects.classes.indexTitle = Qt 3D Scene2D C++ Classes
+qhp.Qt3DScene2D.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DScene2D.subprojects.classes.sortPages = true
+
+qhp.Qt3DScene2D.subprojects.qmltypes.title = QML Types
+qhp.Qt3DScene2D.subprojects.qmltypes.indexTitle = Qt 3D Scene2D QML Types
+qhp.Qt3DScene2D.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DScene2D.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3dscene2d.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3drender qt3dlogic \
+ qt3dinput qt3dextras qt3danimation
+
+sourcedirs += ..
+
+headerdirs += ..
+
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/qt3dscene2d-module.qdoc b/src/quick3d/quick3dscene2d/doc/src/qt3dscene2d-module.qdoc
index a389a8ed0..8a35c11cb 100644
--- a/src/doc/src/qt3dscene2d-module.qdoc
+++ b/src/quick3d/quick3dscene2d/doc/src/qt3dscene2d-module.qdoc
@@ -40,6 +40,7 @@
/*!
\module Qt3DScene2D
\title Qt 3D Scene2D C++ Classes
+ \keyword Qt 3D Scene2D
\brief The Qt 3D Scene2D module provides a way to render Quick2 qml content
to a Qt 3D texture.
@@ -91,4 +92,6 @@
\badcode
import Qt3D.Scene2D 2.9
\endcode
+
+ \section1 QML Types
*/
diff --git a/src/quick3d/quick3dscene2d/quick3dscene2d.pro b/src/quick3d/quick3dscene2d/quick3dscene2d.pro
index fb599187b..b85863328 100644
--- a/src/quick3d/quick3dscene2d/quick3dscene2d.pro
+++ b/src/quick3d/quick3dscene2d/quick3dscene2d.pro
@@ -25,4 +25,6 @@ HEADERS += \
include(./items/items.pri)
+QMAKE_DOCS = $$PWD/doc/qt3dscene2d.qdocconf
+
load(qt_module)
diff --git a/src/render/doc/qt3drender.qdocconf b/src/render/doc/qt3drender.qdocconf
new file mode 100644
index 000000000..a3a827678
--- /dev/null
+++ b/src/render/doc/qt3drender.qdocconf
@@ -0,0 +1,43 @@
+include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
+include(../../doc/qt3d-config.qdocconf)
+
+project = Qt3DRender
+description = Qt 3D Render Reference Documentation
+version = $QT_VERSION
+
+qhp.projects = Qt3DRender
+
+qhp.Qt3DRender.file = qt3drender.qhp
+qhp.Qt3DRender.namespace = org.qt-project.qt3drender.$QT_VERSION_TAG
+qhp.Qt3DRender.virtualFolder = qt3drender
+qhp.Qt3DRender.indexTitle = Qt 3D Render
+qhp.Qt3DRender.indexRoot =
+
+qhp.Qt3DRender.filterAttributes = qt3drender $QT_VERSION qtrefdoc
+qhp.Qt3DRender.customFilters.Qt.name = Qt3DRender $QT_VERSION
+qhp.Qt3DRender.customFilters.Qt.filterAttributes = qt3drender $QT_VERSION
+
+qhp.Qt3DRender.subprojects = classes qmltypes
+
+qhp.Qt3DRender.subprojects.classes.title = C++ Classes
+qhp.Qt3DRender.subprojects.classes.indexTitle = Qt 3D Render C++ Classes
+qhp.Qt3DRender.subprojects.classes.selectors = class doc:headerfile
+qhp.Qt3DRender.subprojects.classes.sortPages = true
+
+qhp.Qt3DRender.subprojects.qmltypes.title = QML Types
+qhp.Qt3DRender.subprojects.qmltypes.indexTitle = Qt 3D Render QML Types
+qhp.Qt3DRender.subprojects.qmltypes.selectors = qmltype
+qhp.Qt3DRender.subprojects.qmltypes.sortPages = true
+
+tagfile = qt3drender.tags
+
+depends += qtcore qtgui qtqml qtquick qtdoc qmake
+
+# dependencies to other Qt 3D modules
+depends += qt3d qt3dcore qt3dlogic qt3dinput \
+ qt3dextras qt3danimation qt3dscene2d
+
+sourcedirs += ..
+headerdirs += ..
+imagedirs += images
+exampledirs += snippets
diff --git a/src/doc/src/levelofdetailloader.qdoc b/src/render/doc/src/levelofdetailloader.qdoc
index 6294e4735..6294e4735 100644
--- a/src/doc/src/levelofdetailloader.qdoc
+++ b/src/render/doc/src/levelofdetailloader.qdoc
diff --git a/src/doc/src/qt3drender-framegraph.qdoc b/src/render/doc/src/qt3drender-framegraph.qdoc
index 44b1cbe89..98eee0e40 100644
--- a/src/doc/src/qt3drender-framegraph.qdoc
+++ b/src/render/doc/src/qt3drender-framegraph.qdoc
@@ -129,7 +129,7 @@
example, if you want to use different rendering approaches for indoor and
outdoor scenes or to enable or disable some special effect.
- \badcode
+ \code
Entity {
id: sceneRoot
components: RenderSettings {
@@ -141,7 +141,7 @@
\note activeFrameGraph is the default property of the FrameGraph component
in QML.
- \badcode
+ \code
Entity {
id: sceneRoot
components: RenderSettings {
@@ -150,7 +150,7 @@
}
\endcode
- \section2 How the Framegraph Is Used
+ \section2 How the Framegraph is Used
\list
\li The Qt 3D renderer performs a \e{depth first traversal} of the
@@ -192,7 +192,7 @@
we render to an intermediate \e G-buffer. Here is a simple FrameGraph that
can be used for forward rendering:
- \badcode
+ \code
Viewport {
rect: Qt.rect(0.0, 0.0, 1.0, 1.0)
property alias camera: cameraSelector.camera
@@ -231,7 +231,7 @@
nearer to the root of the framegraph as this will result in fewer leaf
nodes, and hence, fewer RenderViews overall.
- \badcode
+ \code
Viewport {
rect: Qt.rect(0.0, 0.0, 1.0, 1.0)
property alias camera: cameraSelector.camera
@@ -246,7 +246,7 @@
}
\endcode
- \badcode
+ \code
CameraSelector {
Viewport {
rect: Qt.rect(0.0, 0.0, 1.0, 1.0)
@@ -268,7 +268,7 @@
\image multiviewport.png
- \badcode
+ \code
Viewport {
id: mainViewport
rect: Qt.rect(0, 0, 1, 1)
@@ -416,7 +416,7 @@
many games due to the ability to use large numbers of dynamic lights at
the expense of additional GPU memory usage.
- \badcode
+ \code
Viewport {
rect: Qt.rect(0.0, 0.0, 1.0, 1.0)
diff --git a/src/doc/src/qt3drender-geometry.qdoc b/src/render/doc/src/qt3drender-geometry.qdoc
index 03e84b1d7..6d86b92e7 100644
--- a/src/doc/src/qt3drender-geometry.qdoc
+++ b/src/render/doc/src/qt3drender-geometry.qdoc
@@ -54,7 +54,7 @@
\li \l {GeometryRenderer}
\endlist
- \section2 Buffer
+ \section2 Buffer Object
The Qt3DRender::QBuffer class stores the raw data. This acts purely as an
array of memory. In most cases a Qt3DRender::QBuffer will be used
@@ -71,7 +71,7 @@
}
\endcode
- \section2 Attribute
+ \section2 Attribute Object
Qt3DRender::QAttribute specifies how data contained in the referenced
buffer should be extracted and passed to an input of a vertex shader. It
@@ -97,7 +97,7 @@
}
\endcode
- \section2 Geometry
+ \section2 Geometry Object
A Qt3DRender::QGeometry aggregates various attributes to form a piece of
geometry. Usually a proper geometry will provide an attribute for vertex
@@ -131,7 +131,7 @@
}
\endcode
- \section2 GeometryRenderer
+ \section2 GeometryRenderer Object
Qt3DRender::QGeometryRenderer is a QComponent which when aggregated by a
QEntity allows to draw the Qt3DRender::QGeometry it references. It provides
diff --git a/src/doc/src/qt3drender-module.qdoc b/src/render/doc/src/qt3drender-module.qdoc
index 6599c2e11..e1f54310c 100644
--- a/src/doc/src/qt3drender-module.qdoc
+++ b/src/render/doc/src/qt3drender-module.qdoc
@@ -40,6 +40,7 @@
/*!
\module Qt3DRender
\title Qt 3D Render C++ Classes
+ \keyword Qt 3D Render
\brief The Qt 3D Render module contains functionality to support 2D and 3D
rendering using Qt 3D.
@@ -97,4 +98,6 @@
\badcode
import Qt3D.Render 2.0
\endcode
+
+ \section1 QML Types
*/
diff --git a/src/doc/src/qt3drender-protips.qdoc b/src/render/doc/src/qt3drender-protips.qdoc
index c78f3d598..801c4a993 100644
--- a/src/doc/src/qt3drender-protips.qdoc
+++ b/src/render/doc/src/qt3drender-protips.qdoc
@@ -49,13 +49,6 @@
stages you may end up, in the best cases with something different than what
you expected, in the worst cases with a black screen.
- \list
- \li \l {Technique Selection}
- \li \l {Order Matters}
- \li \l {Blending}
- \li \l {Useful Tools}
- \endlist
-
\section2 Technique Selection
Qt 3D provides a technique selection mechanism allowing you to provide
@@ -81,10 +74,10 @@
\list
\li Filtering with a Qt3DRender::QLayer component and
- Qt3DRender::QLayerFilter in the FrameGraph
+ Qt3DRender::QLayerFilter in the FrameGraph.
\li RenderPass or Technique filtering using Qt3DRender::QRenderPassFilter
- or Qt3DRender::QTechniqueFilter in the FrameGraph
+ or Qt3DRender::QTechniqueFilter in the FrameGraph.
\endlist
@@ -114,17 +107,17 @@
Given the rather limited of troubleshooting given by Qt 3D in its first
versions it sometimes helps to have tools to capture OpenGL draw calls and
- get more clues about what's happening
+ get more clues about what's happening:
\list
\li \l {https://github.com/apitrace/apitrace}{apitrace}
\li \l {https://github.com/ValveSoftware/vogl}{vogl}
\endlist
- These tools allow you to gather traces of all the OpenGL calls being made
+ These tools allow you to gather traces of all OpenGL calls being made
by a Qt 3D application. Having a look at a generated trace file may help
- you verify that draw calls are being made, textures correctly uploaded,
- uniforms set with proper values, ...
+ you verify that draw calls are being made, textures are correctly uploaded,
+ uniforms are set with proper values, and so on.
There are plans for Qt 3D tooling in later releases.
*/
diff --git a/src/render/render.pro b/src/render/render.pro
index 8c24f2203..29110abea 100644
--- a/src/render/render.pro
+++ b/src/render/render.pro
@@ -41,4 +41,6 @@ MODULE_PLUGIN_TYPES = \
geometryloaders \
renderplugins
+QMAKE_DOCS = $$PWD/doc/qt3drender.qdocconf
+
load(qt_module)