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

project                 = Qt3D
description             = Qt 3D Reference Documentation
version                 = $QT_VERSION

moduleheader            = Qt3DDoc
includepaths            = -I .

examplesinstallpath     = qt3d

qhp.projects            = Qt3D

qhp.Qt3D.file                = qt3d.qhp
qhp.Qt3D.namespace           = org.qt-project.qt3d.$QT_VERSION_TAG
qhp.Qt3D.virtualFolder       = qt3d
qhp.Qt3D.indexTitle          = Qt 3D
qhp.Qt3D.indexRoot           =

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 examples

qhp.Qt3D.subprojects.classes.title      = C++ Classes
qhp.Qt3D.subprojects.classes.indexTitle = Qt 3D C++ Classes
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.sortPages  = true

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

tagfile                 = qt3d.tags

depends                 += qtcore qtgui qtqml qtquick qtdoc

headerdirs += . \
              ../render \
              ../core \
              ../logic \
              ../plugins \
              ../quick3d/quick3d \
              ../input \
              ../extras \
              ../animation \
              ../quick3d/quick3dscene2d \
              ../quick3d/imports/scene3d

# Exclude private header files from the documentation build
excludefiles += "*_p.h"

# Add some private headers explicitly to avoid documentation warnings
headers       = ../core/transforms/matrix4x4_p.h \
                ../core/transforms/vector3d_p.h \
                ../render/raycasting/qray3d_p.h \
                ../animation/frontend/qchannelmappingcreatedchange_p.h \
                ../input/frontend/qabstractphysicaldeviceproxy_p.h \
                ../input/frontend/qinputdeviceintegration_p.h \
                ../quick3d/imports/scene3d/scene3ditem_p.h

sourcedirs += . \
              ../render \
              ../core \
              ../logic \
              ../plugins \
              ../quick3d/quick3d \
              ../input \
              ../extras \
              ../animation \
              ../quick3d/quick3dscene2d \
              ../quick3d/imports/scene3d


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

examples.fileextensions       += "*.fraq *.geom *.vert"
examples.imageextensions      += "*.png"

excludedirs += \
              ../plugins/renderplugins \
              ../plugins/sceneparsers

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     += Q_3DINPUTSHARED_EXPORT \
                        Q_3DCORESHARED_EXPORT \
                        Q_3DLOGICSHARED_EXPORT \
                        Q_3DRENDERSHARED_EXPORT \
                        Q_3DRENDERSHARED_PRIVATE_EXPORT \
                        Q_3DQUICKSHARED_PRIVATE_EXPORT \
                        Q_3DEXTRASSHARED_EXPORT \
                        Q_3DANIMATIONSHARED_EXPORT \
                        Q_3DQUICKSCENE2DSHARED_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"
