+ case 2:
+ pc = r->solo_isolate_control ();
+ if (pc) {
+ pc->Changed.connect (subview_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_trackview_change, this, SoloIsolateAutomation, global_pos, false), ui_context());
+ notify_trackview_change (SoloIsolateAutomation, global_pos, true);
+ pending_display[0] = "S-Iso";
+ }
+ break;
+ case 3:
+ pc = r->solo_safe_control ();
+ if (pc) {
+ pc->Changed.connect (subview_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_trackview_change, this, SoloSafeAutomation, global_pos, false), ui_context());
+ notify_trackview_change (SoloSafeAutomation, global_pos, true);
+ pending_display[0] = "S-Safe";
+ }
+ break;
+ case 4:
+ pc = r->phase_control();
+ if (pc) {
+ pc->Changed.connect (subview_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_trackview_change, this, PhaseAutomation, global_pos, false), ui_context());
+ notify_trackview_change (PhaseAutomation, global_pos, true);
+ pending_display[0] = "Phase";
+ }
+ break;
+ case 5:
+ // pc = r->trim_control ();
+ break;
+ case 6:
+ // pc = r->trim_control ();
+ break;
+ case 7:
+ // pc = r->trim_control ();
+ break;
+ }
+
+ if (!pc) {
+ pending_display[0] = string();
+ pending_display[1] = string();
+ return;
+ }
+
+ _vpot->set_control (pc);
+}
+
+void
+Strip::set_vpot_parameter (AutomationType p)
+{
+ if (!_route || (p == NullAutomation)) {
+ _vpot->set_control (boost::shared_ptr<AutomationControl>());
+ pending_display[1] = string();
+ return;
+ }
+
+ boost::shared_ptr<AutomationControl> pan_control;
+
+ DEBUG_TRACE (DEBUG::MackieControl, string_compose ("switch to vpot mode %1\n", p));
+
+ reset_saved_values ();
+
+ switch (p) {
+ case PanAzimuthAutomation:
+ pan_control = _route->pan_azimuth_control ();
+ break;
+ case PanWidthAutomation:
+ pan_control = _route->pan_width_control ();
+ break;