From 30f7c44f611dc644922673f1423cde1fe063995e Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Wed, 28 Oct 2015 09:34:18 -0700 Subject: [PATCH 1/2] emit hardwareChanged signal to scripts --- examples/controllers/controllerMappings.js | 7 ++++++- .../controllers/src/controllers/ScriptingInterface.cpp | 1 + libraries/controllers/src/controllers/ScriptingInterface.h | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/examples/controllers/controllerMappings.js b/examples/controllers/controllerMappings.js index 66efa63676..42494816f4 100644 --- a/examples/controllers/controllerMappings.js +++ b/examples/controllers/controllerMappings.js @@ -87,4 +87,9 @@ Object.keys(Controller.Hardware).forEach(function (deviceName) { Object.keys(Controller.Actions).forEach(function (actionName) { print("Controller.Actions." + actionName + ":" + Controller.Actions[actionName]); }); -*/ \ No newline at end of file +*/ + + +Controller.hardwareChanged.connect(function () { + print("hardwareChanged"); +}); \ No newline at end of file diff --git a/libraries/controllers/src/controllers/ScriptingInterface.cpp b/libraries/controllers/src/controllers/ScriptingInterface.cpp index bb09705684..b5630cfab1 100644 --- a/libraries/controllers/src/controllers/ScriptingInterface.cpp +++ b/libraries/controllers/src/controllers/ScriptingInterface.cpp @@ -50,6 +50,7 @@ controller::ScriptingInterface::ScriptingInterface() { // FIXME make this thread safe connect(userInputMapper.data(), &UserInputMapper::hardwareChanged, [=] { updateMaps(); + emit hardwareChanged(); }); diff --git a/libraries/controllers/src/controllers/ScriptingInterface.h b/libraries/controllers/src/controllers/ScriptingInterface.h index db724044fa..9af478e709 100644 --- a/libraries/controllers/src/controllers/ScriptingInterface.h +++ b/libraries/controllers/src/controllers/ScriptingInterface.h @@ -132,6 +132,7 @@ namespace controller { signals: void actionEvent(int action, float state); void inputEvent(int action, float state); + void hardwareChanged(); private: // Update the exposed variant maps reporting active hardware From 457ec76d3d85f69e6153b66b1d63afa0c73ab432 Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Wed, 28 Oct 2015 11:21:53 -0700 Subject: [PATCH 2/2] CR feedback --- libraries/controllers/src/controllers/ScriptingInterface.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libraries/controllers/src/controllers/ScriptingInterface.cpp b/libraries/controllers/src/controllers/ScriptingInterface.cpp index b5630cfab1..8d00000c45 100644 --- a/libraries/controllers/src/controllers/ScriptingInterface.cpp +++ b/libraries/controllers/src/controllers/ScriptingInterface.cpp @@ -48,12 +48,11 @@ controller::ScriptingInterface::ScriptingInterface() { connect(userInputMapper.data(), &UserInputMapper::inputEvent, this, &controller::ScriptingInterface::inputEvent); // FIXME make this thread safe - connect(userInputMapper.data(), &UserInputMapper::hardwareChanged, [=] { + connect(userInputMapper.data(), &UserInputMapper::hardwareChanged, this, [=] { updateMaps(); emit hardwareChanged(); }); - qCDebug(controllers) << "Setting up standard controller abstraction"; _standard = createDeviceMap(userInputMapper->getStandardDevice());