diff options
Diffstat (limited to 'src/datavisualizationqml2')
-rw-r--r-- | src/datavisualizationqml2/abstractdeclarative.cpp | 12 | ||||
-rw-r--r-- | src/datavisualizationqml2/abstractdeclarative_p.h | 4 | ||||
-rw-r--r-- | src/datavisualizationqml2/datavisualizationqml2_plugin.cpp | 4 | ||||
-rw-r--r-- | src/datavisualizationqml2/datavisualizationqml2_plugin.h | 9 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativebars.cpp | 57 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativebars_p.h | 14 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativescatter.cpp | 55 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativescatter_p.h | 14 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface.cpp | 67 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface_p.h | 18 |
10 files changed, 175 insertions, 79 deletions
diff --git a/src/datavisualizationqml2/abstractdeclarative.cpp b/src/datavisualizationqml2/abstractdeclarative.cpp index 6abc8684..80752019 100644 --- a/src/datavisualizationqml2/abstractdeclarative.cpp +++ b/src/datavisualizationqml2/abstractdeclarative.cpp @@ -107,16 +107,6 @@ QDataVis::ShadowQuality AbstractDeclarative::shadowQuality() const return m_controller->shadowQuality(); } -void AbstractDeclarative::setItemLabelFormat(const QString &format) -{ - m_controller->activeDataProxy()->setItemLabelFormat(format); -} - -QString AbstractDeclarative::itemLabelFormat() const -{ - return m_controller->activeDataProxy()->itemLabelFormat(); -} - void AbstractDeclarative::setSharedController(Abstract3DController *controller) { Q_ASSERT(controller); @@ -137,8 +127,6 @@ void AbstractDeclarative::setSharedController(Abstract3DController *controller) &AbstractDeclarative::backgroundVisibleChanged); QObject::connect(m_controller, &Abstract3DController::gridVisibleChanged, this, &AbstractDeclarative::gridVisibleChanged); - QObject::connect(m_controller->activeDataProxy(), &QAbstractDataProxy::itemLabelFormatChanged, this, - &AbstractDeclarative::itemLabelFormatChanged); } QAbstract3DInputHandler* AbstractDeclarative::inputHandler() const diff --git a/src/datavisualizationqml2/abstractdeclarative_p.h b/src/datavisualizationqml2/abstractdeclarative_p.h index 646ed785..1740b816 100644 --- a/src/datavisualizationqml2/abstractdeclarative_p.h +++ b/src/datavisualizationqml2/abstractdeclarative_p.h @@ -51,7 +51,6 @@ class AbstractDeclarative : public QQuickItem Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) Q_PROPERTY(bool gridVisible READ isGridVisible WRITE setGridVisible NOTIFY gridVisibleChanged) Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible NOTIFY backgroundVisibleChanged) - Q_PROPERTY(QString itemLabelFormat READ itemLabelFormat WRITE setItemLabelFormat NOTIFY itemLabelFormatChanged) public: explicit AbstractDeclarative(QQuickItem *parent = 0); @@ -83,9 +82,6 @@ public: virtual void setShadowQuality(QDataVis::ShadowQuality quality); virtual QDataVis::ShadowQuality shadowQuality() const; - virtual void setItemLabelFormat(const QString &format); - virtual QString itemLabelFormat() const; - void setSharedController(Abstract3DController *controller); protected: diff --git a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp index be50982d..4e47ba53 100644 --- a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp +++ b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp @@ -62,6 +62,10 @@ void Datavis3Dqml2Plugin::registerTypes(const char *uri) qmlRegisterType<QItemModelSurfaceDataProxy>(uri, 1, 0, "ItemModelSurfaceDataProxy"); qmlRegisterType<QHeightMapSurfaceDataProxy>(uri, 1, 0, "HeightMapSurfaceDataProxy"); + qmlRegisterType<QBar3DSeries>(uri, 1, 0, "Bar3DSeries"); + qmlRegisterType<QScatter3DSeries>(uri, 1, 0, "Scatter3DSeries"); + qmlRegisterType<QSurface3DSeries>(uri, 1, 0, "Surface3DSeries"); + qmlRegisterType<ColorGradientStop>(uri, 1, 0, "ColorGradientStop"); qmlRegisterType<ColorGradient>(uri, 1, 0, "ColorGradient"); } diff --git a/src/datavisualizationqml2/datavisualizationqml2_plugin.h b/src/datavisualizationqml2/datavisualizationqml2_plugin.h index c0d7c4b8..d74def9d 100644 --- a/src/datavisualizationqml2/datavisualizationqml2_plugin.h +++ b/src/datavisualizationqml2/datavisualizationqml2_plugin.h @@ -35,6 +35,10 @@ #include "q3dobject.h" #include "q3dcamera.h" #include "q3dscene.h" +#include "qabstract3dseries.h" +#include "qbar3dseries.h" +#include "qscatter3dseries.h" +#include "qsurface3dseries.h" #include <QQmlExtensionPlugin> @@ -68,6 +72,11 @@ QML_DECLARE_TYPE(QSurfaceDataProxy) QML_DECLARE_TYPE(QItemModelSurfaceDataProxy) QML_DECLARE_TYPE(QHeightMapSurfaceDataProxy) +QML_DECLARE_TYPE(QAbstract3DSeries) +QML_DECLARE_TYPE(QBar3DSeries) +QML_DECLARE_TYPE(QScatter3DSeries) +QML_DECLARE_TYPE(QSurface3DSeries) + QML_DECLARE_TYPE(ColorGradientStop) QML_DECLARE_TYPE(ColorGradient) diff --git a/src/datavisualizationqml2/declarativebars.cpp b/src/datavisualizationqml2/declarativebars.cpp index 9f2af06b..cf74d444 100644 --- a/src/datavisualizationqml2/declarativebars.cpp +++ b/src/datavisualizationqml2/declarativebars.cpp @@ -45,9 +45,6 @@ DeclarativeBars::DeclarativeBars(QQuickItem *parent) &DeclarativeBars::selectedBarChanged); QObject::connect(m_shared, &Abstract3DController::meshFileNameChanged, this, &DeclarativeBars::meshFileNameChanged); - - QItemModelBarDataProxy *proxy = new QItemModelBarDataProxy; - m_shared->setActiveDataProxy(proxy); } DeclarativeBars::~DeclarativeBars() @@ -83,16 +80,6 @@ void DeclarativeBars::setBarColor(const QColor &baseColor) m_shared->setObjectColor(baseColor); } -void DeclarativeBars::setDataProxy(QBarDataProxy *dataProxy) -{ - m_shared->setActiveDataProxy(dataProxy); -} - -QBarDataProxy *DeclarativeBars::dataProxy() const -{ - return static_cast<QBarDataProxy *>(m_shared->activeDataProxy()); -} - Q3DCategoryAxis *DeclarativeBars::rowAxis() const { return static_cast<Q3DCategoryAxis *>(m_shared->axisX()); @@ -221,4 +208,48 @@ QPointF DeclarativeBars::selectedBar() const return QPointF(m_shared->selectedBar()); } +QQmlListProperty<QBar3DSeries> DeclarativeBars::seriesList() +{ + return QQmlListProperty<QBar3DSeries>(this, this, + &DeclarativeBars::appendSeriesFunc, + &DeclarativeBars::countSeriesFunc, + &DeclarativeBars::atSeriesFunc, + &DeclarativeBars::clearSeriesFunc); +} + +void DeclarativeBars::appendSeriesFunc(QQmlListProperty<QBar3DSeries> *list, QBar3DSeries *series) +{ + reinterpret_cast<DeclarativeBars *>(list->data)->addSeries(series); +} + +int DeclarativeBars::countSeriesFunc(QQmlListProperty<QBar3DSeries> *list) +{ + return reinterpret_cast<DeclarativeBars *>(list->data)->m_shared->barSeriesList().size(); +} + +QBar3DSeries *DeclarativeBars::atSeriesFunc(QQmlListProperty<QBar3DSeries> *list, int index) +{ + return reinterpret_cast<DeclarativeBars *>(list->data)->m_shared->barSeriesList().at(index); +} + +void DeclarativeBars::clearSeriesFunc(QQmlListProperty<QBar3DSeries> *list) +{ + DeclarativeBars *declBars = reinterpret_cast<DeclarativeBars *>(list->data); + QList<QBar3DSeries *> realList = declBars->m_shared->barSeriesList(); + int count = realList.size(); + for (int i = 0; i < count; i++) + declBars->removeSeries(realList.at(i)); +} + +void DeclarativeBars::addSeries(QBar3DSeries *series) +{ + m_shared->addSeries(series); +} + +void DeclarativeBars::removeSeries(QBar3DSeries *series) +{ + m_shared->removeSeries(series); + series->setParent(this); // Reparent as removing will leave series parentless +} + QT_DATAVISUALIZATION_END_NAMESPACE diff --git a/src/datavisualizationqml2/declarativebars_p.h b/src/datavisualizationqml2/declarativebars_p.h index f6d36632..c3808b7b 100644 --- a/src/datavisualizationqml2/declarativebars_p.h +++ b/src/datavisualizationqml2/declarativebars_p.h @@ -36,6 +36,7 @@ #include "q3dvalueaxis.h" #include "q3dcategoryaxis.h" #include "qbardataproxy.h" +#include "qbar3dseries.h" #include <QAbstractItemModel> #include <QQuickItem> @@ -47,7 +48,6 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE class DeclarativeBars : public AbstractDeclarative { Q_OBJECT - Q_PROPERTY(QBarDataProxy *dataProxy READ dataProxy WRITE setDataProxy) Q_PROPERTY(Q3DCategoryAxis *rowAxis READ rowAxis WRITE setRowAxis) Q_PROPERTY(Q3DValueAxis *valueAxis READ valueAxis WRITE setValueAxis) Q_PROPERTY(Q3DCategoryAxis *columnAxis READ columnAxis WRITE setColumnAxis) @@ -58,6 +58,7 @@ class DeclarativeBars : public AbstractDeclarative Q_PROPERTY(bool barSmoothingEnabled READ isBarSmoothingEnabled WRITE setBarSmoothingEnabled NOTIFY meshFileNameChanged) Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName NOTIFY meshFileNameChanged) Q_PROPERTY(QPointF selectedBar READ selectedBar WRITE setSelectedBar NOTIFY selectedBarChanged) + Q_PROPERTY(QQmlListProperty<QBar3DSeries> seriesList READ seriesList) public: explicit DeclarativeBars(QQuickItem *parent = 0); @@ -65,9 +66,6 @@ public: Q_INVOKABLE void setBarColor(const QColor &baseColor); // TODO property (or more likely as part of data set) - QBarDataProxy *dataProxy() const; - void setDataProxy(QBarDataProxy *dataProxy); - Q3DCategoryAxis *rowAxis() const; void setRowAxis(Q3DCategoryAxis *axis); Q3DValueAxis *valueAxis() const; @@ -96,6 +94,14 @@ public: void setSelectedBar(const QPointF &position); QPointF selectedBar() const; + QQmlListProperty<QBar3DSeries> seriesList(); + static void appendSeriesFunc(QQmlListProperty<QBar3DSeries> *list, QBar3DSeries *series); + static int countSeriesFunc(QQmlListProperty<QBar3DSeries> *list); + static QBar3DSeries *atSeriesFunc(QQmlListProperty<QBar3DSeries> *list, int index); + static void clearSeriesFunc(QQmlListProperty<QBar3DSeries> *list); + Q_INVOKABLE void addSeries(QBar3DSeries *series); + Q_INVOKABLE void removeSeries(QBar3DSeries *series); + signals: void selectedBarChanged(const QPointF &position); void barThicknessChanged(qreal thicknessRatio); diff --git a/src/datavisualizationqml2/declarativescatter.cpp b/src/datavisualizationqml2/declarativescatter.cpp index 7c201301..1a05c425 100644 --- a/src/datavisualizationqml2/declarativescatter.cpp +++ b/src/datavisualizationqml2/declarativescatter.cpp @@ -40,7 +40,6 @@ DeclarativeScatter::DeclarativeScatter(QQuickItem *parent) // Create the shared component on the main GUI thread. m_shared = new Scatter3DController(boundingRect().toRect()); setSharedController(m_shared); - m_shared->setActiveDataProxy(new QItemModelScatterDataProxy); QObject::connect(m_shared, &Scatter3DController::selectedItemIndexChanged, this, &DeclarativeScatter::selectedItemIndexChanged); @@ -81,16 +80,6 @@ void DeclarativeScatter::setObjectColor(const QColor &baseColor) m_shared->setObjectColor(baseColor); } -QScatterDataProxy *DeclarativeScatter::dataProxy() const -{ - return static_cast<QScatterDataProxy *>(m_shared->activeDataProxy()); -} - -void DeclarativeScatter::setDataProxy(QScatterDataProxy *dataProxy) -{ - m_shared->setActiveDataProxy(dataProxy); -} - Q3DValueAxis *DeclarativeScatter::axisX() const { return static_cast<Q3DValueAxis *>(m_shared->axisX()); @@ -180,4 +169,48 @@ int DeclarativeScatter::selectedItemIndex() const return m_shared->selectedItemIndex(); } +QQmlListProperty<QScatter3DSeries> DeclarativeScatter::seriesList() +{ + return QQmlListProperty<QScatter3DSeries>(this, this, + &DeclarativeScatter::appendSeriesFunc, + &DeclarativeScatter::countSeriesFunc, + &DeclarativeScatter::atSeriesFunc, + &DeclarativeScatter::clearSeriesFunc); +} + +void DeclarativeScatter::appendSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, QScatter3DSeries *series) +{ + reinterpret_cast<DeclarativeScatter *>(list->data)->addSeries(series); +} + +int DeclarativeScatter::countSeriesFunc(QQmlListProperty<QScatter3DSeries> *list) +{ + return reinterpret_cast<DeclarativeScatter *>(list->data)->m_shared->scatterSeriesList().size(); +} + +QScatter3DSeries *DeclarativeScatter::atSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, int index) +{ + return reinterpret_cast<DeclarativeScatter *>(list->data)->m_shared->scatterSeriesList().at(index); +} + +void DeclarativeScatter::clearSeriesFunc(QQmlListProperty<QScatter3DSeries> *list) +{ + DeclarativeScatter *declScatter = reinterpret_cast<DeclarativeScatter *>(list->data); + QList<QScatter3DSeries *> realList = declScatter->m_shared->scatterSeriesList(); + int count = realList.size(); + for (int i = 0; i < count; i++) + declScatter->removeSeries(realList.at(i)); +} + +void DeclarativeScatter::addSeries(QScatter3DSeries *series) +{ + m_shared->addSeries(series); +} + +void DeclarativeScatter::removeSeries(QScatter3DSeries *series) +{ + m_shared->removeSeries(series); + series->setParent(this); // Reparent as removing will leave series parentless +} + QT_DATAVISUALIZATION_END_NAMESPACE diff --git a/src/datavisualizationqml2/declarativescatter_p.h b/src/datavisualizationqml2/declarativescatter_p.h index c066f42c..e229c0d5 100644 --- a/src/datavisualizationqml2/declarativescatter_p.h +++ b/src/datavisualizationqml2/declarativescatter_p.h @@ -35,6 +35,7 @@ #include "declarativescatter_p.h" #include "q3dvalueaxis.h" #include "qscatterdataproxy.h" +#include "qscatter3dseries.h" #include <QAbstractItemModel> #include <QQuickItem> @@ -45,7 +46,6 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE class DeclarativeScatter : public AbstractDeclarative { Q_OBJECT - Q_PROPERTY(QScatterDataProxy *dataProxy READ dataProxy WRITE setDataProxy) Q_PROPERTY(Q3DValueAxis *axisX READ axisX WRITE setAxisX) Q_PROPERTY(Q3DValueAxis *axisY READ axisY WRITE setAxisY) Q_PROPERTY(Q3DValueAxis *axisZ READ axisZ WRITE setAxisZ) @@ -53,6 +53,7 @@ class DeclarativeScatter : public AbstractDeclarative Q_PROPERTY(bool objectSmoothingEnabled READ isObjectSmoothingEnabled WRITE setObjectSmoothingEnabled NOTIFY meshFileNameChanged) Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName NOTIFY meshFileNameChanged) Q_PROPERTY(int selectedItemIndex READ selectedItemIndex WRITE setSelectedItemIndex NOTIFY selectedItemIndexChanged) + Q_PROPERTY(QQmlListProperty<QScatter3DSeries> seriesList READ seriesList) public: explicit DeclarativeScatter(QQuickItem *parent = 0); @@ -60,9 +61,6 @@ public: Q_INVOKABLE void setObjectColor(const QColor &baseColor); // TODO property (or more likely as part of data set) - QScatterDataProxy *dataProxy() const; - void setDataProxy(QScatterDataProxy *dataProxy); - Q3DValueAxis *axisX() const; void setAxisX(Q3DValueAxis *axis); Q3DValueAxis *axisY() const; @@ -82,6 +80,14 @@ public: void setSelectedItemIndex(int index); int selectedItemIndex() const; + QQmlListProperty<QScatter3DSeries> seriesList(); + static void appendSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, QScatter3DSeries *series); + static int countSeriesFunc(QQmlListProperty<QScatter3DSeries> *list); + static QScatter3DSeries *atSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, int index); + static void clearSeriesFunc(QQmlListProperty<QScatter3DSeries> *list); + Q_INVOKABLE void addSeries(QScatter3DSeries *series); + Q_INVOKABLE void removeSeries(QScatter3DSeries *series); + signals: void selectedItemIndexChanged(int index); void meshFileNameChanged(QString filename); diff --git a/src/datavisualizationqml2/declarativesurface.cpp b/src/datavisualizationqml2/declarativesurface.cpp index 853d0d59..25f27f16 100644 --- a/src/datavisualizationqml2/declarativesurface.cpp +++ b/src/datavisualizationqml2/declarativesurface.cpp @@ -41,9 +41,6 @@ DeclarativeSurface::DeclarativeSurface(QQuickItem *parent) m_shared = new Surface3DController(boundingRect().toRect()); setSharedController(m_shared); - QItemModelSurfaceDataProxy *proxy = new QItemModelSurfaceDataProxy; - m_shared->setActiveDataProxy(proxy); - QObject::connect(m_shared, &Surface3DController::smoothSurfaceEnabledChanged, this, &DeclarativeSurface::smoothSurfaceEnabledChanged); QObject::connect(m_shared, &Surface3DController::selectedPointChanged, this, @@ -88,16 +85,6 @@ QSGNode *DeclarativeSurface::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeDa return node; } -void DeclarativeSurface::setDataProxy(QSurfaceDataProxy *dataProxy) -{ - m_shared->setActiveDataProxy(dataProxy); -} - -QSurfaceDataProxy *DeclarativeSurface::dataProxy() const -{ - return static_cast<QSurfaceDataProxy *>(m_shared->activeDataProxy()); -} - Q3DValueAxis *DeclarativeSurface::axisX() const { return static_cast<Q3DValueAxis *>(m_shared->axisX()); @@ -138,16 +125,6 @@ bool DeclarativeSurface::isSmoothSurfaceEnabled() const return m_shared->smoothSurface(); } -void DeclarativeSurface::setSurfaceVisible(bool visible) -{ - m_shared->setSurfaceVisible(visible); -} - -bool DeclarativeSurface::isSurfaceVisible() const -{ - return m_shared->surfaceVisible(); -} - void DeclarativeSurface::setSurfaceGridEnabled(bool enabled) { m_shared->setSurfaceGrid(enabled); @@ -211,4 +188,48 @@ void DeclarativeSurface::setControllerGradient(const ColorGradient &gradient) m_shared->setGradient(newGradient); } +QQmlListProperty<QSurface3DSeries> DeclarativeSurface::seriesList() +{ + return QQmlListProperty<QSurface3DSeries>(this, this, + &DeclarativeSurface::appendSeriesFunc, + &DeclarativeSurface::countSeriesFunc, + &DeclarativeSurface::atSeriesFunc, + &DeclarativeSurface::clearSeriesFunc); +} + +void DeclarativeSurface::appendSeriesFunc(QQmlListProperty<QSurface3DSeries> *list, QSurface3DSeries *series) +{ + reinterpret_cast<DeclarativeSurface *>(list->data)->addSeries(series); +} + +int DeclarativeSurface::countSeriesFunc(QQmlListProperty<QSurface3DSeries> *list) +{ + return reinterpret_cast<DeclarativeSurface *>(list->data)->m_shared->surfaceSeriesList().size(); +} + +QSurface3DSeries *DeclarativeSurface::atSeriesFunc(QQmlListProperty<QSurface3DSeries> *list, int index) +{ + return reinterpret_cast<DeclarativeSurface *>(list->data)->m_shared->surfaceSeriesList().at(index); +} + +void DeclarativeSurface::clearSeriesFunc(QQmlListProperty<QSurface3DSeries> *list) +{ + DeclarativeSurface *declSurface = reinterpret_cast<DeclarativeSurface *>(list->data); + QList<QSurface3DSeries *> realList = declSurface->m_shared->surfaceSeriesList(); + int count = realList.size(); + for (int i = 0; i < count; i++) + declSurface->removeSeries(realList.at(i)); +} + +void DeclarativeSurface::addSeries(QSurface3DSeries *series) +{ + m_shared->addSeries(series); +} + +void DeclarativeSurface::removeSeries(QSurface3DSeries *series) +{ + m_shared->removeSeries(series); + series->setParent(this); // Reparent as removing will leave series parentless +} + QT_DATAVISUALIZATION_END_NAMESPACE diff --git a/src/datavisualizationqml2/declarativesurface_p.h b/src/datavisualizationqml2/declarativesurface_p.h index df3a280c..c6284a9b 100644 --- a/src/datavisualizationqml2/declarativesurface_p.h +++ b/src/datavisualizationqml2/declarativesurface_p.h @@ -36,6 +36,7 @@ #include "q3dvalueaxis.h" #include "qsurfacedataproxy.h" #include "colorgradient_p.h" +#include "qsurface3dseries.h" #include <QAbstractItemModel> #include <QQuickItem> @@ -47,23 +48,19 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE class DeclarativeSurface : public AbstractDeclarative { Q_OBJECT - Q_PROPERTY(QSurfaceDataProxy *dataProxy READ dataProxy WRITE setDataProxy) Q_PROPERTY(Q3DValueAxis *axisX READ axisX WRITE setAxisX) Q_PROPERTY(Q3DValueAxis *axisY READ axisY WRITE setAxisY) Q_PROPERTY(Q3DValueAxis *axisZ READ axisZ WRITE setAxisZ) - Q_PROPERTY(bool surfaceVisible READ isSurfaceVisible WRITE setSurfaceVisible NOTIFY surfaceVisibleChanged) Q_PROPERTY(bool smoothSurfaceEnabled READ isSmoothSurfaceEnabled WRITE setSmoothSurfaceEnabled NOTIFY smoothSurfaceEnabledChanged) Q_PROPERTY(bool surfaceGridEnabled READ isSurfaceGridEnabled WRITE setSurfaceGridEnabled NOTIFY surfaceGridEnabledChanged) Q_PROPERTY(ColorGradient *gradient READ gradient WRITE setGradient) Q_PROPERTY(QPointF selectedPoint READ selectedPoint WRITE setSelectedPoint NOTIFY selectedPointChanged) + Q_PROPERTY(QQmlListProperty<QSurface3DSeries> seriesList READ seriesList) public: explicit DeclarativeSurface(QQuickItem *parent = 0); ~DeclarativeSurface(); - QSurfaceDataProxy *dataProxy() const; - void setDataProxy(QSurfaceDataProxy *dataProxy); - Q3DValueAxis *axisX() const; void setAxisX(Q3DValueAxis *axis); Q3DValueAxis *axisY() const; @@ -71,9 +68,6 @@ public: Q3DValueAxis *axisZ() const; void setAxisZ(Q3DValueAxis *axis); - void setSurfaceVisible(bool visible); - bool isSurfaceVisible() const; - void setSmoothSurfaceEnabled(bool enabled); bool isSmoothSurfaceEnabled() const; @@ -86,6 +80,14 @@ public: void setSelectedPoint(const QPointF &position); QPointF selectedPoint() const; + QQmlListProperty<QSurface3DSeries> seriesList(); + static void appendSeriesFunc(QQmlListProperty<QSurface3DSeries> *list, QSurface3DSeries *series); + static int countSeriesFunc(QQmlListProperty<QSurface3DSeries> *list); + static QSurface3DSeries *atSeriesFunc(QQmlListProperty<QSurface3DSeries> *list, int index); + static void clearSeriesFunc(QQmlListProperty<QSurface3DSeries> *list); + Q_INVOKABLE void addSeries(QSurface3DSeries *series); + Q_INVOKABLE void removeSeries(QSurface3DSeries *series); + signals: void surfaceVisibleChanged(bool visible); void smoothSurfaceEnabledChanged(bool enabled); |