summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_keyboard.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/editor_keyboard.cc')
-rw-r--r--gtk2_ardour/editor_keyboard.cc81
1 files changed, 13 insertions, 68 deletions
diff --git a/gtk2_ardour/editor_keyboard.cc b/gtk2_ardour/editor_keyboard.cc
index 28b86f53fc..2912e2f4ee 100644
--- a/gtk2_ardour/editor_keyboard.cc
+++ b/gtk2_ardour/editor_keyboard.cc
@@ -19,14 +19,19 @@
#include <ardour/audioregion.h>
#include <ardour/playlist.h>
+#include <ardour/location.h>
+
#include <pbd/memento_command.h>
#include "editor.h"
#include "region_view.h"
#include "selection.h"
+#include "keyboard.h"
#include "i18n.h"
+using namespace ARDOUR;
+
void
Editor::kbd_driver (sigc::slot<void,GdkEvent*> theslot, bool use_track_canvas, bool use_time_canvas, bool can_select)
{
@@ -71,48 +76,6 @@ Editor::kbd_driver (sigc::slot<void,GdkEvent*> theslot, bool use_track_canvas, b
}
void
-Editor::kbd_set_playhead_cursor ()
-{
- kbd_driver (mem_fun(*this, &Editor::set_playhead_cursor), true, true, false);
-}
-
-void
-Editor::kbd_set_edit_cursor ()
-{
- kbd_driver (mem_fun(*this, &Editor::set_edit_cursor), true, true, false);
-}
-
-
-void
-Editor::kbd_do_split (GdkEvent* ev)
-{
- nframes_t where = event_frame (ev);
-
- if (entered_regionview) {
- if (selection->regions.contains (entered_regionview)) {
- split_regions_at (where, selection->regions);
- } else {
- RegionSelection s;
-
- /* add equivalent regions to the selection that we'll split */
- vector<RegionView*> eq;
- get_equivalent_regions (entered_regionview, eq);
- for (vector<RegionView*>::iterator i = eq.begin(); i != eq.end(); ++i) {
- s.add (*i);
- }
-
- split_regions_at (where, s);
- }
- }
-}
-
-void
-Editor::kbd_split ()
-{
- kbd_driver (mem_fun(*this, &Editor::kbd_do_split), true, true, false);
-}
-
-void
Editor::kbd_mute_unmute_region ()
{
if (entered_regionview) {
@@ -136,36 +99,18 @@ Editor::kbd_set_sync_position ()
void
Editor::kbd_do_set_sync_position (GdkEvent* ev)
{
- nframes_t where = event_frame (ev);
- snap_to (where);
-
if (entered_regionview) {
- set_a_regions_sync_position (entered_regionview->region(), where);
- }
-}
-
-void
-Editor::kbd_do_align (GdkEvent* ev, ARDOUR::RegionPoint what)
-{
- align (what);
-}
+ nframes64_t where = event_frame (ev);
+ snap_to (where);
-void
-Editor::kbd_align (ARDOUR::RegionPoint what)
-{
- kbd_driver (bind (mem_fun(*this, &Editor::kbd_do_align), what));
-}
+ set_a_regions_sync_position (entered_regionview->region(), where);
-void
-Editor::kbd_do_align_relative (GdkEvent* ev, ARDOUR::RegionPoint what)
-{
- align (what);
-}
+ } else if (entered_marker) {
-void
-Editor::kbd_align_relative (ARDOUR::RegionPoint what)
-{
- kbd_driver (bind (mem_fun(*this, &Editor::kbd_do_align), what), true, true, false);
+ if (!selection->regions.empty()) {
+ set_a_regions_sync_position (selection->regions.front()->region(), entered_marker->position());
+ }
+ }
}
void