void
AddRouteDialog::on_response (int r)
{
- name_edited_by_user = false;
+ reset_name_edited ();
/* Don't call ArdourDialog::on_response() because that will
automatically hide the dialog.
*/
void
AddRouteDialog::name_template_entry_insertion (Glib::ustring const &,int*)
{
- name_edited_by_user = true;
+ if (name_template ().empty ()) {
+ name_edited_by_user = false;
+ } else {
+ name_edited_by_user = true;
+ }
}
void
AddRouteDialog::name_template_entry_deletion (int, int)
{
- name_edited_by_user = true;
+ if (name_template ().empty ()) {
+ name_edited_by_user = false;
+ } else {
+ name_edited_by_user = true;
+ }
}
void
name_template_entry.set_text (VCA::default_name_template());
break;
}
- name_edited_by_user = false;
+ /* ignore programatic change, restore false */
+ reset_name_edited ();
}
void
AddRouteDialog::on_show ()
{
routes_spinner.grab_focus ();
- name_edited_by_user = false;
+ reset_name_edited ();
refill_route_groups ();
std::string get_template_path();
+ void reset_name_edited () { name_edited_by_user = false; }
+
private:
Gtk::Entry name_template_entry;
Gtk::Adjustment routes_adjustment;
switch (r) {
case AddRouteDialog::Add:
+ add_route_dialog->reset_name_edited ();
break;
case AddRouteDialog::AddAndClose:
add_route_dialog->ArdourDialog::on_response (r);