OSC: add feedback for solo isolate and solo safe to strips (issue 7161)
authorLen Ovens <len@ovenwerks.net>
Sat, 1 Jul 2017 18:49:08 +0000 (11:49 -0700)
committerLen Ovens <len@ovenwerks.net>
Sat, 1 Jul 2017 18:49:08 +0000 (11:49 -0700)
libs/surfaces/osc/osc_route_observer.cc

index 62cfa69e74968f57402d3433ad93c0e92d6f00b9..f35c7c3903e6e17f1d7eb725e16b59de97ce89d6 100644 (file)
@@ -26,6 +26,7 @@
 #include "ardour/monitor_control.h"
 #include "ardour/dB.h"
 #include "ardour/meter.h"
+#include "ardour/solo_isolate_control.h"
 
 #include "osc.h"
 #include "osc_route_observer.h"
@@ -58,6 +59,12 @@ OSCRouteObserver::OSCRouteObserver (boost::shared_ptr<Stripable> s, lo_address a
                _strip->solo_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, boost::bind (&OSCRouteObserver::send_change_message, this, X_("/strip/solo"), _strip->solo_control()), OSC::instance());
                send_change_message ("/strip/solo", _strip->solo_control());
 
+               _strip->solo_isolate_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, bind (&OSCRouteObserver::send_change_message, this, X_("/strip/solo_iso"), _strip->solo_isolate_control()), OSC::instance());
+               send_change_message ("/strip/solo_iso", _strip->solo_isolate_control());
+
+               _strip->solo_safe_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, bind (&OSCRouteObserver::send_change_message, this, X_("/strip/solo_safe"), _strip->solo_safe_control()), OSC::instance());
+               send_change_message ("/strip/solo_safe", _strip->solo_safe_control());
+
                boost::shared_ptr<Track> track = boost::dynamic_pointer_cast<Track> (_strip);
                if (track) {
                        track->monitoring_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, boost::bind (&OSCRouteObserver::send_monitor_status, this, track->monitoring_control()), OSC::instance());