diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-11-22 09:26:46 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-11-22 09:59:10 +0200 |
commit | fe2e12ffd7bb495634a66dc9c3e0d0fcbcfeb0df (patch) | |
tree | c67b57f7a0a82a81f165f007b8d44a2e16aa0db5 /src/datavisualizationqml2 | |
parent | 4588556895bc14803e3ad884e89eb988b751e6be (diff) |
Multi series selection part 3: surface
Task-number: QTRD-2556
Change-Id: I3a465c1bfff95f6c89d2f473f9e235c6079b8116
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualizationqml2')
-rw-r--r-- | src/datavisualizationqml2/declarativeseries.cpp | 19 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativeseries_p.h | 8 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface.cpp | 12 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface_p.h | 5 |
4 files changed, 26 insertions, 18 deletions
diff --git a/src/datavisualizationqml2/declarativeseries.cpp b/src/datavisualizationqml2/declarativeseries.cpp index 56601f83..57610c1a 100644 --- a/src/datavisualizationqml2/declarativeseries.cpp +++ b/src/datavisualizationqml2/declarativeseries.cpp @@ -54,7 +54,7 @@ void DeclarativeBar3DSeries::setSelectedBar(const QPointF &position) QPointF DeclarativeBar3DSeries::selectedBar() const { - return QBar3DSeries::selectedBar(); + return QPointF(QBar3DSeries::selectedBar()); } QPointF DeclarativeBar3DSeries::invalidSelectionPosition() const @@ -87,12 +87,29 @@ void DeclarativeScatter3DSeries::appendSeriesChildren(QQmlListProperty<QObject> DeclarativeSurface3DSeries::DeclarativeSurface3DSeries(QObject *parent) : QSurface3DSeries(parent) { + QObject::connect(this, &QSurface3DSeries::selectedPointChanged, this, + &DeclarativeSurface3DSeries::selectedPointChanged); } DeclarativeSurface3DSeries::~DeclarativeSurface3DSeries() { } +void DeclarativeSurface3DSeries::setSelectedPoint(const QPointF &position) +{ + QSurface3DSeries::setSelectedPoint(position.toPoint()); +} + +QPointF DeclarativeSurface3DSeries::selectedPoint() const +{ + return QPointF(QSurface3DSeries::selectedPoint()); +} + +QPointF DeclarativeSurface3DSeries::invalidSelectionPosition() const +{ + return QPointF(QSurface3DSeries::invalidSelectionPosition()); +} + QQmlListProperty<QObject> DeclarativeSurface3DSeries::seriesChildren() { return QQmlListProperty<QObject>(this, this, &DeclarativeSurface3DSeries::appendSeriesChildren diff --git a/src/datavisualizationqml2/declarativeseries_p.h b/src/datavisualizationqml2/declarativeseries_p.h index 72b7cbcb..6f5885c3 100644 --- a/src/datavisualizationqml2/declarativeseries_p.h +++ b/src/datavisualizationqml2/declarativeseries_p.h @@ -77,13 +77,21 @@ class DeclarativeSurface3DSeries : public QSurface3DSeries { Q_OBJECT Q_PROPERTY(QQmlListProperty<QObject> seriesChildren READ seriesChildren) + Q_PROPERTY(QPointF selectedPoint READ selectedPoint WRITE setSelectedPoint NOTIFY selectedPointChanged) Q_CLASSINFO("DefaultProperty", "seriesChildren") public: DeclarativeSurface3DSeries(QObject *parent = 0); virtual ~DeclarativeSurface3DSeries(); + void setSelectedPoint(const QPointF &position); + QPointF selectedPoint() const; + Q_INVOKABLE QPointF invalidSelectionPosition() const; + QQmlListProperty<QObject> seriesChildren(); static void appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element); + +signals: + void selectedPointChanged(QPointF position); }; QT_DATAVISUALIZATION_END_NAMESPACE diff --git a/src/datavisualizationqml2/declarativesurface.cpp b/src/datavisualizationqml2/declarativesurface.cpp index 72dda752..df73cbff 100644 --- a/src/datavisualizationqml2/declarativesurface.cpp +++ b/src/datavisualizationqml2/declarativesurface.cpp @@ -42,8 +42,6 @@ DeclarativeSurface::DeclarativeSurface(QQuickItem *parent) QObject::connect(m_shared, &Surface3DController::smoothSurfaceEnabledChanged, this, &DeclarativeSurface::smoothSurfaceEnabledChanged); - QObject::connect(m_shared, &Surface3DController::selectedPointChanged, this, - &DeclarativeSurface::selectedPointChanged); QObject::connect(m_shared, &Surface3DController::surfaceVisibleChanged, this, &DeclarativeSurface::surfaceVisibleChanged); QObject::connect(m_shared, &Surface3DController::surfaceGridEnabledChanged, this, @@ -159,16 +157,6 @@ ColorGradient *DeclarativeSurface::gradient() const return m_gradient; } -void DeclarativeSurface::setSelectedPoint(const QPointF &position) -{ - m_shared->setSelectedPoint(position.toPoint()); -} - -QPointF DeclarativeSurface::selectedPoint() const -{ - return QPointF(m_shared->selectedPoint()); -} - void DeclarativeSurface::setControllerGradient(const ColorGradient &gradient) { QLinearGradient newGradient; diff --git a/src/datavisualizationqml2/declarativesurface_p.h b/src/datavisualizationqml2/declarativesurface_p.h index 7e55a594..e0b4c7dd 100644 --- a/src/datavisualizationqml2/declarativesurface_p.h +++ b/src/datavisualizationqml2/declarativesurface_p.h @@ -54,7 +54,6 @@ class DeclarativeSurface : public AbstractDeclarative 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) Q_CLASSINFO("DefaultProperty", "seriesList") @@ -78,9 +77,6 @@ public: void setGradient(ColorGradient *gradient); ColorGradient *gradient() const; - 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); @@ -93,7 +89,6 @@ signals: void surfaceVisibleChanged(bool visible); void smoothSurfaceEnabledChanged(bool enabled); void surfaceGridEnabledChanged(bool visible); - void selectedPointChanged(QPoint position); protected: void handleGradientUpdate(); |