summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-03-24 16:03:33 +0000
committerSean Harmer <sean.harmer@kdab.com>2016-03-30 19:22:46 +0000
commitfa5f35a26f2617f78167701faa05a6e657aacad4 (patch)
treefd85fa1bcba70fdd1509a5737db3a68c93e761c3
parentbd0191ab3c0487e77cad79408bb2389007e84b3d (diff)
InputSettingsFunctor handles creation
Change-Id: I49d07ec129f87e72c44ddb577cdbb63faa64fbea Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/input/backend/inputsettings.cpp13
-rw-r--r--src/input/backend/inputsettings_p.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/src/input/backend/inputsettings.cpp b/src/input/backend/inputsettings.cpp
index 838ed7326..4c164121a 100644
--- a/src/input/backend/inputsettings.cpp
+++ b/src/input/backend/inputsettings.cpp
@@ -88,6 +88,19 @@ Qt3DCore::QBackendNode *InputSettingsFunctor::create(Qt3DCore::QNode *frontend)
return settings;
}
+Qt3DCore::QBackendNode *InputSettingsFunctor::create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const
+{
+ Q_UNUSED(change);
+ if (m_handler->inputSettings() != Q_NULLPTR) {
+ qWarning() << "Input settings already specified";
+ return Q_NULLPTR;
+ }
+
+ InputSettings *settings = new InputSettings();
+ m_handler->setInputSettings(settings);
+ return settings;
+}
+
Qt3DCore::QBackendNode *InputSettingsFunctor::get(Qt3DCore::QNodeId id) const
{
InputSettings *settings = m_handler->inputSettings();
diff --git a/src/input/backend/inputsettings_p.h b/src/input/backend/inputsettings_p.h
index f90819e73..70e93dc4d 100644
--- a/src/input/backend/inputsettings_p.h
+++ b/src/input/backend/inputsettings_p.h
@@ -82,6 +82,7 @@ public:
explicit InputSettingsFunctor(InputHandler *handler);
Qt3DCore::QBackendNode *create(Qt3DCore::QNode *frontend) const Q_DECL_OVERRIDE;
+ Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const Q_DECL_OVERRIDE;
Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const Q_DECL_OVERRIDE;
void destroy(Qt3DCore::QNodeId id) const Q_DECL_OVERRIDE;