summaryrefslogtreecommitdiff
path: root/gtk2_ardour/insert_remove_time_dialog.cc
diff options
context:
space:
mode:
authorColin Fletcher <colin.m.fletcher@googlemail.com>2016-01-19 19:34:41 +0000
committerColin Fletcher <colin.m.fletcher@googlemail.com>2016-02-06 10:21:44 +0000
commitb9a3e33bf74ad39555ef8072ab7e3eb68ddf3987 (patch)
treefabc75a34e0b70d3d1f71035a7963a48dcfe655b /gtk2_ardour/insert_remove_time_dialog.cc
parent3b1d1675de4a73d144ec3e895e542abf9a4e06e1 (diff)
Add a simple check for valid duration in 'Insert/Remove Time'
Diffstat (limited to 'gtk2_ardour/insert_remove_time_dialog.cc')
-rw-r--r--gtk2_ardour/insert_remove_time_dialog.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/gtk2_ardour/insert_remove_time_dialog.cc b/gtk2_ardour/insert_remove_time_dialog.cc
index 851f57d1ba..8620ba18e5 100644
--- a/gtk2_ardour/insert_remove_time_dialog.cc
+++ b/gtk2_ardour/insert_remove_time_dialog.cc
@@ -96,7 +96,9 @@ InsertRemoveTimeDialog::InsertRemoveTimeDialog (PublicEditor& e, bool remove)
get_vbox()->pack_start (*tempo_box);
add_button (Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL);
- add_button (remove ? _("Remove time") : _("Insert time"), Gtk::RESPONSE_OK);
+ Gtk::Button *btn = manage (new Gtk::Button (remove ? _("Remove time") : _("Insert time")));
+ btn->signal_clicked().connect (sigc::mem_fun(*this, &InsertRemoveTimeDialog::doit));
+ get_action_area()->pack_start (*btn);
show_all ();
move_markers_toggled ();
@@ -166,6 +168,17 @@ InsertRemoveTimeDialog::distance () const
}
void
+InsertRemoveTimeDialog::doit ()
+{
+ if (distance () == 0) {
+ Gtk::MessageDialog msg (*this, _("Invalid or zero duration entered. Please enter a valid duration"));
+ msg.run ();
+ return;
+ }
+ response (RESPONSE_OK);
+}
+
+void
InsertRemoveTimeDialog::move_markers_toggled ()
{
_move_glued_markers.set_sensitive (_move_markers.get_active ());