X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fardour_ui_dialogs.cc;h=cd735c5df445008754709ba8268f32484e65c895;hb=dc0139d4af4d246f6dcafb04425e3f1198c347c3;hp=90cc8907430246b81c76802770d476b08bf1d4c8;hpb=85e4b1d98ff72afe8b3acaf38e9c269749093207;p=ardour.git diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index 90cc890743..cd735c5df4 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -56,6 +56,7 @@ #include "meter_patterns.h" #include "monitor_section.h" #include "midi_tracer.h" +#include "mini_timeline.h" #include "mixer_ui.h" #include "public_editor.h" #include "processor_box.h" @@ -66,7 +67,7 @@ #include "speaker_dialog.h" #include "splash.h" #include "sfdb_ui.h" -#include "theme_manager.h" +#include "time_info_box.h" #include "timers.h" #include "pbd/i18n.h" @@ -107,14 +108,15 @@ ARDOUR_UI::set_session (Session *s) AutomationWatch::instance().set_session (s); - if (shuttle_box) { - shuttle_box->set_session (s); - } + shuttle_box.set_session (s); + mini_timeline.set_session (s); + time_info_box->set_session (s); primary_clock->set_session (s); secondary_clock->set_session (s); big_clock->set_session (s); video_timeline->set_session (s); + lua_script_window->set_session (s); /* sensitize menu bar options that are now valid */ @@ -158,6 +160,7 @@ ARDOUR_UI::set_session (Session *s) blink_connection = Timers::blink_connect (sigc::mem_fun(*this, &ARDOUR_UI::blink_handler)); _session->SaveSessionRequested.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::save_session_at_its_request, this, _1), gui_context()); + _session->StateSaved.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::update_title, this), gui_context()); _session->RecordStateChanged.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::record_state_changed, this), gui_context()); _session->StepEditStatusChange.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::step_edit_status_change, this, _1), gui_context()); _session->TransportStateChange.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::map_transport_state, this), gui_context()); @@ -169,6 +172,7 @@ ARDOUR_UI::set_session (Session *s) _session->locations()->added.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::handle_locations_change, this, _1), gui_context()); _session->locations()->removed.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::handle_locations_change, this, _1), gui_context()); _session->config.ParameterChanged.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::session_parameter_changed, this, _1), gui_context ()); + _session->auto_loop_location_changed.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&ARDOUR_UI::set_loop_sensitivity, this), gui_context ()); /* Clocks are on by default after we are connected to a session, so show that here. */ @@ -220,10 +224,12 @@ ARDOUR_UI::set_session (Session *s) editor_meter = new LevelMeterHBox(_session); editor_meter->set_meter (_session->master_out()->shared_peak_meter().get()); editor_meter->clear_meters(); - editor_meter->set_type (_session->master_out()->meter_type()); + editor_meter->set_meter_type (_session->master_out()->meter_type()); editor_meter->setup_meters (30, 10, 6); editor_meter->show(); meter_box.pack_start(*editor_meter); + + editor_meter->ButtonPress.connect_same_thread (editor_meter_connection, boost::bind (&ARDOUR_UI::editor_meter_button_press, this, _1)); } ArdourMeter::ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &ARDOUR_UI::reset_peak_display)); @@ -238,12 +244,7 @@ ARDOUR_UI::set_session (Session *s) editor_meter_max_peak = -INFINITY; editor_meter_peak_display.signal_button_release_event().connect (sigc::mem_fun(*this, &ARDOUR_UI::editor_meter_peak_button_release), false); - if (UIConfiguration::instance().get_show_editor_meter() && !ARDOUR::Profile->get_trx()) { - transport_hbox.pack_start (meter_box, false, false); - transport_hbox.pack_start (editor_meter_peak_display, false, false); - meter_box.show(); - editor_meter_peak_display.show(); - } + repack_transport_hbox (); } update_title (); @@ -283,6 +284,7 @@ ARDOUR_UI::unload_session (bool hide_stuff) } if (hide_stuff) { + close_all_dialogs (); editor->hide (); mixer->hide (); meterbridge->hide ();