add_route_dialog: add a checkbox to show Tracks on the Cue page

This commit is contained in:
Ben Loftis 2022-03-18 18:36:06 -05:00
parent c814726dc0
commit b25aa18c80
3 changed files with 25 additions and 1 deletions

View File

@ -81,6 +81,7 @@ AddRouteDialog::AddRouteDialog ()
, mode_label (_("Record Mode:"))
, instrument_label (_("Instrument:"))
, instrument_combo (InstrumentSelector::ForTrackSelector)
, show_on_cue_chkbox (_("Show on Cue Page"))
, last_route_count (1)
, route_count_set_by_template (false)
, name_edited_by_user (false)
@ -320,6 +321,7 @@ AddRouteDialog::AddRouteDialog ()
insert_label.set_alignment (Gtk::ALIGN_RIGHT, Gtk::ALIGN_CENTER);
outer_box->pack_start (insert_label, false, false);
outer_box->pack_start (insert_at_combo, false, false);
outer_box->pack_start (show_on_cue_chkbox, false, false);
/* quick-add button (add item but don't close dialog) */
Gtk::Button* addnoclose_button = manage (new Gtk::Button(_("Add selected items (and leave dialog open)")));
@ -474,6 +476,7 @@ AddRouteDialog::trk_template_row_selected ()
name_label.set_sensitive (true);
group_label.set_sensitive (false);
strict_io_label.set_sensitive (false);
show_on_cue_chkbox.set_sensitive (false);
configuration_label.set_sensitive (false);
mode_label.set_sensitive (false);
instrument_label.set_sensitive (false);
@ -495,6 +498,7 @@ AddRouteDialog::trk_template_row_selected ()
name_label.set_sensitive (true);
group_label.set_sensitive (true);
strict_io_label.set_sensitive (true);
show_on_cue_chkbox.set_sensitive (true);
routes_spinner.set_sensitive (true);
name_template_entry.set_sensitive (true);
@ -643,6 +647,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (true);
strict_io_combo.set_sensitive (true);
show_on_cue_chkbox.set_sensitive (true);
insert_label.set_sensitive (true);
insert_at_combo.set_sensitive (true);
@ -664,6 +670,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (true);
strict_io_combo.set_sensitive (true);
show_on_cue_chkbox.set_sensitive (true);
insert_label.set_sensitive (true);
insert_at_combo.set_sensitive (true);
@ -685,6 +693,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (true);
strict_io_combo.set_sensitive (true);
show_on_cue_chkbox.set_sensitive (false);
insert_label.set_sensitive (true);
insert_at_combo.set_sensitive (true);
@ -706,6 +716,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (false);
strict_io_combo.set_sensitive (false);
show_on_cue_chkbox.set_sensitive (false);
insert_label.set_sensitive (false);
insert_at_combo.set_sensitive (false);
@ -727,6 +739,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (true);
strict_io_combo.set_sensitive (true);
show_on_cue_chkbox.set_sensitive (false);
insert_label.set_sensitive (true);
insert_at_combo.set_sensitive (true);
@ -748,6 +762,8 @@ AddRouteDialog::track_type_chosen ()
strict_io_label.set_sensitive (false);
strict_io_combo.set_sensitive (false);
show_on_cue_chkbox.set_sensitive (false);
insert_label.set_sensitive (false);
insert_at_combo.set_sensitive (false);
@ -1008,6 +1024,11 @@ AddRouteDialog::use_strict_io() {
return strict_io_combo.get_active_row_number () == 1;
}
bool
AddRouteDialog::show_on_cue_page() {
return show_on_cue_chkbox.get_active();
}
void
AddRouteDialog::refill_route_groups ()
{

View File

@ -90,6 +90,8 @@ public:
RouteDialogs::InsertAt insert_at();
bool use_strict_io();
bool show_on_cue_page();
std::string get_template_path();
void reset_name_edited () { name_edited_by_user = false; }
@ -113,6 +115,7 @@ private:
InstrumentSelector instrument_combo;
Gtk::ComboBoxText insert_at_combo;
Gtk::ComboBoxText strict_io_combo;
Gtk::CheckButton show_on_cue_chkbox;
void track_type_chosen ();
void refill_channel_setups ();

View File

@ -2862,7 +2862,7 @@ ARDOUR_UI::add_route_dialog_response (int r)
RouteGroup* route_group = add_route_dialog->route_group ();
AutoConnectOption oac = Config->get_output_auto_connect();
bool strict_io = add_route_dialog->use_strict_io ();
bool trigger_visibility = true;
bool trigger_visibility = add_route_dialog->show_on_cue_page ();
if (oac & AutoConnectMaster) {
output_chan.set (DataType::AUDIO, (_session->master_out() ? _session->master_out()->n_inputs().n_audio() : input_chan.n_audio()));