some improvements to the add track/bus dialog to make it more obvious how to add MIDI tracks
git-svn-id: svn://localhost/ardour2/branches/3.0@11348 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
9ac351e60c
commit
a880cb543d
@ -61,7 +61,7 @@ AddRouteDialog::AddRouteDialog (Session* s)
|
||||
set_resizable (false);
|
||||
|
||||
name_template_entry.set_name (X_("AddRouteDialogNameTemplateEntry"));
|
||||
routes_spinner.set_name (X_("AddRouteDialogSpinner"));
|
||||
// routes_spinner.set_name (X_("AddRouteDialogSpinner"));
|
||||
channel_combo.set_name (X_("ChannelCountSelector"));
|
||||
mode_combo.set_name (X_("ChannelCountSelector"));
|
||||
|
||||
@ -71,8 +71,9 @@ AddRouteDialog::AddRouteDialog (Session* s)
|
||||
|
||||
channel_combo.set_active_text (channel_combo_strings.front());
|
||||
|
||||
track_bus_combo.append_text (_("tracks"));
|
||||
track_bus_combo.append_text (_("busses"));
|
||||
track_bus_combo.append_text (_("Audio Tracks"));
|
||||
track_bus_combo.append_text (_("MIDI Tracks"));
|
||||
track_bus_combo.append_text (_("Busses"));
|
||||
track_bus_combo.set_active (0);
|
||||
|
||||
VBox* vbox = manage (new VBox);
|
||||
@ -186,12 +187,10 @@ AddRouteDialog::maybe_update_name_template_entry ()
|
||||
return;
|
||||
}
|
||||
|
||||
if (track ()) {
|
||||
if (type () == DataType::MIDI) {
|
||||
name_template_entry.set_text (_("MIDI"));
|
||||
} else {
|
||||
name_template_entry.set_text (_("Audio"));
|
||||
}
|
||||
if (audio_tracks_wanted ()) {
|
||||
name_template_entry.set_text (_("Audio"));
|
||||
} else if (midi_tracks_wanted()) {
|
||||
name_template_entry.set_text (_("MIDI"));
|
||||
} else {
|
||||
name_template_entry.set_text (_("Bus"));
|
||||
}
|
||||
@ -200,22 +199,30 @@ AddRouteDialog::maybe_update_name_template_entry ()
|
||||
void
|
||||
AddRouteDialog::track_type_chosen ()
|
||||
{
|
||||
mode_combo.set_sensitive (track ());
|
||||
if (midi_tracks_wanted()) {
|
||||
channel_combo.set_sensitive (false);
|
||||
mode_combo.set_sensitive (false);
|
||||
} else if (audio_tracks_wanted()) {
|
||||
mode_combo.set_sensitive (true);
|
||||
channel_combo.set_sensitive (true);
|
||||
} else {
|
||||
mode_combo.set_sensitive (false);
|
||||
channel_combo.set_sensitive (true);
|
||||
}
|
||||
|
||||
maybe_update_name_template_entry ();
|
||||
}
|
||||
|
||||
bool
|
||||
AddRouteDialog::track ()
|
||||
AddRouteDialog::audio_tracks_wanted ()
|
||||
{
|
||||
return track_bus_combo.get_active_row_number () == 0;
|
||||
}
|
||||
|
||||
ARDOUR::DataType
|
||||
AddRouteDialog::type ()
|
||||
bool
|
||||
AddRouteDialog::midi_tracks_wanted ()
|
||||
{
|
||||
return (channel_combo.get_active_text() == _("MIDI"))
|
||||
? ARDOUR::DataType::MIDI
|
||||
: ARDOUR::DataType::AUDIO;
|
||||
return track_bus_combo.get_active_row_number () == 1;
|
||||
}
|
||||
|
||||
string
|
||||
@ -239,10 +246,7 @@ AddRouteDialog::refill_track_modes ()
|
||||
|
||||
if (!ARDOUR::Profile->get_sae ()) {
|
||||
s.push_back (_("Non Layered"));
|
||||
|
||||
if (type() != DataType::MIDI) {
|
||||
s.push_back (_("Tape"));
|
||||
}
|
||||
s.push_back (_("Tape"));
|
||||
}
|
||||
|
||||
set_popdown_strings (mode_combo, s);
|
||||
@ -329,13 +333,6 @@ AddRouteDialog::refill_channel_setups ()
|
||||
chn.name = "separator";
|
||||
channel_setups.push_back (chn);
|
||||
|
||||
chn.name = _("MIDI");
|
||||
chn.channels = 0;
|
||||
channel_setups.push_back (chn);
|
||||
|
||||
chn.name = "separator";
|
||||
channel_setups.push_back (chn);
|
||||
|
||||
ARDOUR::find_route_templates (route_templates);
|
||||
|
||||
if (!ARDOUR::Profile->get_sae()) {
|
||||
|
@ -45,14 +45,14 @@ class AddRouteDialog : public ArdourDialog
|
||||
AddRouteDialog (ARDOUR::Session*);
|
||||
~AddRouteDialog ();
|
||||
|
||||
bool track ();
|
||||
bool audio_tracks_wanted ();
|
||||
bool midi_tracks_wanted ();
|
||||
int channels ();
|
||||
int count ();
|
||||
|
||||
std::string name_template ();
|
||||
std::string track_template ();
|
||||
|
||||
ARDOUR::DataType type();
|
||||
ARDOUR::TrackMode mode();
|
||||
ARDOUR::RouteGroup* route_group ();
|
||||
|
||||
|
@ -3260,6 +3260,7 @@ ARDOUR_UI::add_route (Gtk::Window* float_window)
|
||||
|
||||
if (add_route_dialog == 0) {
|
||||
add_route_dialog = new AddRouteDialog (_session);
|
||||
add_route_dialog->set_position (WIN_POS_MOUSE);
|
||||
if (float_window) {
|
||||
add_route_dialog->set_transient_for (*float_window);
|
||||
}
|
||||
@ -3296,7 +3297,6 @@ ARDOUR_UI::add_route (Gtk::Window* float_window)
|
||||
uint32_t input_chan = add_route_dialog->channels ();
|
||||
uint32_t output_chan;
|
||||
string name_template = add_route_dialog->name_template ();
|
||||
bool track = add_route_dialog->track ();
|
||||
RouteGroup* route_group = add_route_dialog->route_group ();
|
||||
|
||||
AutoConnectOption oac = Config->get_output_auto_connect();
|
||||
@ -3309,21 +3309,12 @@ ARDOUR_UI::add_route (Gtk::Window* float_window)
|
||||
|
||||
/* XXX do something with name template */
|
||||
|
||||
if (add_route_dialog->type() == ARDOUR::DataType::MIDI) {
|
||||
if (track) {
|
||||
session_add_midi_track (route_group, count, name_template);
|
||||
} else {
|
||||
MessageDialog msg (*editor,
|
||||
_("Sorry, MIDI Busses are not supported at this time."));
|
||||
msg.run ();
|
||||
//session_add_midi_bus();
|
||||
}
|
||||
if (add_route_dialog->midi_tracks_wanted()) {
|
||||
session_add_midi_track (route_group, count, name_template);
|
||||
} else if (add_route_dialog->audio_tracks_wanted()) {
|
||||
session_add_audio_track (input_chan, output_chan, add_route_dialog->mode(), route_group, count, name_template);
|
||||
} else {
|
||||
if (track) {
|
||||
session_add_audio_track (input_chan, output_chan, add_route_dialog->mode(), route_group, count, name_template);
|
||||
} else {
|
||||
session_add_audio_bus (input_chan, output_chan, route_group, count, name_template);
|
||||
}
|
||||
session_add_audio_bus (input_chan, output_chan, route_group, count, name_template);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user