diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-03-16 16:51:54 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-03-16 16:51:54 +0000 |
commit | 416e3c701e81027e7581a290ec0326529dc3d069 (patch) | |
tree | 6e5573efb53975f2b5104c64217e2beebfedd699 /gtk2_ardour/editor_ops.cc | |
parent | 8b03f1790a3adfbedb6686f2916eba39f15bbc6f (diff) |
put back revised version of Route::has_external_redirects() and use it to give a warning when attempting to freeze a track with sends/inserts/returns
git-svn-id: svn://localhost/ardour2/branches/3.0@11707 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_ops.cc')
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index ac1de28e8d..22d89bdf96 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -3390,6 +3390,25 @@ Editor::freeze_route () return; } + if (clicked_routeview->track()->has_external_redirects()) { + MessageDialog d (string_compose (_("<b>%1</b>\n\nThis track has at least one send/insert/return as part of its signal flow.\n\n" + "Freezing will only process the signal as far as the first send/insert/return."), + clicked_routeview->track()->name()), true, MESSAGE_INFO, BUTTONS_NONE, true); + + d.add_button (_("Freeze anyway"), Gtk::RESPONSE_OK); + d.add_button (_("Don't freeze"), Gtk::RESPONSE_CANCEL); + d.set_title (_("Freeze Limits")); + + int response = d.run (); + + switch (response) { + case Gtk::RESPONSE_CANCEL: + return; + default: + break; + } + } + InterThreadInfo itt; current_interthread_info = &itt; |