summaryrefslogtreecommitdiff
path: root/libs/surfaces
diff options
context:
space:
mode:
Diffstat (limited to 'libs/surfaces')
-rw-r--r--libs/surfaces/mackie/mackie_control_protocol.cc6
-rw-r--r--libs/surfaces/mackie/mackie_control_protocol.h2
-rw-r--r--libs/surfaces/mackie/route_signal.cc5
3 files changed, 9 insertions, 4 deletions
diff --git a/libs/surfaces/mackie/mackie_control_protocol.cc b/libs/surfaces/mackie/mackie_control_protocol.cc
index 48d074e117..1a16902c80 100644
--- a/libs/surfaces/mackie/mackie_control_protocol.cc
+++ b/libs/surfaces/mackie/mackie_control_protocol.cc
@@ -946,8 +946,12 @@ MackieControlProtocol::notify_gain_changed (RouteSignal * route_signal, bool for
}
void
-MackieControlProtocol::notify_name_changed (RouteSignal * route_signal)
+MackieControlProtocol::notify_property_changed (const PropertyChange& what_changed, RouteSignal * route_signal)
{
+ if (!what_changed.contains (Properties::name)) {
+ return;
+ }
+
try
{
Strip & strip = route_signal->strip();
diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h
index 14be7b4370..d920173eca 100644
--- a/libs/surfaces/mackie/mackie_control_protocol.h
+++ b/libs/surfaces/mackie/mackie_control_protocol.h
@@ -99,7 +99,7 @@ class MackieControlProtocol
/// Signal handler for Route::gain_changed (from IO)
void notify_gain_changed(Mackie::RouteSignal *, bool force_update = true);
/// Signal handler for Route::name_change
- void notify_name_changed(Mackie::RouteSignal *);
+ void notify_property_changed(const PBD::PropertyChange&, Mackie::RouteSignal *);
/// Signal handler from Panner::Change
void notify_panner_changed(Mackie::RouteSignal *, bool force_update = true);
/// Signal handler for new routes added
diff --git a/libs/surfaces/mackie/route_signal.cc b/libs/surfaces/mackie/route_signal.cc
index 6dc8532db9..984a6ccd9f 100644
--- a/libs/surfaces/mackie/route_signal.cc
+++ b/libs/surfaces/mackie/route_signal.cc
@@ -21,6 +21,7 @@
#include "ardour/track.h"
#include "ardour/midi_ui.h"
#include "ardour/panner.h"
+#include "ardour/session_object.h" // for Properties::name
#include "mackie_control_protocol.h"
@@ -47,7 +48,7 @@ void RouteSignal::connect()
_route->gain_control()->Changed.connect(connections, ui_bind (&MackieControlProtocol::notify_gain_changed, &_mcp, this, false), midi_ui_context());
}
- _route->NameChanged.connect (connections, ui_bind (&MackieControlProtocol::notify_name_changed, &_mcp, this), midi_ui_context());
+ _route->PropertyChanged.connect (connections, ui_bind (&MackieControlProtocol::notify_property_changed, &_mcp, _1, this), midi_ui_context());
if (_route->panner()) {
_route->panner()->Changed.connect(connections, ui_bind (&MackieControlProtocol::notify_panner_changed, &_mcp, this, false), midi_ui_context());
@@ -90,7 +91,7 @@ void RouteSignal::notify_all()
if ( _strip.has_gain() )
_mcp.notify_gain_changed( this );
- _mcp.notify_name_changed( this );
+ _mcp.notify_property_changed (PBD::PropertyChange (ARDOUR::Properties::name), this );
if ( _strip.has_vpot() )
_mcp.notify_panner_changed( this );