summaryrefslogtreecommitdiffstats
path: root/src/datavisualizationqml2
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-11-05 08:48:34 +0200
committerTomi Korpipää <tomi.korpipaa@digia.com>2013-11-05 09:29:58 +0200
commita6c8a0cca08b4f19c66b55c8c778229ea0b3c85d (patch)
tree64b17e1138aa65e99d857a2f8c252c1efb6a92ed /src/datavisualizationqml2
parentadd3f1e3826e401562bdc1bf047f7b5146e72f21 (diff)
Q_PROPERTY NOTIFY addition, part 1
Task-number: QTRD-2534 + Abstract3DController and AbstractDeclarative notifiers done Change-Id: I405b06388c4e9c9226ebbb051452ecf4f6b637c9 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualizationqml2')
-rw-r--r--src/datavisualizationqml2/abstractdeclarative.cpp30
-rw-r--r--src/datavisualizationqml2/abstractdeclarative_p.h29
-rw-r--r--src/datavisualizationqml2/declarativebars.cpp3
-rw-r--r--src/datavisualizationqml2/declarativebars_p.h3
-rw-r--r--src/datavisualizationqml2/declarativescatter.cpp2
-rw-r--r--src/datavisualizationqml2/declarativescatter_p.h4
6 files changed, 40 insertions, 31 deletions
diff --git a/src/datavisualizationqml2/abstractdeclarative.cpp b/src/datavisualizationqml2/abstractdeclarative.cpp
index d4b5c7b7..6abc8684 100644
--- a/src/datavisualizationqml2/abstractdeclarative.cpp
+++ b/src/datavisualizationqml2/abstractdeclarative.cpp
@@ -122,11 +122,23 @@ void AbstractDeclarative::setSharedController(Abstract3DController *controller)
Q_ASSERT(controller);
m_controller = controller;
QObject::connect(m_controller, &Abstract3DController::shadowQualityChanged, this,
- &AbstractDeclarative::handleShadowQualityUpdate);
- emit sceneChanged(m_controller->scene());
+ &AbstractDeclarative::shadowQualityChanged);
QObject::connect(m_controller, &Abstract3DController::activeInputHandlerChanged, this,
- &AbstractDeclarative::handleInputHandlerUpdate);
- emit inputHandlerChanged(m_controller->activeInputHandler());
+ &AbstractDeclarative::inputHandlerChanged);
+ QObject::connect(m_controller, &Abstract3DController::themeChanged, this,
+ &AbstractDeclarative::themeChanged);
+ QObject::connect(m_controller, &Abstract3DController::fontChanged, this,
+ &AbstractDeclarative::fontChanged);
+ QObject::connect(m_controller, &Abstract3DController::selectionModeChanged, this,
+ &AbstractDeclarative::selectionModeChanged);
+ QObject::connect(m_controller, &Abstract3DController::labelStyleChanged, this,
+ &AbstractDeclarative::labelStyleChanged);
+ QObject::connect(m_controller, &Abstract3DController::backgroundVisibleChanged, this,
+ &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
@@ -176,14 +188,4 @@ void AbstractDeclarative::wheelEvent(QWheelEvent *event)
m_controller->wheelEvent(event);
}
-void AbstractDeclarative::handleShadowQualityUpdate(QDataVis::ShadowQuality quality)
-{
- emit shadowQualityChanged(quality);
-}
-
-void AbstractDeclarative::handleInputHandlerUpdate(QAbstract3DInputHandler *inputHandler)
-{
- emit inputHandlerChanged(inputHandler);
-}
-
QT_DATAVISUALIZATION_END_NAMESPACE
diff --git a/src/datavisualizationqml2/abstractdeclarative_p.h b/src/datavisualizationqml2/abstractdeclarative_p.h
index 842dbf4b..646ed785 100644
--- a/src/datavisualizationqml2/abstractdeclarative_p.h
+++ b/src/datavisualizationqml2/abstractdeclarative_p.h
@@ -42,16 +42,16 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE
class AbstractDeclarative : public QQuickItem
{
Q_OBJECT
- Q_PROPERTY(QtDataVisualization::QDataVis::SelectionFlags selectionMode READ selectionMode WRITE setSelectionMode)
- Q_PROPERTY(QtDataVisualization::QDataVis::LabelStyle labelStyle READ labelStyle WRITE setLabelStyle)
- Q_PROPERTY(QtDataVisualization::QDataVis::ShadowQuality shadowQuality READ shadowQuality WRITE setShadowQuality)
- Q_PROPERTY(Q3DScene* scene READ scene NOTIFY sceneChanged)
+ Q_PROPERTY(QtDataVisualization::QDataVis::SelectionFlags selectionMode READ selectionMode WRITE setSelectionMode NOTIFY selectionModeChanged)
+ Q_PROPERTY(QtDataVisualization::QDataVis::LabelStyle labelStyle READ labelStyle WRITE setLabelStyle NOTIFY labelStyleChanged)
+ Q_PROPERTY(QtDataVisualization::QDataVis::ShadowQuality shadowQuality READ shadowQuality WRITE setShadowQuality NOTIFY shadowQualityChanged)
+ Q_PROPERTY(Q3DScene* scene READ scene)
Q_PROPERTY(QAbstract3DInputHandler* inputHandler READ inputHandler WRITE setInputHandler NOTIFY inputHandlerChanged)
- Q_PROPERTY(QtDataVisualization::QDataVis::Theme theme READ theme WRITE setTheme)
- Q_PROPERTY(QFont font READ font WRITE setFont)
- Q_PROPERTY(bool gridVisible READ isGridVisible WRITE setGridVisible)
- Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible)
- Q_PROPERTY(QString itemLabelFormat READ itemLabelFormat WRITE setItemLabelFormat)
+ Q_PROPERTY(QtDataVisualization::QDataVis::Theme theme READ theme WRITE setTheme NOTIFY themeChanged)
+ 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);
@@ -96,14 +96,17 @@ protected:
virtual void mouseMoveEvent(QMouseEvent *event);
virtual void wheelEvent(QWheelEvent *event);
- // Used to detect when shadow quality changes autonomously due to e.g. resizing.
- virtual void handleShadowQualityUpdate(QDataVis::ShadowQuality quality);
- virtual void handleInputHandlerUpdate(QAbstract3DInputHandler *inputHandler);
signals:
// Signals shadow quality changes.
void shadowQualityChanged(QDataVis::ShadowQuality quality);
- void sceneChanged(Q3DScene *scene);
void inputHandlerChanged(QAbstract3DInputHandler *inputHandler);
+ void themeChanged(QDataVis::Theme theme);
+ void fontChanged(QFont font);
+ void selectionModeChanged(QDataVis::SelectionFlags mode);
+ void labelStyleChanged(QDataVis::LabelStyle style);
+ void backgroundVisibleChanged(bool visible);
+ void gridVisibleChanged(bool visible);
+ void itemLabelFormatChanged(QString format);
private:
Abstract3DController *m_controller;
diff --git a/src/datavisualizationqml2/declarativebars.cpp b/src/datavisualizationqml2/declarativebars.cpp
index 52b19807..09277272 100644
--- a/src/datavisualizationqml2/declarativebars.cpp
+++ b/src/datavisualizationqml2/declarativebars.cpp
@@ -43,6 +43,8 @@ DeclarativeBars::DeclarativeBars(QQuickItem *parent)
AbstractDeclarative::setSharedController(m_shared);
QObject::connect(m_shared, &Bars3DController::selectedBarChanged, this,
&DeclarativeBars::selectedBarChanged);
+ QObject::connect(m_shared, &Abstract3DController::meshFileNameChanged, this,
+ &DeclarativeBars::meshFileNameChanged);
QItemModelBarDataProxy *proxy = new QItemModelBarDataProxy;
m_shared->setActiveDataProxy(proxy);
@@ -53,7 +55,6 @@ DeclarativeBars::~DeclarativeBars()
delete m_shared;
}
-
QSGNode *DeclarativeBars::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *)
{
// If old node exists and has right size, reuse it.
diff --git a/src/datavisualizationqml2/declarativebars_p.h b/src/datavisualizationqml2/declarativebars_p.h
index 16fe6d1f..06444dc8 100644
--- a/src/datavisualizationqml2/declarativebars_p.h
+++ b/src/datavisualizationqml2/declarativebars_p.h
@@ -56,7 +56,7 @@ class DeclarativeBars : public AbstractDeclarative
Q_PROPERTY(QSizeF barSpacing READ barSpacing WRITE setBarSpacing)
Q_PROPERTY(bool barSpacingRelative READ isBarSpacingRelative WRITE setBarSpacingRelative)
Q_PROPERTY(bool barSmoothingEnabled READ isBarSmoothingEnabled WRITE setBarSmoothingEnabled)
- Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName)
+ Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName NOTIFY meshFileNameChanged)
Q_PROPERTY(QPointF selectedBar READ selectedBar WRITE setSelectedBar NOTIFY selectedBarChanged)
public:
@@ -98,6 +98,7 @@ public:
signals:
void selectedBarChanged(const QPointF &position);
+ void meshFileNameChanged(QString filename);
protected:
QSGNode *updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *);
diff --git a/src/datavisualizationqml2/declarativescatter.cpp b/src/datavisualizationqml2/declarativescatter.cpp
index a2ef9369..d18ff208 100644
--- a/src/datavisualizationqml2/declarativescatter.cpp
+++ b/src/datavisualizationqml2/declarativescatter.cpp
@@ -44,6 +44,8 @@ DeclarativeScatter::DeclarativeScatter(QQuickItem *parent)
QObject::connect(m_shared, &Scatter3DController::selectedItemIndexChanged, this,
&DeclarativeScatter::selectedItemIndexChanged);
+ QObject::connect(m_shared, &Abstract3DController::meshFileNameChanged, this,
+ &DeclarativeScatter::meshFileNameChanged);
}
DeclarativeScatter::~DeclarativeScatter()
diff --git a/src/datavisualizationqml2/declarativescatter_p.h b/src/datavisualizationqml2/declarativescatter_p.h
index 922cf05e..62cbb605 100644
--- a/src/datavisualizationqml2/declarativescatter_p.h
+++ b/src/datavisualizationqml2/declarativescatter_p.h
@@ -51,8 +51,7 @@ class DeclarativeScatter : public AbstractDeclarative
Q_PROPERTY(Q3DValueAxis *axisZ READ axisZ WRITE setAxisZ)
Q_PROPERTY(QtDataVisualization::QDataVis::MeshStyle objectType READ objectType WRITE setObjectType)
Q_PROPERTY(bool objectSmoothingEnabled READ isObjectSmoothingEnabled WRITE setObjectSmoothingEnabled)
- Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName)
- Q_PROPERTY(QString itemLabelFormat READ itemLabelFormat WRITE setItemLabelFormat)
+ Q_PROPERTY(QString meshFileName READ meshFileName WRITE setMeshFileName NOTIFY meshFileNameChanged)
Q_PROPERTY(int selectedItemIndex READ selectedItemIndex WRITE setSelectedItemIndex NOTIFY selectedItemIndexChanged)
public:
@@ -85,6 +84,7 @@ public:
signals:
void selectedItemIndexChanged(int index);
+ void meshFileNameChanged(QString filename);
protected:
Scatter3DController *m_shared;