summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-04-17 14:10:32 +0100
committerSean Harmer <sean.harmer@kdab.com>2016-04-18 10:23:06 +0000
commit77fee8fa379188226d640dbd06f9ec70270e3cb9 (patch)
tree81deec22b0f1c744e9187b9320d27076861d468c /src
parent39601485bcae975a71672259c71dbfa4b5e0a9ea (diff)
MouseHandler handles creation changes
Change-Id: I949e9e50b3fb5a062f1c5f95cc312642490c28ec Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src')
-rw-r--r--src/input/backend/mousehandler.cpp8
-rw-r--r--src/input/backend/mousehandler_p.h2
2 files changed, 10 insertions, 0 deletions
diff --git a/src/input/backend/mousehandler.cpp b/src/input/backend/mousehandler.cpp
index bc798d207..ad8c56133 100644
--- a/src/input/backend/mousehandler.cpp
+++ b/src/input/backend/mousehandler.cpp
@@ -43,6 +43,7 @@
#include "mousedevice_p.h"
#include <Qt3DInput/qmousehandler.h>
+#include <Qt3DInput/private/qmousehandler_p.h>
#include <Qt3DInput/qmousedevice.h>
#include <Qt3DCore/qscenepropertychange.h>
#include <Qt3DCore/qbackendscenepropertychange.h>
@@ -71,6 +72,13 @@ void MouseHandler::updateFromPeer(Qt3DCore::QNode *peer)
setDevice(input->sourceDevice()->id());
}
+void MouseHandler::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change)
+{
+ const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QMouseHandlerData>>(change);
+ const auto &data = typedChange->data;
+ setDevice(data.mouseDeviceId);
+}
+
Qt3DCore::QNodeId MouseHandler::mouseDevice() const
{
return m_mouseDevice;
diff --git a/src/input/backend/mousehandler_p.h b/src/input/backend/mousehandler_p.h
index 9f6111a17..b56969e0a 100644
--- a/src/input/backend/mousehandler_p.h
+++ b/src/input/backend/mousehandler_p.h
@@ -78,6 +78,8 @@ protected:
void setDevice(Qt3DCore::QNodeId device);
private:
+ void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL;
+
Qt3DCore::QNodeId m_mouseDevice;
InputHandler *m_inputHandler;
};