diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-01 20:45:57 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-01 20:45:57 -0400 |
commit | 2da10afb6492815aa76e9b8bb771f09c10721991 (patch) | |
tree | 94585b3c9fff57fb83ca9090013db0170758ca73 /gtk2_ardour | |
parent | 851a3924955a52a220b9a811229abdb2e8c8315f (diff) |
fix #5424: routes created from templates do not get names based on the user-supplied text from the add route dialog
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/add_route_dialog.cc | 17 | ||||
-rw-r--r-- | gtk2_ardour/add_route_dialog.h | 3 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 6 |
3 files changed, 23 insertions, 3 deletions
diff --git a/gtk2_ardour/add_route_dialog.cc b/gtk2_ardour/add_route_dialog.cc index 487d65a19c..f5f4c62dac 100644 --- a/gtk2_ardour/add_route_dialog.cc +++ b/gtk2_ardour/add_route_dialog.cc @@ -288,11 +288,26 @@ AddRouteDialog::track_type_chosen () string -AddRouteDialog::name_template () +AddRouteDialog::name_template () const { return name_template_entry.get_text (); } +bool +AddRouteDialog::name_template_is_default() const +{ + string n = name_template(); + + if (n == _("Audio") || + n == _("MIDI") || + n == _("Audio+MIDI") || + n == _("Bus")) { + return true; + } + + return false; +} + int AddRouteDialog::count () { diff --git a/gtk2_ardour/add_route_dialog.h b/gtk2_ardour/add_route_dialog.h index f2e2168f14..6fe7266452 100644 --- a/gtk2_ardour/add_route_dialog.h +++ b/gtk2_ardour/add_route_dialog.h @@ -59,7 +59,8 @@ class AddRouteDialog : public ArdourDialog ARDOUR::ChanCount channels (); int count (); - std::string name_template (); + std::string name_template () const; + bool name_template_is_default () const; std::string track_template (); ARDOUR::PluginInfoPtr requested_instrument (); diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index bba740ae25..f21817c29d 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -3297,7 +3297,11 @@ ARDOUR_UI::add_route (Gtk::Window* float_window) string template_path = add_route_dialog->track_template(); if (!template_path.empty()) { - _session->new_route_from_template (count, template_path); + if (add_route_dialog->name_template_is_default()) { + _session->new_route_from_template (count, template_path, string()); + } else { + _session->new_route_from_template (count, template_path, add_route_dialog->name_template()); + } return; } |