diff options
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 72 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui.h | 8 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui_dialogs.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/editor.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/mixer_group_tabs.cc | 4 | ||||
-rw-r--r-- | gtk2_ardour/mixer_strip.cc | 4 | ||||
-rw-r--r-- | gtk2_ardour/mixer_ui.cc | 14 | ||||
-rw-r--r-- | gtk2_ardour/monitor_section.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/route_time_axis.cc | 4 | ||||
-rw-r--r-- | gtk2_ardour/route_ui.cc | 10 | ||||
-rw-r--r-- | gtk2_ardour/startup.cc | 15 | ||||
-rw-r--r-- | gtk2_ardour/startup.h | 1 |
12 files changed, 58 insertions, 80 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index a6236b2038..4fc36dd0e8 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -1323,18 +1323,6 @@ ARDOUR_UI::session_add_audio_route (bool track, bool aux, int32_t input_channels } } } - -#if CONTROLOUTS - if (need_control_room_outs) { - pan_t pans[2]; - - pans[0] = 0.5; - pans[1] = 0.5; - - route->set_stereo_control_outs (control_lr_channels); - route->control_outs()->set_stereo_pan (pans, this); - } -#endif /* CONTROLOUTS */ } catch (...) { @@ -2272,62 +2260,49 @@ ARDOUR_UI::ask_about_loading_existing_session (const Glib::ustring& session_path int ARDOUR_UI::build_session_from_nsd (const Glib::ustring& session_path, const Glib::ustring& session_name) { - - uint32_t mchns; - AutoConnectOption iconnect; - AutoConnectOption oconnect; - uint32_t nphysin; - uint32_t nphysout; + BusProfile bus_profile; if (Profile->get_sae()) { - mchns = 2; - iconnect = AutoConnectPhysical; - oconnect = AutoConnectMaster; - nphysin = 0; // use all available - nphysout = 0; // use all available + bus_profile.master_out_channels = 2; + bus_profile.input_ac = AutoConnectPhysical; + bus_profile.output_ac = AutoConnectMaster; + bus_profile.requested_physical_in = 0; // use all available + bus_profile.requested_physical_out = 0; // use all available } else { /* get settings from advanced section of NSD */ if (_startup->create_master_bus()) { - mchns = (uint32_t) _startup->master_channel_count(); + bus_profile.master_out_channels = (uint32_t) _startup->master_channel_count(); } else { - mchns = 0; + bus_profile.master_out_channels = 0; } if (_startup->connect_inputs()) { - iconnect = AutoConnectPhysical; + bus_profile.input_ac = AutoConnectPhysical; } else { - iconnect = AutoConnectOption (0); + bus_profile.input_ac = AutoConnectOption (0); } /// @todo some minor tweaks. - - oconnect = AutoConnectOption (0); + + bus_profile.output_ac = AutoConnectOption (0); if (_startup->connect_outputs ()) { if (_startup->connect_outs_to_master()) { - oconnect = AutoConnectMaster; + bus_profile.output_ac = AutoConnectMaster; } else if (_startup->connect_outs_to_physical()) { - oconnect = AutoConnectPhysical; + bus_profile.output_ac = AutoConnectPhysical; } } - nphysin = (uint32_t) _startup->input_limit_count(); - nphysout = (uint32_t) _startup->output_limit_count(); + bus_profile.requested_physical_in = (uint32_t) _startup->input_limit_count(); + bus_profile.requested_physical_out = (uint32_t) _startup->output_limit_count(); } - if (build_session (session_path, - session_name, - mchns, - iconnect, - oconnect, - nphysin, - nphysout, - engine->frame_rate() * 60 * 5)) { - + if (build_session (session_path, session_name, bus_profile)) { return -1; } @@ -2557,7 +2532,7 @@ ARDOUR_UI::load_session (const Glib::ustring& path, const Glib::ustring& snap_na loading_message (string_compose (_("Please wait while %1loads your session"), PROGRAM_NAME)); try { - new_session = new Session (*engine, path, snap_name, mix_template); + new_session = new Session (*engine, path, snap_name, 0, mix_template); } /* this one is special */ @@ -2632,13 +2607,7 @@ ARDOUR_UI::load_session (const Glib::ustring& path, const Glib::ustring& snap_na } int -ARDOUR_UI::build_session (const Glib::ustring& path, const Glib::ustring& snap_name, - uint32_t master_channels, - AutoConnectOption input_connect, - AutoConnectOption output_connect, - uint32_t nphysin, - uint32_t nphysout, - nframes_t initial_length) +ARDOUR_UI::build_session (const Glib::ustring& path, const Glib::ustring& snap_name, BusProfile& bus_profile) { Session *new_session; int x; @@ -2660,8 +2629,7 @@ ARDOUR_UI::build_session (const Glib::ustring& path, const Glib::ustring& snap_n _session_is_new = true; try { - new_session = new Session (*engine, path, snap_name, input_connect, output_connect, - master_channels, nphysin, nphysout, initial_length); + new_session = new Session (*engine, path, snap_name, &bus_profile); } catch (...) { diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index 47be382f46..6699b423cc 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -124,13 +124,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr int load_session (const Glib::ustring& path, const Glib::ustring& snapshot, Glib::ustring mix_template = Glib::ustring()); bool session_loaded; - int build_session (const Glib::ustring& path, const Glib::ustring& snapshot, - uint32_t master_chns, - ARDOUR::AutoConnectOption input_connect, - ARDOUR::AutoConnectOption output_connect, - uint32_t nphysin, - uint32_t nphysout, - nframes_t initial_length); + int build_session (const Glib::ustring& path, const Glib::ustring& snapshot, ARDOUR::BusProfile&); bool session_is_new() const { return _session_is_new; } ARDOUR::Session* the_session() { return _session; } diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index a15d8fc2be..136e6f79b7 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -81,7 +81,7 @@ ARDOUR_UI::set_session (Session *s) ActionManager::set_sensitive (ActionManager::range_sensitive_actions, false); } - if (!_session->control_out()) { + if (!_session->monitor_out()) { Glib::RefPtr<Action> act = ActionManager::get_action (X_("options"), X_("SoloViaBus")); if (act) { act->set_sensitive (false); diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 5d47554f08..7b3aa815ce 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -4831,7 +4831,7 @@ Editor::handle_new_route (RouteList& routes) for (RouteList::iterator x = routes.begin(); x != routes.end(); ++x) { boost::shared_ptr<Route> route = (*x); - if (route->is_hidden() || route->is_control()) { + if (route->is_hidden() || route->is_monitor()) { continue; } diff --git a/gtk2_ardour/mixer_group_tabs.cc b/gtk2_ardour/mixer_group_tabs.cc index 2563adb1d6..a52271d0de 100644 --- a/gtk2_ardour/mixer_group_tabs.cc +++ b/gtk2_ardour/mixer_group_tabs.cc @@ -55,7 +55,7 @@ MixerGroupTabs::compute_tabs () const MixerStrip* s = (*i)[_mixer->track_columns.strip]; - if (s->route()->is_master() || s->route()->is_control() || !s->marked_for_display()) { + if (s->route()->is_master() || s->route()->is_monitor() || !s->marked_for_display()) { continue; } @@ -131,7 +131,7 @@ MixerGroupTabs::routes_for_tab (Tab const * t) const MixerStrip* s = (*i)[_mixer->track_columns.strip]; - if (s->route()->is_master() || s->route()->is_control() || !s->marked_for_display()) { + if (s->route()->is_master() || s->route()->is_monitor() || !s->marked_for_display()) { continue; } diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc index 6b92873569..6f55d7a684 100644 --- a/gtk2_ardour/mixer_strip.cc +++ b/gtk2_ardour/mixer_strip.cc @@ -344,7 +344,7 @@ MixerStrip::set_route (boost::shared_ptr<Route> rt) solo_button->show (); } - if (_mixer_owned && (route()->is_master() || route()->is_control())) { + if (_mixer_owned && (route()->is_master() || route()->is_monitor())) { if (scrollbar_height == 0) { HScrollbar scrollbar; @@ -448,7 +448,7 @@ MixerStrip::set_route (boost::shared_ptr<Route> rt) processor_box.show(); - if (!route()->is_master() && !route()->is_control()) { + if (!route()->is_master() && !route()->is_monitor()) { /* we don't allow master or control routes to be hidden */ hide_button.show(); } diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc index 6a273434e3..dd7d12d763 100644 --- a/gtk2_ardour/mixer_ui.cc +++ b/gtk2_ardour/mixer_ui.cc @@ -321,7 +321,7 @@ Mixer_UI::add_strip (RouteList& routes) continue; } - if (route->is_control()) { + if (route->is_monitor()) { if (!_monitor_section) { _monitor_section = new MonitorSection (_session); out_packer.pack_end (_monitor_section->tearoff(), false, false); @@ -624,7 +624,7 @@ Mixer_UI::set_all_strips_visibility (bool yn) continue; } - if (strip->route()->is_master() || strip->route()->is_control()) { + if (strip->route()->is_master() || strip->route()->is_monitor()) { continue; } @@ -652,7 +652,7 @@ Mixer_UI::set_all_audio_visibility (int tracks, bool yn) continue; } - if (strip->route()->is_master() || strip->route()->is_control()) { + if (strip->route()->is_master() || strip->route()->is_monitor()) { continue; } @@ -775,7 +775,7 @@ Mixer_UI::redisplay_track_list () if (strip->packed()) { - if (strip->route()->is_master() || strip->route()->is_control()) { + if (strip->route()->is_master() || strip->route()->is_monitor()) { out_packer.reorder_child (*strip, -1); } else { strip_packer.reorder_child (*strip, -1); /* put at end */ @@ -783,7 +783,7 @@ Mixer_UI::redisplay_track_list () } else { - if (strip->route()->is_master() || strip->route()->is_control()) { + if (strip->route()->is_master() || strip->route()->is_monitor()) { out_packer.pack_start (*strip, false, false); } else { strip_packer.pack_start (*strip, false, false); @@ -796,7 +796,7 @@ Mixer_UI::redisplay_track_list () strip->set_marked_for_display (false); - if (strip->route()->is_master() || strip->route()->is_control()) { + if (strip->route()->is_master() || strip->route()->is_monitor()) { /* do nothing, these cannot be hidden */ } else { if (strip->packed()) { @@ -994,7 +994,7 @@ Mixer_UI::track_display_button_press (GdkEventButton* ev) MixerStrip* strip = (*iter)[track_columns.strip]; if (strip) { - if (!strip->route()->is_master() && !strip->route()->is_control()) { + if (!strip->route()->is_master() && !strip->route()->is_monitor()) { bool visible = (*iter)[track_columns.visible]; (*iter)[track_columns.visible] = !visible; } diff --git a/gtk2_ardour/monitor_section.cc b/gtk2_ardour/monitor_section.cc index 32a0247e99..9490d5a72a 100644 --- a/gtk2_ardour/monitor_section.cc +++ b/gtk2_ardour/monitor_section.cc @@ -275,7 +275,7 @@ MonitorSection::set_session (Session* s) if (_session) { - _route = _session->control_out (); + _route = _session->monitor_out (); if (_route) { /* session with control outs */ diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index 4674bd3c19..887ca93bd0 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -785,7 +785,7 @@ RouteTimeAxisView::set_height (uint32_t h) gm.get_gain_slider().show(); mute_button->show(); - if (!_route || _route->is_control()) { + if (!_route || _route->is_monitor()) { solo_button->hide(); } else { solo_button->show(); @@ -811,7 +811,7 @@ RouteTimeAxisView::set_height (uint32_t h) gm.get_gain_slider().hide(); mute_button->show(); - if (!_route || _route->is_control()) { + if (!_route || _route->is_monitor()) { solo_button->hide(); } else { solo_button->show(); diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index 6c96ebac48..b0075a6a67 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -223,7 +223,7 @@ RouteUI::set_route (boost::shared_ptr<Route> rp) mute_button->show(); - if (_route->is_control()) { + if (_route->is_monitor()) { solo_button->hide (); } else { solo_button->show(); @@ -677,7 +677,7 @@ RouteUI::listen_changed(void* /*src*/) int RouteUI::solo_visual_state (boost::shared_ptr<Route> r) { - if (r->is_master() || r->is_control()) { + if (r->is_master() || r->is_monitor()) { return 0; } @@ -701,7 +701,7 @@ RouteUI::solo_visual_state (boost::shared_ptr<Route> r) int RouteUI::solo_visual_state_with_isolate (boost::shared_ptr<Route> r) { - if (r->is_master() || r->is_control()) { + if (r->is_master() || r->is_monitor()) { return 0; } @@ -727,7 +727,7 @@ RouteUI::solo_visual_state_with_isolate (boost::shared_ptr<Route> r) int RouteUI::solo_isolate_visual_state (boost::shared_ptr<Route> r) { - if (r->is_master() || r->is_control()) { + if (r->is_master() || r->is_monitor()) { return 0; } @@ -779,7 +779,7 @@ RouteUI::mute_changed(void* /*src*/) int RouteUI::mute_visual_state (Session* s, boost::shared_ptr<Route> r) { - if (r->is_master() || r->is_control()) { + if (r->is_master() || r->is_monitor()) { return 0; } diff --git a/gtk2_ardour/startup.cc b/gtk2_ardour/startup.cc index fb3e950ba2..b0a0233adb 100644 --- a/gtk2_ardour/startup.cc +++ b/gtk2_ardour/startup.cc @@ -561,6 +561,13 @@ ArdourStartup::populate_session_templates () } } +static bool +lost_name_entry_focus (GdkEventFocus* ev) +{ + cerr << "lost focus\n"; + return false; +} + void ArdourStartup::setup_new_session_page () { @@ -711,6 +718,14 @@ ArdourStartup::setup_new_session_page () set_page_title (session_vbox, _("New Session")); set_page_type (session_vbox, ASSISTANT_PAGE_CONFIRM); + new_name_entry.signal_map().connect (sigc::mem_fun (*this, &ArdourStartup::new_name_mapped)); + new_name_entry.signal_focus_out_event().connect (sigc::ptr_fun (lost_name_entry_focus)); +} + +void +ArdourStartup::new_name_mapped () +{ + cerr << "Grab new name focus\n"; new_name_entry.grab_focus (); } diff --git a/gtk2_ardour/startup.h b/gtk2_ardour/startup.h index d2aadd62b1..8867c2dfb3 100644 --- a/gtk2_ardour/startup.h +++ b/gtk2_ardour/startup.h @@ -156,6 +156,7 @@ class ArdourStartup : public Gtk::Assistant { Gtk::Entry new_name_entry; Gtk::FileChooserButton new_folder_chooser; Gtk::FileChooserButton session_template_chooser; + void new_name_mapped (); struct SessionTemplateColumns : public Gtk::TreeModel::ColumnRecord { SessionTemplateColumns () { |