Use test_search_path to find test data in xpath test
[ardour.git] / gtk2_ardour / ardour_ui_dialogs.cc
index a8ff6305a21df01ba25d962b7bed75e9fe4356f6..5422bb9957e4a8e0d62e213c63da2491883869ec 100644 (file)
@@ -65,19 +65,9 @@ ARDOUR_UI::set_session (Session *s)
 {
        SessionHandlePtr::set_session (s);
 
-       if (audio_port_matrix) {
-               audio_port_matrix->set_session (s);
-       }
-
-       if (midi_port_matrix) {
-               midi_port_matrix->set_session (s);
-       }
-
-       if (route_params) {
-               route_params->set_session (s);
-       }
 
        if (!_session) {
+               WM::Manager::instance().set_session (s);
                /* Session option editor cannot exist across change-of-session */
                session_option_editor.drop_window ();
                /* Ditto for AddVideoDialog */
@@ -97,9 +87,10 @@ ARDOUR_UI::set_session (Session *s)
                }
        }
 
-       AutomationWatch::instance().set_session (s);
        WM::Manager::instance().set_session (s);
 
+       AutomationWatch::instance().set_session (s);
+
        if (shuttle_box) {
                shuttle_box->set_session (s);
        }
@@ -109,7 +100,6 @@ ARDOUR_UI::set_session (Session *s)
        big_clock->set_session (s);
        time_info_box->set_session (s);
        video_timeline->set_session (s);
-       location_ui->set_session (s);
 
        /* sensitize menu bar options that are now valid */
 
@@ -224,6 +214,7 @@ ARDOUR_UI::unload_session (bool hide_stuff)
        if (hide_stuff) {
                editor->hide ();
                mixer->hide ();
+               meterbridge->hide ();
                theme_manager->hide ();
                audio_port_matrix->hide();
                midi_port_matrix->hide();
@@ -239,6 +230,7 @@ ARDOUR_UI::unload_session (bool hide_stuff)
 
        rec_button.set_sensitive (false);
 
+       WM::Manager::instance().set_session ((ARDOUR::Session*) 0);
        ARDOUR_UI::instance()->video_timeline->close_session();
 
        stop_blinking ();
@@ -326,6 +318,23 @@ ARDOUR_UI::toggle_mixer_window ()
        }
 }
 
+void
+ARDOUR_UI::toggle_meterbridge ()
+{
+       Glib::RefPtr<Action> act = ActionManager::get_action (X_("Common"), X_("toggle-meterbridge"));
+       if (!act) {
+               return;
+       }
+
+       Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic (act);
+
+       if (tact->get_active()) {
+               meterbridge->show_window ();
+       } else {
+               meterbridge->hide_window (NULL);
+       }
+}
+
 void
 ARDOUR_UI::toggle_editor_mixer ()
 {
@@ -453,14 +462,6 @@ ARDOUR_UI::create_big_clock_window ()
        return new BigClockWindow (*big_clock);
 }
 
-RouteParams_UI*
-ARDOUR_UI::create_route_params_window ()
-{
-       RouteParams_UI *rv = new RouteParams_UI ();
-       rv->set_session(_session);
-       return rv;
-}
-
 void
 ARDOUR_UI::handle_locations_change (Location *)
 {