From 41f6f5574b499c7d0ef50ac35443be0c9e78c026 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Sat, 24 Aug 2013 11:45:31 -0400 Subject: [PATCH] fix confusion about whether flip_mode in the Mackie support code is a bool or an enum --- libs/surfaces/mackie/mackie_control_protocol.cc | 6 +++--- libs/surfaces/mackie/mackie_control_protocol.h | 6 +++--- libs/surfaces/mackie/mcp_buttons.cc | 8 ++++++-- libs/surfaces/mackie/strip.cc | 12 ++++++------ 4 files changed, 18 insertions(+), 14 deletions(-) diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc index cfa6524f70..95c6aa8ca0 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.cc +++ b/libs/surfaces/mackie/mackie_control_protocol.cc @@ -101,7 +101,7 @@ MackieControlProtocol::MackieControlProtocol (Session& session) , _gui (0) , _zoom_mode (false) , _scrub_mode (false) - , _flip_mode (false) + , _flip_mode (Normal) , _view_mode (Mixer) , _current_selected_track (-1) , _modifier_state (0) @@ -1271,11 +1271,11 @@ MackieControlProtocol::set_view_mode (ViewMode m) } void -MackieControlProtocol::set_flip_mode (bool yn) +MackieControlProtocol::set_flip_mode (FlipMode fm) { Glib::Threads::Mutex::Lock lm (surfaces_lock); - _flip_mode = yn; + _flip_mode = fm; for (Surfaces::iterator s = surfaces.begin(); s != surfaces.end(); ++s) { (*s)->update_flip_mode_display (); diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h index 710745f157..ffc06a32eb 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.h +++ b/libs/surfaces/mackie/mackie_control_protocol.h @@ -123,13 +123,13 @@ class MackieControlProtocol void set_device (const std::string&, bool allow_activation = true); void set_profile (const std::string&); - bool flip_mode () const { return _flip_mode; } + FlipMode flip_mode () const { return _flip_mode; } ViewMode view_mode () const { return _view_mode; } bool zoom_mode () const { return _zoom_mode; } bool metering_active () const { return _metering_active; } void set_view_mode (ViewMode); - void set_flip_mode (bool); + void set_flip_mode (FlipMode); XMLNode& get_state (); int set_state (const XMLNode&, int version); @@ -278,7 +278,7 @@ class MackieControlProtocol void* _gui; bool _zoom_mode; bool _scrub_mode; - bool _flip_mode; + FlipMode _flip_mode; ViewMode _view_mode; int _current_selected_track; int _modifier_state; diff --git a/libs/surfaces/mackie/mcp_buttons.cc b/libs/surfaces/mackie/mcp_buttons.cc index 286e87a0fb..792813bf33 100644 --- a/libs/surfaces/mackie/mcp_buttons.cc +++ b/libs/surfaces/mackie/mcp_buttons.cc @@ -814,8 +814,12 @@ MackieControlProtocol::dyn_release (Button &) LedState MackieControlProtocol::flip_press (Button &) { - set_flip_mode (!_flip_mode); - return (_flip_mode ? on : off); + if (_flip_mode != Normal) { + set_flip_mode (Normal); + } else { + set_flip_mode (Mirror); + } + return ((_flip_mode != Normal) ? on : off); } LedState MackieControlProtocol::flip_release (Button &) diff --git a/libs/surfaces/mackie/strip.cc b/libs/surfaces/mackie/strip.cc index fd8e956ba1..d758aadaa2 100644 --- a/libs/surfaces/mackie/strip.cc +++ b/libs/surfaces/mackie/strip.cc @@ -291,7 +291,7 @@ Strip::notify_gain_changed (bool force_update) Control* control; - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { control = _vpot; } else { control = _fader; @@ -304,7 +304,7 @@ Strip::notify_gain_changed (bool force_update) if (force_update || normalized_position != _last_gain_position_written) { - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { if (!control->in_use()) { _surface->write (_vpot->set (normalized_position, true, Pot::wrap)); } @@ -407,7 +407,7 @@ Strip::notify_panner_width_changed (bool force_update) if (force_update || pos != _last_pan_azi_position_written) { - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { if (control == _fader) { if (!control->in_use()) { @@ -944,7 +944,7 @@ Strip::next_pot_mode () { vector::iterator i; - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { /* do not change vpot mode while in flipped mode */ DEBUG_TRACE (DEBUG::MackieControl, "not stepping pot mode - in flip mode\n"); _surface->write (display (1, "Flip")); @@ -997,7 +997,7 @@ Strip::set_vpot_parameter (Evoral::Parameter p) case PanAzimuthAutomation: pannable = _route->pannable (); if (pannable) { - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { /* gain to vpot, pan azi to fader */ _vpot->set_control (_route->gain_control()); control_by_parameter[GainAutomation] = _vpot; @@ -1025,7 +1025,7 @@ Strip::set_vpot_parameter (Evoral::Parameter p) case PanWidthAutomation: pannable = _route->pannable (); if (pannable) { - if (_surface->mcp().flip_mode()) { + if (_surface->mcp().flip_mode() != Normal) { /* gain to vpot, pan width to fader */ _vpot->set_control (_route->gain_control()); control_by_parameter[GainAutomation] = _vpot;