Remove duplicate header include from libardour source file
[ardour.git] / libs / gtkmm2ext / auto_spin.cc
index 683603b964ab404c5eb38dece3e8034a903a625a..2c70cb4293e16ec7fcc4fde659f666fb97fed3ee 100644 (file)
@@ -74,6 +74,10 @@ AutoSpin::button_press (GdkEventButton *ev)
 
        stop_spinning (0);
 
+       if (ev->type == GDK_2BUTTON_PRESS || ev->type == GDK_3BUTTON_PRESS ) {
+               return true;
+       }
+
        if (ev->state & Keyboard::TertiaryModifier) {
                /* use page shift */
 
@@ -139,6 +143,30 @@ AutoSpin::button_press (GdkEventButton *ev)
        return TRUE;
 }
 
+gint
+AutoSpin::scroll_event (GdkEventScroll *ev)
+{
+       stop_spinning (0);
+
+       gfloat increment = step_increment;
+
+       if (ev->state & Keyboard::TertiaryModifier) {
+               increment = page_increment;
+       }
+
+       switch (ev->direction) {
+               case GDK_SCROLL_DOWN:
+               case GDK_SCROLL_LEFT:
+                       adjust_value (-increment);
+                       break;
+               case GDK_SCROLL_RIGHT:
+               case GDK_SCROLL_UP:
+                       adjust_value (increment);
+                       break;
+       }
+       return TRUE;
+}
+
 void
 AutoSpin::start_spinning (bool decrement, bool page)
 {