summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-03-25 13:18:04 +0000
committerSean Harmer <sean.harmer@kdab.com>2016-03-31 07:34:45 +0000
commitc7f5e199ca9a5e9e92fc464304a420e9c693de73 (patch)
tree4c86cb3e05bf4e0c5a8a31438ae592e6387991a8
parentc975d5e1d0168cf968a22c9a9b1960216838a64c (diff)
Input::InputSettings initializes from creation changes
Change-Id: Ia79260e7dd9aadafe2177af7250d9a74feda558e Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/input/backend/inputsettings.cpp10
-rw-r--r--src/input/backend/inputsettings_p.h2
2 files changed, 11 insertions, 1 deletions
diff --git a/src/input/backend/inputsettings.cpp b/src/input/backend/inputsettings.cpp
index 4c164121a..df78ab09c 100644
--- a/src/input/backend/inputsettings.cpp
+++ b/src/input/backend/inputsettings.cpp
@@ -39,8 +39,9 @@
#include "inputsettings_p.h"
#include <Qt3DInput/qinputsettings.h>
-#include <Qt3DCore/qscenepropertychange.h>
#include <Qt3DInput/private/inputhandler_p.h>
+#include <Qt3DInput/private/qinputsettings_p.h>
+#include <Qt3DCore/qscenepropertychange.h>
QT_BEGIN_NAMESPACE
@@ -61,6 +62,13 @@ void InputSettings::updateFromPeer(Qt3DCore::QNode *peer)
// Does it make sense to check for the enabled property for such a node ?
}
+void InputSettings::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change)
+{
+ const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QInputSettingsData>>(change);
+ const auto &data = typedChange->data;
+ m_eventSource = data.eventSource;
+}
+
void InputSettings::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
{
if (e->type() == Qt3DCore::NodeUpdated) {
diff --git a/src/input/backend/inputsettings_p.h b/src/input/backend/inputsettings_p.h
index 70e93dc4d..c1c48c64b 100644
--- a/src/input/backend/inputsettings_p.h
+++ b/src/input/backend/inputsettings_p.h
@@ -73,6 +73,8 @@ protected:
void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE;
private:
+ void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL;
+
QPointer<QObject> m_eventSource;
};