summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-04-01 20:45:57 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-04-01 20:45:57 -0400
commit2da10afb6492815aa76e9b8bb771f09c10721991 (patch)
tree94585b3c9fff57fb83ca9090013db0170758ca73 /gtk2_ardour
parent851a3924955a52a220b9a811229abdb2e8c8315f (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.cc17
-rw-r--r--gtk2_ardour/add_route_dialog.h3
-rw-r--r--gtk2_ardour/ardour_ui.cc6
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;
}