restored track height adjustment using alt-scroll on track headers
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 12 Jun 2014 21:21:41 +0000 (17:21 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 12 Jun 2014 21:21:41 +0000 (17:21 -0400)
gtk2_ardour/time_axis_view.cc

index 059776bd92606326561f855021d0f67c6661fee8..a05b144e562d97cbff8941cf186c6ee86ac4e460 100644 (file)
@@ -287,6 +287,36 @@ TimeAxisView::show_at (double y, int& nth, VBox *parent)
 bool
 TimeAxisView::controls_ebox_scroll (GdkEventScroll* ev)
 {
+       switch (ev->direction) {
+       case GDK_SCROLL_UP:
+               if (Keyboard::modifier_state_equals (ev->state, Keyboard::ScrollZoomVerticalModifier)) {
+                       /* See Editor::_stepping_axis_view for notes on this hack */
+                       Editor& e = dynamic_cast<Editor&> (_editor);
+                       if (!e.stepping_axis_view ()) {
+                               e.set_stepping_axis_view (this);
+                       }
+                       e.stepping_axis_view()->step_height (false);
+                       return true;
+               } 
+               break;
+
+       case GDK_SCROLL_DOWN:
+               if (Keyboard::modifier_state_equals (ev->state, Keyboard::ScrollZoomVerticalModifier)) {
+                       /* See Editor::_stepping_axis_view for notes on this hack */
+                       Editor& e = dynamic_cast<Editor&> (_editor);
+                       if (!e.stepping_axis_view ()) {
+                               e.set_stepping_axis_view (this);
+                       }
+                       e.stepping_axis_view()->step_height (true);
+                       return true;
+               } 
+               break;
+
+       default:
+               /* no handling for left/right, yet */
+               break;
+       }
+
        /* Just forward to the normal canvas scroll method. The coordinate
           systems are different but since the canvas is always larger than the
           track headers, and aligned with the trackview area, this will work.