diff options
author | David Robillard <d@drobilla.net> | 2008-06-09 19:08:43 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-06-09 19:08:43 +0000 |
commit | 0a1c93d22fd879075e02aebe702224446e8ffbdd (patch) | |
tree | 7c3a617e7b7aaf06f404ca2434d32ab51cf98e4a /src | |
parent | b69a2fa8a5341bd5342cff241a3a434b8dd99ff9 (diff) | |
download | ingen-0a1c93d22fd879075e02aebe702224446e8ffbdd.tar.gz ingen-0a1c93d22fd879075e02aebe702224446e8ffbdd.tar.bz2 ingen-0a1c93d22fd879075e02aebe702224446e8ffbdd.zip |
Fix port control slider synchronization issues.
git-svn-id: http://svn.drobilla.net/lad/ingen@1255 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src')
-rw-r--r-- | src/libs/gui/ControlGroups.cpp | 2 | ||||
-rw-r--r-- | src/libs/gui/ControlPanel.cpp | 5 | ||||
-rw-r--r-- | src/libs/gui/Port.cpp | 2 |
3 files changed, 4 insertions, 5 deletions
diff --git a/src/libs/gui/ControlGroups.cpp b/src/libs/gui/ControlGroups.cpp index 0803b5ba..dc585975 100644 --- a/src/libs/gui/ControlGroups.cpp +++ b/src/libs/gui/ControlGroups.cpp @@ -167,6 +167,8 @@ SliderControlGroup::menu_properties() void SliderControlGroup::set_value(const Atom& atom) { + cout << "CONTROL VALUE CHANGED" << endl; + float val = atom.get_float(); if (_port_model->is_integer()) diff --git a/src/libs/gui/ControlPanel.cpp b/src/libs/gui/ControlPanel.cpp index 422a4614..a59a15f6 100644 --- a/src/libs/gui/ControlPanel.cpp +++ b/src/libs/gui/ControlPanel.cpp @@ -231,10 +231,6 @@ void ControlPanel::value_changed(SharedPtr<PortModel> port, float val) { if (_callback_enabled) { - App::instance().engine()->disable_responses(); - - /* Send the message, but set the client-side model's value to the new - * setting right away (so the value doesn't need to be echoed back) */ if (_all_voices_radio->get_active()) { App::instance().engine()->set_port_value_immediate(port->path(), "ingen:control", @@ -247,7 +243,6 @@ ControlPanel::value_changed(SharedPtr<PortModel> port, float val) port->value(val); } - App::instance().engine()->set_next_response_id(rand()); // FIXME: inefficient, probably not good } } diff --git a/src/libs/gui/Port.cpp b/src/libs/gui/Port.cpp index df0b779c..8768da8d 100644 --- a/src/libs/gui/Port.cpp +++ b/src/libs/gui/Port.cpp @@ -94,6 +94,8 @@ Port::renamed() void Port::value_changed(const Atom& value) { + cout << "PORT VALUE CHANGED" << endl; + if (value.type() == Atom::FLOAT) FlowCanvas::Port::set_control(value.get_float()); else |