diff options
author | Carl Hetherington <carl@carlh.net> | 2012-05-31 18:04:47 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2012-05-31 18:04:47 +0000 |
commit | 6a4628e50acaaf1540491cf4aac412e8bb3fc0b3 (patch) | |
tree | 3e1ea20945fb907221d4b9083177c100a47b11b9 /libs | |
parent | 556732df8047c5738d0f50fb192c45c02bb90def (diff) |
Use the same logic to decide on step size when scroll-wheeling faders in the mixer and knobs in the monitor section (part of #4726).
git-svn-id: svn://localhost/ardour2/branches/3.0@12510 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/gtkmm2ext/gtkmm2ext/keyboard.h | 2 | ||||
-rw-r--r-- | libs/gtkmm2ext/gtkmm2ext/pixfader.h | 3 | ||||
-rw-r--r-- | libs/gtkmm2ext/keyboard.cc | 3 | ||||
-rw-r--r-- | libs/gtkmm2ext/motionfeedback.cc | 16 | ||||
-rw-r--r-- | libs/gtkmm2ext/pixfader.cc | 13 |
5 files changed, 19 insertions, 18 deletions
diff --git a/libs/gtkmm2ext/gtkmm2ext/keyboard.h b/libs/gtkmm2ext/gtkmm2ext/keyboard.h index 9b083317e3..3287cdb37e 100644 --- a/libs/gtkmm2ext/gtkmm2ext/keyboard.h +++ b/libs/gtkmm2ext/gtkmm2ext/keyboard.h @@ -56,6 +56,8 @@ class Keyboard : public sigc::trackable, PBD::Stateful static uint32_t Level4Modifier; static uint32_t CopyModifier; static uint32_t RangeSelectModifier; + static uint32_t GainFineScaleModifier; + static uint32_t GainExtraFineScaleModifier; static const char* primary_modifier_name (); static const char* secondary_modifier_name (); diff --git a/libs/gtkmm2ext/gtkmm2ext/pixfader.h b/libs/gtkmm2ext/gtkmm2ext/pixfader.h index 43df8e555e..e32fe7550b 100644 --- a/libs/gtkmm2ext/gtkmm2ext/pixfader.h +++ b/libs/gtkmm2ext/gtkmm2ext/pixfader.h @@ -85,9 +85,6 @@ class PixFader : public Gtk::DrawingArea int display_span (); void set_adjustment_from_event (GdkEventButton *); void update_unity_position (); - - static int fine_scale_modifier; - static int extra_fine_scale_modifier; }; diff --git a/libs/gtkmm2ext/keyboard.cc b/libs/gtkmm2ext/keyboard.cc index e5dd3d0e51..6328eb977c 100644 --- a/libs/gtkmm2ext/keyboard.cc +++ b/libs/gtkmm2ext/keyboard.cc @@ -91,6 +91,9 @@ const char* Keyboard::rangeselect_modifier_name() { return S_("Key|Shift"); } #endif +guint Keyboard::GainFineScaleModifier = Keyboard::PrimaryModifier; +guint Keyboard::GainExtraFineScaleModifier = Keyboard::SecondaryModifier; + Keyboard* Keyboard::_the_keyboard = 0; Gtk::Window* Keyboard::current_window = 0; bool Keyboard::_some_magic_widget_has_focus = false; diff --git a/libs/gtkmm2ext/motionfeedback.cc b/libs/gtkmm2ext/motionfeedback.cc index 7a6d02f531..b5bdd82aa5 100644 --- a/libs/gtkmm2ext/motionfeedback.cc +++ b/libs/gtkmm2ext/motionfeedback.cc @@ -381,23 +381,25 @@ MotionFeedback::pixwin_scroll_event (GdkEventScroll* ev) return false; } - if ((ev->state & (Keyboard::PrimaryModifier|Keyboard::TertiaryModifier)) == (Keyboard::PrimaryModifier|Keyboard::TertiaryModifier)) { - scale = 0.01; - } else if (ev->state & Keyboard::PrimaryModifier) { - scale = 0.1; + if (ev->state & Keyboard::GainFineScaleModifier) { + if (ev->state & Keyboard::GainExtraFineScaleModifier) { + scale = 0.01; + } else { + scale = 0.05; + } } else { - scale = 1.0; + scale = 0.25; } switch (ev->direction) { case GDK_SCROLL_UP: case GDK_SCROLL_RIGHT: - _controllable->set_value (adjust (scale * step_inc)); + _controllable->set_value (adjust (scale * page_inc)); break; case GDK_SCROLL_DOWN: case GDK_SCROLL_LEFT: - _controllable->set_value (adjust (-scale * step_inc)); + _controllable->set_value (adjust (-scale * page_inc)); break; } diff --git a/libs/gtkmm2ext/pixfader.cc b/libs/gtkmm2ext/pixfader.cc index 9851b6397d..e146f7aa60 100644 --- a/libs/gtkmm2ext/pixfader.cc +++ b/libs/gtkmm2ext/pixfader.cc @@ -28,9 +28,6 @@ using namespace Gtkmm2ext; using namespace Gtk; using namespace std; -int PixFader::fine_scale_modifier = Keyboard::PrimaryModifier; -int PixFader::extra_fine_scale_modifier = Keyboard::SecondaryModifier; - PixFader::PixFader (Glib::RefPtr<Gdk::Pixbuf> belt, Gtk::Adjustment& adj, int orientation, int fader_length) : adjustment (adj), @@ -221,7 +218,7 @@ PixFader::on_button_release_event (GdkEventButton* ev) if (ev->state & Keyboard::TertiaryModifier) { adjustment.set_value (default_value); - } else if (ev->state & fine_scale_modifier) { + } else if (ev->state & Keyboard::GainFineScaleModifier) { adjustment.set_value (adjustment.get_lower()); } else if ((_orien == VERT && ev_pos < span - display_span()) || (_orien == HORIZ && ev_pos > span - display_span())) { /* above the current display height, remember X Window coords */ @@ -255,8 +252,8 @@ PixFader::on_scroll_event (GdkEventScroll* ev) double scale; bool ret = false; - if (ev->state & fine_scale_modifier) { - if (ev->state & extra_fine_scale_modifier) { + if (ev->state & Keyboard::GainFineScaleModifier) { + if (ev->state & Keyboard::GainExtraFineScaleModifier) { scale = 0.01; } else { scale = 0.05; @@ -320,8 +317,8 @@ PixFader::on_motion_notify_event (GdkEventMotion* ev) return true; } - if (ev->state & fine_scale_modifier) { - if (ev->state & extra_fine_scale_modifier) { + if (ev->state & Keyboard::GainFineScaleModifier) { + if (ev->state & Keyboard::GainExtraFineScaleModifier) { scale = 0.05; } else { scale = 0.1; |