diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-04-13 22:49:58 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-04-13 22:49:58 +0000 |
commit | e240fb16bdd66d145981a9737bd51341f25a5134 (patch) | |
tree | 3b0695c561545542747a0ce33471a8531b2e53fe /libs | |
parent | e36aa889eb3b4c834e49168fc7045c3736028db0 (diff) |
MCP: hack for Nucleus fader touch messages
git-svn-id: svn://localhost/ardour2/branches/3.0@11968 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/surfaces/mackie/gui.cc | 1 | ||||
-rw-r--r-- | libs/surfaces/mackie/mackie_control_protocol.cc | 3 | ||||
-rw-r--r-- | libs/surfaces/mackie/mackie_control_protocol.h | 3 | ||||
-rw-r--r-- | libs/surfaces/mackie/strip.cc | 6 |
4 files changed, 8 insertions, 5 deletions
diff --git a/libs/surfaces/mackie/gui.cc b/libs/surfaces/mackie/gui.cc index 1c62cf2d45..6ca76d4c0e 100644 --- a/libs/surfaces/mackie/gui.cc +++ b/libs/surfaces/mackie/gui.cc @@ -240,6 +240,7 @@ MackieControlProtocolGUI::rebuild_function_key_editor () row = *(function_key_model->append()); row[function_key_columns.name] = string_compose ("F%1", n+1); row[function_key_columns.number] = n; + row[function_key_columns.plain] = _cp.f_action (n, 0); row[function_key_columns.control] = "c"; row[function_key_columns.option] = "o"; row[function_key_columns.shift] = "s"; diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc index 392888f0f5..7aa78d8c02 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.cc +++ b/libs/surfaces/mackie/mackie_control_protocol.cc @@ -337,7 +337,6 @@ MackieControlProtocol::switch_banks (uint32_t initial, bool force) set_view_mode (_view_mode); /* current bank has not been saved */ - session->set_dirty(); } @@ -1104,7 +1103,7 @@ MackieControlProtocol::clear_ports () } string -MackieControlProtocol::f_action (uint32_t fn) +MackieControlProtocol::f_action (uint32_t fn, uint32_t /* modifier */) { if (fn >= _f_actions.size()) { return string(); diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h index 45c16cc50d..83b77bd7f2 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.h +++ b/libs/surfaces/mackie/mackie_control_protocol.h @@ -191,6 +191,8 @@ class MackieControlProtocol void remove_down_select_button (int surface, int strip); void select_range (); + std::string f_action (uint32_t fn, uint32_t modifier = 0); + protected: // shut down the surface void close(); @@ -231,7 +233,6 @@ class MackieControlProtocol /* handling function key presses */ - std::string f_action (uint32_t fn); void f_press (uint32_t fn); private: diff --git a/libs/surfaces/mackie/strip.cc b/libs/surfaces/mackie/strip.cc index 43d5c63e87..82a3e07ab4 100644 --- a/libs/surfaces/mackie/strip.cc +++ b/libs/surfaces/mackie/strip.cc @@ -416,8 +416,10 @@ Strip::handle_button (Button& button, ButtonState bs) return; } - if (button.id() >= Button::fader_touch_base_id && - button.id() < Button::fader_touch_base_id + 8) { + if ((button.id() >= Button::fader_touch_base_id && + button.id() < Button::fader_touch_base_id + 8) || + /* Hack for SSL Nucleus */ + (button.id() >= 104 && button.id() < 112)) { DEBUG_TRACE (DEBUG::MackieControl, string_compose ("fader touch, press ? %1\n", (bs == press))); |