From 91ee1b6186f1ef039f5765e54675e7418ddabb35 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Thu, 24 Nov 2016 22:11:19 +0100 Subject: [PATCH] Don't allow duplicate playlist names --- gtk2_ardour/route_time_axis.cc | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index 21ff5f8063..7bb41cf8ec 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -1124,20 +1124,25 @@ RouteTimeAxisView::rename_current_playlist () prompter.set_title (_("Rename Playlist")); prompter.set_prompt (_("New name for playlist:")); - prompter.set_initial_text (pl->name()); prompter.add_button (_("Rename"), Gtk::RESPONSE_ACCEPT); + prompter.set_initial_text (pl->name()); prompter.set_response_sensitive (Gtk::RESPONSE_ACCEPT, false); - switch (prompter.run ()) { - case Gtk::RESPONSE_ACCEPT: + while (true) { + if (prompter.run () != Gtk::RESPONSE_ACCEPT) { + break; + } prompter.get_result (name); if (name.length()) { - pl->set_name (name); + if (_session->playlists->by_name (name)) { + MessageDialog msg (_("Given playlist name is not unique.")); + msg.run (); + prompter.set_initial_text (Playlist::bump_name (name, *_session)); + } else { + pl->set_name (name); + break; + } } - break; - - default: - break; } } -- 2.30.2