diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-02-15 20:39:43 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-02-15 20:39:43 +0000 |
commit | 0c71b89a15ffde9e64601ced0ba201484eaf15dd (patch) | |
tree | 80183d326ca124c78fa659016a599978be4b3a84 /libs/gtkmm2ext | |
parent | 6f0f3d70565b908961ab52af66b392cd346501d9 (diff) |
make fine-tuning modifiers for PixFader platform specific
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3063 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/gtkmm2ext')
-rw-r--r-- | libs/gtkmm2ext/gtkmm2ext/pixfader.h | 3 | ||||
-rw-r--r-- | libs/gtkmm2ext/pixfader.cc | 12 |
2 files changed, 13 insertions, 2 deletions
diff --git a/libs/gtkmm2ext/gtkmm2ext/pixfader.h b/libs/gtkmm2ext/gtkmm2ext/pixfader.h index d974f5d5bc..e610d40f22 100644 --- a/libs/gtkmm2ext/gtkmm2ext/pixfader.h +++ b/libs/gtkmm2ext/gtkmm2ext/pixfader.h @@ -61,6 +61,9 @@ class PixFader : public Gtk::DrawingArea { void adjustment_changed (); int display_height (); + + static uint fine_scale_modifier; + static uint extra_fine_scale_modifier; }; diff --git a/libs/gtkmm2ext/pixfader.cc b/libs/gtkmm2ext/pixfader.cc index 217fe50d03..b48916ed01 100644 --- a/libs/gtkmm2ext/pixfader.cc +++ b/libs/gtkmm2ext/pixfader.cc @@ -27,6 +27,14 @@ using namespace Gtk; using namespace Gdk; using namespace std; +#ifdef GTKOSX +uint PixFader::fine_scale_modifier = GDK_META_MASK; +#else +uint PixFader::fine_scale_modifier = GDK_CONTROL_MASK; +#endif + +uint PixFader::extra_fine_scale_modifier = GDK_MOD1_MASK; + PixFader::PixFader (Glib::RefPtr<Pixbuf> belt, Gtk::Adjustment& adj) : adjustment (adj), pixbuf (belt) @@ -205,8 +213,8 @@ PixFader::on_motion_notify_event (GdkEventMotion* ev) return true; } - if (ev->state & GDK_CONTROL_MASK) { - if (ev->state & GDK_MOD1_MASK) { + if (ev->state & fine_scale_modifier) { + if (ev->state & extra_fine_scale_modifier) { scale = 0.05; } else { scale = 0.1; |