- ArdourDialog dialog (_("ardour: rename redirect"), true);
- Entry entry;
- VBox vbox;
- HBox hbox;
- Button ok_button (_("OK"));
- Button cancel_button (_("Cancel"));
-
- dialog.set_name ("RedirectRenameWindow");
- dialog.set_size_request (300, -1);
- dialog.set_position (Gtk::WIN_POS_MOUSE);
-
- dialog.add_action_widget (entry, RESPONSE_ACCEPT);
- dialog.add_button (Stock::OK, RESPONSE_ACCEPT);
- dialog.add_button (Stock::CANCEL, RESPONSE_CANCEL);
-
- entry.set_name ("RedirectNameDisplay");
- entry.set_text (redirect->name());
- entry.select_region (0, -1);
- entry.grab_focus ();
-
- switch (dialog.run ()) {
- case RESPONSE_ACCEPT:
- redirect->set_name (entry.get_text(), this);
- break;
- default:
+ ArdourPrompter name_prompter (true);
+ string result;
+ name_prompter.set_prompt (_("rename redirect"));
+ name_prompter.set_initial_text (redirect->name());
+ name_prompter.add_button (_("Rename"), Gtk::RESPONSE_ACCEPT);
+ name_prompter.set_response_sensitive (Gtk::RESPONSE_ACCEPT, false);
+ name_prompter.show_all ();
+
+ switch (name_prompter.run ()) {
+
+ case Gtk::RESPONSE_ACCEPT:
+ name_prompter.get_result (result);
+ if (result.length()) {
+ redirect->set_name (result, this);
+ }