diff options
author | Sami Varanka <sami.varanka@qt.io> | 2021-09-23 08:52:53 +0300 |
---|---|---|
committer | Sami Varanka <sami.varanka@qt.io> | 2021-09-24 12:47:37 +0300 |
commit | 333cf897359eab1eb37e1f60dd681b00e6a5d135 (patch) | |
tree | 919e7e4233b57d2d3932e7b9a1e08d2aeab8f62f /src/datavisualization/engine | |
parent | 5502d8116ff10e755ac562aebcf00d292f9a11a4 (diff) |
Add hasSeries method to Abstract3D graph
Added a hasSeries method to Abstract3Dgraph.
The method can be used to check whether a series
has already been added to the graph. In addition,
modified cpp and qml autotests to test
the added method.
Fixes: QTBUG-96683
Change-Id: I91f70ca15b6c5fbaa7691cd17bbfc2ef460c3d37
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'src/datavisualization/engine')
-rw-r--r-- | src/datavisualization/engine/abstract3dcontroller.cpp | 5 | ||||
-rw-r--r-- | src/datavisualization/engine/abstract3dcontroller_p.h | 1 | ||||
-rw-r--r-- | src/datavisualization/engine/q3dbars.cpp | 8 | ||||
-rw-r--r-- | src/datavisualization/engine/q3dscatter.cpp | 6 | ||||
-rw-r--r-- | src/datavisualization/engine/q3dsurface.cpp | 6 | ||||
-rw-r--r-- | src/datavisualization/engine/qabstract3dgraph.cpp | 10 | ||||
-rw-r--r-- | src/datavisualization/engine/qabstract3dgraph.h | 3 |
7 files changed, 37 insertions, 2 deletions
diff --git a/src/datavisualization/engine/abstract3dcontroller.cpp b/src/datavisualization/engine/abstract3dcontroller.cpp index 5ed62ca9..22d39e4a 100644 --- a/src/datavisualization/engine/abstract3dcontroller.cpp +++ b/src/datavisualization/engine/abstract3dcontroller.cpp @@ -179,6 +179,11 @@ void Abstract3DController::removeSeries(QAbstract3DSeries *series) } } +bool Abstract3DController::hasSeries(QAbstract3DSeries *series) +{ + return m_seriesList.contains(series); +} + QList<QAbstract3DSeries *> Abstract3DController::seriesList() { return m_seriesList; diff --git a/src/datavisualization/engine/abstract3dcontroller_p.h b/src/datavisualization/engine/abstract3dcontroller_p.h index 2aee01ef..a2efbd17 100644 --- a/src/datavisualization/engine/abstract3dcontroller_p.h +++ b/src/datavisualization/engine/abstract3dcontroller_p.h @@ -243,6 +243,7 @@ public: virtual void addSeries(QAbstract3DSeries *series); virtual void insertSeries(int index, QAbstract3DSeries *series); virtual void removeSeries(QAbstract3DSeries *series); + virtual bool hasSeries(QAbstract3DSeries *series); QList<QAbstract3DSeries *> seriesList(); virtual void setAxisX(QAbstract3DAxis *axis); diff --git a/src/datavisualization/engine/q3dbars.cpp b/src/datavisualization/engine/q3dbars.cpp index ccc8edd5..0d0597dc 100644 --- a/src/datavisualization/engine/q3dbars.cpp +++ b/src/datavisualization/engine/q3dbars.cpp @@ -157,7 +157,7 @@ QBar3DSeries *Q3DBars::primarySeries() const * to the axes. If the newly added series has specified a selected bar, it will be highlighted and * any existing selection will be cleared. Only one added series can have an active selection. * - * \sa seriesList(), primarySeries + * \sa seriesList(), primarySeries, QAbstract3DGraph::hasSeries() */ void Q3DBars::addSeries(QBar3DSeries *series) { @@ -166,6 +166,8 @@ void Q3DBars::addSeries(QBar3DSeries *series) /*! * Removes the \a series from the graph. + * + * \sa QAbstract3DGraph::hasSeries() */ void Q3DBars::removeSeries(QBar3DSeries *series) { @@ -180,7 +182,7 @@ void Q3DBars::removeSeries(QBar3DSeries *series) * the new position in list is calculated as if the series was still in its old * index, so the final index is actually the \a index decremented by one. * - * \sa addSeries(), seriesList() + * \sa addSeries(), seriesList(), QAbstract3DGraph::hasSeries() */ void Q3DBars::insertSeries(int index, QBar3DSeries *series) { @@ -189,6 +191,8 @@ void Q3DBars::insertSeries(int index, QBar3DSeries *series) /*! * Returns the list of series added to this graph. + * + * \sa QAbstract3DGraph::hasSeries() */ QList<QBar3DSeries *> Q3DBars::seriesList() const { diff --git a/src/datavisualization/engine/q3dscatter.cpp b/src/datavisualization/engine/q3dscatter.cpp index 37834322..7774c5d5 100644 --- a/src/datavisualization/engine/q3dscatter.cpp +++ b/src/datavisualization/engine/q3dscatter.cpp @@ -110,6 +110,8 @@ Q3DScatter::~Q3DScatter() * Adds the \a series to the graph. A graph can contain multiple series, but has only one set of * axes. If the newly added series has specified a selected item, it will be highlighted and * any existing selection will be cleared. Only one added series can have an active selection. + * + * \sa QAbstract3DGraph::hasSeries() */ void Q3DScatter::addSeries(QScatter3DSeries *series) { @@ -118,6 +120,8 @@ void Q3DScatter::addSeries(QScatter3DSeries *series) /*! * Removes the \a series from the graph. + * + * \sa QAbstract3DGraph::hasSeries() */ void Q3DScatter::removeSeries(QScatter3DSeries *series) { @@ -126,6 +130,8 @@ void Q3DScatter::removeSeries(QScatter3DSeries *series) /*! * Returns the list of series added to this graph. + * + * \sa QAbstract3DGraph::hasSeries() */ QList<QScatter3DSeries *> Q3DScatter::seriesList() const { diff --git a/src/datavisualization/engine/q3dsurface.cpp b/src/datavisualization/engine/q3dsurface.cpp index 0c3e401d..b22ff446 100644 --- a/src/datavisualization/engine/q3dsurface.cpp +++ b/src/datavisualization/engine/q3dsurface.cpp @@ -127,6 +127,8 @@ Q3DSurface::~Q3DSurface() * Adds the \a series to the graph. A graph can contain multiple series, but has only one set of * axes. If the newly added series has specified a selected item, it will be highlighted and * any existing selection will be cleared. Only one added series can have an active selection. + * + * \sa QAbstract3DGraph::hasSeries() */ void Q3DSurface::addSeries(QSurface3DSeries *series) { @@ -135,6 +137,8 @@ void Q3DSurface::addSeries(QSurface3DSeries *series) /*! * Removes the \a series from the graph. + * + * \sa QAbstract3DGraph::hasSeries() */ void Q3DSurface::removeSeries(QSurface3DSeries *series) { @@ -143,6 +147,8 @@ void Q3DSurface::removeSeries(QSurface3DSeries *series) /*! * Returns the list of series added to this graph. + * + * \sa QAbstract3DGraph::hasSeries() */ QList<QSurface3DSeries *> Q3DSurface::seriesList() const { diff --git a/src/datavisualization/engine/qabstract3dgraph.cpp b/src/datavisualization/engine/qabstract3dgraph.cpp index 957004f4..3110ec92 100644 --- a/src/datavisualization/engine/qabstract3dgraph.cpp +++ b/src/datavisualization/engine/qabstract3dgraph.cpp @@ -436,6 +436,16 @@ void QAbstract3DGraph::clearSelection() } /*! + * Returns whether the \a series has already been added to the graph. + * + * \since 6.3 + */ +bool QAbstract3DGraph::hasSeries(QAbstract3DSeries *series) +{ + return d_ptr->m_visualController->hasSeries(series); +} + +/*! * Adds a QCustom3DItem \a item to the graph. Graph takes ownership of the added item. * * Returns the index to the added item if the add operation was successful, -1 diff --git a/src/datavisualization/engine/qabstract3dgraph.h b/src/datavisualization/engine/qabstract3dgraph.h index fd8610fa..86e754de 100644 --- a/src/datavisualization/engine/qabstract3dgraph.h +++ b/src/datavisualization/engine/qabstract3dgraph.h @@ -43,6 +43,7 @@ QT_BEGIN_NAMESPACE class QAbstract3DGraphPrivate; class QCustom3DItem; class QAbstract3DAxis; +class QAbstract3DSeries; class QT_DATAVISUALIZATION_EXPORT QAbstract3DGraph : public QWindow, protected QOpenGLFunctions { @@ -141,6 +142,8 @@ public: void clearSelection(); + virtual bool hasSeries(QAbstract3DSeries *series); + int addCustomItem(QCustom3DItem *item); void removeCustomItems(); void removeCustomItem(QCustom3DItem *item); |