summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_canvas_events.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2005-12-24 02:17:47 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2005-12-24 02:17:47 +0000
commit45addca9eb60a92acda39c8f811d25daa0cfb216 (patch)
tree12dc04771c301f5d6c6e1df9c1e0d1e379b4d49d /gtk2_ardour/editor_canvas_events.cc
parentfc6242613634f0cd6a725a5e9d07a29580c74698 (diff)
various changes to controls_layout size management
git-svn-id: svn://localhost/trunk/ardour2@205 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_canvas_events.cc')
-rw-r--r--gtk2_ardour/editor_canvas_events.cc29
1 files changed, 29 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_canvas_events.cc b/gtk2_ardour/editor_canvas_events.cc
index c4bd2081e7..f09c4d028f 100644
--- a/gtk2_ardour/editor_canvas_events.cc
+++ b/gtk2_ardour/editor_canvas_events.cc
@@ -45,10 +45,35 @@ using namespace ARDOUR;
using namespace Gtk;
bool
+Editor::track_canvas_scroll (GdkEventScroll* ev)
+{
+ switch (ev->direction) {
+ case GDK_SCROLL_UP:
+ scroll_tracks_up_line ();
+ return true;
+ break;
+
+ case GDK_SCROLL_DOWN:
+ scroll_tracks_down_line ();
+ return true;
+
+ default:
+ /* no left/right handling yet */
+ break;
+ }
+
+ return false;
+}
+
+bool
Editor::track_canvas_event (GdkEvent *event, ArdourCanvas::Item* item)
{
gint x, y;
+ /* this is the handler for events that are not handled by
+ items.
+ */
+
switch (event->type) {
case GDK_MOTION_NOTIFY:
/* keep those motion events coming */
@@ -64,6 +89,10 @@ Editor::track_canvas_event (GdkEvent *event, ArdourCanvas::Item* item)
}
break;
+ case GDK_SCROLL:
+ track_canvas_scroll (&event->scroll);
+ break;
+
default:
break;
}