summaryrefslogtreecommitdiffstats
path: root/src/input/backend/axis.cpp
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-04-22 15:22:45 +0100
committerSean Harmer <sean.harmer@kdab.com>2016-04-27 11:18:09 +0000
commit1bc324f870459bb9903eef6006cf62aefaa70391 (patch)
tree734d164e2ca07171059ff6baeda529e91300246d /src/input/backend/axis.cpp
parent5a3e1ba26cf715c58ba2a6fc28983f4e1a808a0a (diff)
QAxis/Axis use new added/removed change types
Change-Id: I85980aa17ed52ab09f27aa4513c3d56cbf51ddb7 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/input/backend/axis.cpp')
-rw-r--r--src/input/backend/axis.cpp25
1 files changed, 18 insertions, 7 deletions
diff --git a/src/input/backend/axis.cpp b/src/input/backend/axis.cpp
index fcfc7b412..6a10c5a55 100644
--- a/src/input/backend/axis.cpp
+++ b/src/input/backend/axis.cpp
@@ -42,6 +42,8 @@
#include <Qt3DInput/qaxisinput.h>
#include <Qt3DInput/private/qaxis_p.h>
#include <Qt3DCore/qnodepropertychange.h>
+#include <Qt3DCore/qnodeaddedpropertychange.h>
+#include <Qt3DCore/qnoderemovedpropertychange.h>
#include <Qt3DCore/qbackendnodepropertychange.h>
QT_BEGIN_NAMESPACE
@@ -93,13 +95,22 @@ void Axis::setAxisValue(float axisValue)
void Axis::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
{
- Qt3DCore::QNodePropertyChangePtr propertyChange = qSharedPointerCast<Qt3DCore::QNodePropertyChange>(e);
- if (e->type() == Qt3DCore::NodeAdded) {
- if (propertyChange->propertyName() == QByteArrayLiteral("input"))
- m_inputs.push_back(propertyChange->value().value<Qt3DCore::QNodeId>());
- } else if (e->type() == Qt3DCore::NodeRemoved) {
- if (propertyChange->propertyName() == QByteArrayLiteral("input"))
- m_inputs.removeOne(propertyChange->value().value<Qt3DCore::QNodeId>());
+ switch (e->type()) {
+ case Qt3DCore::NodeAdded: {
+ const auto change = qSharedPointerCast<Qt3DCore::QNodeAddedPropertyChange>(e);
+ if (change->propertyName() == QByteArrayLiteral("input"))
+ m_inputs.push_back(change->addedNodeId());
+ break;
+ }
+
+ case Qt3DCore::NodeRemoved: {
+ const auto change = qSharedPointerCast<Qt3DCore::QNodeRemovedPropertyChange>(e);
+ if (change->propertyName() == QByteArrayLiteral("input"))
+ m_inputs.removeOne(change->removedNodeId());
+ }
+
+ default:
+ break;
}
QBackendNode::sceneChangeEvent(e);
}