// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!
    \module QtGraphs
    \qtcmakepackage Graphs
    \qtvariable graphs
*/

/*!
    \title Qt Graphs C++ Classes
    \group graphs

    \brief C++ classes for the Qt Graphs API.

    The Qt Graphs functionality can be accessed via these C++ classes.
*/

/*!
    \title Qt Graphs C++ Classes for 2D
    \group graphs_2D
    \ingroup graphs

    \brief C++ classes for the Qt Graphs for 2D API.

    The Qt Graphs for 2D functionality can be accessed via these C++ classes.
*/

/*!
    \title Qt Graphs C++ Classes for 3D
    \group graphs_3D
    \ingroup graphs

    \brief C++ classes for the Qt Graphs for 3D API.

    The Qt Graphs for 3D functionality can be accessed via these C++ classes.
*/

/*!
    \title Qt Graphs C++ Classes for Widgets
    \group graphs_3D_widgets
    \ingroup graphs

    \brief C++ classes for the Qt Graphs for 3D API used with widgets.

    The Qt Graphs for 3D widget functionality can be accessed via these C++ classes.
*/

/*!
    \title Qt Graphs C++ Common Classes
    \group graphs_common
    \ingroup graphs

    \brief C++ classes for the Qt Graphs common API.

    The Qt Graphs common functionality, like theme, can be accessed via these C++ classes.
*/

/*!
    \qmlmodule QtGraphs
*/

/*!
    \title Qt Graphs QML Types
    \group graphs_qml

    \brief QML types for the Qt Graphs API.

    The Qt Graphs functionality can be accessed via these QML types.
*/

/*!
    \title Qt Graphs QML Types for 3D
    \group graphs_qml_3D
    \ingroup graphs_qml

    \brief QML types for the Qt Graphs for 3D API.

    The Qt Graphs for 3D functionality can be accessed via these QML types.

    \section1 QML Types
*/

/*!
    \title Qt Graphs QML Types for 2D
    \group graphs_qml_2D
    \ingroup graphs_qml

    \brief QML types for the Qt Graphs for 2D API.

    The Qt Graphs for 2D functionality can be accessed via these QML types.

    \section1 QML Types
*/

/*!
    \title Qt Graphs QML Common Types
    \group graphs_qml_common
    \ingroup graphs_qml

    \brief QML types for the Qt Graphs common API.

    The Qt Graphs common functionality. like theme, can be accessed via these QML types.

    \section1 QML Types
*/

/*!
    \group graphs_examples
    \title Qt Graphs Examples

    \brief Examples for the Qt Graphs.

    For some code examples, see one of the Qt Graphs examples:
*/

/*!
    \title Qt Graphs Examples for 3D
    \group graphs_examples_3D
    \ingroup graphs_examples

    \brief Examples for the Qt Graphs for 3D.

    For some code examples, see one of the Qt Graphs for 3D examples:

    \section1 Examples

    \annotatedlist qtgraphs_qmlexamples_3D
    The following example shows how to use widgets to visualize data:
    \annotatedlist qtgraphs_examples_3D
*/

/*!
    \title Qt Graphs Examples for 2D
    \group graphs_examples_2D
    \ingroup graphs_examples

    \brief Examples for the Qt Graphs for 2D.

    For some code examples, see one of the Qt Graphs for 2D examples:

    \section1 Examples

    \annotatedlist qtgraphs_qmlexamples
    The following example shows how to use widgets to visualize data:
    \annotatedlist qtgraphs_examples
*/

/*!
    \page qtgraphs_configure_options.html
    \title Qt Graphs Configure Options

    \section1 Main Features

    When toggling main features, disabling both will result in the module not being built at all.

    \list
        \li QT_FEATURE_graphs_2d enables building the 2D graph support into the Qt Graphs module.
        It is \c ON by default. This can be disabled by passing \c{-DFEATURE_graphs_2d=OFF}
        to CMake.
        \li QT_FEATURE_graphs_3d enables building the 3D graph support into the Qt Graphs module.
        It is \c ON by default. This can be disabled by passing \c{-DFEATURE_graphs_3d=OFF}
        to CMake.
    \endlist

    \section1 Qt Graphs for 3D Features

    When toggling 3D features, disabling all will result in a module that is not usable for
    anything. These do not have any effect if \c QT_FEATURE_graphs_3d is disabled.

    \list
        \li QT_FEATURE_graphs_3d_bars3d enables building the Bars3D graph support into the
        Qt Graphs module. It is \c ON by default. This can be disabled by passing
        \c{-DFEATURE_graphs_3d_bars3d=OFF} to CMake.
        \li QT_FEATURE_graphs_3d_scatter3d enables building the Scatter3D graph support into the
        Qt Graphs module. It is \c ON by default. This can be disabled by passing
        \c{-DFEATURE_graphs_3d_scatter3d=OFF} to CMake.
        \li QT_FEATURE_graphs_3d_surface3d enables building the Surface3D graph support into the
        Qt Graphs module. It is \c ON by default. This can be disabled by passing
        \c{-DFEATURE_graphs_3d_surface3d=OFF} to CMake.
    \endlist
*/

/*!
    \page qtgraphs_known_issues.html
    \title Qt Graphs Known Issues

    \section1 Qt Graphs for 3D Issues

    \list
        \li Surfaces with non-straight rows and columns do not always render properly.
        \li Widget based examples layout incorrectly in iOS.
        \li Widget based examples are not supported for Android or WinRT.
        \li Android qmake builds of QML applications importing QtGraphs also require
            "QT += graphs" in the pro file. This is because Qt Graphs
            QML plugin has a dependency to Qt Graphs C++ library, which Qt Creator
            doesn't automatically add to the deployment package.
        \li Transparency is not supported for Surface3D due to a limitation with Qt Quick 3D.
        \li Transparency functionality is not available for highlighted items
            in Bars3D and Scatter3D.
        \li Shadows are not supported with Surface3D.

    \endlist
*/
