most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas...
[ardour.git] / gtk2_ardour / panner_ui.cc
index b1273aa460cb1c64195280e743f9ef9d02805168..3368905ad3f4d1a791152bef7dab15b22d062545 100644 (file)
@@ -154,6 +154,7 @@ PannerUI::set_io (boost::shared_ptr<IO> io)
                panner = 0;
        }
  
+       setup_pan ();
 
        pan_changed (0);
        update_pan_sensitive ();
@@ -225,14 +226,12 @@ PannerUI::get_controllable()
 bool
 PannerUI::panning_link_button_press (GdkEventButton* ev)
 {
-       cerr << "link press\n";
        return true;
 }
 
 bool
 PannerUI::panning_link_button_release (GdkEventButton* ev)
 {
-       cerr << "link release\n";
        if (!ignore_toggle) {
                _io->panner().set_linked (!_io->panner().linked());
        }
@@ -259,7 +258,7 @@ PannerUI::update_pan_linkage ()
        
        bool x = _io->panner().linked();
        bool bx = panning_link_button.get_active();
-       
+
        if (x != bx) {
                
                ignore_toggle = true;
@@ -328,6 +327,7 @@ PannerUI::panner_changed ()
 {
        ENSURE_GUI_THREAD (mem_fun(*this, &PannerUI::panner_changed));
        setup_pan ();
+       pan_changed (0);
 }
 
 void
@@ -573,6 +573,7 @@ PannerUI::pan_changed (void *src)
                break;
 
        case 2:
+               /* bring pan bar state up to date */
                update_pan_bars (false);
                break;
 
@@ -806,7 +807,7 @@ PannerUI::pan_automation_state_changed ()
        pan_watching.disconnect();
 
        if (x) {
-         pan_watching = ARDOUR_UI::RapidScreenUpdate.connect (mem_fun (*this, &PannerUI::effective_pan_display));
+               pan_watching = ARDOUR_UI::RapidScreenUpdate.connect (mem_fun (*this, &PannerUI::effective_pan_display));
        }
 }