diff options
Diffstat (limited to 'src/server/events/Delta.cpp')
-rw-r--r-- | src/server/events/Delta.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/events/Delta.cpp b/src/server/events/Delta.cpp index 0c50aabc..fccb887c 100644 --- a/src/server/events/Delta.cpp +++ b/src/server/events/Delta.cpp @@ -312,6 +312,9 @@ Delta::pre_process(PreProcessContext& ctx) } else { _status = Status::BAD_OBJECT_TYPE; } + } else if (key == uris.lv2_index) { + op = SpecialType::PORT_INDEX; + port->set_property(key, value); } } else if ((block = dynamic_cast<BlockImpl*>(_object))) { if (key == uris.midi_binding && value == uris.patch_wildcard) { @@ -498,6 +501,11 @@ Delta::execute(RunContext& context) _status = Status::INTERNAL_ERROR; } break; + case SpecialType::PORT_INDEX: + if (port) { + port->set_index(context, value.get<int32_t>()); + } + break; case SpecialType::CONTROL_BINDING: if (port) { if (!_engine.control_bindings()->set_port_binding(context, port, _binding, value)) { |