diff options
author | Nick Mainsbridge <beatroute@iprimus.com.au> | 2006-04-10 02:14:05 +0000 |
---|---|---|
committer | Nick Mainsbridge <beatroute@iprimus.com.au> | 2006-04-10 02:14:05 +0000 |
commit | 7e8a98224578e03e17fbf5e656241ff5ef1a0bc1 (patch) | |
tree | 33ceaf82af27e800a3b81b2c367522f2252a9fb4 /libs/gtkmm2ext/pixscroller.cc | |
parent | e9f9ca5278c6bcafd6a22ad273185c31664c32a5 (diff) |
Reinstate mouse scroll actions (audio clocks, shuttle wheel, faders), clearing selection is undoable, fix compiler warning, add modified patch by Jon Michael Smith for mouse wheel track height adjustment and vertical canvas scrolling (thanks Jon)
git-svn-id: svn://localhost/trunk/ardour2@449 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/gtkmm2ext/pixscroller.cc')
-rw-r--r-- | libs/gtkmm2ext/pixscroller.cc | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/libs/gtkmm2ext/pixscroller.cc b/libs/gtkmm2ext/pixscroller.cc index 813b4fd7f6..f459726f27 100644 --- a/libs/gtkmm2ext/pixscroller.cc +++ b/libs/gtkmm2ext/pixscroller.cc @@ -176,11 +176,34 @@ PixScroller::on_button_release_event (GdkEventButton* ev) } } break; - case 4: + default: + break; + } + return false; +} + +bool +PixScroller::on_scroll_event (GdkEventScroll* ev) +{ + double scale; + + if (ev->state & GDK_CONTROL_MASK) { + if (ev->state & GDK_MOD1_MASK) { + scale = 0.05; + } else { + scale = 0.1; + } + } else { + scale = 0.5; + } + + switch (ev->direction) { + + case GDK_SCROLL_UP: /* wheel up */ adj.set_value (adj.get_value() + (adj.get_page_increment() * scale)); break; - case 5: + case GDK_SCROLL_DOWN: /* wheel down */ adj.set_value (adj.get_value() - (adj.get_page_increment() * scale)); break; |