diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-06-25 13:00:55 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-06-26 10:43:39 +0300 |
commit | 36417dd3660f75c34328c3420bdd512436da86ff (patch) | |
tree | b940d98d8df6a8a64adc1a638c57f20a4a955c5b /src/datavisualizationqml2 | |
parent | ec195a34594dea6145af5e8f2fedc2f9401d0f14 (diff) |
Add flipHorizontalGrid property for surface
This property allows drawind the horizontal grid and axis labels on
top of the graph rather than on the bottom. This is useful when
surface graph is used for 2D spectrograms in orthographic mode, as
otherwise the grid is covered by the surface itself. Particularly
relevant for polar plots of the same.
Task-number: QTRD-3184
Change-Id: I9dbcdbfc754e13af52d2cf31a1d9991ef4b241f7
Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'src/datavisualizationqml2')
-rw-r--r-- | src/datavisualizationqml2/datavisualizationqml2_plugin.cpp | 1 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface.cpp | 12 | ||||
-rw-r--r-- | src/datavisualizationqml2/declarativesurface_p.h | 4 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp index c4c0bc70..6e6d9b1c 100644 --- a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp +++ b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp @@ -112,6 +112,7 @@ void QtDataVisualizationQml2Plugin::registerTypes(const char *uri) // New revisions qmlRegisterUncreatableType<AbstractDeclarative, 2>(uri, 1, 2, "AbstractGraph3D", QLatin1String("Trying to create uncreatable: AbstractGraph3D.")); + qmlRegisterType<DeclarativeSurface, 1>(uri, 1, 2, "Surface3D"); } QT_END_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualizationqml2/declarativesurface.cpp b/src/datavisualizationqml2/declarativesurface.cpp index 3075d207..ec520459 100644 --- a/src/datavisualizationqml2/declarativesurface.cpp +++ b/src/datavisualizationqml2/declarativesurface.cpp @@ -32,6 +32,8 @@ DeclarativeSurface::DeclarativeSurface(QQuickItem *parent) QObject::connect(m_surfaceController, &Surface3DController::selectedSeriesChanged, this, &DeclarativeSurface::selectedSeriesChanged); + QObject::connect(m_surfaceController, &Surface3DController::flipHorizontalGridChanged, + this, &DeclarativeSurface::flipHorizontalGridChanged); } DeclarativeSurface::~DeclarativeSurface() @@ -74,6 +76,16 @@ QSurface3DSeries *DeclarativeSurface::selectedSeries() const return m_surfaceController->selectedSeries(); } +void DeclarativeSurface::setFlipHorizontalGrid(bool flip) +{ + m_surfaceController->setFlipHorizontalGrid(flip); +} + +bool DeclarativeSurface::flipHorizontalGrid() const +{ + return m_surfaceController->flipHorizontalGrid(); +} + QQmlListProperty<QSurface3DSeries> DeclarativeSurface::seriesList() { return QQmlListProperty<QSurface3DSeries>(this, this, diff --git a/src/datavisualizationqml2/declarativesurface_p.h b/src/datavisualizationqml2/declarativesurface_p.h index 6fe800ba..ff6e4d70 100644 --- a/src/datavisualizationqml2/declarativesurface_p.h +++ b/src/datavisualizationqml2/declarativesurface_p.h @@ -44,6 +44,7 @@ class DeclarativeSurface : public AbstractDeclarative Q_PROPERTY(QValue3DAxis *axisZ READ axisZ WRITE setAxisZ NOTIFY axisZChanged) Q_PROPERTY(QSurface3DSeries *selectedSeries READ selectedSeries NOTIFY selectedSeriesChanged) Q_PROPERTY(QQmlListProperty<QSurface3DSeries> seriesList READ seriesList) + Q_PROPERTY(bool flipHorizontalGrid READ flipHorizontalGrid WRITE setFlipHorizontalGrid NOTIFY flipHorizontalGridChanged REVISION 1) Q_CLASSINFO("DefaultProperty", "seriesList") public: @@ -66,6 +67,8 @@ public: Q_INVOKABLE void removeSeries(QSurface3DSeries *series); QSurface3DSeries *selectedSeries() const; + void setFlipHorizontalGrid(bool flip); + bool flipHorizontalGrid() const; public slots: void handleAxisXChanged(QAbstract3DAxis *axis); @@ -77,6 +80,7 @@ signals: void axisYChanged(QValue3DAxis *axis); void axisZChanged(QValue3DAxis *axis); void selectedSeriesChanged(QSurface3DSeries *series); + Q_REVISION(1) void flipHorizontalGridChanged(bool flip); private: Surface3DController *m_surfaceController; |