diff --git a/libs/surfaces/osc/osc_route_observer.cc b/libs/surfaces/osc/osc_route_observer.cc index 7293ca1937..b4ec531db3 100644 --- a/libs/surfaces/osc/osc_route_observer.cc +++ b/libs/surfaces/osc/osc_route_observer.cc @@ -55,8 +55,8 @@ OSCRouteObserver::OSCRouteObserver (boost::shared_ptr s, lo_address a boost::shared_ptr track = boost::dynamic_pointer_cast (_strip); if (track) { - track->monitoring_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, bind (&OSCRouteObserver::send_monitor_status, this, track->monitoring_control()), OSC::instance()); - send_monitor_status (track->monitoring_control()); + track->monitoring_control()->Changed.connect (strip_connections, MISSING_INVALIDATOR, bind (&OSCRouteObserver::send_monitor_status, this, track->monitoring_control()), OSC::instance()); + send_monitor_status (track->monitoring_control()); } boost::shared_ptr rec_controllable = _strip->rec_enable_control (); diff --git a/libs/surfaces/osc/osc_select_observer.cc b/libs/surfaces/osc/osc_select_observer.cc index 8b07932a11..bd726123ea 100644 --- a/libs/surfaces/osc/osc_select_observer.cc +++ b/libs/surfaces/osc/osc_select_observer.cc @@ -157,10 +157,8 @@ OSCSelectObserver::OSCSelectObserver (boost::shared_ptr s, lo_address change_message ("/select/comp_speed", _strip->comp_speed_controllable()); } if (_strip->comp_mode_controllable ()) { - _strip->comp_mode_controllable ()->Changed.connect (strip_connections, MISSING_INVALIDATOR, boost::bind (&OSCSelectObserver::change_message, this, X_("/select/comp_mode"), _strip->comp_mode_controllable()), OSC::instance()); - change_message ("/select/comp_mode", _strip->comp_mode_controllable()); - text_message ("/select/comp_mode_name", _strip->comp_mode_name(_strip->comp_mode_controllable()->get_value())); - text_message ("/select/comp_speed_name", _strip->comp_speed_name(_strip->comp_mode_controllable()->get_value())); + _strip->comp_mode_controllable ()->Changed.connect (strip_connections, MISSING_INVALIDATOR, boost::bind (&OSCSelectObserver::comp_mode, this), OSC::instance()); + comp_mode (); } if (_strip->comp_makeup_controllable ()) { _strip->comp_makeup_controllable ()->Changed.connect (strip_connections, MISSING_INVALIDATOR, boost::bind (&OSCSelectObserver::change_message, this, X_("/select/comp_makeup"), _strip->comp_makeup_controllable()), OSC::instance()); @@ -513,6 +511,14 @@ OSCSelectObserver::text_with_id (string path, uint32_t id, string name) lo_message_free (msg); } +void +OSCSelectObserver::comp_mode () +{ + change_message ("/select/comp_mode", _strip->comp_mode_controllable()); + text_message ("/select/comp_mode_name", _strip->comp_mode_name(_strip->comp_mode_controllable()->get_value())); + text_message ("/select/comp_speed_name", _strip->comp_speed_name(_strip->comp_mode_controllable()->get_value())); +} + void OSCSelectObserver::eq_init() { @@ -557,6 +563,7 @@ OSCSelectObserver::eq_init() void OSCSelectObserver::eq_end () { + //need to check feedback for [13] eq_connections.drop_connections (); clear_strip ("/select/eq_hpf", 0); clear_strip ("/select/eq_enable", 0); diff --git a/libs/surfaces/osc/osc_select_observer.h b/libs/surfaces/osc/osc_select_observer.h index 59409e3607..d751ec2b3e 100644 --- a/libs/surfaces/osc/osc_select_observer.h +++ b/libs/surfaces/osc/osc_select_observer.h @@ -59,6 +59,7 @@ class OSCSelectObserver void name_changed (const PBD::PropertyChange& what_changed); void change_message (std::string path, boost::shared_ptr controllable); + void comp_mode (void); void change_message_with_id (std::string path, uint32_t id, boost::shared_ptr controllable); void text_message (std::string path, std::string text); void text_with_id (std::string path, uint32_t id, std::string name);