diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-17 13:54:04 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-17 13:54:04 +0000 |
commit | 29d677e6681b02d6940346ac88a432558b6c2a43 (patch) | |
tree | 9db8a282b8f139e90518d31e89ef1ca0f3548114 /gtk2_ardour/utils.cc | |
parent | d0cc6edadfd793b5207a63226402eedc15f101b4 (diff) |
allow use of Return, KP_Enter and more in key binding editor; better display of such bindings; potential fix for "crashes" caused by an endless loop of enter/hide events involving the verbose canvas cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@6109 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/utils.cc')
-rw-r--r-- | gtk2_ardour/utils.cc | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index 0f53b0912f..e50a39b397 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -879,6 +879,14 @@ possibly_translate_keyval_to_make_legal_accelerator (uint32_t& keyval) fakekey = GDK_leftarrow; break; + case GDK_Return: + fakekey = GDK_3270_Enter; + break; + + case GDK_KP_Enter: + fakekey = GDK_F35; + break; + default: break; } @@ -891,6 +899,42 @@ possibly_translate_keyval_to_make_legal_accelerator (uint32_t& keyval) return false; } +uint32_t +possibly_translate_legal_accelerator_to_real_key (uint32_t keyval) +{ + switch (keyval) { + case GDK_nabla: + return GDK_Tab; + break; + + case GDK_uparrow: + return GDK_Up; + break; + + case GDK_downarrow: + return GDK_Down; + break; + + case GDK_rightarrow: + return GDK_Right; + break; + + case GDK_leftarrow: + return GDK_Left; + break; + + case GDK_3270_Enter: + return GDK_Return; + + case GDK_F35: + return GDK_KP_Enter; + break; + } + + return keyval; +} + + inline guint8 convert_color_channel (guint8 src, |