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
This commit is contained in:
Paul Davis 2009-11-17 13:54:04 +00:00
parent d0cc6edadf
commit 29d677e668
9 changed files with 119 additions and 26 deletions

View file

@ -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,