From d4eacffb26a3198a278ed92a0fa556fe1a31d757 Mon Sep 17 00:00:00 2001 From: Taybin Rutkin Date: Mon, 6 Nov 2006 17:59:03 +0000 Subject: Two patches from Brian Ahr. Thanks! *Fixed zooming on edit cursor. *Fixed play-from-edit-cursor. git-svn-id: svn://localhost/ardour2/trunk@1078 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/editor.cc | 4 ++-- gtk2_ardour/editor.h | 1 + gtk2_ardour/editor_ops.cc | 8 +++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 32d4f4e658..a9f4b4b7dc 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -1865,7 +1865,7 @@ Editor::add_dstream_context_items (Menu_Helpers::MenuList& edit_items) MenuList& play_items = play_menu->items(); play_menu->set_name ("ArdourContextMenu"); - play_items.push_back (MenuElem (_("Play from edit cursor"))); + play_items.push_back (MenuElem (_("Play from edit cursor"), mem_fun(*this, &Editor::play_from_edit_cursor))); play_items.push_back (MenuElem (_("Play from start"), mem_fun(*this, &Editor::play_from_start))); play_items.push_back (MenuElem (_("Play region"), mem_fun(*this, &Editor::play_selected_region))); play_items.push_back (SeparatorElem()); @@ -1950,7 +1950,7 @@ Editor::add_bus_context_items (Menu_Helpers::MenuList& edit_items) MenuList& play_items = play_menu->items(); play_menu->set_name ("ArdourContextMenu"); - play_items.push_back (MenuElem (_("Play from edit cursor"))); + play_items.push_back (MenuElem (_("Play from edit cursor"), mem_fun(*this, &Editor::play_from_edit_cursor))); play_items.push_back (MenuElem (_("Play from start"), mem_fun(*this, &Editor::play_from_start))); edit_items.push_back (MenuElem (_("Play"), *play_menu)); diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index 0117d364f1..10747735b5 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -893,6 +893,7 @@ class Editor : public PublicEditor void rename_region_finished (bool); void play_from_start (); + void play_from_edit_cursor (); void play_selected_region (); void audition_selected_region (); void loop_selected_region (); diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index ec2435c67b..6d006f94bf 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -1088,7 +1088,7 @@ Editor::temporal_zoom (gdouble fpu) case ZoomFocusEdit: /* try to keep the edit cursor in the center */ - if (edit_cursor->current_frame > leftmost_frame + (new_page/2)) { + if (edit_cursor->current_frame > new_page/2) { leftmost_after_zoom = edit_cursor->current_frame - (new_page/2); } else { leftmost_after_zoom = 0; @@ -1854,6 +1854,12 @@ Editor::play_from_start () session->request_locate (session->current_start_frame(), true); } +void +Editor::play_from_edit_cursor () +{ + session->request_locate (edit_cursor->current_frame, true); +} + void Editor::play_selection () { -- cgit v1.2.3