1 // Take a look at the license at the top of the repository in the LICENSE file.
2 
3 use glib::translate::*;
4 use glib::GString;
5 use libc::c_uint;
6 use std::mem;
7 
8 #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
9 pub struct Key(u32);
10 
11 impl ::std::ops::Deref for Key {
12     type Target = u32;
13 
deref(&self) -> &u3214     fn deref(&self) -> &u32 {
15         &self.0
16     }
17 }
18 
19 impl ::std::ops::DerefMut for Key {
deref_mut(&mut self) -> &mut u3220     fn deref_mut(&mut self) -> &mut u32 {
21         &mut self.0
22     }
23 }
24 
25 impl ::std::convert::From<u32> for Key {
from(value: u32) -> Self26     fn from(value: u32) -> Self {
27         skip_assert_initialized!();
28         Self(value)
29     }
30 }
31 
32 impl FromGlib<u32> for Key {
from_glib(value: u32) -> Self33     unsafe fn from_glib(value: u32) -> Self {
34         skip_assert_initialized!();
35         Self(value)
36     }
37 }
38 
39 impl IntoGlib for Key {
40     type GlibType = u32;
41 
into_glib(self) -> u3242     fn into_glib(self) -> u32 {
43         *self
44     }
45 }
46 
47 impl Key {
48     #[doc(alias = "gdk_keyval_from_name")]
from_name(keyval_name: &str) -> Self49     pub fn from_name(keyval_name: &str) -> Self {
50         skip_assert_initialized!();
51         Self(unsafe { ffi::gdk_keyval_from_name(keyval_name.to_glib_none().0) })
52     }
53 
54     #[doc(alias = "gdk_unicode_to_keyval")]
from_unicode(c: char) -> Self55     pub fn from_unicode(c: char) -> Self {
56         skip_assert_initialized!();
57         Self(unsafe { ffi::gdk_unicode_to_keyval(u32::from(c)) })
58     }
59 
60     #[doc(alias = "gdk_keyval_to_unicode")]
to_unicode(&self) -> Option<char>61     pub fn to_unicode(&self) -> Option<char> {
62         skip_assert_initialized!();
63         unsafe { ::std::char::from_u32(ffi::gdk_keyval_to_unicode(**self)).filter(|x| *x != '\0') }
64     }
65 
66     #[doc(alias = "gdk_keyval_name")]
name(&self) -> Option<GString>67     pub fn name(&self) -> Option<GString> {
68         skip_assert_initialized!();
69         unsafe { from_glib_none(ffi::gdk_keyval_name(**self as c_uint)) }
70     }
71 
72     #[doc(alias = "gdk_keyval_is_upper")]
is_upper(&self) -> bool73     pub fn is_upper(&self) -> bool {
74         skip_assert_initialized!();
75         unsafe { from_glib(ffi::gdk_keyval_is_upper(**self)) }
76     }
77 
78     #[doc(alias = "gdk_keyval_is_lower")]
is_lower(&self) -> bool79     pub fn is_lower(&self) -> bool {
80         skip_assert_initialized!();
81         unsafe { from_glib(ffi::gdk_keyval_is_lower(**self)) }
82     }
83 
84     #[doc(alias = "gdk_keyval_to_upper")]
to_upper(&self) -> Self85     pub fn to_upper(&self) -> Self {
86         skip_assert_initialized!();
87         unsafe { ffi::gdk_keyval_to_upper(**self) }.into()
88     }
89 
90     #[doc(alias = "gdk_keyval_to_lower")]
to_lower(&self) -> Self91     pub fn to_lower(&self) -> Self {
92         skip_assert_initialized!();
93         unsafe { ffi::gdk_keyval_to_lower(**self) }.into()
94     }
95 
96     #[doc(alias = "gdk_keyval_convert_case")]
convert_case(&self) -> (Self, Self)97     pub fn convert_case(&self) -> (Self, Self) {
98         skip_assert_initialized!();
99         unsafe {
100             let mut lower = mem::MaybeUninit::uninit();
101             let mut upper = mem::MaybeUninit::uninit();
102             ffi::gdk_keyval_convert_case(self.0, lower.as_mut_ptr(), upper.as_mut_ptr());
103             let lower = lower.assume_init();
104             let upper = upper.assume_init();
105             (Self(lower), Self(upper))
106         }
107     }
108 }
109 
110 impl ::std::fmt::Display for Key {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result111     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
112         write!(f, "Key({})", self.0)
113     }
114 }
115 
116 #[allow(non_upper_case_globals)]
117 pub mod constants {
118     use super::Key;
119 
120     pub const VoidSymbol: Key = Key(ffi::GDK_KEY_VoidSymbol as u32);
121     pub const BackSpace: Key = Key(ffi::GDK_KEY_BackSpace as u32);
122     pub const Tab: Key = Key(ffi::GDK_KEY_Tab as u32);
123     pub const Linefeed: Key = Key(ffi::GDK_KEY_Linefeed as u32);
124     pub const Clear: Key = Key(ffi::GDK_KEY_Clear as u32);
125     pub const Return: Key = Key(ffi::GDK_KEY_Return as u32);
126     pub const Pause: Key = Key(ffi::GDK_KEY_Pause as u32);
127     pub const Scroll_Lock: Key = Key(ffi::GDK_KEY_Scroll_Lock as u32);
128     pub const Sys_Req: Key = Key(ffi::GDK_KEY_Sys_Req as u32);
129     pub const Escape: Key = Key(ffi::GDK_KEY_Escape as u32);
130     pub const Delete: Key = Key(ffi::GDK_KEY_Delete as u32);
131     pub const Multi_key: Key = Key(ffi::GDK_KEY_Multi_key as u32);
132     pub const Codeinput: Key = Key(ffi::GDK_KEY_Codeinput as u32);
133     pub const SingleCandidate: Key = Key(ffi::GDK_KEY_SingleCandidate as u32);
134     pub const MultipleCandidate: Key = Key(ffi::GDK_KEY_MultipleCandidate as u32);
135     pub const PreviousCandidate: Key = Key(ffi::GDK_KEY_PreviousCandidate as u32);
136     pub const Kanji: Key = Key(ffi::GDK_KEY_Kanji as u32);
137     pub const Muhenkan: Key = Key(ffi::GDK_KEY_Muhenkan as u32);
138     pub const Henkan_Mode: Key = Key(ffi::GDK_KEY_Henkan_Mode as u32);
139     pub const Henkan: Key = Key(ffi::GDK_KEY_Henkan as u32);
140     pub const Romaji: Key = Key(ffi::GDK_KEY_Romaji as u32);
141     pub const Hiragana: Key = Key(ffi::GDK_KEY_Hiragana as u32);
142     pub const Katakana: Key = Key(ffi::GDK_KEY_Katakana as u32);
143     pub const Hiragana_Katakana: Key = Key(ffi::GDK_KEY_Hiragana_Katakana as u32);
144     pub const Zenkaku: Key = Key(ffi::GDK_KEY_Zenkaku as u32);
145     pub const Hankaku: Key = Key(ffi::GDK_KEY_Hankaku as u32);
146     pub const Zenkaku_Hankaku: Key = Key(ffi::GDK_KEY_Zenkaku_Hankaku as u32);
147     pub const Touroku: Key = Key(ffi::GDK_KEY_Touroku as u32);
148     pub const Massyo: Key = Key(ffi::GDK_KEY_Massyo as u32);
149     pub const Kana_Lock: Key = Key(ffi::GDK_KEY_Kana_Lock as u32);
150     pub const Kana_Shift: Key = Key(ffi::GDK_KEY_Kana_Shift as u32);
151     pub const Eisu_Shift: Key = Key(ffi::GDK_KEY_Eisu_Shift as u32);
152     pub const Eisu_toggle: Key = Key(ffi::GDK_KEY_Eisu_toggle as u32);
153     pub const Kanji_Bangou: Key = Key(ffi::GDK_KEY_Kanji_Bangou as u32);
154     pub const Zen_Koho: Key = Key(ffi::GDK_KEY_Zen_Koho as u32);
155     pub const Mae_Koho: Key = Key(ffi::GDK_KEY_Mae_Koho as u32);
156     pub const Home: Key = Key(ffi::GDK_KEY_Home as u32);
157     pub const Left: Key = Key(ffi::GDK_KEY_Left as u32);
158     pub const Up: Key = Key(ffi::GDK_KEY_Up as u32);
159     pub const Right: Key = Key(ffi::GDK_KEY_Right as u32);
160     pub const Down: Key = Key(ffi::GDK_KEY_Down as u32);
161     pub const Prior: Key = Key(ffi::GDK_KEY_Prior as u32);
162     pub const Page_Up: Key = Key(ffi::GDK_KEY_Page_Up as u32);
163     pub const Next: Key = Key(ffi::GDK_KEY_Next as u32);
164     pub const Page_Down: Key = Key(ffi::GDK_KEY_Page_Down as u32);
165     pub const End: Key = Key(ffi::GDK_KEY_End as u32);
166     pub const Begin: Key = Key(ffi::GDK_KEY_Begin as u32);
167     pub const Select: Key = Key(ffi::GDK_KEY_Select as u32);
168     pub const Print: Key = Key(ffi::GDK_KEY_Print as u32);
169     pub const Execute: Key = Key(ffi::GDK_KEY_Execute as u32);
170     pub const Insert: Key = Key(ffi::GDK_KEY_Insert as u32);
171     pub const Undo: Key = Key(ffi::GDK_KEY_Undo as u32);
172     pub const Redo: Key = Key(ffi::GDK_KEY_Redo as u32);
173     pub const Menu: Key = Key(ffi::GDK_KEY_Menu as u32);
174     pub const Find: Key = Key(ffi::GDK_KEY_Find as u32);
175     pub const Cancel: Key = Key(ffi::GDK_KEY_Cancel as u32);
176     pub const Help: Key = Key(ffi::GDK_KEY_Help as u32);
177     pub const Break: Key = Key(ffi::GDK_KEY_Break as u32);
178     pub const Mode_switch: Key = Key(ffi::GDK_KEY_Mode_switch as u32);
179     pub const script_switch: Key = Key(ffi::GDK_KEY_script_switch as u32);
180     pub const Num_Lock: Key = Key(ffi::GDK_KEY_Num_Lock as u32);
181     pub const KP_Space: Key = Key(ffi::GDK_KEY_KP_Space as u32);
182     pub const KP_Tab: Key = Key(ffi::GDK_KEY_KP_Tab as u32);
183     pub const KP_Enter: Key = Key(ffi::GDK_KEY_KP_Enter as u32);
184     pub const KP_F1: Key = Key(ffi::GDK_KEY_KP_F1 as u32);
185     pub const KP_F2: Key = Key(ffi::GDK_KEY_KP_F2 as u32);
186     pub const KP_F3: Key = Key(ffi::GDK_KEY_KP_F3 as u32);
187     pub const KP_F4: Key = Key(ffi::GDK_KEY_KP_F4 as u32);
188     pub const KP_Home: Key = Key(ffi::GDK_KEY_KP_Home as u32);
189     pub const KP_Left: Key = Key(ffi::GDK_KEY_KP_Left as u32);
190     pub const KP_Up: Key = Key(ffi::GDK_KEY_KP_Up as u32);
191     pub const KP_Right: Key = Key(ffi::GDK_KEY_KP_Right as u32);
192     pub const KP_Down: Key = Key(ffi::GDK_KEY_KP_Down as u32);
193     pub const KP_Prior: Key = Key(ffi::GDK_KEY_KP_Prior as u32);
194     pub const KP_Page_Up: Key = Key(ffi::GDK_KEY_KP_Page_Up as u32);
195     pub const KP_Next: Key = Key(ffi::GDK_KEY_KP_Next as u32);
196     pub const KP_Page_Down: Key = Key(ffi::GDK_KEY_KP_Page_Down as u32);
197     pub const KP_End: Key = Key(ffi::GDK_KEY_KP_End as u32);
198     pub const KP_Begin: Key = Key(ffi::GDK_KEY_KP_Begin as u32);
199     pub const KP_Insert: Key = Key(ffi::GDK_KEY_KP_Insert as u32);
200     pub const KP_Delete: Key = Key(ffi::GDK_KEY_KP_Delete as u32);
201     pub const KP_Equal: Key = Key(ffi::GDK_KEY_KP_Equal as u32);
202     pub const KP_Multiply: Key = Key(ffi::GDK_KEY_KP_Multiply as u32);
203     pub const KP_Add: Key = Key(ffi::GDK_KEY_KP_Add as u32);
204     pub const KP_Separator: Key = Key(ffi::GDK_KEY_KP_Separator as u32);
205     pub const KP_Subtract: Key = Key(ffi::GDK_KEY_KP_Subtract as u32);
206     pub const KP_Decimal: Key = Key(ffi::GDK_KEY_KP_Decimal as u32);
207     pub const KP_Divide: Key = Key(ffi::GDK_KEY_KP_Divide as u32);
208     pub const KP_0: Key = Key(ffi::GDK_KEY_KP_0 as u32);
209     pub const KP_1: Key = Key(ffi::GDK_KEY_KP_1 as u32);
210     pub const KP_2: Key = Key(ffi::GDK_KEY_KP_2 as u32);
211     pub const KP_3: Key = Key(ffi::GDK_KEY_KP_3 as u32);
212     pub const KP_4: Key = Key(ffi::GDK_KEY_KP_4 as u32);
213     pub const KP_5: Key = Key(ffi::GDK_KEY_KP_5 as u32);
214     pub const KP_6: Key = Key(ffi::GDK_KEY_KP_6 as u32);
215     pub const KP_7: Key = Key(ffi::GDK_KEY_KP_7 as u32);
216     pub const KP_8: Key = Key(ffi::GDK_KEY_KP_8 as u32);
217     pub const KP_9: Key = Key(ffi::GDK_KEY_KP_9 as u32);
218     pub const F1: Key = Key(ffi::GDK_KEY_F1 as u32);
219     pub const F2: Key = Key(ffi::GDK_KEY_F2 as u32);
220     pub const F3: Key = Key(ffi::GDK_KEY_F3 as u32);
221     pub const F4: Key = Key(ffi::GDK_KEY_F4 as u32);
222     pub const F5: Key = Key(ffi::GDK_KEY_F5 as u32);
223     pub const F6: Key = Key(ffi::GDK_KEY_F6 as u32);
224     pub const F7: Key = Key(ffi::GDK_KEY_F7 as u32);
225     pub const F8: Key = Key(ffi::GDK_KEY_F8 as u32);
226     pub const F9: Key = Key(ffi::GDK_KEY_F9 as u32);
227     pub const F10: Key = Key(ffi::GDK_KEY_F10 as u32);
228     pub const F11: Key = Key(ffi::GDK_KEY_F11 as u32);
229     pub const L1: Key = Key(ffi::GDK_KEY_L1 as u32);
230     pub const F12: Key = Key(ffi::GDK_KEY_F12 as u32);
231     pub const L2: Key = Key(ffi::GDK_KEY_L2 as u32);
232     pub const F13: Key = Key(ffi::GDK_KEY_F13 as u32);
233     pub const L3: Key = Key(ffi::GDK_KEY_L3 as u32);
234     pub const F14: Key = Key(ffi::GDK_KEY_F14 as u32);
235     pub const L4: Key = Key(ffi::GDK_KEY_L4 as u32);
236     pub const F15: Key = Key(ffi::GDK_KEY_F15 as u32);
237     pub const L5: Key = Key(ffi::GDK_KEY_L5 as u32);
238     pub const F16: Key = Key(ffi::GDK_KEY_F16 as u32);
239     pub const L6: Key = Key(ffi::GDK_KEY_L6 as u32);
240     pub const F17: Key = Key(ffi::GDK_KEY_F17 as u32);
241     pub const L7: Key = Key(ffi::GDK_KEY_L7 as u32);
242     pub const F18: Key = Key(ffi::GDK_KEY_F18 as u32);
243     pub const L8: Key = Key(ffi::GDK_KEY_L8 as u32);
244     pub const F19: Key = Key(ffi::GDK_KEY_F19 as u32);
245     pub const L9: Key = Key(ffi::GDK_KEY_L9 as u32);
246     pub const F20: Key = Key(ffi::GDK_KEY_F20 as u32);
247     pub const L10: Key = Key(ffi::GDK_KEY_L10 as u32);
248     pub const F21: Key = Key(ffi::GDK_KEY_F21 as u32);
249     pub const R1: Key = Key(ffi::GDK_KEY_R1 as u32);
250     pub const F22: Key = Key(ffi::GDK_KEY_F22 as u32);
251     pub const R2: Key = Key(ffi::GDK_KEY_R2 as u32);
252     pub const F23: Key = Key(ffi::GDK_KEY_F23 as u32);
253     pub const R3: Key = Key(ffi::GDK_KEY_R3 as u32);
254     pub const F24: Key = Key(ffi::GDK_KEY_F24 as u32);
255     pub const R4: Key = Key(ffi::GDK_KEY_R4 as u32);
256     pub const F25: Key = Key(ffi::GDK_KEY_F25 as u32);
257     pub const R5: Key = Key(ffi::GDK_KEY_R5 as u32);
258     pub const F26: Key = Key(ffi::GDK_KEY_F26 as u32);
259     pub const R6: Key = Key(ffi::GDK_KEY_R6 as u32);
260     pub const F27: Key = Key(ffi::GDK_KEY_F27 as u32);
261     pub const R7: Key = Key(ffi::GDK_KEY_R7 as u32);
262     pub const F28: Key = Key(ffi::GDK_KEY_F28 as u32);
263     pub const R8: Key = Key(ffi::GDK_KEY_R8 as u32);
264     pub const F29: Key = Key(ffi::GDK_KEY_F29 as u32);
265     pub const R9: Key = Key(ffi::GDK_KEY_R9 as u32);
266     pub const F30: Key = Key(ffi::GDK_KEY_F30 as u32);
267     pub const R10: Key = Key(ffi::GDK_KEY_R10 as u32);
268     pub const F31: Key = Key(ffi::GDK_KEY_F31 as u32);
269     pub const R11: Key = Key(ffi::GDK_KEY_R11 as u32);
270     pub const F32: Key = Key(ffi::GDK_KEY_F32 as u32);
271     pub const R12: Key = Key(ffi::GDK_KEY_R12 as u32);
272     pub const F33: Key = Key(ffi::GDK_KEY_F33 as u32);
273     pub const R13: Key = Key(ffi::GDK_KEY_R13 as u32);
274     pub const F34: Key = Key(ffi::GDK_KEY_F34 as u32);
275     pub const R14: Key = Key(ffi::GDK_KEY_R14 as u32);
276     pub const F35: Key = Key(ffi::GDK_KEY_F35 as u32);
277     pub const R15: Key = Key(ffi::GDK_KEY_R15 as u32);
278     pub const Shift_L: Key = Key(ffi::GDK_KEY_Shift_L as u32);
279     pub const Shift_R: Key = Key(ffi::GDK_KEY_Shift_R as u32);
280     pub const Control_L: Key = Key(ffi::GDK_KEY_Control_L as u32);
281     pub const Control_R: Key = Key(ffi::GDK_KEY_Control_R as u32);
282     pub const Caps_Lock: Key = Key(ffi::GDK_KEY_Caps_Lock as u32);
283     pub const Shift_Lock: Key = Key(ffi::GDK_KEY_Shift_Lock as u32);
284     pub const Meta_L: Key = Key(ffi::GDK_KEY_Meta_L as u32);
285     pub const Meta_R: Key = Key(ffi::GDK_KEY_Meta_R as u32);
286     pub const Alt_L: Key = Key(ffi::GDK_KEY_Alt_L as u32);
287     pub const Alt_R: Key = Key(ffi::GDK_KEY_Alt_R as u32);
288     pub const Super_L: Key = Key(ffi::GDK_KEY_Super_L as u32);
289     pub const Super_R: Key = Key(ffi::GDK_KEY_Super_R as u32);
290     pub const Hyper_L: Key = Key(ffi::GDK_KEY_Hyper_L as u32);
291     pub const Hyper_R: Key = Key(ffi::GDK_KEY_Hyper_R as u32);
292     pub const ISO_Lock: Key = Key(ffi::GDK_KEY_ISO_Lock as u32);
293     pub const ISO_Level2_Latch: Key = Key(ffi::GDK_KEY_ISO_Level2_Latch as u32);
294     pub const ISO_Level3_Shift: Key = Key(ffi::GDK_KEY_ISO_Level3_Shift as u32);
295     pub const ISO_Level3_Latch: Key = Key(ffi::GDK_KEY_ISO_Level3_Latch as u32);
296     pub const ISO_Level3_Lock: Key = Key(ffi::GDK_KEY_ISO_Level3_Lock as u32);
297     pub const ISO_Level5_Shift: Key = Key(ffi::GDK_KEY_ISO_Level5_Shift as u32);
298     pub const ISO_Level5_Latch: Key = Key(ffi::GDK_KEY_ISO_Level5_Latch as u32);
299     pub const ISO_Level5_Lock: Key = Key(ffi::GDK_KEY_ISO_Level5_Lock as u32);
300     pub const ISO_Group_Shift: Key = Key(ffi::GDK_KEY_ISO_Group_Shift as u32);
301     pub const ISO_Group_Latch: Key = Key(ffi::GDK_KEY_ISO_Group_Latch as u32);
302     pub const ISO_Group_Lock: Key = Key(ffi::GDK_KEY_ISO_Group_Lock as u32);
303     pub const ISO_Next_Group: Key = Key(ffi::GDK_KEY_ISO_Next_Group as u32);
304     pub const ISO_Next_Group_Lock: Key = Key(ffi::GDK_KEY_ISO_Next_Group_Lock as u32);
305     pub const ISO_Prev_Group: Key = Key(ffi::GDK_KEY_ISO_Prev_Group as u32);
306     pub const ISO_Prev_Group_Lock: Key = Key(ffi::GDK_KEY_ISO_Prev_Group_Lock as u32);
307     pub const ISO_First_Group: Key = Key(ffi::GDK_KEY_ISO_First_Group as u32);
308     pub const ISO_First_Group_Lock: Key = Key(ffi::GDK_KEY_ISO_First_Group_Lock as u32);
309     pub const ISO_Last_Group: Key = Key(ffi::GDK_KEY_ISO_Last_Group as u32);
310     pub const ISO_Last_Group_Lock: Key = Key(ffi::GDK_KEY_ISO_Last_Group_Lock as u32);
311     pub const ISO_Left_Tab: Key = Key(ffi::GDK_KEY_ISO_Left_Tab as u32);
312     pub const ISO_Move_Line_Up: Key = Key(ffi::GDK_KEY_ISO_Move_Line_Up as u32);
313     pub const ISO_Move_Line_Down: Key = Key(ffi::GDK_KEY_ISO_Move_Line_Down as u32);
314     pub const ISO_Partial_Line_Up: Key = Key(ffi::GDK_KEY_ISO_Partial_Line_Up as u32);
315     pub const ISO_Partial_Line_Down: Key = Key(ffi::GDK_KEY_ISO_Partial_Line_Down as u32);
316     pub const ISO_Partial_Space_Left: Key = Key(ffi::GDK_KEY_ISO_Partial_Space_Left as u32);
317     pub const ISO_Partial_Space_Right: Key = Key(ffi::GDK_KEY_ISO_Partial_Space_Right as u32);
318     pub const ISO_Set_Margin_Left: Key = Key(ffi::GDK_KEY_ISO_Set_Margin_Left as u32);
319     pub const ISO_Set_Margin_Right: Key = Key(ffi::GDK_KEY_ISO_Set_Margin_Right as u32);
320     pub const ISO_Release_Margin_Left: Key = Key(ffi::GDK_KEY_ISO_Release_Margin_Left as u32);
321     pub const ISO_Release_Margin_Right: Key = Key(ffi::GDK_KEY_ISO_Release_Margin_Right as u32);
322     pub const ISO_Release_Both_Margins: Key = Key(ffi::GDK_KEY_ISO_Release_Both_Margins as u32);
323     pub const ISO_Fast_Cursor_Left: Key = Key(ffi::GDK_KEY_ISO_Fast_Cursor_Left as u32);
324     pub const ISO_Fast_Cursor_Right: Key = Key(ffi::GDK_KEY_ISO_Fast_Cursor_Right as u32);
325     pub const ISO_Fast_Cursor_Up: Key = Key(ffi::GDK_KEY_ISO_Fast_Cursor_Up as u32);
326     pub const ISO_Fast_Cursor_Down: Key = Key(ffi::GDK_KEY_ISO_Fast_Cursor_Down as u32);
327     pub const ISO_Continuous_Underline: Key = Key(ffi::GDK_KEY_ISO_Continuous_Underline as u32);
328     pub const ISO_Discontinuous_Underline: Key =
329         Key(ffi::GDK_KEY_ISO_Discontinuous_Underline as u32);
330     pub const ISO_Emphasize: Key = Key(ffi::GDK_KEY_ISO_Emphasize as u32);
331     pub const ISO_Center_Object: Key = Key(ffi::GDK_KEY_ISO_Center_Object as u32);
332     pub const ISO_Enter: Key = Key(ffi::GDK_KEY_ISO_Enter as u32);
333     pub const dead_grave: Key = Key(ffi::GDK_KEY_dead_grave as u32);
334     pub const dead_acute: Key = Key(ffi::GDK_KEY_dead_acute as u32);
335     pub const dead_circumflex: Key = Key(ffi::GDK_KEY_dead_circumflex as u32);
336     pub const dead_tilde: Key = Key(ffi::GDK_KEY_dead_tilde as u32);
337     pub const dead_perispomeni: Key = Key(ffi::GDK_KEY_dead_perispomeni as u32);
338     pub const dead_macron: Key = Key(ffi::GDK_KEY_dead_macron as u32);
339     pub const dead_breve: Key = Key(ffi::GDK_KEY_dead_breve as u32);
340     pub const dead_abovedot: Key = Key(ffi::GDK_KEY_dead_abovedot as u32);
341     pub const dead_diaeresis: Key = Key(ffi::GDK_KEY_dead_diaeresis as u32);
342     pub const dead_abovering: Key = Key(ffi::GDK_KEY_dead_abovering as u32);
343     pub const dead_doubleacute: Key = Key(ffi::GDK_KEY_dead_doubleacute as u32);
344     pub const dead_caron: Key = Key(ffi::GDK_KEY_dead_caron as u32);
345     pub const dead_cedilla: Key = Key(ffi::GDK_KEY_dead_cedilla as u32);
346     pub const dead_ogonek: Key = Key(ffi::GDK_KEY_dead_ogonek as u32);
347     pub const dead_iota: Key = Key(ffi::GDK_KEY_dead_iota as u32);
348     pub const dead_voiced_sound: Key = Key(ffi::GDK_KEY_dead_voiced_sound as u32);
349     pub const dead_semivoiced_sound: Key = Key(ffi::GDK_KEY_dead_semivoiced_sound as u32);
350     pub const dead_belowdot: Key = Key(ffi::GDK_KEY_dead_belowdot as u32);
351     pub const dead_hook: Key = Key(ffi::GDK_KEY_dead_hook as u32);
352     pub const dead_horn: Key = Key(ffi::GDK_KEY_dead_horn as u32);
353     pub const dead_stroke: Key = Key(ffi::GDK_KEY_dead_stroke as u32);
354     pub const dead_abovecomma: Key = Key(ffi::GDK_KEY_dead_abovecomma as u32);
355     pub const dead_psili: Key = Key(ffi::GDK_KEY_dead_psili as u32);
356     pub const dead_abovereversedcomma: Key = Key(ffi::GDK_KEY_dead_abovereversedcomma as u32);
357     pub const dead_dasia: Key = Key(ffi::GDK_KEY_dead_dasia as u32);
358     pub const dead_doublegrave: Key = Key(ffi::GDK_KEY_dead_doublegrave as u32);
359     pub const dead_belowring: Key = Key(ffi::GDK_KEY_dead_belowring as u32);
360     pub const dead_belowmacron: Key = Key(ffi::GDK_KEY_dead_belowmacron as u32);
361     pub const dead_belowcircumflex: Key = Key(ffi::GDK_KEY_dead_belowcircumflex as u32);
362     pub const dead_belowtilde: Key = Key(ffi::GDK_KEY_dead_belowtilde as u32);
363     pub const dead_belowbreve: Key = Key(ffi::GDK_KEY_dead_belowbreve as u32);
364     pub const dead_belowdiaeresis: Key = Key(ffi::GDK_KEY_dead_belowdiaeresis as u32);
365     pub const dead_invertedbreve: Key = Key(ffi::GDK_KEY_dead_invertedbreve as u32);
366     pub const dead_belowcomma: Key = Key(ffi::GDK_KEY_dead_belowcomma as u32);
367     pub const dead_currency: Key = Key(ffi::GDK_KEY_dead_currency as u32);
368     pub const dead_a: Key = Key(ffi::GDK_KEY_dead_a as u32);
369     pub const dead_A: Key = Key(ffi::GDK_KEY_dead_A as u32);
370     pub const dead_e: Key = Key(ffi::GDK_KEY_dead_e as u32);
371     pub const dead_E: Key = Key(ffi::GDK_KEY_dead_E as u32);
372     pub const dead_i: Key = Key(ffi::GDK_KEY_dead_i as u32);
373     pub const dead_I: Key = Key(ffi::GDK_KEY_dead_I as u32);
374     pub const dead_o: Key = Key(ffi::GDK_KEY_dead_o as u32);
375     pub const dead_O: Key = Key(ffi::GDK_KEY_dead_O as u32);
376     pub const dead_u: Key = Key(ffi::GDK_KEY_dead_u as u32);
377     pub const dead_U: Key = Key(ffi::GDK_KEY_dead_U as u32);
378     pub const dead_small_schwa: Key = Key(ffi::GDK_KEY_dead_small_schwa as u32);
379     pub const dead_capital_schwa: Key = Key(ffi::GDK_KEY_dead_capital_schwa as u32);
380     pub const dead_greek: Key = Key(ffi::GDK_KEY_dead_greek as u32);
381     pub const First_Virtual_Screen: Key = Key(ffi::GDK_KEY_First_Virtual_Screen as u32);
382     pub const Prev_Virtual_Screen: Key = Key(ffi::GDK_KEY_Prev_Virtual_Screen as u32);
383     pub const Next_Virtual_Screen: Key = Key(ffi::GDK_KEY_Next_Virtual_Screen as u32);
384     pub const Last_Virtual_Screen: Key = Key(ffi::GDK_KEY_Last_Virtual_Screen as u32);
385     pub const Terminate_Server: Key = Key(ffi::GDK_KEY_Terminate_Server as u32);
386     pub const AccessX_Enable: Key = Key(ffi::GDK_KEY_AccessX_Enable as u32);
387     pub const AccessX_Feedback_Enable: Key = Key(ffi::GDK_KEY_AccessX_Feedback_Enable as u32);
388     pub const RepeatKeys_Enable: Key = Key(ffi::GDK_KEY_RepeatKeys_Enable as u32);
389     pub const SlowKeys_Enable: Key = Key(ffi::GDK_KEY_SlowKeys_Enable as u32);
390     pub const BounceKeys_Enable: Key = Key(ffi::GDK_KEY_BounceKeys_Enable as u32);
391     pub const StickyKeys_Enable: Key = Key(ffi::GDK_KEY_StickyKeys_Enable as u32);
392     pub const MouseKeys_Enable: Key = Key(ffi::GDK_KEY_MouseKeys_Enable as u32);
393     pub const MouseKeys_Accel_Enable: Key = Key(ffi::GDK_KEY_MouseKeys_Accel_Enable as u32);
394     pub const Overlay1_Enable: Key = Key(ffi::GDK_KEY_Overlay1_Enable as u32);
395     pub const Overlay2_Enable: Key = Key(ffi::GDK_KEY_Overlay2_Enable as u32);
396     pub const AudibleBell_Enable: Key = Key(ffi::GDK_KEY_AudibleBell_Enable as u32);
397     pub const Pointer_Left: Key = Key(ffi::GDK_KEY_Pointer_Left as u32);
398     pub const Pointer_Right: Key = Key(ffi::GDK_KEY_Pointer_Right as u32);
399     pub const Pointer_Up: Key = Key(ffi::GDK_KEY_Pointer_Up as u32);
400     pub const Pointer_Down: Key = Key(ffi::GDK_KEY_Pointer_Down as u32);
401     pub const Pointer_UpLeft: Key = Key(ffi::GDK_KEY_Pointer_UpLeft as u32);
402     pub const Pointer_UpRight: Key = Key(ffi::GDK_KEY_Pointer_UpRight as u32);
403     pub const Pointer_DownLeft: Key = Key(ffi::GDK_KEY_Pointer_DownLeft as u32);
404     pub const Pointer_DownRight: Key = Key(ffi::GDK_KEY_Pointer_DownRight as u32);
405     pub const Pointer_Button_Dflt: Key = Key(ffi::GDK_KEY_Pointer_Button_Dflt as u32);
406     pub const Pointer_Button1: Key = Key(ffi::GDK_KEY_Pointer_Button1 as u32);
407     pub const Pointer_Button2: Key = Key(ffi::GDK_KEY_Pointer_Button2 as u32);
408     pub const Pointer_Button3: Key = Key(ffi::GDK_KEY_Pointer_Button3 as u32);
409     pub const Pointer_Button4: Key = Key(ffi::GDK_KEY_Pointer_Button4 as u32);
410     pub const Pointer_Button5: Key = Key(ffi::GDK_KEY_Pointer_Button5 as u32);
411     pub const Pointer_DblClick_Dflt: Key = Key(ffi::GDK_KEY_Pointer_DblClick_Dflt as u32);
412     pub const Pointer_DblClick1: Key = Key(ffi::GDK_KEY_Pointer_DblClick1 as u32);
413     pub const Pointer_DblClick2: Key = Key(ffi::GDK_KEY_Pointer_DblClick2 as u32);
414     pub const Pointer_DblClick3: Key = Key(ffi::GDK_KEY_Pointer_DblClick3 as u32);
415     pub const Pointer_DblClick4: Key = Key(ffi::GDK_KEY_Pointer_DblClick4 as u32);
416     pub const Pointer_DblClick5: Key = Key(ffi::GDK_KEY_Pointer_DblClick5 as u32);
417     pub const Pointer_Drag_Dflt: Key = Key(ffi::GDK_KEY_Pointer_Drag_Dflt as u32);
418     pub const Pointer_Drag1: Key = Key(ffi::GDK_KEY_Pointer_Drag1 as u32);
419     pub const Pointer_Drag2: Key = Key(ffi::GDK_KEY_Pointer_Drag2 as u32);
420     pub const Pointer_Drag3: Key = Key(ffi::GDK_KEY_Pointer_Drag3 as u32);
421     pub const Pointer_Drag4: Key = Key(ffi::GDK_KEY_Pointer_Drag4 as u32);
422     pub const Pointer_Drag5: Key = Key(ffi::GDK_KEY_Pointer_Drag5 as u32);
423     pub const Pointer_EnableKeys: Key = Key(ffi::GDK_KEY_Pointer_EnableKeys as u32);
424     pub const Pointer_Accelerate: Key = Key(ffi::GDK_KEY_Pointer_Accelerate as u32);
425     pub const Pointer_DfltBtnNext: Key = Key(ffi::GDK_KEY_Pointer_DfltBtnNext as u32);
426     pub const Pointer_DfltBtnPrev: Key = Key(ffi::GDK_KEY_Pointer_DfltBtnPrev as u32);
427     pub const ch: Key = Key(ffi::GDK_KEY_ch as u32);
428     pub const Ch: Key = Key(ffi::GDK_KEY_Ch as u32);
429     pub const CH: Key = Key(ffi::GDK_KEY_CH as u32);
430     pub const c_h: Key = Key(ffi::GDK_KEY_c_h as u32);
431     pub const C_h: Key = Key(ffi::GDK_KEY_C_h as u32);
432     pub const C_H: Key = Key(ffi::GDK_KEY_C_H as u32);
433     pub const _3270_Duplicate: Key = Key(ffi::GDK_KEY_3270_Duplicate as u32);
434     pub const _3270_FieldMark: Key = Key(ffi::GDK_KEY_3270_FieldMark as u32);
435     pub const _3270_Right2: Key = Key(ffi::GDK_KEY_3270_Right2 as u32);
436     pub const _3270_Left2: Key = Key(ffi::GDK_KEY_3270_Left2 as u32);
437     pub const _3270_BackTab: Key = Key(ffi::GDK_KEY_3270_BackTab as u32);
438     pub const _3270_EraseEOF: Key = Key(ffi::GDK_KEY_3270_EraseEOF as u32);
439     pub const _3270_EraseInput: Key = Key(ffi::GDK_KEY_3270_EraseInput as u32);
440     pub const _3270_Reset: Key = Key(ffi::GDK_KEY_3270_Reset as u32);
441     pub const _3270_Quit: Key = Key(ffi::GDK_KEY_3270_Quit as u32);
442     pub const _3270_PA1: Key = Key(ffi::GDK_KEY_3270_PA1 as u32);
443     pub const _3270_PA2: Key = Key(ffi::GDK_KEY_3270_PA2 as u32);
444     pub const _3270_PA3: Key = Key(ffi::GDK_KEY_3270_PA3 as u32);
445     pub const _3270_Test: Key = Key(ffi::GDK_KEY_3270_Test as u32);
446     pub const _3270_Attn: Key = Key(ffi::GDK_KEY_3270_Attn as u32);
447     pub const _3270_CursorBlink: Key = Key(ffi::GDK_KEY_3270_CursorBlink as u32);
448     pub const _3270_AltCursor: Key = Key(ffi::GDK_KEY_3270_AltCursor as u32);
449     pub const _3270_KeyClick: Key = Key(ffi::GDK_KEY_3270_KeyClick as u32);
450     pub const _3270_Jump: Key = Key(ffi::GDK_KEY_3270_Jump as u32);
451     pub const _3270_Ident: Key = Key(ffi::GDK_KEY_3270_Ident as u32);
452     pub const _3270_Rule: Key = Key(ffi::GDK_KEY_3270_Rule as u32);
453     pub const _3270_Copy: Key = Key(ffi::GDK_KEY_3270_Copy as u32);
454     pub const _3270_Play: Key = Key(ffi::GDK_KEY_3270_Play as u32);
455     pub const _3270_Setup: Key = Key(ffi::GDK_KEY_3270_Setup as u32);
456     pub const _3270_Record: Key = Key(ffi::GDK_KEY_3270_Record as u32);
457     pub const _3270_ChangeScreen: Key = Key(ffi::GDK_KEY_3270_ChangeScreen as u32);
458     pub const _3270_DeleteWord: Key = Key(ffi::GDK_KEY_3270_DeleteWord as u32);
459     pub const _3270_ExSelect: Key = Key(ffi::GDK_KEY_3270_ExSelect as u32);
460     pub const _3270_CursorSelect: Key = Key(ffi::GDK_KEY_3270_CursorSelect as u32);
461     pub const _3270_PrintScreen: Key = Key(ffi::GDK_KEY_3270_PrintScreen as u32);
462     pub const _3270_Enter: Key = Key(ffi::GDK_KEY_3270_Enter as u32);
463     pub const space: Key = Key(ffi::GDK_KEY_space as u32);
464     pub const exclam: Key = Key(ffi::GDK_KEY_exclam as u32);
465     pub const quotedbl: Key = Key(ffi::GDK_KEY_quotedbl as u32);
466     pub const numbersign: Key = Key(ffi::GDK_KEY_numbersign as u32);
467     pub const dollar: Key = Key(ffi::GDK_KEY_dollar as u32);
468     pub const percent: Key = Key(ffi::GDK_KEY_percent as u32);
469     pub const ampersand: Key = Key(ffi::GDK_KEY_ampersand as u32);
470     pub const apostrophe: Key = Key(ffi::GDK_KEY_apostrophe as u32);
471     pub const quoteright: Key = Key(ffi::GDK_KEY_quoteright as u32);
472     pub const parenleft: Key = Key(ffi::GDK_KEY_parenleft as u32);
473     pub const parenright: Key = Key(ffi::GDK_KEY_parenright as u32);
474     pub const asterisk: Key = Key(ffi::GDK_KEY_asterisk as u32);
475     pub const plus: Key = Key(ffi::GDK_KEY_plus as u32);
476     pub const comma: Key = Key(ffi::GDK_KEY_comma as u32);
477     pub const minus: Key = Key(ffi::GDK_KEY_minus as u32);
478     pub const period: Key = Key(ffi::GDK_KEY_period as u32);
479     pub const slash: Key = Key(ffi::GDK_KEY_slash as u32);
480     pub const _0: Key = Key(ffi::GDK_KEY_0 as u32); // equivalent to keypad '0'
481     pub const _1: Key = Key(ffi::GDK_KEY_1 as u32); // equivalent to keypad '1'
482     pub const _2: Key = Key(ffi::GDK_KEY_2 as u32); // equivalent to keypad '2'
483     pub const _3: Key = Key(ffi::GDK_KEY_3 as u32); // equivalent to keypad '3'
484     pub const _4: Key = Key(ffi::GDK_KEY_4 as u32); // equivalent to keypad '4'
485     pub const _5: Key = Key(ffi::GDK_KEY_5 as u32); // equivalent to keypad '5'
486     pub const _6: Key = Key(ffi::GDK_KEY_6 as u32); // equivalent to keypad '6'
487     pub const _7: Key = Key(ffi::GDK_KEY_7 as u32); // equivalent to keypad '7'
488     pub const _8: Key = Key(ffi::GDK_KEY_8 as u32); // equivalent to keypad '8'
489     pub const _9: Key = Key(ffi::GDK_KEY_9 as u32); // equivalent to keypad '9'
490     pub const colon: Key = Key(ffi::GDK_KEY_colon as u32);
491     pub const semicolon: Key = Key(ffi::GDK_KEY_semicolon as u32);
492     pub const less: Key = Key(ffi::GDK_KEY_less as u32);
493     pub const equal: Key = Key(ffi::GDK_KEY_equal as u32);
494     pub const greater: Key = Key(ffi::GDK_KEY_greater as u32);
495     pub const question: Key = Key(ffi::GDK_KEY_question as u32);
496     pub const at: Key = Key(ffi::GDK_KEY_at as u32);
497     pub const A: Key = Key(ffi::GDK_KEY_A as u32);
498     pub const B: Key = Key(ffi::GDK_KEY_B as u32);
499     pub const C: Key = Key(ffi::GDK_KEY_C as u32);
500     pub const D: Key = Key(ffi::GDK_KEY_D as u32);
501     pub const E: Key = Key(ffi::GDK_KEY_E as u32);
502     pub const F: Key = Key(ffi::GDK_KEY_F as u32);
503     pub const G: Key = Key(ffi::GDK_KEY_G as u32);
504     pub const H: Key = Key(ffi::GDK_KEY_H as u32);
505     pub const I: Key = Key(ffi::GDK_KEY_I as u32);
506     pub const J: Key = Key(ffi::GDK_KEY_J as u32);
507     pub const K: Key = Key(ffi::GDK_KEY_K as u32);
508     pub const L: Key = Key(ffi::GDK_KEY_L as u32);
509     pub const M: Key = Key(ffi::GDK_KEY_M as u32);
510     pub const N: Key = Key(ffi::GDK_KEY_N as u32);
511     pub const O: Key = Key(ffi::GDK_KEY_O as u32);
512     pub const P: Key = Key(ffi::GDK_KEY_P as u32);
513     pub const Q: Key = Key(ffi::GDK_KEY_Q as u32);
514     pub const R: Key = Key(ffi::GDK_KEY_R as u32);
515     pub const S: Key = Key(ffi::GDK_KEY_S as u32);
516     pub const T: Key = Key(ffi::GDK_KEY_T as u32);
517     pub const U: Key = Key(ffi::GDK_KEY_U as u32);
518     pub const V: Key = Key(ffi::GDK_KEY_V as u32);
519     pub const W: Key = Key(ffi::GDK_KEY_W as u32);
520     pub const X: Key = Key(ffi::GDK_KEY_X as u32);
521     pub const Y: Key = Key(ffi::GDK_KEY_Y as u32);
522     pub const Z: Key = Key(ffi::GDK_KEY_Z as u32);
523     pub const bracketleft: Key = Key(ffi::GDK_KEY_bracketleft as u32);
524     pub const backslash: Key = Key(ffi::GDK_KEY_backslash as u32);
525     pub const bracketright: Key = Key(ffi::GDK_KEY_bracketright as u32);
526     pub const asciicircum: Key = Key(ffi::GDK_KEY_asciicircum as u32);
527     pub const underscore: Key = Key(ffi::GDK_KEY_underscore as u32);
528     pub const grave: Key = Key(ffi::GDK_KEY_grave as u32);
529     pub const quoteleft: Key = Key(ffi::GDK_KEY_quoteleft as u32);
530     pub const a: Key = Key(ffi::GDK_KEY_a as u32);
531     pub const b: Key = Key(ffi::GDK_KEY_b as u32);
532     pub const c: Key = Key(ffi::GDK_KEY_c as u32);
533     pub const d: Key = Key(ffi::GDK_KEY_d as u32);
534     pub const e: Key = Key(ffi::GDK_KEY_e as u32);
535     pub const f: Key = Key(ffi::GDK_KEY_f as u32);
536     pub const g: Key = Key(ffi::GDK_KEY_g as u32);
537     pub const h: Key = Key(ffi::GDK_KEY_h as u32);
538     pub const i: Key = Key(ffi::GDK_KEY_i as u32);
539     pub const j: Key = Key(ffi::GDK_KEY_j as u32);
540     pub const k: Key = Key(ffi::GDK_KEY_k as u32);
541     pub const l: Key = Key(ffi::GDK_KEY_l as u32);
542     pub const m: Key = Key(ffi::GDK_KEY_m as u32);
543     pub const n: Key = Key(ffi::GDK_KEY_n as u32);
544     pub const o: Key = Key(ffi::GDK_KEY_o as u32);
545     pub const p: Key = Key(ffi::GDK_KEY_p as u32);
546     pub const q: Key = Key(ffi::GDK_KEY_q as u32);
547     pub const r: Key = Key(ffi::GDK_KEY_r as u32);
548     pub const s: Key = Key(ffi::GDK_KEY_s as u32);
549     pub const t: Key = Key(ffi::GDK_KEY_t as u32);
550     pub const u: Key = Key(ffi::GDK_KEY_u as u32);
551     pub const v: Key = Key(ffi::GDK_KEY_v as u32);
552     pub const w: Key = Key(ffi::GDK_KEY_w as u32);
553     pub const x: Key = Key(ffi::GDK_KEY_x as u32);
554     pub const y: Key = Key(ffi::GDK_KEY_y as u32);
555     pub const z: Key = Key(ffi::GDK_KEY_z as u32);
556     pub const braceleft: Key = Key(ffi::GDK_KEY_braceleft as u32);
557     pub const bar: Key = Key(ffi::GDK_KEY_bar as u32);
558     pub const braceright: Key = Key(ffi::GDK_KEY_braceright as u32);
559     pub const asciitilde: Key = Key(ffi::GDK_KEY_asciitilde as u32);
560     pub const nobreakspace: Key = Key(ffi::GDK_KEY_nobreakspace as u32);
561     pub const exclamdown: Key = Key(ffi::GDK_KEY_exclamdown as u32);
562     pub const cent: Key = Key(ffi::GDK_KEY_cent as u32);
563     pub const sterling: Key = Key(ffi::GDK_KEY_sterling as u32);
564     pub const currency: Key = Key(ffi::GDK_KEY_currency as u32);
565     pub const yen: Key = Key(ffi::GDK_KEY_yen as u32);
566     pub const brokenbar: Key = Key(ffi::GDK_KEY_brokenbar as u32);
567     pub const section: Key = Key(ffi::GDK_KEY_section as u32);
568     pub const diaeresis: Key = Key(ffi::GDK_KEY_diaeresis as u32);
569     pub const copyright: Key = Key(ffi::GDK_KEY_copyright as u32);
570     pub const ordfeminine: Key = Key(ffi::GDK_KEY_ordfeminine as u32);
571     pub const guillemotleft: Key = Key(ffi::GDK_KEY_guillemotleft as u32);
572     pub const notsign: Key = Key(ffi::GDK_KEY_notsign as u32);
573     pub const hyphen: Key = Key(ffi::GDK_KEY_hyphen as u32);
574     pub const registered: Key = Key(ffi::GDK_KEY_registered as u32);
575     pub const macron: Key = Key(ffi::GDK_KEY_macron as u32);
576     pub const degree: Key = Key(ffi::GDK_KEY_degree as u32);
577     pub const plusminus: Key = Key(ffi::GDK_KEY_plusminus as u32);
578     pub const twosuperior: Key = Key(ffi::GDK_KEY_twosuperior as u32);
579     pub const threesuperior: Key = Key(ffi::GDK_KEY_threesuperior as u32);
580     pub const acute: Key = Key(ffi::GDK_KEY_acute as u32);
581     pub const mu: Key = Key(ffi::GDK_KEY_mu as u32);
582     pub const paragraph: Key = Key(ffi::GDK_KEY_paragraph as u32);
583     pub const periodcentered: Key = Key(ffi::GDK_KEY_periodcentered as u32);
584     pub const cedilla: Key = Key(ffi::GDK_KEY_cedilla as u32);
585     pub const onesuperior: Key = Key(ffi::GDK_KEY_onesuperior as u32);
586     pub const masculine: Key = Key(ffi::GDK_KEY_masculine as u32);
587     pub const guillemotright: Key = Key(ffi::GDK_KEY_guillemotright as u32);
588     pub const onequarter: Key = Key(ffi::GDK_KEY_onequarter as u32);
589     pub const onehalf: Key = Key(ffi::GDK_KEY_onehalf as u32);
590     pub const threequarters: Key = Key(ffi::GDK_KEY_threequarters as u32);
591     pub const questiondown: Key = Key(ffi::GDK_KEY_questiondown as u32);
592     pub const Agrave: Key = Key(ffi::GDK_KEY_Agrave as u32);
593     pub const Aacute: Key = Key(ffi::GDK_KEY_Aacute as u32);
594     pub const Acircumflex: Key = Key(ffi::GDK_KEY_Acircumflex as u32);
595     pub const Atilde: Key = Key(ffi::GDK_KEY_Atilde as u32);
596     pub const Adiaeresis: Key = Key(ffi::GDK_KEY_Adiaeresis as u32);
597     pub const Aring: Key = Key(ffi::GDK_KEY_Aring as u32);
598     pub const AE: Key = Key(ffi::GDK_KEY_AE as u32);
599     pub const Ccedilla: Key = Key(ffi::GDK_KEY_Ccedilla as u32);
600     pub const Egrave: Key = Key(ffi::GDK_KEY_Egrave as u32);
601     pub const Eacute: Key = Key(ffi::GDK_KEY_Eacute as u32);
602     pub const Ecircumflex: Key = Key(ffi::GDK_KEY_Ecircumflex as u32);
603     pub const Ediaeresis: Key = Key(ffi::GDK_KEY_Ediaeresis as u32);
604     pub const Igrave: Key = Key(ffi::GDK_KEY_Igrave as u32);
605     pub const Iacute: Key = Key(ffi::GDK_KEY_Iacute as u32);
606     pub const Icircumflex: Key = Key(ffi::GDK_KEY_Icircumflex as u32);
607     pub const Idiaeresis: Key = Key(ffi::GDK_KEY_Idiaeresis as u32);
608     pub const ETH: Key = Key(ffi::GDK_KEY_ETH as u32);
609     pub const Eth: Key = Key(ffi::GDK_KEY_Eth as u32);
610     pub const Ntilde: Key = Key(ffi::GDK_KEY_Ntilde as u32);
611     pub const Ograve: Key = Key(ffi::GDK_KEY_Ograve as u32);
612     pub const Oacute: Key = Key(ffi::GDK_KEY_Oacute as u32);
613     pub const Ocircumflex: Key = Key(ffi::GDK_KEY_Ocircumflex as u32);
614     pub const Otilde: Key = Key(ffi::GDK_KEY_Otilde as u32);
615     pub const Odiaeresis: Key = Key(ffi::GDK_KEY_Odiaeresis as u32);
616     pub const multiply: Key = Key(ffi::GDK_KEY_multiply as u32);
617     pub const Oslash: Key = Key(ffi::GDK_KEY_Oslash as u32);
618     pub const Ooblique: Key = Key(ffi::GDK_KEY_Ooblique as u32);
619     pub const Ugrave: Key = Key(ffi::GDK_KEY_Ugrave as u32);
620     pub const Uacute: Key = Key(ffi::GDK_KEY_Uacute as u32);
621     pub const Ucircumflex: Key = Key(ffi::GDK_KEY_Ucircumflex as u32);
622     pub const Udiaeresis: Key = Key(ffi::GDK_KEY_Udiaeresis as u32);
623     pub const Yacute: Key = Key(ffi::GDK_KEY_Yacute as u32);
624     pub const THORN: Key = Key(ffi::GDK_KEY_THORN as u32);
625     pub const Thorn: Key = Key(ffi::GDK_KEY_Thorn as u32);
626     pub const ssharp: Key = Key(ffi::GDK_KEY_ssharp as u32);
627     pub const agrave: Key = Key(ffi::GDK_KEY_agrave as u32);
628     pub const aacute: Key = Key(ffi::GDK_KEY_aacute as u32);
629     pub const acircumflex: Key = Key(ffi::GDK_KEY_acircumflex as u32);
630     pub const atilde: Key = Key(ffi::GDK_KEY_atilde as u32);
631     pub const adiaeresis: Key = Key(ffi::GDK_KEY_adiaeresis as u32);
632     pub const aring: Key = Key(ffi::GDK_KEY_aring as u32);
633     pub const ae: Key = Key(ffi::GDK_KEY_ae as u32);
634     pub const ccedilla: Key = Key(ffi::GDK_KEY_ccedilla as u32);
635     pub const egrave: Key = Key(ffi::GDK_KEY_egrave as u32);
636     pub const eacute: Key = Key(ffi::GDK_KEY_eacute as u32);
637     pub const ecircumflex: Key = Key(ffi::GDK_KEY_ecircumflex as u32);
638     pub const ediaeresis: Key = Key(ffi::GDK_KEY_ediaeresis as u32);
639     pub const igrave: Key = Key(ffi::GDK_KEY_igrave as u32);
640     pub const iacute: Key = Key(ffi::GDK_KEY_iacute as u32);
641     pub const icircumflex: Key = Key(ffi::GDK_KEY_icircumflex as u32);
642     pub const idiaeresis: Key = Key(ffi::GDK_KEY_idiaeresis as u32);
643     pub const eth: Key = Key(ffi::GDK_KEY_eth as u32);
644     pub const ntilde: Key = Key(ffi::GDK_KEY_ntilde as u32);
645     pub const ograve: Key = Key(ffi::GDK_KEY_ograve as u32);
646     pub const oacute: Key = Key(ffi::GDK_KEY_oacute as u32);
647     pub const ocircumflex: Key = Key(ffi::GDK_KEY_ocircumflex as u32);
648     pub const otilde: Key = Key(ffi::GDK_KEY_otilde as u32);
649     pub const odiaeresis: Key = Key(ffi::GDK_KEY_odiaeresis as u32);
650     pub const division: Key = Key(ffi::GDK_KEY_division as u32);
651     pub const oslash: Key = Key(ffi::GDK_KEY_oslash as u32);
652     pub const ooblique: Key = Key(ffi::GDK_KEY_ooblique as u32);
653     pub const ugrave: Key = Key(ffi::GDK_KEY_ugrave as u32);
654     pub const uacute: Key = Key(ffi::GDK_KEY_uacute as u32);
655     pub const ucircumflex: Key = Key(ffi::GDK_KEY_ucircumflex as u32);
656     pub const udiaeresis: Key = Key(ffi::GDK_KEY_udiaeresis as u32);
657     pub const yacute: Key = Key(ffi::GDK_KEY_yacute as u32);
658     pub const thorn: Key = Key(ffi::GDK_KEY_thorn as u32);
659     pub const ydiaeresis: Key = Key(ffi::GDK_KEY_ydiaeresis as u32);
660     pub const Aogonek: Key = Key(ffi::GDK_KEY_Aogonek as u32);
661     pub const breve: Key = Key(ffi::GDK_KEY_breve as u32);
662     pub const Lstroke: Key = Key(ffi::GDK_KEY_Lstroke as u32);
663     pub const Lcaron: Key = Key(ffi::GDK_KEY_Lcaron as u32);
664     pub const Sacute: Key = Key(ffi::GDK_KEY_Sacute as u32);
665     pub const Scaron: Key = Key(ffi::GDK_KEY_Scaron as u32);
666     pub const Scedilla: Key = Key(ffi::GDK_KEY_Scedilla as u32);
667     pub const Tcaron: Key = Key(ffi::GDK_KEY_Tcaron as u32);
668     pub const Zacute: Key = Key(ffi::GDK_KEY_Zacute as u32);
669     pub const Zcaron: Key = Key(ffi::GDK_KEY_Zcaron as u32);
670     pub const Zabovedot: Key = Key(ffi::GDK_KEY_Zabovedot as u32);
671     pub const aogonek: Key = Key(ffi::GDK_KEY_aogonek as u32);
672     pub const ogonek: Key = Key(ffi::GDK_KEY_ogonek as u32);
673     pub const lstroke: Key = Key(ffi::GDK_KEY_lstroke as u32);
674     pub const lcaron: Key = Key(ffi::GDK_KEY_lcaron as u32);
675     pub const sacute: Key = Key(ffi::GDK_KEY_sacute as u32);
676     pub const caron: Key = Key(ffi::GDK_KEY_caron as u32);
677     pub const scaron: Key = Key(ffi::GDK_KEY_scaron as u32);
678     pub const scedilla: Key = Key(ffi::GDK_KEY_scedilla as u32);
679     pub const tcaron: Key = Key(ffi::GDK_KEY_tcaron as u32);
680     pub const zacute: Key = Key(ffi::GDK_KEY_zacute as u32);
681     pub const doubleacute: Key = Key(ffi::GDK_KEY_doubleacute as u32);
682     pub const zcaron: Key = Key(ffi::GDK_KEY_zcaron as u32);
683     pub const zabovedot: Key = Key(ffi::GDK_KEY_zabovedot as u32);
684     pub const Racute: Key = Key(ffi::GDK_KEY_Racute as u32);
685     pub const Abreve: Key = Key(ffi::GDK_KEY_Abreve as u32);
686     pub const Lacute: Key = Key(ffi::GDK_KEY_Lacute as u32);
687     pub const Cacute: Key = Key(ffi::GDK_KEY_Cacute as u32);
688     pub const Ccaron: Key = Key(ffi::GDK_KEY_Ccaron as u32);
689     pub const Eogonek: Key = Key(ffi::GDK_KEY_Eogonek as u32);
690     pub const Ecaron: Key = Key(ffi::GDK_KEY_Ecaron as u32);
691     pub const Dcaron: Key = Key(ffi::GDK_KEY_Dcaron as u32);
692     pub const Dstroke: Key = Key(ffi::GDK_KEY_Dstroke as u32);
693     pub const Nacute: Key = Key(ffi::GDK_KEY_Nacute as u32);
694     pub const Ncaron: Key = Key(ffi::GDK_KEY_Ncaron as u32);
695     pub const Odoubleacute: Key = Key(ffi::GDK_KEY_Odoubleacute as u32);
696     pub const Rcaron: Key = Key(ffi::GDK_KEY_Rcaron as u32);
697     pub const Uring: Key = Key(ffi::GDK_KEY_Uring as u32);
698     pub const Udoubleacute: Key = Key(ffi::GDK_KEY_Udoubleacute as u32);
699     pub const Tcedilla: Key = Key(ffi::GDK_KEY_Tcedilla as u32);
700     pub const racute: Key = Key(ffi::GDK_KEY_racute as u32);
701     pub const abreve: Key = Key(ffi::GDK_KEY_abreve as u32);
702     pub const lacute: Key = Key(ffi::GDK_KEY_lacute as u32);
703     pub const cacute: Key = Key(ffi::GDK_KEY_cacute as u32);
704     pub const ccaron: Key = Key(ffi::GDK_KEY_ccaron as u32);
705     pub const eogonek: Key = Key(ffi::GDK_KEY_eogonek as u32);
706     pub const ecaron: Key = Key(ffi::GDK_KEY_ecaron as u32);
707     pub const dcaron: Key = Key(ffi::GDK_KEY_dcaron as u32);
708     pub const dstroke: Key = Key(ffi::GDK_KEY_dstroke as u32);
709     pub const nacute: Key = Key(ffi::GDK_KEY_nacute as u32);
710     pub const ncaron: Key = Key(ffi::GDK_KEY_ncaron as u32);
711     pub const odoubleacute: Key = Key(ffi::GDK_KEY_odoubleacute as u32);
712     pub const rcaron: Key = Key(ffi::GDK_KEY_rcaron as u32);
713     pub const uring: Key = Key(ffi::GDK_KEY_uring as u32);
714     pub const udoubleacute: Key = Key(ffi::GDK_KEY_udoubleacute as u32);
715     pub const tcedilla: Key = Key(ffi::GDK_KEY_tcedilla as u32);
716     pub const abovedot: Key = Key(ffi::GDK_KEY_abovedot as u32);
717     pub const Hstroke: Key = Key(ffi::GDK_KEY_Hstroke as u32);
718     pub const Hcircumflex: Key = Key(ffi::GDK_KEY_Hcircumflex as u32);
719     pub const Iabovedot: Key = Key(ffi::GDK_KEY_Iabovedot as u32);
720     pub const Gbreve: Key = Key(ffi::GDK_KEY_Gbreve as u32);
721     pub const Jcircumflex: Key = Key(ffi::GDK_KEY_Jcircumflex as u32);
722     pub const hstroke: Key = Key(ffi::GDK_KEY_hstroke as u32);
723     pub const hcircumflex: Key = Key(ffi::GDK_KEY_hcircumflex as u32);
724     pub const idotless: Key = Key(ffi::GDK_KEY_idotless as u32);
725     pub const gbreve: Key = Key(ffi::GDK_KEY_gbreve as u32);
726     pub const jcircumflex: Key = Key(ffi::GDK_KEY_jcircumflex as u32);
727     pub const Cabovedot: Key = Key(ffi::GDK_KEY_Cabovedot as u32);
728     pub const Ccircumflex: Key = Key(ffi::GDK_KEY_Ccircumflex as u32);
729     pub const Gabovedot: Key = Key(ffi::GDK_KEY_Gabovedot as u32);
730     pub const Gcircumflex: Key = Key(ffi::GDK_KEY_Gcircumflex as u32);
731     pub const Ubreve: Key = Key(ffi::GDK_KEY_Ubreve as u32);
732     pub const Scircumflex: Key = Key(ffi::GDK_KEY_Scircumflex as u32);
733     pub const cabovedot: Key = Key(ffi::GDK_KEY_cabovedot as u32);
734     pub const ccircumflex: Key = Key(ffi::GDK_KEY_ccircumflex as u32);
735     pub const gabovedot: Key = Key(ffi::GDK_KEY_gabovedot as u32);
736     pub const gcircumflex: Key = Key(ffi::GDK_KEY_gcircumflex as u32);
737     pub const ubreve: Key = Key(ffi::GDK_KEY_ubreve as u32);
738     pub const scircumflex: Key = Key(ffi::GDK_KEY_scircumflex as u32);
739     pub const kra: Key = Key(ffi::GDK_KEY_kra as u32);
740     pub const kappa: Key = Key(ffi::GDK_KEY_kappa as u32);
741     pub const Rcedilla: Key = Key(ffi::GDK_KEY_Rcedilla as u32);
742     pub const Itilde: Key = Key(ffi::GDK_KEY_Itilde as u32);
743     pub const Lcedilla: Key = Key(ffi::GDK_KEY_Lcedilla as u32);
744     pub const Emacron: Key = Key(ffi::GDK_KEY_Emacron as u32);
745     pub const Gcedilla: Key = Key(ffi::GDK_KEY_Gcedilla as u32);
746     pub const Tslash: Key = Key(ffi::GDK_KEY_Tslash as u32);
747     pub const rcedilla: Key = Key(ffi::GDK_KEY_rcedilla as u32);
748     pub const itilde: Key = Key(ffi::GDK_KEY_itilde as u32);
749     pub const lcedilla: Key = Key(ffi::GDK_KEY_lcedilla as u32);
750     pub const emacron: Key = Key(ffi::GDK_KEY_emacron as u32);
751     pub const gcedilla: Key = Key(ffi::GDK_KEY_gcedilla as u32);
752     pub const tslash: Key = Key(ffi::GDK_KEY_tslash as u32);
753     pub const ENG: Key = Key(ffi::GDK_KEY_ENG as u32);
754     pub const eng: Key = Key(ffi::GDK_KEY_eng as u32);
755     pub const Amacron: Key = Key(ffi::GDK_KEY_Amacron as u32);
756     pub const Iogonek: Key = Key(ffi::GDK_KEY_Iogonek as u32);
757     pub const Eabovedot: Key = Key(ffi::GDK_KEY_Eabovedot as u32);
758     pub const Imacron: Key = Key(ffi::GDK_KEY_Imacron as u32);
759     pub const Ncedilla: Key = Key(ffi::GDK_KEY_Ncedilla as u32);
760     pub const Omacron: Key = Key(ffi::GDK_KEY_Omacron as u32);
761     pub const Kcedilla: Key = Key(ffi::GDK_KEY_Kcedilla as u32);
762     pub const Uogonek: Key = Key(ffi::GDK_KEY_Uogonek as u32);
763     pub const Utilde: Key = Key(ffi::GDK_KEY_Utilde as u32);
764     pub const Umacron: Key = Key(ffi::GDK_KEY_Umacron as u32);
765     pub const amacron: Key = Key(ffi::GDK_KEY_amacron as u32);
766     pub const iogonek: Key = Key(ffi::GDK_KEY_iogonek as u32);
767     pub const eabovedot: Key = Key(ffi::GDK_KEY_eabovedot as u32);
768     pub const imacron: Key = Key(ffi::GDK_KEY_imacron as u32);
769     pub const ncedilla: Key = Key(ffi::GDK_KEY_ncedilla as u32);
770     pub const omacron: Key = Key(ffi::GDK_KEY_omacron as u32);
771     pub const kcedilla: Key = Key(ffi::GDK_KEY_kcedilla as u32);
772     pub const uogonek: Key = Key(ffi::GDK_KEY_uogonek as u32);
773     pub const utilde: Key = Key(ffi::GDK_KEY_utilde as u32);
774     pub const umacron: Key = Key(ffi::GDK_KEY_umacron as u32);
775     pub const Wcircumflex: Key = Key(ffi::GDK_KEY_Wcircumflex as u32);
776     pub const wcircumflex: Key = Key(ffi::GDK_KEY_wcircumflex as u32);
777     pub const Ycircumflex: Key = Key(ffi::GDK_KEY_Ycircumflex as u32);
778     pub const ycircumflex: Key = Key(ffi::GDK_KEY_ycircumflex as u32);
779     pub const Babovedot: Key = Key(ffi::GDK_KEY_Babovedot as u32);
780     pub const babovedot: Key = Key(ffi::GDK_KEY_babovedot as u32);
781     pub const Dabovedot: Key = Key(ffi::GDK_KEY_Dabovedot as u32);
782     pub const dabovedot: Key = Key(ffi::GDK_KEY_dabovedot as u32);
783     pub const Fabovedot: Key = Key(ffi::GDK_KEY_Fabovedot as u32);
784     pub const fabovedot: Key = Key(ffi::GDK_KEY_fabovedot as u32);
785     pub const Mabovedot: Key = Key(ffi::GDK_KEY_Mabovedot as u32);
786     pub const mabovedot: Key = Key(ffi::GDK_KEY_mabovedot as u32);
787     pub const Pabovedot: Key = Key(ffi::GDK_KEY_Pabovedot as u32);
788     pub const pabovedot: Key = Key(ffi::GDK_KEY_pabovedot as u32);
789     pub const Sabovedot: Key = Key(ffi::GDK_KEY_Sabovedot as u32);
790     pub const sabovedot: Key = Key(ffi::GDK_KEY_sabovedot as u32);
791     pub const Tabovedot: Key = Key(ffi::GDK_KEY_Tabovedot as u32);
792     pub const tabovedot: Key = Key(ffi::GDK_KEY_tabovedot as u32);
793     pub const Wgrave: Key = Key(ffi::GDK_KEY_Wgrave as u32);
794     pub const wgrave: Key = Key(ffi::GDK_KEY_wgrave as u32);
795     pub const Wacute: Key = Key(ffi::GDK_KEY_Wacute as u32);
796     pub const wacute: Key = Key(ffi::GDK_KEY_wacute as u32);
797     pub const Wdiaeresis: Key = Key(ffi::GDK_KEY_Wdiaeresis as u32);
798     pub const wdiaeresis: Key = Key(ffi::GDK_KEY_wdiaeresis as u32);
799     pub const Ygrave: Key = Key(ffi::GDK_KEY_Ygrave as u32);
800     pub const ygrave: Key = Key(ffi::GDK_KEY_ygrave as u32);
801     pub const OE: Key = Key(ffi::GDK_KEY_OE as u32);
802     pub const oe: Key = Key(ffi::GDK_KEY_oe as u32);
803     pub const Ydiaeresis: Key = Key(ffi::GDK_KEY_Ydiaeresis as u32);
804     pub const overline: Key = Key(ffi::GDK_KEY_overline as u32);
805     pub const kana_fullstop: Key = Key(ffi::GDK_KEY_kana_fullstop as u32);
806     pub const kana_openingbracket: Key = Key(ffi::GDK_KEY_kana_openingbracket as u32);
807     pub const kana_closingbracket: Key = Key(ffi::GDK_KEY_kana_closingbracket as u32);
808     pub const kana_comma: Key = Key(ffi::GDK_KEY_kana_comma as u32);
809     pub const kana_conjunctive: Key = Key(ffi::GDK_KEY_kana_conjunctive as u32);
810     pub const kana_middledot: Key = Key(ffi::GDK_KEY_kana_middledot as u32);
811     pub const kana_WO: Key = Key(ffi::GDK_KEY_kana_WO as u32);
812     pub const kana_a: Key = Key(ffi::GDK_KEY_kana_a as u32);
813     pub const kana_i: Key = Key(ffi::GDK_KEY_kana_i as u32);
814     pub const kana_u: Key = Key(ffi::GDK_KEY_kana_u as u32);
815     pub const kana_e: Key = Key(ffi::GDK_KEY_kana_e as u32);
816     pub const kana_o: Key = Key(ffi::GDK_KEY_kana_o as u32);
817     pub const kana_ya: Key = Key(ffi::GDK_KEY_kana_ya as u32);
818     pub const kana_yu: Key = Key(ffi::GDK_KEY_kana_yu as u32);
819     pub const kana_yo: Key = Key(ffi::GDK_KEY_kana_yo as u32);
820     pub const kana_tsu: Key = Key(ffi::GDK_KEY_kana_tsu as u32);
821     pub const kana_tu: Key = Key(ffi::GDK_KEY_kana_tu as u32);
822     pub const prolongedsound: Key = Key(ffi::GDK_KEY_prolongedsound as u32);
823     pub const kana_A: Key = Key(ffi::GDK_KEY_kana_A as u32);
824     pub const kana_I: Key = Key(ffi::GDK_KEY_kana_I as u32);
825     pub const kana_U: Key = Key(ffi::GDK_KEY_kana_U as u32);
826     pub const kana_E: Key = Key(ffi::GDK_KEY_kana_E as u32);
827     pub const kana_O: Key = Key(ffi::GDK_KEY_kana_O as u32);
828     pub const kana_KA: Key = Key(ffi::GDK_KEY_kana_KA as u32);
829     pub const kana_KI: Key = Key(ffi::GDK_KEY_kana_KI as u32);
830     pub const kana_KU: Key = Key(ffi::GDK_KEY_kana_KU as u32);
831     pub const kana_KE: Key = Key(ffi::GDK_KEY_kana_KE as u32);
832     pub const kana_KO: Key = Key(ffi::GDK_KEY_kana_KO as u32);
833     pub const kana_SA: Key = Key(ffi::GDK_KEY_kana_SA as u32);
834     pub const kana_SHI: Key = Key(ffi::GDK_KEY_kana_SHI as u32);
835     pub const kana_SU: Key = Key(ffi::GDK_KEY_kana_SU as u32);
836     pub const kana_SE: Key = Key(ffi::GDK_KEY_kana_SE as u32);
837     pub const kana_SO: Key = Key(ffi::GDK_KEY_kana_SO as u32);
838     pub const kana_TA: Key = Key(ffi::GDK_KEY_kana_TA as u32);
839     pub const kana_CHI: Key = Key(ffi::GDK_KEY_kana_CHI as u32);
840     pub const kana_TI: Key = Key(ffi::GDK_KEY_kana_TI as u32);
841     pub const kana_TSU: Key = Key(ffi::GDK_KEY_kana_TSU as u32);
842     pub const kana_TU: Key = Key(ffi::GDK_KEY_kana_TU as u32);
843     pub const kana_TE: Key = Key(ffi::GDK_KEY_kana_TE as u32);
844     pub const kana_TO: Key = Key(ffi::GDK_KEY_kana_TO as u32);
845     pub const kana_NA: Key = Key(ffi::GDK_KEY_kana_NA as u32);
846     pub const kana_NI: Key = Key(ffi::GDK_KEY_kana_NI as u32);
847     pub const kana_NU: Key = Key(ffi::GDK_KEY_kana_NU as u32);
848     pub const kana_NE: Key = Key(ffi::GDK_KEY_kana_NE as u32);
849     pub const kana_NO: Key = Key(ffi::GDK_KEY_kana_NO as u32);
850     pub const kana_HA: Key = Key(ffi::GDK_KEY_kana_HA as u32);
851     pub const kana_HI: Key = Key(ffi::GDK_KEY_kana_HI as u32);
852     pub const kana_FU: Key = Key(ffi::GDK_KEY_kana_FU as u32);
853     pub const kana_HU: Key = Key(ffi::GDK_KEY_kana_HU as u32);
854     pub const kana_HE: Key = Key(ffi::GDK_KEY_kana_HE as u32);
855     pub const kana_HO: Key = Key(ffi::GDK_KEY_kana_HO as u32);
856     pub const kana_MA: Key = Key(ffi::GDK_KEY_kana_MA as u32);
857     pub const kana_MI: Key = Key(ffi::GDK_KEY_kana_MI as u32);
858     pub const kana_MU: Key = Key(ffi::GDK_KEY_kana_MU as u32);
859     pub const kana_ME: Key = Key(ffi::GDK_KEY_kana_ME as u32);
860     pub const kana_MO: Key = Key(ffi::GDK_KEY_kana_MO as u32);
861     pub const kana_YA: Key = Key(ffi::GDK_KEY_kana_YA as u32);
862     pub const kana_YU: Key = Key(ffi::GDK_KEY_kana_YU as u32);
863     pub const kana_YO: Key = Key(ffi::GDK_KEY_kana_YO as u32);
864     pub const kana_RA: Key = Key(ffi::GDK_KEY_kana_RA as u32);
865     pub const kana_RI: Key = Key(ffi::GDK_KEY_kana_RI as u32);
866     pub const kana_RU: Key = Key(ffi::GDK_KEY_kana_RU as u32);
867     pub const kana_RE: Key = Key(ffi::GDK_KEY_kana_RE as u32);
868     pub const kana_RO: Key = Key(ffi::GDK_KEY_kana_RO as u32);
869     pub const kana_WA: Key = Key(ffi::GDK_KEY_kana_WA as u32);
870     pub const kana_N: Key = Key(ffi::GDK_KEY_kana_N as u32);
871     pub const voicedsound: Key = Key(ffi::GDK_KEY_voicedsound as u32);
872     pub const semivoicedsound: Key = Key(ffi::GDK_KEY_semivoicedsound as u32);
873     pub const kana_switch: Key = Key(ffi::GDK_KEY_kana_switch as u32);
874     pub const Farsi_0: Key = Key(ffi::GDK_KEY_Farsi_0 as u32);
875     pub const Farsi_1: Key = Key(ffi::GDK_KEY_Farsi_1 as u32);
876     pub const Farsi_2: Key = Key(ffi::GDK_KEY_Farsi_2 as u32);
877     pub const Farsi_3: Key = Key(ffi::GDK_KEY_Farsi_3 as u32);
878     pub const Farsi_4: Key = Key(ffi::GDK_KEY_Farsi_4 as u32);
879     pub const Farsi_5: Key = Key(ffi::GDK_KEY_Farsi_5 as u32);
880     pub const Farsi_6: Key = Key(ffi::GDK_KEY_Farsi_6 as u32);
881     pub const Farsi_7: Key = Key(ffi::GDK_KEY_Farsi_7 as u32);
882     pub const Farsi_8: Key = Key(ffi::GDK_KEY_Farsi_8 as u32);
883     pub const Farsi_9: Key = Key(ffi::GDK_KEY_Farsi_9 as u32);
884     pub const Arabic_percent: Key = Key(ffi::GDK_KEY_Arabic_percent as u32);
885     pub const Arabic_superscript_alef: Key = Key(ffi::GDK_KEY_Arabic_superscript_alef as u32);
886     pub const Arabic_tteh: Key = Key(ffi::GDK_KEY_Arabic_tteh as u32);
887     pub const Arabic_peh: Key = Key(ffi::GDK_KEY_Arabic_peh as u32);
888     pub const Arabic_tcheh: Key = Key(ffi::GDK_KEY_Arabic_tcheh as u32);
889     pub const Arabic_ddal: Key = Key(ffi::GDK_KEY_Arabic_ddal as u32);
890     pub const Arabic_rreh: Key = Key(ffi::GDK_KEY_Arabic_rreh as u32);
891     pub const Arabic_comma: Key = Key(ffi::GDK_KEY_Arabic_comma as u32);
892     pub const Arabic_fullstop: Key = Key(ffi::GDK_KEY_Arabic_fullstop as u32);
893     pub const Arabic_0: Key = Key(ffi::GDK_KEY_Arabic_0 as u32);
894     pub const Arabic_1: Key = Key(ffi::GDK_KEY_Arabic_1 as u32);
895     pub const Arabic_2: Key = Key(ffi::GDK_KEY_Arabic_2 as u32);
896     pub const Arabic_3: Key = Key(ffi::GDK_KEY_Arabic_3 as u32);
897     pub const Arabic_4: Key = Key(ffi::GDK_KEY_Arabic_4 as u32);
898     pub const Arabic_5: Key = Key(ffi::GDK_KEY_Arabic_5 as u32);
899     pub const Arabic_6: Key = Key(ffi::GDK_KEY_Arabic_6 as u32);
900     pub const Arabic_7: Key = Key(ffi::GDK_KEY_Arabic_7 as u32);
901     pub const Arabic_8: Key = Key(ffi::GDK_KEY_Arabic_8 as u32);
902     pub const Arabic_9: Key = Key(ffi::GDK_KEY_Arabic_9 as u32);
903     pub const Arabic_semicolon: Key = Key(ffi::GDK_KEY_Arabic_semicolon as u32);
904     pub const Arabic_question_mark: Key = Key(ffi::GDK_KEY_Arabic_question_mark as u32);
905     pub const Arabic_hamza: Key = Key(ffi::GDK_KEY_Arabic_hamza as u32);
906     pub const Arabic_maddaonalef: Key = Key(ffi::GDK_KEY_Arabic_maddaonalef as u32);
907     pub const Arabic_hamzaonalef: Key = Key(ffi::GDK_KEY_Arabic_hamzaonalef as u32);
908     pub const Arabic_hamzaonwaw: Key = Key(ffi::GDK_KEY_Arabic_hamzaonwaw as u32);
909     pub const Arabic_hamzaunderalef: Key = Key(ffi::GDK_KEY_Arabic_hamzaunderalef as u32);
910     pub const Arabic_hamzaonyeh: Key = Key(ffi::GDK_KEY_Arabic_hamzaonyeh as u32);
911     pub const Arabic_alef: Key = Key(ffi::GDK_KEY_Arabic_alef as u32);
912     pub const Arabic_beh: Key = Key(ffi::GDK_KEY_Arabic_beh as u32);
913     pub const Arabic_tehmarbuta: Key = Key(ffi::GDK_KEY_Arabic_tehmarbuta as u32);
914     pub const Arabic_teh: Key = Key(ffi::GDK_KEY_Arabic_teh as u32);
915     pub const Arabic_theh: Key = Key(ffi::GDK_KEY_Arabic_theh as u32);
916     pub const Arabic_jeem: Key = Key(ffi::GDK_KEY_Arabic_jeem as u32);
917     pub const Arabic_hah: Key = Key(ffi::GDK_KEY_Arabic_hah as u32);
918     pub const Arabic_khah: Key = Key(ffi::GDK_KEY_Arabic_khah as u32);
919     pub const Arabic_dal: Key = Key(ffi::GDK_KEY_Arabic_dal as u32);
920     pub const Arabic_thal: Key = Key(ffi::GDK_KEY_Arabic_thal as u32);
921     pub const Arabic_ra: Key = Key(ffi::GDK_KEY_Arabic_ra as u32);
922     pub const Arabic_zain: Key = Key(ffi::GDK_KEY_Arabic_zain as u32);
923     pub const Arabic_seen: Key = Key(ffi::GDK_KEY_Arabic_seen as u32);
924     pub const Arabic_sheen: Key = Key(ffi::GDK_KEY_Arabic_sheen as u32);
925     pub const Arabic_sad: Key = Key(ffi::GDK_KEY_Arabic_sad as u32);
926     pub const Arabic_dad: Key = Key(ffi::GDK_KEY_Arabic_dad as u32);
927     pub const Arabic_tah: Key = Key(ffi::GDK_KEY_Arabic_tah as u32);
928     pub const Arabic_zah: Key = Key(ffi::GDK_KEY_Arabic_zah as u32);
929     pub const Arabic_ain: Key = Key(ffi::GDK_KEY_Arabic_ain as u32);
930     pub const Arabic_ghain: Key = Key(ffi::GDK_KEY_Arabic_ghain as u32);
931     pub const Arabic_tatweel: Key = Key(ffi::GDK_KEY_Arabic_tatweel as u32);
932     pub const Arabic_feh: Key = Key(ffi::GDK_KEY_Arabic_feh as u32);
933     pub const Arabic_qaf: Key = Key(ffi::GDK_KEY_Arabic_qaf as u32);
934     pub const Arabic_kaf: Key = Key(ffi::GDK_KEY_Arabic_kaf as u32);
935     pub const Arabic_lam: Key = Key(ffi::GDK_KEY_Arabic_lam as u32);
936     pub const Arabic_meem: Key = Key(ffi::GDK_KEY_Arabic_meem as u32);
937     pub const Arabic_noon: Key = Key(ffi::GDK_KEY_Arabic_noon as u32);
938     pub const Arabic_ha: Key = Key(ffi::GDK_KEY_Arabic_ha as u32);
939     pub const Arabic_heh: Key = Key(ffi::GDK_KEY_Arabic_heh as u32);
940     pub const Arabic_waw: Key = Key(ffi::GDK_KEY_Arabic_waw as u32);
941     pub const Arabic_alefmaksura: Key = Key(ffi::GDK_KEY_Arabic_alefmaksura as u32);
942     pub const Arabic_yeh: Key = Key(ffi::GDK_KEY_Arabic_yeh as u32);
943     pub const Arabic_fathatan: Key = Key(ffi::GDK_KEY_Arabic_fathatan as u32);
944     pub const Arabic_dammatan: Key = Key(ffi::GDK_KEY_Arabic_dammatan as u32);
945     pub const Arabic_kasratan: Key = Key(ffi::GDK_KEY_Arabic_kasratan as u32);
946     pub const Arabic_fatha: Key = Key(ffi::GDK_KEY_Arabic_fatha as u32);
947     pub const Arabic_damma: Key = Key(ffi::GDK_KEY_Arabic_damma as u32);
948     pub const Arabic_kasra: Key = Key(ffi::GDK_KEY_Arabic_kasra as u32);
949     pub const Arabic_shadda: Key = Key(ffi::GDK_KEY_Arabic_shadda as u32);
950     pub const Arabic_sukun: Key = Key(ffi::GDK_KEY_Arabic_sukun as u32);
951     pub const Arabic_madda_above: Key = Key(ffi::GDK_KEY_Arabic_madda_above as u32);
952     pub const Arabic_hamza_above: Key = Key(ffi::GDK_KEY_Arabic_hamza_above as u32);
953     pub const Arabic_hamza_below: Key = Key(ffi::GDK_KEY_Arabic_hamza_below as u32);
954     pub const Arabic_jeh: Key = Key(ffi::GDK_KEY_Arabic_jeh as u32);
955     pub const Arabic_veh: Key = Key(ffi::GDK_KEY_Arabic_veh as u32);
956     pub const Arabic_keheh: Key = Key(ffi::GDK_KEY_Arabic_keheh as u32);
957     pub const Arabic_gaf: Key = Key(ffi::GDK_KEY_Arabic_gaf as u32);
958     pub const Arabic_noon_ghunna: Key = Key(ffi::GDK_KEY_Arabic_noon_ghunna as u32);
959     pub const Arabic_heh_doachashmee: Key = Key(ffi::GDK_KEY_Arabic_heh_doachashmee as u32);
960     pub const Farsi_yeh: Key = Key(ffi::GDK_KEY_Farsi_yeh as u32);
961     pub const Arabic_farsi_yeh: Key = Key(ffi::GDK_KEY_Arabic_farsi_yeh as u32);
962     pub const Arabic_yeh_baree: Key = Key(ffi::GDK_KEY_Arabic_yeh_baree as u32);
963     pub const Arabic_heh_goal: Key = Key(ffi::GDK_KEY_Arabic_heh_goal as u32);
964     pub const Arabic_switch: Key = Key(ffi::GDK_KEY_Arabic_switch as u32);
965     pub const Cyrillic_GHE_bar: Key = Key(ffi::GDK_KEY_Cyrillic_GHE_bar as u32);
966     pub const Cyrillic_ghe_bar: Key = Key(ffi::GDK_KEY_Cyrillic_ghe_bar as u32);
967     pub const Cyrillic_ZHE_descender: Key = Key(ffi::GDK_KEY_Cyrillic_ZHE_descender as u32);
968     pub const Cyrillic_zhe_descender: Key = Key(ffi::GDK_KEY_Cyrillic_zhe_descender as u32);
969     pub const Cyrillic_KA_descender: Key = Key(ffi::GDK_KEY_Cyrillic_KA_descender as u32);
970     pub const Cyrillic_ka_descender: Key = Key(ffi::GDK_KEY_Cyrillic_ka_descender as u32);
971     pub const Cyrillic_KA_vertstroke: Key = Key(ffi::GDK_KEY_Cyrillic_KA_vertstroke as u32);
972     pub const Cyrillic_ka_vertstroke: Key = Key(ffi::GDK_KEY_Cyrillic_ka_vertstroke as u32);
973     pub const Cyrillic_EN_descender: Key = Key(ffi::GDK_KEY_Cyrillic_EN_descender as u32);
974     pub const Cyrillic_en_descender: Key = Key(ffi::GDK_KEY_Cyrillic_en_descender as u32);
975     pub const Cyrillic_U_straight: Key = Key(ffi::GDK_KEY_Cyrillic_U_straight as u32);
976     pub const Cyrillic_u_straight: Key = Key(ffi::GDK_KEY_Cyrillic_u_straight as u32);
977     pub const Cyrillic_U_straight_bar: Key = Key(ffi::GDK_KEY_Cyrillic_U_straight_bar as u32);
978     pub const Cyrillic_u_straight_bar: Key = Key(ffi::GDK_KEY_Cyrillic_u_straight_bar as u32);
979     pub const Cyrillic_HA_descender: Key = Key(ffi::GDK_KEY_Cyrillic_HA_descender as u32);
980     pub const Cyrillic_ha_descender: Key = Key(ffi::GDK_KEY_Cyrillic_ha_descender as u32);
981     pub const Cyrillic_CHE_descender: Key = Key(ffi::GDK_KEY_Cyrillic_CHE_descender as u32);
982     pub const Cyrillic_che_descender: Key = Key(ffi::GDK_KEY_Cyrillic_che_descender as u32);
983     pub const Cyrillic_CHE_vertstroke: Key = Key(ffi::GDK_KEY_Cyrillic_CHE_vertstroke as u32);
984     pub const Cyrillic_che_vertstroke: Key = Key(ffi::GDK_KEY_Cyrillic_che_vertstroke as u32);
985     pub const Cyrillic_SHHA: Key = Key(ffi::GDK_KEY_Cyrillic_SHHA as u32);
986     pub const Cyrillic_shha: Key = Key(ffi::GDK_KEY_Cyrillic_shha as u32);
987     pub const Cyrillic_SCHWA: Key = Key(ffi::GDK_KEY_Cyrillic_SCHWA as u32);
988     pub const Cyrillic_schwa: Key = Key(ffi::GDK_KEY_Cyrillic_schwa as u32);
989     pub const Cyrillic_I_macron: Key = Key(ffi::GDK_KEY_Cyrillic_I_macron as u32);
990     pub const Cyrillic_i_macron: Key = Key(ffi::GDK_KEY_Cyrillic_i_macron as u32);
991     pub const Cyrillic_O_bar: Key = Key(ffi::GDK_KEY_Cyrillic_O_bar as u32);
992     pub const Cyrillic_o_bar: Key = Key(ffi::GDK_KEY_Cyrillic_o_bar as u32);
993     pub const Cyrillic_U_macron: Key = Key(ffi::GDK_KEY_Cyrillic_U_macron as u32);
994     pub const Cyrillic_u_macron: Key = Key(ffi::GDK_KEY_Cyrillic_u_macron as u32);
995     pub const Serbian_dje: Key = Key(ffi::GDK_KEY_Serbian_dje as u32);
996     pub const Macedonia_gje: Key = Key(ffi::GDK_KEY_Macedonia_gje as u32);
997     pub const Cyrillic_io: Key = Key(ffi::GDK_KEY_Cyrillic_io as u32);
998     pub const Ukrainian_ie: Key = Key(ffi::GDK_KEY_Ukrainian_ie as u32);
999     pub const Ukranian_je: Key = Key(ffi::GDK_KEY_Ukranian_je as u32);
1000     pub const Macedonia_dse: Key = Key(ffi::GDK_KEY_Macedonia_dse as u32);
1001     pub const Ukrainian_i: Key = Key(ffi::GDK_KEY_Ukrainian_i as u32);
1002     pub const Ukranian_i: Key = Key(ffi::GDK_KEY_Ukranian_i as u32);
1003     pub const Ukrainian_yi: Key = Key(ffi::GDK_KEY_Ukrainian_yi as u32);
1004     pub const Ukranian_yi: Key = Key(ffi::GDK_KEY_Ukranian_yi as u32);
1005     pub const Cyrillic_je: Key = Key(ffi::GDK_KEY_Cyrillic_je as u32);
1006     pub const Serbian_je: Key = Key(ffi::GDK_KEY_Serbian_je as u32);
1007     pub const Cyrillic_lje: Key = Key(ffi::GDK_KEY_Cyrillic_lje as u32);
1008     pub const Serbian_lje: Key = Key(ffi::GDK_KEY_Serbian_lje as u32);
1009     pub const Cyrillic_nje: Key = Key(ffi::GDK_KEY_Cyrillic_nje as u32);
1010     pub const Serbian_nje: Key = Key(ffi::GDK_KEY_Serbian_nje as u32);
1011     pub const Serbian_tshe: Key = Key(ffi::GDK_KEY_Serbian_tshe as u32);
1012     pub const Macedonia_kje: Key = Key(ffi::GDK_KEY_Macedonia_kje as u32);
1013     pub const Ukrainian_ghe_with_upturn: Key = Key(ffi::GDK_KEY_Ukrainian_ghe_with_upturn as u32);
1014     pub const Byelorussian_shortu: Key = Key(ffi::GDK_KEY_Byelorussian_shortu as u32);
1015     pub const Cyrillic_dzhe: Key = Key(ffi::GDK_KEY_Cyrillic_dzhe as u32);
1016     pub const Serbian_dze: Key = Key(ffi::GDK_KEY_Serbian_dze as u32);
1017     pub const numerosign: Key = Key(ffi::GDK_KEY_numerosign as u32);
1018     pub const Serbian_DJE: Key = Key(ffi::GDK_KEY_Serbian_DJE as u32);
1019     pub const Macedonia_GJE: Key = Key(ffi::GDK_KEY_Macedonia_GJE as u32);
1020     pub const Cyrillic_IO: Key = Key(ffi::GDK_KEY_Cyrillic_IO as u32);
1021     pub const Ukrainian_IE: Key = Key(ffi::GDK_KEY_Ukrainian_IE as u32);
1022     pub const Ukranian_JE: Key = Key(ffi::GDK_KEY_Ukranian_JE as u32);
1023     pub const Macedonia_DSE: Key = Key(ffi::GDK_KEY_Macedonia_DSE as u32);
1024     pub const Ukrainian_I: Key = Key(ffi::GDK_KEY_Ukrainian_I as u32);
1025     pub const Ukranian_I: Key = Key(ffi::GDK_KEY_Ukranian_I as u32);
1026     pub const Ukrainian_YI: Key = Key(ffi::GDK_KEY_Ukrainian_YI as u32);
1027     pub const Ukranian_YI: Key = Key(ffi::GDK_KEY_Ukranian_YI as u32);
1028     pub const Cyrillic_JE: Key = Key(ffi::GDK_KEY_Cyrillic_JE as u32);
1029     pub const Serbian_JE: Key = Key(ffi::GDK_KEY_Serbian_JE as u32);
1030     pub const Cyrillic_LJE: Key = Key(ffi::GDK_KEY_Cyrillic_LJE as u32);
1031     pub const Serbian_LJE: Key = Key(ffi::GDK_KEY_Serbian_LJE as u32);
1032     pub const Cyrillic_NJE: Key = Key(ffi::GDK_KEY_Cyrillic_NJE as u32);
1033     pub const Serbian_NJE: Key = Key(ffi::GDK_KEY_Serbian_NJE as u32);
1034     pub const Serbian_TSHE: Key = Key(ffi::GDK_KEY_Serbian_TSHE as u32);
1035     pub const Macedonia_KJE: Key = Key(ffi::GDK_KEY_Macedonia_KJE as u32);
1036     pub const Ukrainian_GHE_WITH_UPTURN: Key = Key(ffi::GDK_KEY_Ukrainian_GHE_WITH_UPTURN as u32);
1037     pub const Byelorussian_SHORTU: Key = Key(ffi::GDK_KEY_Byelorussian_SHORTU as u32);
1038     pub const Cyrillic_DZHE: Key = Key(ffi::GDK_KEY_Cyrillic_DZHE as u32);
1039     pub const Serbian_DZE: Key = Key(ffi::GDK_KEY_Serbian_DZE as u32);
1040     pub const Cyrillic_yu: Key = Key(ffi::GDK_KEY_Cyrillic_yu as u32);
1041     pub const Cyrillic_a: Key = Key(ffi::GDK_KEY_Cyrillic_a as u32);
1042     pub const Cyrillic_be: Key = Key(ffi::GDK_KEY_Cyrillic_be as u32);
1043     pub const Cyrillic_tse: Key = Key(ffi::GDK_KEY_Cyrillic_tse as u32);
1044     pub const Cyrillic_de: Key = Key(ffi::GDK_KEY_Cyrillic_de as u32);
1045     pub const Cyrillic_ie: Key = Key(ffi::GDK_KEY_Cyrillic_ie as u32);
1046     pub const Cyrillic_ef: Key = Key(ffi::GDK_KEY_Cyrillic_ef as u32);
1047     pub const Cyrillic_ghe: Key = Key(ffi::GDK_KEY_Cyrillic_ghe as u32);
1048     pub const Cyrillic_ha: Key = Key(ffi::GDK_KEY_Cyrillic_ha as u32);
1049     pub const Cyrillic_i: Key = Key(ffi::GDK_KEY_Cyrillic_i as u32);
1050     pub const Cyrillic_shorti: Key = Key(ffi::GDK_KEY_Cyrillic_shorti as u32);
1051     pub const Cyrillic_ka: Key = Key(ffi::GDK_KEY_Cyrillic_ka as u32);
1052     pub const Cyrillic_el: Key = Key(ffi::GDK_KEY_Cyrillic_el as u32);
1053     pub const Cyrillic_em: Key = Key(ffi::GDK_KEY_Cyrillic_em as u32);
1054     pub const Cyrillic_en: Key = Key(ffi::GDK_KEY_Cyrillic_en as u32);
1055     pub const Cyrillic_o: Key = Key(ffi::GDK_KEY_Cyrillic_o as u32);
1056     pub const Cyrillic_pe: Key = Key(ffi::GDK_KEY_Cyrillic_pe as u32);
1057     pub const Cyrillic_ya: Key = Key(ffi::GDK_KEY_Cyrillic_ya as u32);
1058     pub const Cyrillic_er: Key = Key(ffi::GDK_KEY_Cyrillic_er as u32);
1059     pub const Cyrillic_es: Key = Key(ffi::GDK_KEY_Cyrillic_es as u32);
1060     pub const Cyrillic_te: Key = Key(ffi::GDK_KEY_Cyrillic_te as u32);
1061     pub const Cyrillic_u: Key = Key(ffi::GDK_KEY_Cyrillic_u as u32);
1062     pub const Cyrillic_zhe: Key = Key(ffi::GDK_KEY_Cyrillic_zhe as u32);
1063     pub const Cyrillic_ve: Key = Key(ffi::GDK_KEY_Cyrillic_ve as u32);
1064     pub const Cyrillic_softsign: Key = Key(ffi::GDK_KEY_Cyrillic_softsign as u32);
1065     pub const Cyrillic_yeru: Key = Key(ffi::GDK_KEY_Cyrillic_yeru as u32);
1066     pub const Cyrillic_ze: Key = Key(ffi::GDK_KEY_Cyrillic_ze as u32);
1067     pub const Cyrillic_sha: Key = Key(ffi::GDK_KEY_Cyrillic_sha as u32);
1068     pub const Cyrillic_e: Key = Key(ffi::GDK_KEY_Cyrillic_e as u32);
1069     pub const Cyrillic_shcha: Key = Key(ffi::GDK_KEY_Cyrillic_shcha as u32);
1070     pub const Cyrillic_che: Key = Key(ffi::GDK_KEY_Cyrillic_che as u32);
1071     pub const Cyrillic_hardsign: Key = Key(ffi::GDK_KEY_Cyrillic_hardsign as u32);
1072     pub const Cyrillic_YU: Key = Key(ffi::GDK_KEY_Cyrillic_YU as u32);
1073     pub const Cyrillic_A: Key = Key(ffi::GDK_KEY_Cyrillic_A as u32);
1074     pub const Cyrillic_BE: Key = Key(ffi::GDK_KEY_Cyrillic_BE as u32);
1075     pub const Cyrillic_TSE: Key = Key(ffi::GDK_KEY_Cyrillic_TSE as u32);
1076     pub const Cyrillic_DE: Key = Key(ffi::GDK_KEY_Cyrillic_DE as u32);
1077     pub const Cyrillic_IE: Key = Key(ffi::GDK_KEY_Cyrillic_IE as u32);
1078     pub const Cyrillic_EF: Key = Key(ffi::GDK_KEY_Cyrillic_EF as u32);
1079     pub const Cyrillic_GHE: Key = Key(ffi::GDK_KEY_Cyrillic_GHE as u32);
1080     pub const Cyrillic_HA: Key = Key(ffi::GDK_KEY_Cyrillic_HA as u32);
1081     pub const Cyrillic_I: Key = Key(ffi::GDK_KEY_Cyrillic_I as u32);
1082     pub const Cyrillic_SHORTI: Key = Key(ffi::GDK_KEY_Cyrillic_SHORTI as u32);
1083     pub const Cyrillic_KA: Key = Key(ffi::GDK_KEY_Cyrillic_KA as u32);
1084     pub const Cyrillic_EL: Key = Key(ffi::GDK_KEY_Cyrillic_EL as u32);
1085     pub const Cyrillic_EM: Key = Key(ffi::GDK_KEY_Cyrillic_EM as u32);
1086     pub const Cyrillic_EN: Key = Key(ffi::GDK_KEY_Cyrillic_EN as u32);
1087     pub const Cyrillic_O: Key = Key(ffi::GDK_KEY_Cyrillic_O as u32);
1088     pub const Cyrillic_PE: Key = Key(ffi::GDK_KEY_Cyrillic_PE as u32);
1089     pub const Cyrillic_YA: Key = Key(ffi::GDK_KEY_Cyrillic_YA as u32);
1090     pub const Cyrillic_ER: Key = Key(ffi::GDK_KEY_Cyrillic_ER as u32);
1091     pub const Cyrillic_ES: Key = Key(ffi::GDK_KEY_Cyrillic_ES as u32);
1092     pub const Cyrillic_TE: Key = Key(ffi::GDK_KEY_Cyrillic_TE as u32);
1093     pub const Cyrillic_U: Key = Key(ffi::GDK_KEY_Cyrillic_U as u32);
1094     pub const Cyrillic_ZHE: Key = Key(ffi::GDK_KEY_Cyrillic_ZHE as u32);
1095     pub const Cyrillic_VE: Key = Key(ffi::GDK_KEY_Cyrillic_VE as u32);
1096     pub const Cyrillic_SOFTSIGN: Key = Key(ffi::GDK_KEY_Cyrillic_SOFTSIGN as u32);
1097     pub const Cyrillic_YERU: Key = Key(ffi::GDK_KEY_Cyrillic_YERU as u32);
1098     pub const Cyrillic_ZE: Key = Key(ffi::GDK_KEY_Cyrillic_ZE as u32);
1099     pub const Cyrillic_SHA: Key = Key(ffi::GDK_KEY_Cyrillic_SHA as u32);
1100     pub const Cyrillic_E: Key = Key(ffi::GDK_KEY_Cyrillic_E as u32);
1101     pub const Cyrillic_SHCHA: Key = Key(ffi::GDK_KEY_Cyrillic_SHCHA as u32);
1102     pub const Cyrillic_CHE: Key = Key(ffi::GDK_KEY_Cyrillic_CHE as u32);
1103     pub const Cyrillic_HARDSIGN: Key = Key(ffi::GDK_KEY_Cyrillic_HARDSIGN as u32);
1104     pub const Greek_ALPHAaccent: Key = Key(ffi::GDK_KEY_Greek_ALPHAaccent as u32);
1105     pub const Greek_EPSILONaccent: Key = Key(ffi::GDK_KEY_Greek_EPSILONaccent as u32);
1106     pub const Greek_ETAaccent: Key = Key(ffi::GDK_KEY_Greek_ETAaccent as u32);
1107     pub const Greek_IOTAaccent: Key = Key(ffi::GDK_KEY_Greek_IOTAaccent as u32);
1108     pub const Greek_IOTAdieresis: Key = Key(ffi::GDK_KEY_Greek_IOTAdieresis as u32);
1109     pub const Greek_IOTAdiaeresis: Key = Key(ffi::GDK_KEY_Greek_IOTAdiaeresis as u32);
1110     pub const Greek_OMICRONaccent: Key = Key(ffi::GDK_KEY_Greek_OMICRONaccent as u32);
1111     pub const Greek_UPSILONaccent: Key = Key(ffi::GDK_KEY_Greek_UPSILONaccent as u32);
1112     pub const Greek_UPSILONdieresis: Key = Key(ffi::GDK_KEY_Greek_UPSILONdieresis as u32);
1113     pub const Greek_OMEGAaccent: Key = Key(ffi::GDK_KEY_Greek_OMEGAaccent as u32);
1114     pub const Greek_accentdieresis: Key = Key(ffi::GDK_KEY_Greek_accentdieresis as u32);
1115     pub const Greek_horizbar: Key = Key(ffi::GDK_KEY_Greek_horizbar as u32);
1116     pub const Greek_alphaaccent: Key = Key(ffi::GDK_KEY_Greek_alphaaccent as u32);
1117     pub const Greek_epsilonaccent: Key = Key(ffi::GDK_KEY_Greek_epsilonaccent as u32);
1118     pub const Greek_etaaccent: Key = Key(ffi::GDK_KEY_Greek_etaaccent as u32);
1119     pub const Greek_iotaaccent: Key = Key(ffi::GDK_KEY_Greek_iotaaccent as u32);
1120     pub const Greek_iotadieresis: Key = Key(ffi::GDK_KEY_Greek_iotadieresis as u32);
1121     pub const Greek_iotaaccentdieresis: Key = Key(ffi::GDK_KEY_Greek_iotaaccentdieresis as u32);
1122     pub const Greek_omicronaccent: Key = Key(ffi::GDK_KEY_Greek_omicronaccent as u32);
1123     pub const Greek_upsilonaccent: Key = Key(ffi::GDK_KEY_Greek_upsilonaccent as u32);
1124     pub const Greek_upsilondieresis: Key = Key(ffi::GDK_KEY_Greek_upsilondieresis as u32);
1125     pub const Greek_upsilonaccentdieresis: Key =
1126         Key(ffi::GDK_KEY_Greek_upsilonaccentdieresis as u32);
1127     pub const Greek_omegaaccent: Key = Key(ffi::GDK_KEY_Greek_omegaaccent as u32);
1128     pub const Greek_ALPHA: Key = Key(ffi::GDK_KEY_Greek_ALPHA as u32);
1129     pub const Greek_BETA: Key = Key(ffi::GDK_KEY_Greek_BETA as u32);
1130     pub const Greek_GAMMA: Key = Key(ffi::GDK_KEY_Greek_GAMMA as u32);
1131     pub const Greek_DELTA: Key = Key(ffi::GDK_KEY_Greek_DELTA as u32);
1132     pub const Greek_EPSILON: Key = Key(ffi::GDK_KEY_Greek_EPSILON as u32);
1133     pub const Greek_ZETA: Key = Key(ffi::GDK_KEY_Greek_ZETA as u32);
1134     pub const Greek_ETA: Key = Key(ffi::GDK_KEY_Greek_ETA as u32);
1135     pub const Greek_THETA: Key = Key(ffi::GDK_KEY_Greek_THETA as u32);
1136     pub const Greek_IOTA: Key = Key(ffi::GDK_KEY_Greek_IOTA as u32);
1137     pub const Greek_KAPPA: Key = Key(ffi::GDK_KEY_Greek_KAPPA as u32);
1138     pub const Greek_LAMDA: Key = Key(ffi::GDK_KEY_Greek_LAMDA as u32);
1139     pub const Greek_LAMBDA: Key = Key(ffi::GDK_KEY_Greek_LAMBDA as u32);
1140     pub const Greek_MU: Key = Key(ffi::GDK_KEY_Greek_MU as u32);
1141     pub const Greek_NU: Key = Key(ffi::GDK_KEY_Greek_NU as u32);
1142     pub const Greek_XI: Key = Key(ffi::GDK_KEY_Greek_XI as u32);
1143     pub const Greek_OMICRON: Key = Key(ffi::GDK_KEY_Greek_OMICRON as u32);
1144     pub const Greek_PI: Key = Key(ffi::GDK_KEY_Greek_PI as u32);
1145     pub const Greek_RHO: Key = Key(ffi::GDK_KEY_Greek_RHO as u32);
1146     pub const Greek_SIGMA: Key = Key(ffi::GDK_KEY_Greek_SIGMA as u32);
1147     pub const Greek_TAU: Key = Key(ffi::GDK_KEY_Greek_TAU as u32);
1148     pub const Greek_UPSILON: Key = Key(ffi::GDK_KEY_Greek_UPSILON as u32);
1149     pub const Greek_PHI: Key = Key(ffi::GDK_KEY_Greek_PHI as u32);
1150     pub const Greek_CHI: Key = Key(ffi::GDK_KEY_Greek_CHI as u32);
1151     pub const Greek_PSI: Key = Key(ffi::GDK_KEY_Greek_PSI as u32);
1152     pub const Greek_OMEGA: Key = Key(ffi::GDK_KEY_Greek_OMEGA as u32);
1153     pub const Greek_alpha: Key = Key(ffi::GDK_KEY_Greek_alpha as u32);
1154     pub const Greek_beta: Key = Key(ffi::GDK_KEY_Greek_beta as u32);
1155     pub const Greek_gamma: Key = Key(ffi::GDK_KEY_Greek_gamma as u32);
1156     pub const Greek_delta: Key = Key(ffi::GDK_KEY_Greek_delta as u32);
1157     pub const Greek_epsilon: Key = Key(ffi::GDK_KEY_Greek_epsilon as u32);
1158     pub const Greek_zeta: Key = Key(ffi::GDK_KEY_Greek_zeta as u32);
1159     pub const Greek_eta: Key = Key(ffi::GDK_KEY_Greek_eta as u32);
1160     pub const Greek_theta: Key = Key(ffi::GDK_KEY_Greek_theta as u32);
1161     pub const Greek_iota: Key = Key(ffi::GDK_KEY_Greek_iota as u32);
1162     pub const Greek_kappa: Key = Key(ffi::GDK_KEY_Greek_kappa as u32);
1163     pub const Greek_lamda: Key = Key(ffi::GDK_KEY_Greek_lamda as u32);
1164     pub const Greek_lambda: Key = Key(ffi::GDK_KEY_Greek_lambda as u32);
1165     pub const Greek_mu: Key = Key(ffi::GDK_KEY_Greek_mu as u32);
1166     pub const Greek_nu: Key = Key(ffi::GDK_KEY_Greek_nu as u32);
1167     pub const Greek_xi: Key = Key(ffi::GDK_KEY_Greek_xi as u32);
1168     pub const Greek_omicron: Key = Key(ffi::GDK_KEY_Greek_omicron as u32);
1169     pub const Greek_pi: Key = Key(ffi::GDK_KEY_Greek_pi as u32);
1170     pub const Greek_rho: Key = Key(ffi::GDK_KEY_Greek_rho as u32);
1171     pub const Greek_sigma: Key = Key(ffi::GDK_KEY_Greek_sigma as u32);
1172     pub const Greek_finalsmallsigma: Key = Key(ffi::GDK_KEY_Greek_finalsmallsigma as u32);
1173     pub const Greek_tau: Key = Key(ffi::GDK_KEY_Greek_tau as u32);
1174     pub const Greek_upsilon: Key = Key(ffi::GDK_KEY_Greek_upsilon as u32);
1175     pub const Greek_phi: Key = Key(ffi::GDK_KEY_Greek_phi as u32);
1176     pub const Greek_chi: Key = Key(ffi::GDK_KEY_Greek_chi as u32);
1177     pub const Greek_psi: Key = Key(ffi::GDK_KEY_Greek_psi as u32);
1178     pub const Greek_omega: Key = Key(ffi::GDK_KEY_Greek_omega as u32);
1179     pub const Greek_switch: Key = Key(ffi::GDK_KEY_Greek_switch as u32);
1180     pub const leftradical: Key = Key(ffi::GDK_KEY_leftradical as u32);
1181     pub const topleftradical: Key = Key(ffi::GDK_KEY_topleftradical as u32);
1182     pub const horizconnector: Key = Key(ffi::GDK_KEY_horizconnector as u32);
1183     pub const topintegral: Key = Key(ffi::GDK_KEY_topintegral as u32);
1184     pub const botintegral: Key = Key(ffi::GDK_KEY_botintegral as u32);
1185     pub const vertconnector: Key = Key(ffi::GDK_KEY_vertconnector as u32);
1186     pub const topleftsqbracket: Key = Key(ffi::GDK_KEY_topleftsqbracket as u32);
1187     pub const botleftsqbracket: Key = Key(ffi::GDK_KEY_botleftsqbracket as u32);
1188     pub const toprightsqbracket: Key = Key(ffi::GDK_KEY_toprightsqbracket as u32);
1189     pub const botrightsqbracket: Key = Key(ffi::GDK_KEY_botrightsqbracket as u32);
1190     pub const topleftparens: Key = Key(ffi::GDK_KEY_topleftparens as u32);
1191     pub const botleftparens: Key = Key(ffi::GDK_KEY_botleftparens as u32);
1192     pub const toprightparens: Key = Key(ffi::GDK_KEY_toprightparens as u32);
1193     pub const botrightparens: Key = Key(ffi::GDK_KEY_botrightparens as u32);
1194     pub const leftmiddlecurlybrace: Key = Key(ffi::GDK_KEY_leftmiddlecurlybrace as u32);
1195     pub const rightmiddlecurlybrace: Key = Key(ffi::GDK_KEY_rightmiddlecurlybrace as u32);
1196     pub const topleftsummation: Key = Key(ffi::GDK_KEY_topleftsummation as u32);
1197     pub const botleftsummation: Key = Key(ffi::GDK_KEY_botleftsummation as u32);
1198     pub const topvertsummationconnector: Key = Key(ffi::GDK_KEY_topvertsummationconnector as u32);
1199     pub const botvertsummationconnector: Key = Key(ffi::GDK_KEY_botvertsummationconnector as u32);
1200     pub const toprightsummation: Key = Key(ffi::GDK_KEY_toprightsummation as u32);
1201     pub const botrightsummation: Key = Key(ffi::GDK_KEY_botrightsummation as u32);
1202     pub const rightmiddlesummation: Key = Key(ffi::GDK_KEY_rightmiddlesummation as u32);
1203     pub const lessthanequal: Key = Key(ffi::GDK_KEY_lessthanequal as u32);
1204     pub const notequal: Key = Key(ffi::GDK_KEY_notequal as u32);
1205     pub const greaterthanequal: Key = Key(ffi::GDK_KEY_greaterthanequal as u32);
1206     pub const integral: Key = Key(ffi::GDK_KEY_integral as u32);
1207     pub const therefore: Key = Key(ffi::GDK_KEY_therefore as u32);
1208     pub const variation: Key = Key(ffi::GDK_KEY_variation as u32);
1209     pub const infinity: Key = Key(ffi::GDK_KEY_infinity as u32);
1210     pub const nabla: Key = Key(ffi::GDK_KEY_nabla as u32);
1211     pub const approximate: Key = Key(ffi::GDK_KEY_approximate as u32);
1212     pub const similarequal: Key = Key(ffi::GDK_KEY_similarequal as u32);
1213     pub const ifonlyif: Key = Key(ffi::GDK_KEY_ifonlyif as u32);
1214     pub const implies: Key = Key(ffi::GDK_KEY_implies as u32);
1215     pub const identical: Key = Key(ffi::GDK_KEY_identical as u32);
1216     pub const radical: Key = Key(ffi::GDK_KEY_radical as u32);
1217     pub const includedin: Key = Key(ffi::GDK_KEY_includedin as u32);
1218     pub const includes: Key = Key(ffi::GDK_KEY_includes as u32);
1219     pub const intersection: Key = Key(ffi::GDK_KEY_intersection as u32);
1220     pub const union: Key = Key(ffi::GDK_KEY_union as u32);
1221     pub const logicaland: Key = Key(ffi::GDK_KEY_logicaland as u32);
1222     pub const logicalor: Key = Key(ffi::GDK_KEY_logicalor as u32);
1223     pub const partialderivative: Key = Key(ffi::GDK_KEY_partialderivative as u32);
1224     pub const function: Key = Key(ffi::GDK_KEY_function as u32);
1225     pub const leftarrow: Key = Key(ffi::GDK_KEY_leftarrow as u32);
1226     pub const uparrow: Key = Key(ffi::GDK_KEY_uparrow as u32);
1227     pub const rightarrow: Key = Key(ffi::GDK_KEY_rightarrow as u32);
1228     pub const downarrow: Key = Key(ffi::GDK_KEY_downarrow as u32);
1229     pub const blank: Key = Key(ffi::GDK_KEY_blank as u32);
1230     pub const soliddiamond: Key = Key(ffi::GDK_KEY_soliddiamond as u32);
1231     pub const checkerboard: Key = Key(ffi::GDK_KEY_checkerboard as u32);
1232     pub const ht: Key = Key(ffi::GDK_KEY_ht as u32);
1233     pub const ff: Key = Key(ffi::GDK_KEY_ff as u32);
1234     pub const cr: Key = Key(ffi::GDK_KEY_cr as u32);
1235     pub const lf: Key = Key(ffi::GDK_KEY_lf as u32);
1236     pub const nl: Key = Key(ffi::GDK_KEY_nl as u32);
1237     pub const vt: Key = Key(ffi::GDK_KEY_vt as u32);
1238     pub const lowrightcorner: Key = Key(ffi::GDK_KEY_lowrightcorner as u32);
1239     pub const uprightcorner: Key = Key(ffi::GDK_KEY_uprightcorner as u32);
1240     pub const upleftcorner: Key = Key(ffi::GDK_KEY_upleftcorner as u32);
1241     pub const lowleftcorner: Key = Key(ffi::GDK_KEY_lowleftcorner as u32);
1242     pub const crossinglines: Key = Key(ffi::GDK_KEY_crossinglines as u32);
1243     pub const horizlinescan1: Key = Key(ffi::GDK_KEY_horizlinescan1 as u32);
1244     pub const horizlinescan3: Key = Key(ffi::GDK_KEY_horizlinescan3 as u32);
1245     pub const horizlinescan5: Key = Key(ffi::GDK_KEY_horizlinescan5 as u32);
1246     pub const horizlinescan7: Key = Key(ffi::GDK_KEY_horizlinescan7 as u32);
1247     pub const horizlinescan9: Key = Key(ffi::GDK_KEY_horizlinescan9 as u32);
1248     pub const leftt: Key = Key(ffi::GDK_KEY_leftt as u32);
1249     pub const rightt: Key = Key(ffi::GDK_KEY_rightt as u32);
1250     pub const bott: Key = Key(ffi::GDK_KEY_bott as u32);
1251     pub const topt: Key = Key(ffi::GDK_KEY_topt as u32);
1252     pub const vertbar: Key = Key(ffi::GDK_KEY_vertbar as u32);
1253     pub const emspace: Key = Key(ffi::GDK_KEY_emspace as u32);
1254     pub const enspace: Key = Key(ffi::GDK_KEY_enspace as u32);
1255     pub const em3space: Key = Key(ffi::GDK_KEY_em3space as u32);
1256     pub const em4space: Key = Key(ffi::GDK_KEY_em4space as u32);
1257     pub const digitspace: Key = Key(ffi::GDK_KEY_digitspace as u32);
1258     pub const punctspace: Key = Key(ffi::GDK_KEY_punctspace as u32);
1259     pub const thinspace: Key = Key(ffi::GDK_KEY_thinspace as u32);
1260     pub const hairspace: Key = Key(ffi::GDK_KEY_hairspace as u32);
1261     pub const emdash: Key = Key(ffi::GDK_KEY_emdash as u32);
1262     pub const endash: Key = Key(ffi::GDK_KEY_endash as u32);
1263     pub const signifblank: Key = Key(ffi::GDK_KEY_signifblank as u32);
1264     pub const ellipsis: Key = Key(ffi::GDK_KEY_ellipsis as u32);
1265     pub const doubbaselinedot: Key = Key(ffi::GDK_KEY_doubbaselinedot as u32);
1266     pub const onethird: Key = Key(ffi::GDK_KEY_onethird as u32);
1267     pub const twothirds: Key = Key(ffi::GDK_KEY_twothirds as u32);
1268     pub const onefifth: Key = Key(ffi::GDK_KEY_onefifth as u32);
1269     pub const twofifths: Key = Key(ffi::GDK_KEY_twofifths as u32);
1270     pub const threefifths: Key = Key(ffi::GDK_KEY_threefifths as u32);
1271     pub const fourfifths: Key = Key(ffi::GDK_KEY_fourfifths as u32);
1272     pub const onesixth: Key = Key(ffi::GDK_KEY_onesixth as u32);
1273     pub const fivesixths: Key = Key(ffi::GDK_KEY_fivesixths as u32);
1274     pub const careof: Key = Key(ffi::GDK_KEY_careof as u32);
1275     pub const figdash: Key = Key(ffi::GDK_KEY_figdash as u32);
1276     pub const leftanglebracket: Key = Key(ffi::GDK_KEY_leftanglebracket as u32);
1277     pub const decimalpoint: Key = Key(ffi::GDK_KEY_decimalpoint as u32);
1278     pub const rightanglebracket: Key = Key(ffi::GDK_KEY_rightanglebracket as u32);
1279     pub const marker: Key = Key(ffi::GDK_KEY_marker as u32);
1280     pub const oneeighth: Key = Key(ffi::GDK_KEY_oneeighth as u32);
1281     pub const threeeighths: Key = Key(ffi::GDK_KEY_threeeighths as u32);
1282     pub const fiveeighths: Key = Key(ffi::GDK_KEY_fiveeighths as u32);
1283     pub const seveneighths: Key = Key(ffi::GDK_KEY_seveneighths as u32);
1284     pub const trademark: Key = Key(ffi::GDK_KEY_trademark as u32);
1285     pub const signaturemark: Key = Key(ffi::GDK_KEY_signaturemark as u32);
1286     pub const trademarkincircle: Key = Key(ffi::GDK_KEY_trademarkincircle as u32);
1287     pub const leftopentriangle: Key = Key(ffi::GDK_KEY_leftopentriangle as u32);
1288     pub const rightopentriangle: Key = Key(ffi::GDK_KEY_rightopentriangle as u32);
1289     pub const emopencircle: Key = Key(ffi::GDK_KEY_emopencircle as u32);
1290     pub const emopenrectangle: Key = Key(ffi::GDK_KEY_emopenrectangle as u32);
1291     pub const leftsinglequotemark: Key = Key(ffi::GDK_KEY_leftsinglequotemark as u32);
1292     pub const rightsinglequotemark: Key = Key(ffi::GDK_KEY_rightsinglequotemark as u32);
1293     pub const leftdoublequotemark: Key = Key(ffi::GDK_KEY_leftdoublequotemark as u32);
1294     pub const rightdoublequotemark: Key = Key(ffi::GDK_KEY_rightdoublequotemark as u32);
1295     pub const prescription: Key = Key(ffi::GDK_KEY_prescription as u32);
1296     pub const permille: Key = Key(ffi::GDK_KEY_permille as u32);
1297     pub const minutes: Key = Key(ffi::GDK_KEY_minutes as u32);
1298     pub const seconds: Key = Key(ffi::GDK_KEY_seconds as u32);
1299     pub const latincross: Key = Key(ffi::GDK_KEY_latincross as u32);
1300     pub const hexagram: Key = Key(ffi::GDK_KEY_hexagram as u32);
1301     pub const filledrectbullet: Key = Key(ffi::GDK_KEY_filledrectbullet as u32);
1302     pub const filledlefttribullet: Key = Key(ffi::GDK_KEY_filledlefttribullet as u32);
1303     pub const filledrighttribullet: Key = Key(ffi::GDK_KEY_filledrighttribullet as u32);
1304     pub const emfilledcircle: Key = Key(ffi::GDK_KEY_emfilledcircle as u32);
1305     pub const emfilledrect: Key = Key(ffi::GDK_KEY_emfilledrect as u32);
1306     pub const enopencircbullet: Key = Key(ffi::GDK_KEY_enopencircbullet as u32);
1307     pub const enopensquarebullet: Key = Key(ffi::GDK_KEY_enopensquarebullet as u32);
1308     pub const openrectbullet: Key = Key(ffi::GDK_KEY_openrectbullet as u32);
1309     pub const opentribulletup: Key = Key(ffi::GDK_KEY_opentribulletup as u32);
1310     pub const opentribulletdown: Key = Key(ffi::GDK_KEY_opentribulletdown as u32);
1311     pub const openstar: Key = Key(ffi::GDK_KEY_openstar as u32);
1312     pub const enfilledcircbullet: Key = Key(ffi::GDK_KEY_enfilledcircbullet as u32);
1313     pub const enfilledsqbullet: Key = Key(ffi::GDK_KEY_enfilledsqbullet as u32);
1314     pub const filledtribulletup: Key = Key(ffi::GDK_KEY_filledtribulletup as u32);
1315     pub const filledtribulletdown: Key = Key(ffi::GDK_KEY_filledtribulletdown as u32);
1316     pub const leftpointer: Key = Key(ffi::GDK_KEY_leftpointer as u32);
1317     pub const rightpointer: Key = Key(ffi::GDK_KEY_rightpointer as u32);
1318     pub const club: Key = Key(ffi::GDK_KEY_club as u32);
1319     pub const diamond: Key = Key(ffi::GDK_KEY_diamond as u32);
1320     pub const heart: Key = Key(ffi::GDK_KEY_heart as u32);
1321     pub const maltesecross: Key = Key(ffi::GDK_KEY_maltesecross as u32);
1322     pub const dagger: Key = Key(ffi::GDK_KEY_dagger as u32);
1323     pub const doubledagger: Key = Key(ffi::GDK_KEY_doubledagger as u32);
1324     pub const checkmark: Key = Key(ffi::GDK_KEY_checkmark as u32);
1325     pub const ballotcross: Key = Key(ffi::GDK_KEY_ballotcross as u32);
1326     pub const musicalsharp: Key = Key(ffi::GDK_KEY_musicalsharp as u32);
1327     pub const musicalflat: Key = Key(ffi::GDK_KEY_musicalflat as u32);
1328     pub const malesymbol: Key = Key(ffi::GDK_KEY_malesymbol as u32);
1329     pub const femalesymbol: Key = Key(ffi::GDK_KEY_femalesymbol as u32);
1330     pub const telephone: Key = Key(ffi::GDK_KEY_telephone as u32);
1331     pub const telephonerecorder: Key = Key(ffi::GDK_KEY_telephonerecorder as u32);
1332     pub const phonographcopyright: Key = Key(ffi::GDK_KEY_phonographcopyright as u32);
1333     pub const caret: Key = Key(ffi::GDK_KEY_caret as u32);
1334     pub const singlelowquotemark: Key = Key(ffi::GDK_KEY_singlelowquotemark as u32);
1335     pub const doublelowquotemark: Key = Key(ffi::GDK_KEY_doublelowquotemark as u32);
1336     pub const cursor: Key = Key(ffi::GDK_KEY_cursor as u32);
1337     pub const leftcaret: Key = Key(ffi::GDK_KEY_leftcaret as u32);
1338     pub const rightcaret: Key = Key(ffi::GDK_KEY_rightcaret as u32);
1339     pub const downcaret: Key = Key(ffi::GDK_KEY_downcaret as u32);
1340     pub const upcaret: Key = Key(ffi::GDK_KEY_upcaret as u32);
1341     pub const overbar: Key = Key(ffi::GDK_KEY_overbar as u32);
1342     pub const downtack: Key = Key(ffi::GDK_KEY_downtack as u32);
1343     pub const upshoe: Key = Key(ffi::GDK_KEY_upshoe as u32);
1344     pub const downstile: Key = Key(ffi::GDK_KEY_downstile as u32);
1345     pub const underbar: Key = Key(ffi::GDK_KEY_underbar as u32);
1346     pub const jot: Key = Key(ffi::GDK_KEY_jot as u32);
1347     pub const quad: Key = Key(ffi::GDK_KEY_quad as u32);
1348     pub const uptack: Key = Key(ffi::GDK_KEY_uptack as u32);
1349     pub const circle: Key = Key(ffi::GDK_KEY_circle as u32);
1350     pub const upstile: Key = Key(ffi::GDK_KEY_upstile as u32);
1351     pub const downshoe: Key = Key(ffi::GDK_KEY_downshoe as u32);
1352     pub const rightshoe: Key = Key(ffi::GDK_KEY_rightshoe as u32);
1353     pub const leftshoe: Key = Key(ffi::GDK_KEY_leftshoe as u32);
1354     pub const lefttack: Key = Key(ffi::GDK_KEY_lefttack as u32);
1355     pub const righttack: Key = Key(ffi::GDK_KEY_righttack as u32);
1356     pub const hebrew_doublelowline: Key = Key(ffi::GDK_KEY_hebrew_doublelowline as u32);
1357     pub const hebrew_aleph: Key = Key(ffi::GDK_KEY_hebrew_aleph as u32);
1358     pub const hebrew_bet: Key = Key(ffi::GDK_KEY_hebrew_bet as u32);
1359     pub const hebrew_beth: Key = Key(ffi::GDK_KEY_hebrew_beth as u32);
1360     pub const hebrew_gimel: Key = Key(ffi::GDK_KEY_hebrew_gimel as u32);
1361     pub const hebrew_gimmel: Key = Key(ffi::GDK_KEY_hebrew_gimmel as u32);
1362     pub const hebrew_dalet: Key = Key(ffi::GDK_KEY_hebrew_dalet as u32);
1363     pub const hebrew_daleth: Key = Key(ffi::GDK_KEY_hebrew_daleth as u32);
1364     pub const hebrew_he: Key = Key(ffi::GDK_KEY_hebrew_he as u32);
1365     pub const hebrew_waw: Key = Key(ffi::GDK_KEY_hebrew_waw as u32);
1366     pub const hebrew_zain: Key = Key(ffi::GDK_KEY_hebrew_zain as u32);
1367     pub const hebrew_zayin: Key = Key(ffi::GDK_KEY_hebrew_zayin as u32);
1368     pub const hebrew_chet: Key = Key(ffi::GDK_KEY_hebrew_chet as u32);
1369     pub const hebrew_het: Key = Key(ffi::GDK_KEY_hebrew_het as u32);
1370     pub const hebrew_tet: Key = Key(ffi::GDK_KEY_hebrew_tet as u32);
1371     pub const hebrew_teth: Key = Key(ffi::GDK_KEY_hebrew_teth as u32);
1372     pub const hebrew_yod: Key = Key(ffi::GDK_KEY_hebrew_yod as u32);
1373     pub const hebrew_finalkaph: Key = Key(ffi::GDK_KEY_hebrew_finalkaph as u32);
1374     pub const hebrew_kaph: Key = Key(ffi::GDK_KEY_hebrew_kaph as u32);
1375     pub const hebrew_lamed: Key = Key(ffi::GDK_KEY_hebrew_lamed as u32);
1376     pub const hebrew_finalmem: Key = Key(ffi::GDK_KEY_hebrew_finalmem as u32);
1377     pub const hebrew_mem: Key = Key(ffi::GDK_KEY_hebrew_mem as u32);
1378     pub const hebrew_finalnun: Key = Key(ffi::GDK_KEY_hebrew_finalnun as u32);
1379     pub const hebrew_nun: Key = Key(ffi::GDK_KEY_hebrew_nun as u32);
1380     pub const hebrew_samech: Key = Key(ffi::GDK_KEY_hebrew_samech as u32);
1381     pub const hebrew_samekh: Key = Key(ffi::GDK_KEY_hebrew_samekh as u32);
1382     pub const hebrew_ayin: Key = Key(ffi::GDK_KEY_hebrew_ayin as u32);
1383     pub const hebrew_finalpe: Key = Key(ffi::GDK_KEY_hebrew_finalpe as u32);
1384     pub const hebrew_pe: Key = Key(ffi::GDK_KEY_hebrew_pe as u32);
1385     pub const hebrew_finalzade: Key = Key(ffi::GDK_KEY_hebrew_finalzade as u32);
1386     pub const hebrew_finalzadi: Key = Key(ffi::GDK_KEY_hebrew_finalzadi as u32);
1387     pub const hebrew_zade: Key = Key(ffi::GDK_KEY_hebrew_zade as u32);
1388     pub const hebrew_zadi: Key = Key(ffi::GDK_KEY_hebrew_zadi as u32);
1389     pub const hebrew_qoph: Key = Key(ffi::GDK_KEY_hebrew_qoph as u32);
1390     pub const hebrew_kuf: Key = Key(ffi::GDK_KEY_hebrew_kuf as u32);
1391     pub const hebrew_resh: Key = Key(ffi::GDK_KEY_hebrew_resh as u32);
1392     pub const hebrew_shin: Key = Key(ffi::GDK_KEY_hebrew_shin as u32);
1393     pub const hebrew_taw: Key = Key(ffi::GDK_KEY_hebrew_taw as u32);
1394     pub const hebrew_taf: Key = Key(ffi::GDK_KEY_hebrew_taf as u32);
1395     pub const Hebrew_switch: Key = Key(ffi::GDK_KEY_Hebrew_switch as u32);
1396     pub const Thai_kokai: Key = Key(ffi::GDK_KEY_Thai_kokai as u32);
1397     pub const Thai_khokhai: Key = Key(ffi::GDK_KEY_Thai_khokhai as u32);
1398     pub const Thai_khokhuat: Key = Key(ffi::GDK_KEY_Thai_khokhuat as u32);
1399     pub const Thai_khokhwai: Key = Key(ffi::GDK_KEY_Thai_khokhwai as u32);
1400     pub const Thai_khokhon: Key = Key(ffi::GDK_KEY_Thai_khokhon as u32);
1401     pub const Thai_khorakhang: Key = Key(ffi::GDK_KEY_Thai_khorakhang as u32);
1402     pub const Thai_ngongu: Key = Key(ffi::GDK_KEY_Thai_ngongu as u32);
1403     pub const Thai_chochan: Key = Key(ffi::GDK_KEY_Thai_chochan as u32);
1404     pub const Thai_choching: Key = Key(ffi::GDK_KEY_Thai_choching as u32);
1405     pub const Thai_chochang: Key = Key(ffi::GDK_KEY_Thai_chochang as u32);
1406     pub const Thai_soso: Key = Key(ffi::GDK_KEY_Thai_soso as u32);
1407     pub const Thai_chochoe: Key = Key(ffi::GDK_KEY_Thai_chochoe as u32);
1408     pub const Thai_yoying: Key = Key(ffi::GDK_KEY_Thai_yoying as u32);
1409     pub const Thai_dochada: Key = Key(ffi::GDK_KEY_Thai_dochada as u32);
1410     pub const Thai_topatak: Key = Key(ffi::GDK_KEY_Thai_topatak as u32);
1411     pub const Thai_thothan: Key = Key(ffi::GDK_KEY_Thai_thothan as u32);
1412     pub const Thai_thonangmontho: Key = Key(ffi::GDK_KEY_Thai_thonangmontho as u32);
1413     pub const Thai_thophuthao: Key = Key(ffi::GDK_KEY_Thai_thophuthao as u32);
1414     pub const Thai_nonen: Key = Key(ffi::GDK_KEY_Thai_nonen as u32);
1415     pub const Thai_dodek: Key = Key(ffi::GDK_KEY_Thai_dodek as u32);
1416     pub const Thai_totao: Key = Key(ffi::GDK_KEY_Thai_totao as u32);
1417     pub const Thai_thothung: Key = Key(ffi::GDK_KEY_Thai_thothung as u32);
1418     pub const Thai_thothahan: Key = Key(ffi::GDK_KEY_Thai_thothahan as u32);
1419     pub const Thai_thothong: Key = Key(ffi::GDK_KEY_Thai_thothong as u32);
1420     pub const Thai_nonu: Key = Key(ffi::GDK_KEY_Thai_nonu as u32);
1421     pub const Thai_bobaimai: Key = Key(ffi::GDK_KEY_Thai_bobaimai as u32);
1422     pub const Thai_popla: Key = Key(ffi::GDK_KEY_Thai_popla as u32);
1423     pub const Thai_phophung: Key = Key(ffi::GDK_KEY_Thai_phophung as u32);
1424     pub const Thai_fofa: Key = Key(ffi::GDK_KEY_Thai_fofa as u32);
1425     pub const Thai_phophan: Key = Key(ffi::GDK_KEY_Thai_phophan as u32);
1426     pub const Thai_fofan: Key = Key(ffi::GDK_KEY_Thai_fofan as u32);
1427     pub const Thai_phosamphao: Key = Key(ffi::GDK_KEY_Thai_phosamphao as u32);
1428     pub const Thai_moma: Key = Key(ffi::GDK_KEY_Thai_moma as u32);
1429     pub const Thai_yoyak: Key = Key(ffi::GDK_KEY_Thai_yoyak as u32);
1430     pub const Thai_rorua: Key = Key(ffi::GDK_KEY_Thai_rorua as u32);
1431     pub const Thai_ru: Key = Key(ffi::GDK_KEY_Thai_ru as u32);
1432     pub const Thai_loling: Key = Key(ffi::GDK_KEY_Thai_loling as u32);
1433     pub const Thai_lu: Key = Key(ffi::GDK_KEY_Thai_lu as u32);
1434     pub const Thai_wowaen: Key = Key(ffi::GDK_KEY_Thai_wowaen as u32);
1435     pub const Thai_sosala: Key = Key(ffi::GDK_KEY_Thai_sosala as u32);
1436     pub const Thai_sorusi: Key = Key(ffi::GDK_KEY_Thai_sorusi as u32);
1437     pub const Thai_sosua: Key = Key(ffi::GDK_KEY_Thai_sosua as u32);
1438     pub const Thai_hohip: Key = Key(ffi::GDK_KEY_Thai_hohip as u32);
1439     pub const Thai_lochula: Key = Key(ffi::GDK_KEY_Thai_lochula as u32);
1440     pub const Thai_oang: Key = Key(ffi::GDK_KEY_Thai_oang as u32);
1441     pub const Thai_honokhuk: Key = Key(ffi::GDK_KEY_Thai_honokhuk as u32);
1442     pub const Thai_paiyannoi: Key = Key(ffi::GDK_KEY_Thai_paiyannoi as u32);
1443     pub const Thai_saraa: Key = Key(ffi::GDK_KEY_Thai_saraa as u32);
1444     pub const Thai_maihanakat: Key = Key(ffi::GDK_KEY_Thai_maihanakat as u32);
1445     pub const Thai_saraaa: Key = Key(ffi::GDK_KEY_Thai_saraaa as u32);
1446     pub const Thai_saraam: Key = Key(ffi::GDK_KEY_Thai_saraam as u32);
1447     pub const Thai_sarai: Key = Key(ffi::GDK_KEY_Thai_sarai as u32);
1448     pub const Thai_saraii: Key = Key(ffi::GDK_KEY_Thai_saraii as u32);
1449     pub const Thai_saraue: Key = Key(ffi::GDK_KEY_Thai_saraue as u32);
1450     pub const Thai_sarauee: Key = Key(ffi::GDK_KEY_Thai_sarauee as u32);
1451     pub const Thai_sarau: Key = Key(ffi::GDK_KEY_Thai_sarau as u32);
1452     pub const Thai_sarauu: Key = Key(ffi::GDK_KEY_Thai_sarauu as u32);
1453     pub const Thai_phinthu: Key = Key(ffi::GDK_KEY_Thai_phinthu as u32);
1454     pub const Thai_maihanakat_maitho: Key = Key(ffi::GDK_KEY_Thai_maihanakat_maitho as u32);
1455     pub const Thai_baht: Key = Key(ffi::GDK_KEY_Thai_baht as u32);
1456     pub const Thai_sarae: Key = Key(ffi::GDK_KEY_Thai_sarae as u32);
1457     pub const Thai_saraae: Key = Key(ffi::GDK_KEY_Thai_saraae as u32);
1458     pub const Thai_sarao: Key = Key(ffi::GDK_KEY_Thai_sarao as u32);
1459     pub const Thai_saraaimaimuan: Key = Key(ffi::GDK_KEY_Thai_saraaimaimuan as u32);
1460     pub const Thai_saraaimaimalai: Key = Key(ffi::GDK_KEY_Thai_saraaimaimalai as u32);
1461     pub const Thai_lakkhangyao: Key = Key(ffi::GDK_KEY_Thai_lakkhangyao as u32);
1462     pub const Thai_maiyamok: Key = Key(ffi::GDK_KEY_Thai_maiyamok as u32);
1463     pub const Thai_maitaikhu: Key = Key(ffi::GDK_KEY_Thai_maitaikhu as u32);
1464     pub const Thai_maiek: Key = Key(ffi::GDK_KEY_Thai_maiek as u32);
1465     pub const Thai_maitho: Key = Key(ffi::GDK_KEY_Thai_maitho as u32);
1466     pub const Thai_maitri: Key = Key(ffi::GDK_KEY_Thai_maitri as u32);
1467     pub const Thai_maichattawa: Key = Key(ffi::GDK_KEY_Thai_maichattawa as u32);
1468     pub const Thai_thanthakhat: Key = Key(ffi::GDK_KEY_Thai_thanthakhat as u32);
1469     pub const Thai_nikhahit: Key = Key(ffi::GDK_KEY_Thai_nikhahit as u32);
1470     pub const Thai_leksun: Key = Key(ffi::GDK_KEY_Thai_leksun as u32);
1471     pub const Thai_leknung: Key = Key(ffi::GDK_KEY_Thai_leknung as u32);
1472     pub const Thai_leksong: Key = Key(ffi::GDK_KEY_Thai_leksong as u32);
1473     pub const Thai_leksam: Key = Key(ffi::GDK_KEY_Thai_leksam as u32);
1474     pub const Thai_leksi: Key = Key(ffi::GDK_KEY_Thai_leksi as u32);
1475     pub const Thai_lekha: Key = Key(ffi::GDK_KEY_Thai_lekha as u32);
1476     pub const Thai_lekhok: Key = Key(ffi::GDK_KEY_Thai_lekhok as u32);
1477     pub const Thai_lekchet: Key = Key(ffi::GDK_KEY_Thai_lekchet as u32);
1478     pub const Thai_lekpaet: Key = Key(ffi::GDK_KEY_Thai_lekpaet as u32);
1479     pub const Thai_lekkao: Key = Key(ffi::GDK_KEY_Thai_lekkao as u32);
1480     pub const Hangul: Key = Key(ffi::GDK_KEY_Hangul as u32);
1481     pub const Hangul_Start: Key = Key(ffi::GDK_KEY_Hangul_Start as u32);
1482     pub const Hangul_End: Key = Key(ffi::GDK_KEY_Hangul_End as u32);
1483     pub const Hangul_Hanja: Key = Key(ffi::GDK_KEY_Hangul_Hanja as u32);
1484     pub const Hangul_Jamo: Key = Key(ffi::GDK_KEY_Hangul_Jamo as u32);
1485     pub const Hangul_Romaja: Key = Key(ffi::GDK_KEY_Hangul_Romaja as u32);
1486     pub const Hangul_Codeinput: Key = Key(ffi::GDK_KEY_Hangul_Codeinput as u32);
1487     pub const Hangul_Jeonja: Key = Key(ffi::GDK_KEY_Hangul_Jeonja as u32);
1488     pub const Hangul_Banja: Key = Key(ffi::GDK_KEY_Hangul_Banja as u32);
1489     pub const Hangul_PreHanja: Key = Key(ffi::GDK_KEY_Hangul_PreHanja as u32);
1490     pub const Hangul_PostHanja: Key = Key(ffi::GDK_KEY_Hangul_PostHanja as u32);
1491     pub const Hangul_SingleCandidate: Key = Key(ffi::GDK_KEY_Hangul_SingleCandidate as u32);
1492     pub const Hangul_MultipleCandidate: Key = Key(ffi::GDK_KEY_Hangul_MultipleCandidate as u32);
1493     pub const Hangul_PreviousCandidate: Key = Key(ffi::GDK_KEY_Hangul_PreviousCandidate as u32);
1494     pub const Hangul_Special: Key = Key(ffi::GDK_KEY_Hangul_Special as u32);
1495     pub const Hangul_switch: Key = Key(ffi::GDK_KEY_Hangul_switch as u32);
1496     pub const Hangul_Kiyeog: Key = Key(ffi::GDK_KEY_Hangul_Kiyeog as u32);
1497     pub const Hangul_SsangKiyeog: Key = Key(ffi::GDK_KEY_Hangul_SsangKiyeog as u32);
1498     pub const Hangul_KiyeogSios: Key = Key(ffi::GDK_KEY_Hangul_KiyeogSios as u32);
1499     pub const Hangul_Nieun: Key = Key(ffi::GDK_KEY_Hangul_Nieun as u32);
1500     pub const Hangul_NieunJieuj: Key = Key(ffi::GDK_KEY_Hangul_NieunJieuj as u32);
1501     pub const Hangul_NieunHieuh: Key = Key(ffi::GDK_KEY_Hangul_NieunHieuh as u32);
1502     pub const Hangul_Dikeud: Key = Key(ffi::GDK_KEY_Hangul_Dikeud as u32);
1503     pub const Hangul_SsangDikeud: Key = Key(ffi::GDK_KEY_Hangul_SsangDikeud as u32);
1504     pub const Hangul_Rieul: Key = Key(ffi::GDK_KEY_Hangul_Rieul as u32);
1505     pub const Hangul_RieulKiyeog: Key = Key(ffi::GDK_KEY_Hangul_RieulKiyeog as u32);
1506     pub const Hangul_RieulMieum: Key = Key(ffi::GDK_KEY_Hangul_RieulMieum as u32);
1507     pub const Hangul_RieulPieub: Key = Key(ffi::GDK_KEY_Hangul_RieulPieub as u32);
1508     pub const Hangul_RieulSios: Key = Key(ffi::GDK_KEY_Hangul_RieulSios as u32);
1509     pub const Hangul_RieulTieut: Key = Key(ffi::GDK_KEY_Hangul_RieulTieut as u32);
1510     pub const Hangul_RieulPhieuf: Key = Key(ffi::GDK_KEY_Hangul_RieulPhieuf as u32);
1511     pub const Hangul_RieulHieuh: Key = Key(ffi::GDK_KEY_Hangul_RieulHieuh as u32);
1512     pub const Hangul_Mieum: Key = Key(ffi::GDK_KEY_Hangul_Mieum as u32);
1513     pub const Hangul_Pieub: Key = Key(ffi::GDK_KEY_Hangul_Pieub as u32);
1514     pub const Hangul_SsangPieub: Key = Key(ffi::GDK_KEY_Hangul_SsangPieub as u32);
1515     pub const Hangul_PieubSios: Key = Key(ffi::GDK_KEY_Hangul_PieubSios as u32);
1516     pub const Hangul_Sios: Key = Key(ffi::GDK_KEY_Hangul_Sios as u32);
1517     pub const Hangul_SsangSios: Key = Key(ffi::GDK_KEY_Hangul_SsangSios as u32);
1518     pub const Hangul_Ieung: Key = Key(ffi::GDK_KEY_Hangul_Ieung as u32);
1519     pub const Hangul_Jieuj: Key = Key(ffi::GDK_KEY_Hangul_Jieuj as u32);
1520     pub const Hangul_SsangJieuj: Key = Key(ffi::GDK_KEY_Hangul_SsangJieuj as u32);
1521     pub const Hangul_Cieuc: Key = Key(ffi::GDK_KEY_Hangul_Cieuc as u32);
1522     pub const Hangul_Khieuq: Key = Key(ffi::GDK_KEY_Hangul_Khieuq as u32);
1523     pub const Hangul_Tieut: Key = Key(ffi::GDK_KEY_Hangul_Tieut as u32);
1524     pub const Hangul_Phieuf: Key = Key(ffi::GDK_KEY_Hangul_Phieuf as u32);
1525     pub const Hangul_Hieuh: Key = Key(ffi::GDK_KEY_Hangul_Hieuh as u32);
1526     pub const Hangul_A: Key = Key(ffi::GDK_KEY_Hangul_A as u32);
1527     pub const Hangul_AE: Key = Key(ffi::GDK_KEY_Hangul_AE as u32);
1528     pub const Hangul_YA: Key = Key(ffi::GDK_KEY_Hangul_YA as u32);
1529     pub const Hangul_YAE: Key = Key(ffi::GDK_KEY_Hangul_YAE as u32);
1530     pub const Hangul_EO: Key = Key(ffi::GDK_KEY_Hangul_EO as u32);
1531     pub const Hangul_E: Key = Key(ffi::GDK_KEY_Hangul_E as u32);
1532     pub const Hangul_YEO: Key = Key(ffi::GDK_KEY_Hangul_YEO as u32);
1533     pub const Hangul_YE: Key = Key(ffi::GDK_KEY_Hangul_YE as u32);
1534     pub const Hangul_O: Key = Key(ffi::GDK_KEY_Hangul_O as u32);
1535     pub const Hangul_WA: Key = Key(ffi::GDK_KEY_Hangul_WA as u32);
1536     pub const Hangul_WAE: Key = Key(ffi::GDK_KEY_Hangul_WAE as u32);
1537     pub const Hangul_OE: Key = Key(ffi::GDK_KEY_Hangul_OE as u32);
1538     pub const Hangul_YO: Key = Key(ffi::GDK_KEY_Hangul_YO as u32);
1539     pub const Hangul_U: Key = Key(ffi::GDK_KEY_Hangul_U as u32);
1540     pub const Hangul_WEO: Key = Key(ffi::GDK_KEY_Hangul_WEO as u32);
1541     pub const Hangul_WE: Key = Key(ffi::GDK_KEY_Hangul_WE as u32);
1542     pub const Hangul_WI: Key = Key(ffi::GDK_KEY_Hangul_WI as u32);
1543     pub const Hangul_YU: Key = Key(ffi::GDK_KEY_Hangul_YU as u32);
1544     pub const Hangul_EU: Key = Key(ffi::GDK_KEY_Hangul_EU as u32);
1545     pub const Hangul_YI: Key = Key(ffi::GDK_KEY_Hangul_YI as u32);
1546     pub const Hangul_I: Key = Key(ffi::GDK_KEY_Hangul_I as u32);
1547     pub const Hangul_J_Kiyeog: Key = Key(ffi::GDK_KEY_Hangul_J_Kiyeog as u32);
1548     pub const Hangul_J_SsangKiyeog: Key = Key(ffi::GDK_KEY_Hangul_J_SsangKiyeog as u32);
1549     pub const Hangul_J_KiyeogSios: Key = Key(ffi::GDK_KEY_Hangul_J_KiyeogSios as u32);
1550     pub const Hangul_J_Nieun: Key = Key(ffi::GDK_KEY_Hangul_J_Nieun as u32);
1551     pub const Hangul_J_NieunJieuj: Key = Key(ffi::GDK_KEY_Hangul_J_NieunJieuj as u32);
1552     pub const Hangul_J_NieunHieuh: Key = Key(ffi::GDK_KEY_Hangul_J_NieunHieuh as u32);
1553     pub const Hangul_J_Dikeud: Key = Key(ffi::GDK_KEY_Hangul_J_Dikeud as u32);
1554     pub const Hangul_J_Rieul: Key = Key(ffi::GDK_KEY_Hangul_J_Rieul as u32);
1555     pub const Hangul_J_RieulKiyeog: Key = Key(ffi::GDK_KEY_Hangul_J_RieulKiyeog as u32);
1556     pub const Hangul_J_RieulMieum: Key = Key(ffi::GDK_KEY_Hangul_J_RieulMieum as u32);
1557     pub const Hangul_J_RieulPieub: Key = Key(ffi::GDK_KEY_Hangul_J_RieulPieub as u32);
1558     pub const Hangul_J_RieulSios: Key = Key(ffi::GDK_KEY_Hangul_J_RieulSios as u32);
1559     pub const Hangul_J_RieulTieut: Key = Key(ffi::GDK_KEY_Hangul_J_RieulTieut as u32);
1560     pub const Hangul_J_RieulPhieuf: Key = Key(ffi::GDK_KEY_Hangul_J_RieulPhieuf as u32);
1561     pub const Hangul_J_RieulHieuh: Key = Key(ffi::GDK_KEY_Hangul_J_RieulHieuh as u32);
1562     pub const Hangul_J_Mieum: Key = Key(ffi::GDK_KEY_Hangul_J_Mieum as u32);
1563     pub const Hangul_J_Pieub: Key = Key(ffi::GDK_KEY_Hangul_J_Pieub as u32);
1564     pub const Hangul_J_PieubSios: Key = Key(ffi::GDK_KEY_Hangul_J_PieubSios as u32);
1565     pub const Hangul_J_Sios: Key = Key(ffi::GDK_KEY_Hangul_J_Sios as u32);
1566     pub const Hangul_J_SsangSios: Key = Key(ffi::GDK_KEY_Hangul_J_SsangSios as u32);
1567     pub const Hangul_J_Ieung: Key = Key(ffi::GDK_KEY_Hangul_J_Ieung as u32);
1568     pub const Hangul_J_Jieuj: Key = Key(ffi::GDK_KEY_Hangul_J_Jieuj as u32);
1569     pub const Hangul_J_Cieuc: Key = Key(ffi::GDK_KEY_Hangul_J_Cieuc as u32);
1570     pub const Hangul_J_Khieuq: Key = Key(ffi::GDK_KEY_Hangul_J_Khieuq as u32);
1571     pub const Hangul_J_Tieut: Key = Key(ffi::GDK_KEY_Hangul_J_Tieut as u32);
1572     pub const Hangul_J_Phieuf: Key = Key(ffi::GDK_KEY_Hangul_J_Phieuf as u32);
1573     pub const Hangul_J_Hieuh: Key = Key(ffi::GDK_KEY_Hangul_J_Hieuh as u32);
1574     pub const Hangul_RieulYeorinHieuh: Key = Key(ffi::GDK_KEY_Hangul_RieulYeorinHieuh as u32);
1575     pub const Hangul_SunkyeongeumMieum: Key = Key(ffi::GDK_KEY_Hangul_SunkyeongeumMieum as u32);
1576     pub const Hangul_SunkyeongeumPieub: Key = Key(ffi::GDK_KEY_Hangul_SunkyeongeumPieub as u32);
1577     pub const Hangul_PanSios: Key = Key(ffi::GDK_KEY_Hangul_PanSios as u32);
1578     pub const Hangul_KkogjiDalrinIeung: Key = Key(ffi::GDK_KEY_Hangul_KkogjiDalrinIeung as u32);
1579     pub const Hangul_SunkyeongeumPhieuf: Key = Key(ffi::GDK_KEY_Hangul_SunkyeongeumPhieuf as u32);
1580     pub const Hangul_YeorinHieuh: Key = Key(ffi::GDK_KEY_Hangul_YeorinHieuh as u32);
1581     pub const Hangul_AraeA: Key = Key(ffi::GDK_KEY_Hangul_AraeA as u32);
1582     pub const Hangul_AraeAE: Key = Key(ffi::GDK_KEY_Hangul_AraeAE as u32);
1583     pub const Hangul_J_PanSios: Key = Key(ffi::GDK_KEY_Hangul_J_PanSios as u32);
1584     pub const Hangul_J_KkogjiDalrinIeung: Key = Key(ffi::GDK_KEY_Hangul_J_KkogjiDalrinIeung as u32);
1585     pub const Hangul_J_YeorinHieuh: Key = Key(ffi::GDK_KEY_Hangul_J_YeorinHieuh as u32);
1586     pub const Korean_Won: Key = Key(ffi::GDK_KEY_Korean_Won as u32);
1587     pub const Armenian_ligature_ew: Key = Key(ffi::GDK_KEY_Armenian_ligature_ew as u32);
1588     pub const Armenian_full_stop: Key = Key(ffi::GDK_KEY_Armenian_full_stop as u32);
1589     pub const Armenian_verjaket: Key = Key(ffi::GDK_KEY_Armenian_verjaket as u32);
1590     pub const Armenian_separation_mark: Key = Key(ffi::GDK_KEY_Armenian_separation_mark as u32);
1591     pub const Armenian_but: Key = Key(ffi::GDK_KEY_Armenian_but as u32);
1592     pub const Armenian_hyphen: Key = Key(ffi::GDK_KEY_Armenian_hyphen as u32);
1593     pub const Armenian_yentamna: Key = Key(ffi::GDK_KEY_Armenian_yentamna as u32);
1594     pub const Armenian_exclam: Key = Key(ffi::GDK_KEY_Armenian_exclam as u32);
1595     pub const Armenian_amanak: Key = Key(ffi::GDK_KEY_Armenian_amanak as u32);
1596     pub const Armenian_accent: Key = Key(ffi::GDK_KEY_Armenian_accent as u32);
1597     pub const Armenian_shesht: Key = Key(ffi::GDK_KEY_Armenian_shesht as u32);
1598     pub const Armenian_question: Key = Key(ffi::GDK_KEY_Armenian_question as u32);
1599     pub const Armenian_paruyk: Key = Key(ffi::GDK_KEY_Armenian_paruyk as u32);
1600     pub const Armenian_AYB: Key = Key(ffi::GDK_KEY_Armenian_AYB as u32);
1601     pub const Armenian_ayb: Key = Key(ffi::GDK_KEY_Armenian_ayb as u32);
1602     pub const Armenian_BEN: Key = Key(ffi::GDK_KEY_Armenian_BEN as u32);
1603     pub const Armenian_ben: Key = Key(ffi::GDK_KEY_Armenian_ben as u32);
1604     pub const Armenian_GIM: Key = Key(ffi::GDK_KEY_Armenian_GIM as u32);
1605     pub const Armenian_gim: Key = Key(ffi::GDK_KEY_Armenian_gim as u32);
1606     pub const Armenian_DA: Key = Key(ffi::GDK_KEY_Armenian_DA as u32);
1607     pub const Armenian_da: Key = Key(ffi::GDK_KEY_Armenian_da as u32);
1608     pub const Armenian_YECH: Key = Key(ffi::GDK_KEY_Armenian_YECH as u32);
1609     pub const Armenian_yech: Key = Key(ffi::GDK_KEY_Armenian_yech as u32);
1610     pub const Armenian_ZA: Key = Key(ffi::GDK_KEY_Armenian_ZA as u32);
1611     pub const Armenian_za: Key = Key(ffi::GDK_KEY_Armenian_za as u32);
1612     pub const Armenian_E: Key = Key(ffi::GDK_KEY_Armenian_E as u32);
1613     pub const Armenian_e: Key = Key(ffi::GDK_KEY_Armenian_e as u32);
1614     pub const Armenian_AT: Key = Key(ffi::GDK_KEY_Armenian_AT as u32);
1615     pub const Armenian_at: Key = Key(ffi::GDK_KEY_Armenian_at as u32);
1616     pub const Armenian_TO: Key = Key(ffi::GDK_KEY_Armenian_TO as u32);
1617     pub const Armenian_to: Key = Key(ffi::GDK_KEY_Armenian_to as u32);
1618     pub const Armenian_ZHE: Key = Key(ffi::GDK_KEY_Armenian_ZHE as u32);
1619     pub const Armenian_zhe: Key = Key(ffi::GDK_KEY_Armenian_zhe as u32);
1620     pub const Armenian_INI: Key = Key(ffi::GDK_KEY_Armenian_INI as u32);
1621     pub const Armenian_ini: Key = Key(ffi::GDK_KEY_Armenian_ini as u32);
1622     pub const Armenian_LYUN: Key = Key(ffi::GDK_KEY_Armenian_LYUN as u32);
1623     pub const Armenian_lyun: Key = Key(ffi::GDK_KEY_Armenian_lyun as u32);
1624     pub const Armenian_KHE: Key = Key(ffi::GDK_KEY_Armenian_KHE as u32);
1625     pub const Armenian_khe: Key = Key(ffi::GDK_KEY_Armenian_khe as u32);
1626     pub const Armenian_TSA: Key = Key(ffi::GDK_KEY_Armenian_TSA as u32);
1627     pub const Armenian_tsa: Key = Key(ffi::GDK_KEY_Armenian_tsa as u32);
1628     pub const Armenian_KEN: Key = Key(ffi::GDK_KEY_Armenian_KEN as u32);
1629     pub const Armenian_ken: Key = Key(ffi::GDK_KEY_Armenian_ken as u32);
1630     pub const Armenian_HO: Key = Key(ffi::GDK_KEY_Armenian_HO as u32);
1631     pub const Armenian_ho: Key = Key(ffi::GDK_KEY_Armenian_ho as u32);
1632     pub const Armenian_DZA: Key = Key(ffi::GDK_KEY_Armenian_DZA as u32);
1633     pub const Armenian_dza: Key = Key(ffi::GDK_KEY_Armenian_dza as u32);
1634     pub const Armenian_GHAT: Key = Key(ffi::GDK_KEY_Armenian_GHAT as u32);
1635     pub const Armenian_ghat: Key = Key(ffi::GDK_KEY_Armenian_ghat as u32);
1636     pub const Armenian_TCHE: Key = Key(ffi::GDK_KEY_Armenian_TCHE as u32);
1637     pub const Armenian_tche: Key = Key(ffi::GDK_KEY_Armenian_tche as u32);
1638     pub const Armenian_MEN: Key = Key(ffi::GDK_KEY_Armenian_MEN as u32);
1639     pub const Armenian_men: Key = Key(ffi::GDK_KEY_Armenian_men as u32);
1640     pub const Armenian_HI: Key = Key(ffi::GDK_KEY_Armenian_HI as u32);
1641     pub const Armenian_hi: Key = Key(ffi::GDK_KEY_Armenian_hi as u32);
1642     pub const Armenian_NU: Key = Key(ffi::GDK_KEY_Armenian_NU as u32);
1643     pub const Armenian_nu: Key = Key(ffi::GDK_KEY_Armenian_nu as u32);
1644     pub const Armenian_SHA: Key = Key(ffi::GDK_KEY_Armenian_SHA as u32);
1645     pub const Armenian_sha: Key = Key(ffi::GDK_KEY_Armenian_sha as u32);
1646     pub const Armenian_VO: Key = Key(ffi::GDK_KEY_Armenian_VO as u32);
1647     pub const Armenian_vo: Key = Key(ffi::GDK_KEY_Armenian_vo as u32);
1648     pub const Armenian_CHA: Key = Key(ffi::GDK_KEY_Armenian_CHA as u32);
1649     pub const Armenian_cha: Key = Key(ffi::GDK_KEY_Armenian_cha as u32);
1650     pub const Armenian_PE: Key = Key(ffi::GDK_KEY_Armenian_PE as u32);
1651     pub const Armenian_pe: Key = Key(ffi::GDK_KEY_Armenian_pe as u32);
1652     pub const Armenian_JE: Key = Key(ffi::GDK_KEY_Armenian_JE as u32);
1653     pub const Armenian_je: Key = Key(ffi::GDK_KEY_Armenian_je as u32);
1654     pub const Armenian_RA: Key = Key(ffi::GDK_KEY_Armenian_RA as u32);
1655     pub const Armenian_ra: Key = Key(ffi::GDK_KEY_Armenian_ra as u32);
1656     pub const Armenian_SE: Key = Key(ffi::GDK_KEY_Armenian_SE as u32);
1657     pub const Armenian_se: Key = Key(ffi::GDK_KEY_Armenian_se as u32);
1658     pub const Armenian_VEV: Key = Key(ffi::GDK_KEY_Armenian_VEV as u32);
1659     pub const Armenian_vev: Key = Key(ffi::GDK_KEY_Armenian_vev as u32);
1660     pub const Armenian_TYUN: Key = Key(ffi::GDK_KEY_Armenian_TYUN as u32);
1661     pub const Armenian_tyun: Key = Key(ffi::GDK_KEY_Armenian_tyun as u32);
1662     pub const Armenian_RE: Key = Key(ffi::GDK_KEY_Armenian_RE as u32);
1663     pub const Armenian_re: Key = Key(ffi::GDK_KEY_Armenian_re as u32);
1664     pub const Armenian_TSO: Key = Key(ffi::GDK_KEY_Armenian_TSO as u32);
1665     pub const Armenian_tso: Key = Key(ffi::GDK_KEY_Armenian_tso as u32);
1666     pub const Armenian_VYUN: Key = Key(ffi::GDK_KEY_Armenian_VYUN as u32);
1667     pub const Armenian_vyun: Key = Key(ffi::GDK_KEY_Armenian_vyun as u32);
1668     pub const Armenian_PYUR: Key = Key(ffi::GDK_KEY_Armenian_PYUR as u32);
1669     pub const Armenian_pyur: Key = Key(ffi::GDK_KEY_Armenian_pyur as u32);
1670     pub const Armenian_KE: Key = Key(ffi::GDK_KEY_Armenian_KE as u32);
1671     pub const Armenian_ke: Key = Key(ffi::GDK_KEY_Armenian_ke as u32);
1672     pub const Armenian_O: Key = Key(ffi::GDK_KEY_Armenian_O as u32);
1673     pub const Armenian_o: Key = Key(ffi::GDK_KEY_Armenian_o as u32);
1674     pub const Armenian_FE: Key = Key(ffi::GDK_KEY_Armenian_FE as u32);
1675     pub const Armenian_fe: Key = Key(ffi::GDK_KEY_Armenian_fe as u32);
1676     pub const Armenian_apostrophe: Key = Key(ffi::GDK_KEY_Armenian_apostrophe as u32);
1677     pub const Georgian_an: Key = Key(ffi::GDK_KEY_Georgian_an as u32);
1678     pub const Georgian_ban: Key = Key(ffi::GDK_KEY_Georgian_ban as u32);
1679     pub const Georgian_gan: Key = Key(ffi::GDK_KEY_Georgian_gan as u32);
1680     pub const Georgian_don: Key = Key(ffi::GDK_KEY_Georgian_don as u32);
1681     pub const Georgian_en: Key = Key(ffi::GDK_KEY_Georgian_en as u32);
1682     pub const Georgian_vin: Key = Key(ffi::GDK_KEY_Georgian_vin as u32);
1683     pub const Georgian_zen: Key = Key(ffi::GDK_KEY_Georgian_zen as u32);
1684     pub const Georgian_tan: Key = Key(ffi::GDK_KEY_Georgian_tan as u32);
1685     pub const Georgian_in: Key = Key(ffi::GDK_KEY_Georgian_in as u32);
1686     pub const Georgian_kan: Key = Key(ffi::GDK_KEY_Georgian_kan as u32);
1687     pub const Georgian_las: Key = Key(ffi::GDK_KEY_Georgian_las as u32);
1688     pub const Georgian_man: Key = Key(ffi::GDK_KEY_Georgian_man as u32);
1689     pub const Georgian_nar: Key = Key(ffi::GDK_KEY_Georgian_nar as u32);
1690     pub const Georgian_on: Key = Key(ffi::GDK_KEY_Georgian_on as u32);
1691     pub const Georgian_par: Key = Key(ffi::GDK_KEY_Georgian_par as u32);
1692     pub const Georgian_zhar: Key = Key(ffi::GDK_KEY_Georgian_zhar as u32);
1693     pub const Georgian_rae: Key = Key(ffi::GDK_KEY_Georgian_rae as u32);
1694     pub const Georgian_san: Key = Key(ffi::GDK_KEY_Georgian_san as u32);
1695     pub const Georgian_tar: Key = Key(ffi::GDK_KEY_Georgian_tar as u32);
1696     pub const Georgian_un: Key = Key(ffi::GDK_KEY_Georgian_un as u32);
1697     pub const Georgian_phar: Key = Key(ffi::GDK_KEY_Georgian_phar as u32);
1698     pub const Georgian_khar: Key = Key(ffi::GDK_KEY_Georgian_khar as u32);
1699     pub const Georgian_ghan: Key = Key(ffi::GDK_KEY_Georgian_ghan as u32);
1700     pub const Georgian_qar: Key = Key(ffi::GDK_KEY_Georgian_qar as u32);
1701     pub const Georgian_shin: Key = Key(ffi::GDK_KEY_Georgian_shin as u32);
1702     pub const Georgian_chin: Key = Key(ffi::GDK_KEY_Georgian_chin as u32);
1703     pub const Georgian_can: Key = Key(ffi::GDK_KEY_Georgian_can as u32);
1704     pub const Georgian_jil: Key = Key(ffi::GDK_KEY_Georgian_jil as u32);
1705     pub const Georgian_cil: Key = Key(ffi::GDK_KEY_Georgian_cil as u32);
1706     pub const Georgian_char: Key = Key(ffi::GDK_KEY_Georgian_char as u32);
1707     pub const Georgian_xan: Key = Key(ffi::GDK_KEY_Georgian_xan as u32);
1708     pub const Georgian_jhan: Key = Key(ffi::GDK_KEY_Georgian_jhan as u32);
1709     pub const Georgian_hae: Key = Key(ffi::GDK_KEY_Georgian_hae as u32);
1710     pub const Georgian_he: Key = Key(ffi::GDK_KEY_Georgian_he as u32);
1711     pub const Georgian_hie: Key = Key(ffi::GDK_KEY_Georgian_hie as u32);
1712     pub const Georgian_we: Key = Key(ffi::GDK_KEY_Georgian_we as u32);
1713     pub const Georgian_har: Key = Key(ffi::GDK_KEY_Georgian_har as u32);
1714     pub const Georgian_hoe: Key = Key(ffi::GDK_KEY_Georgian_hoe as u32);
1715     pub const Georgian_fi: Key = Key(ffi::GDK_KEY_Georgian_fi as u32);
1716     pub const Xabovedot: Key = Key(ffi::GDK_KEY_Xabovedot as u32);
1717     pub const Ibreve: Key = Key(ffi::GDK_KEY_Ibreve as u32);
1718     pub const Zstroke: Key = Key(ffi::GDK_KEY_Zstroke as u32);
1719     pub const Gcaron: Key = Key(ffi::GDK_KEY_Gcaron as u32);
1720     pub const Ocaron: Key = Key(ffi::GDK_KEY_Ocaron as u32);
1721     pub const Obarred: Key = Key(ffi::GDK_KEY_Obarred as u32);
1722     pub const xabovedot: Key = Key(ffi::GDK_KEY_xabovedot as u32);
1723     pub const ibreve: Key = Key(ffi::GDK_KEY_ibreve as u32);
1724     pub const zstroke: Key = Key(ffi::GDK_KEY_zstroke as u32);
1725     pub const gcaron: Key = Key(ffi::GDK_KEY_gcaron as u32);
1726     pub const ocaron: Key = Key(ffi::GDK_KEY_ocaron as u32);
1727     pub const obarred: Key = Key(ffi::GDK_KEY_obarred as u32);
1728     pub const SCHWA: Key = Key(ffi::GDK_KEY_SCHWA as u32);
1729     pub const schwa: Key = Key(ffi::GDK_KEY_schwa as u32);
1730     pub const EZH: Key = Key(ffi::GDK_KEY_EZH as u32);
1731     pub const ezh: Key = Key(ffi::GDK_KEY_ezh as u32);
1732     pub const Lbelowdot: Key = Key(ffi::GDK_KEY_Lbelowdot as u32);
1733     pub const lbelowdot: Key = Key(ffi::GDK_KEY_lbelowdot as u32);
1734     pub const Abelowdot: Key = Key(ffi::GDK_KEY_Abelowdot as u32);
1735     pub const abelowdot: Key = Key(ffi::GDK_KEY_abelowdot as u32);
1736     pub const Ahook: Key = Key(ffi::GDK_KEY_Ahook as u32);
1737     pub const ahook: Key = Key(ffi::GDK_KEY_ahook as u32);
1738     pub const Acircumflexacute: Key = Key(ffi::GDK_KEY_Acircumflexacute as u32);
1739     pub const acircumflexacute: Key = Key(ffi::GDK_KEY_acircumflexacute as u32);
1740     pub const Acircumflexgrave: Key = Key(ffi::GDK_KEY_Acircumflexgrave as u32);
1741     pub const acircumflexgrave: Key = Key(ffi::GDK_KEY_acircumflexgrave as u32);
1742     pub const Acircumflexhook: Key = Key(ffi::GDK_KEY_Acircumflexhook as u32);
1743     pub const acircumflexhook: Key = Key(ffi::GDK_KEY_acircumflexhook as u32);
1744     pub const Acircumflextilde: Key = Key(ffi::GDK_KEY_Acircumflextilde as u32);
1745     pub const acircumflextilde: Key = Key(ffi::GDK_KEY_acircumflextilde as u32);
1746     pub const Acircumflexbelowdot: Key = Key(ffi::GDK_KEY_Acircumflexbelowdot as u32);
1747     pub const acircumflexbelowdot: Key = Key(ffi::GDK_KEY_acircumflexbelowdot as u32);
1748     pub const Abreveacute: Key = Key(ffi::GDK_KEY_Abreveacute as u32);
1749     pub const abreveacute: Key = Key(ffi::GDK_KEY_abreveacute as u32);
1750     pub const Abrevegrave: Key = Key(ffi::GDK_KEY_Abrevegrave as u32);
1751     pub const abrevegrave: Key = Key(ffi::GDK_KEY_abrevegrave as u32);
1752     pub const Abrevehook: Key = Key(ffi::GDK_KEY_Abrevehook as u32);
1753     pub const abrevehook: Key = Key(ffi::GDK_KEY_abrevehook as u32);
1754     pub const Abrevetilde: Key = Key(ffi::GDK_KEY_Abrevetilde as u32);
1755     pub const abrevetilde: Key = Key(ffi::GDK_KEY_abrevetilde as u32);
1756     pub const Abrevebelowdot: Key = Key(ffi::GDK_KEY_Abrevebelowdot as u32);
1757     pub const abrevebelowdot: Key = Key(ffi::GDK_KEY_abrevebelowdot as u32);
1758     pub const Ebelowdot: Key = Key(ffi::GDK_KEY_Ebelowdot as u32);
1759     pub const ebelowdot: Key = Key(ffi::GDK_KEY_ebelowdot as u32);
1760     pub const Ehook: Key = Key(ffi::GDK_KEY_Ehook as u32);
1761     pub const ehook: Key = Key(ffi::GDK_KEY_ehook as u32);
1762     pub const Etilde: Key = Key(ffi::GDK_KEY_Etilde as u32);
1763     pub const etilde: Key = Key(ffi::GDK_KEY_etilde as u32);
1764     pub const Ecircumflexacute: Key = Key(ffi::GDK_KEY_Ecircumflexacute as u32);
1765     pub const ecircumflexacute: Key = Key(ffi::GDK_KEY_ecircumflexacute as u32);
1766     pub const Ecircumflexgrave: Key = Key(ffi::GDK_KEY_Ecircumflexgrave as u32);
1767     pub const ecircumflexgrave: Key = Key(ffi::GDK_KEY_ecircumflexgrave as u32);
1768     pub const Ecircumflexhook: Key = Key(ffi::GDK_KEY_Ecircumflexhook as u32);
1769     pub const ecircumflexhook: Key = Key(ffi::GDK_KEY_ecircumflexhook as u32);
1770     pub const Ecircumflextilde: Key = Key(ffi::GDK_KEY_Ecircumflextilde as u32);
1771     pub const ecircumflextilde: Key = Key(ffi::GDK_KEY_ecircumflextilde as u32);
1772     pub const Ecircumflexbelowdot: Key = Key(ffi::GDK_KEY_Ecircumflexbelowdot as u32);
1773     pub const ecircumflexbelowdot: Key = Key(ffi::GDK_KEY_ecircumflexbelowdot as u32);
1774     pub const Ihook: Key = Key(ffi::GDK_KEY_Ihook as u32);
1775     pub const ihook: Key = Key(ffi::GDK_KEY_ihook as u32);
1776     pub const Ibelowdot: Key = Key(ffi::GDK_KEY_Ibelowdot as u32);
1777     pub const ibelowdot: Key = Key(ffi::GDK_KEY_ibelowdot as u32);
1778     pub const Obelowdot: Key = Key(ffi::GDK_KEY_Obelowdot as u32);
1779     pub const obelowdot: Key = Key(ffi::GDK_KEY_obelowdot as u32);
1780     pub const Ohook: Key = Key(ffi::GDK_KEY_Ohook as u32);
1781     pub const ohook: Key = Key(ffi::GDK_KEY_ohook as u32);
1782     pub const Ocircumflexacute: Key = Key(ffi::GDK_KEY_Ocircumflexacute as u32);
1783     pub const ocircumflexacute: Key = Key(ffi::GDK_KEY_ocircumflexacute as u32);
1784     pub const Ocircumflexgrave: Key = Key(ffi::GDK_KEY_Ocircumflexgrave as u32);
1785     pub const ocircumflexgrave: Key = Key(ffi::GDK_KEY_ocircumflexgrave as u32);
1786     pub const Ocircumflexhook: Key = Key(ffi::GDK_KEY_Ocircumflexhook as u32);
1787     pub const ocircumflexhook: Key = Key(ffi::GDK_KEY_ocircumflexhook as u32);
1788     pub const Ocircumflextilde: Key = Key(ffi::GDK_KEY_Ocircumflextilde as u32);
1789     pub const ocircumflextilde: Key = Key(ffi::GDK_KEY_ocircumflextilde as u32);
1790     pub const Ocircumflexbelowdot: Key = Key(ffi::GDK_KEY_Ocircumflexbelowdot as u32);
1791     pub const ocircumflexbelowdot: Key = Key(ffi::GDK_KEY_ocircumflexbelowdot as u32);
1792     pub const Ohornacute: Key = Key(ffi::GDK_KEY_Ohornacute as u32);
1793     pub const ohornacute: Key = Key(ffi::GDK_KEY_ohornacute as u32);
1794     pub const Ohorngrave: Key = Key(ffi::GDK_KEY_Ohorngrave as u32);
1795     pub const ohorngrave: Key = Key(ffi::GDK_KEY_ohorngrave as u32);
1796     pub const Ohornhook: Key = Key(ffi::GDK_KEY_Ohornhook as u32);
1797     pub const ohornhook: Key = Key(ffi::GDK_KEY_ohornhook as u32);
1798     pub const Ohorntilde: Key = Key(ffi::GDK_KEY_Ohorntilde as u32);
1799     pub const ohorntilde: Key = Key(ffi::GDK_KEY_ohorntilde as u32);
1800     pub const Ohornbelowdot: Key = Key(ffi::GDK_KEY_Ohornbelowdot as u32);
1801     pub const ohornbelowdot: Key = Key(ffi::GDK_KEY_ohornbelowdot as u32);
1802     pub const Ubelowdot: Key = Key(ffi::GDK_KEY_Ubelowdot as u32);
1803     pub const ubelowdot: Key = Key(ffi::GDK_KEY_ubelowdot as u32);
1804     pub const Uhook: Key = Key(ffi::GDK_KEY_Uhook as u32);
1805     pub const uhook: Key = Key(ffi::GDK_KEY_uhook as u32);
1806     pub const Uhornacute: Key = Key(ffi::GDK_KEY_Uhornacute as u32);
1807     pub const uhornacute: Key = Key(ffi::GDK_KEY_uhornacute as u32);
1808     pub const Uhorngrave: Key = Key(ffi::GDK_KEY_Uhorngrave as u32);
1809     pub const uhorngrave: Key = Key(ffi::GDK_KEY_uhorngrave as u32);
1810     pub const Uhornhook: Key = Key(ffi::GDK_KEY_Uhornhook as u32);
1811     pub const uhornhook: Key = Key(ffi::GDK_KEY_uhornhook as u32);
1812     pub const Uhorntilde: Key = Key(ffi::GDK_KEY_Uhorntilde as u32);
1813     pub const uhorntilde: Key = Key(ffi::GDK_KEY_uhorntilde as u32);
1814     pub const Uhornbelowdot: Key = Key(ffi::GDK_KEY_Uhornbelowdot as u32);
1815     pub const uhornbelowdot: Key = Key(ffi::GDK_KEY_uhornbelowdot as u32);
1816     pub const Ybelowdot: Key = Key(ffi::GDK_KEY_Ybelowdot as u32);
1817     pub const ybelowdot: Key = Key(ffi::GDK_KEY_ybelowdot as u32);
1818     pub const Yhook: Key = Key(ffi::GDK_KEY_Yhook as u32);
1819     pub const yhook: Key = Key(ffi::GDK_KEY_yhook as u32);
1820     pub const Ytilde: Key = Key(ffi::GDK_KEY_Ytilde as u32);
1821     pub const ytilde: Key = Key(ffi::GDK_KEY_ytilde as u32);
1822     pub const Ohorn: Key = Key(ffi::GDK_KEY_Ohorn as u32);
1823     pub const ohorn: Key = Key(ffi::GDK_KEY_ohorn as u32);
1824     pub const Uhorn: Key = Key(ffi::GDK_KEY_Uhorn as u32);
1825     pub const uhorn: Key = Key(ffi::GDK_KEY_uhorn as u32);
1826     pub const EcuSign: Key = Key(ffi::GDK_KEY_EcuSign as u32);
1827     pub const ColonSign: Key = Key(ffi::GDK_KEY_ColonSign as u32);
1828     pub const CruzeiroSign: Key = Key(ffi::GDK_KEY_CruzeiroSign as u32);
1829     pub const FFrancSign: Key = Key(ffi::GDK_KEY_FFrancSign as u32);
1830     pub const LiraSign: Key = Key(ffi::GDK_KEY_LiraSign as u32);
1831     pub const MillSign: Key = Key(ffi::GDK_KEY_MillSign as u32);
1832     pub const NairaSign: Key = Key(ffi::GDK_KEY_NairaSign as u32);
1833     pub const PesetaSign: Key = Key(ffi::GDK_KEY_PesetaSign as u32);
1834     pub const RupeeSign: Key = Key(ffi::GDK_KEY_RupeeSign as u32);
1835     pub const WonSign: Key = Key(ffi::GDK_KEY_WonSign as u32);
1836     pub const NewSheqelSign: Key = Key(ffi::GDK_KEY_NewSheqelSign as u32);
1837     pub const DongSign: Key = Key(ffi::GDK_KEY_DongSign as u32);
1838     pub const EuroSign: Key = Key(ffi::GDK_KEY_EuroSign as u32);
1839     pub const zerosuperior: Key = Key(ffi::GDK_KEY_zerosuperior as u32);
1840     pub const foursuperior: Key = Key(ffi::GDK_KEY_foursuperior as u32);
1841     pub const fivesuperior: Key = Key(ffi::GDK_KEY_fivesuperior as u32);
1842     pub const sixsuperior: Key = Key(ffi::GDK_KEY_sixsuperior as u32);
1843     pub const sevensuperior: Key = Key(ffi::GDK_KEY_sevensuperior as u32);
1844     pub const eightsuperior: Key = Key(ffi::GDK_KEY_eightsuperior as u32);
1845     pub const ninesuperior: Key = Key(ffi::GDK_KEY_ninesuperior as u32);
1846     pub const zerosubscript: Key = Key(ffi::GDK_KEY_zerosubscript as u32);
1847     pub const onesubscript: Key = Key(ffi::GDK_KEY_onesubscript as u32);
1848     pub const twosubscript: Key = Key(ffi::GDK_KEY_twosubscript as u32);
1849     pub const threesubscript: Key = Key(ffi::GDK_KEY_threesubscript as u32);
1850     pub const foursubscript: Key = Key(ffi::GDK_KEY_foursubscript as u32);
1851     pub const fivesubscript: Key = Key(ffi::GDK_KEY_fivesubscript as u32);
1852     pub const sixsubscript: Key = Key(ffi::GDK_KEY_sixsubscript as u32);
1853     pub const sevensubscript: Key = Key(ffi::GDK_KEY_sevensubscript as u32);
1854     pub const eightsubscript: Key = Key(ffi::GDK_KEY_eightsubscript as u32);
1855     pub const ninesubscript: Key = Key(ffi::GDK_KEY_ninesubscript as u32);
1856     pub const partdifferential: Key = Key(ffi::GDK_KEY_partdifferential as u32);
1857     pub const emptyset: Key = Key(ffi::GDK_KEY_emptyset as u32);
1858     pub const elementof: Key = Key(ffi::GDK_KEY_elementof as u32);
1859     pub const notelementof: Key = Key(ffi::GDK_KEY_notelementof as u32);
1860     pub const containsas: Key = Key(ffi::GDK_KEY_containsas as u32);
1861     pub const squareroot: Key = Key(ffi::GDK_KEY_squareroot as u32);
1862     pub const cuberoot: Key = Key(ffi::GDK_KEY_cuberoot as u32);
1863     pub const fourthroot: Key = Key(ffi::GDK_KEY_fourthroot as u32);
1864     pub const dintegral: Key = Key(ffi::GDK_KEY_dintegral as u32);
1865     pub const tintegral: Key = Key(ffi::GDK_KEY_tintegral as u32);
1866     pub const because: Key = Key(ffi::GDK_KEY_because as u32);
1867     pub const approxeq: Key = Key(ffi::GDK_KEY_approxeq as u32);
1868     pub const notapproxeq: Key = Key(ffi::GDK_KEY_notapproxeq as u32);
1869     pub const notidentical: Key = Key(ffi::GDK_KEY_notidentical as u32);
1870     pub const stricteq: Key = Key(ffi::GDK_KEY_stricteq as u32);
1871     pub const braille_dot_1: Key = Key(ffi::GDK_KEY_braille_dot_1 as u32);
1872     pub const braille_dot_2: Key = Key(ffi::GDK_KEY_braille_dot_2 as u32);
1873     pub const braille_dot_3: Key = Key(ffi::GDK_KEY_braille_dot_3 as u32);
1874     pub const braille_dot_4: Key = Key(ffi::GDK_KEY_braille_dot_4 as u32);
1875     pub const braille_dot_5: Key = Key(ffi::GDK_KEY_braille_dot_5 as u32);
1876     pub const braille_dot_6: Key = Key(ffi::GDK_KEY_braille_dot_6 as u32);
1877     pub const braille_dot_7: Key = Key(ffi::GDK_KEY_braille_dot_7 as u32);
1878     pub const braille_dot_8: Key = Key(ffi::GDK_KEY_braille_dot_8 as u32);
1879     pub const braille_dot_9: Key = Key(ffi::GDK_KEY_braille_dot_9 as u32);
1880     pub const braille_dot_10: Key = Key(ffi::GDK_KEY_braille_dot_10 as u32);
1881     pub const braille_blank: Key = Key(ffi::GDK_KEY_braille_blank as u32);
1882     pub const braille_dots_1: Key = Key(ffi::GDK_KEY_braille_dots_1 as u32);
1883     pub const braille_dots_2: Key = Key(ffi::GDK_KEY_braille_dots_2 as u32);
1884     pub const braille_dots_12: Key = Key(ffi::GDK_KEY_braille_dots_12 as u32);
1885     pub const braille_dots_3: Key = Key(ffi::GDK_KEY_braille_dots_3 as u32);
1886     pub const braille_dots_13: Key = Key(ffi::GDK_KEY_braille_dots_13 as u32);
1887     pub const braille_dots_23: Key = Key(ffi::GDK_KEY_braille_dots_23 as u32);
1888     pub const braille_dots_123: Key = Key(ffi::GDK_KEY_braille_dots_123 as u32);
1889     pub const braille_dots_4: Key = Key(ffi::GDK_KEY_braille_dots_4 as u32);
1890     pub const braille_dots_14: Key = Key(ffi::GDK_KEY_braille_dots_14 as u32);
1891     pub const braille_dots_24: Key = Key(ffi::GDK_KEY_braille_dots_24 as u32);
1892     pub const braille_dots_124: Key = Key(ffi::GDK_KEY_braille_dots_124 as u32);
1893     pub const braille_dots_34: Key = Key(ffi::GDK_KEY_braille_dots_34 as u32);
1894     pub const braille_dots_134: Key = Key(ffi::GDK_KEY_braille_dots_134 as u32);
1895     pub const braille_dots_234: Key = Key(ffi::GDK_KEY_braille_dots_234 as u32);
1896     pub const braille_dots_1234: Key = Key(ffi::GDK_KEY_braille_dots_1234 as u32);
1897     pub const braille_dots_5: Key = Key(ffi::GDK_KEY_braille_dots_5 as u32);
1898     pub const braille_dots_15: Key = Key(ffi::GDK_KEY_braille_dots_15 as u32);
1899     pub const braille_dots_25: Key = Key(ffi::GDK_KEY_braille_dots_25 as u32);
1900     pub const braille_dots_125: Key = Key(ffi::GDK_KEY_braille_dots_125 as u32);
1901     pub const braille_dots_35: Key = Key(ffi::GDK_KEY_braille_dots_35 as u32);
1902     pub const braille_dots_135: Key = Key(ffi::GDK_KEY_braille_dots_135 as u32);
1903     pub const braille_dots_235: Key = Key(ffi::GDK_KEY_braille_dots_235 as u32);
1904     pub const braille_dots_1235: Key = Key(ffi::GDK_KEY_braille_dots_1235 as u32);
1905     pub const braille_dots_45: Key = Key(ffi::GDK_KEY_braille_dots_45 as u32);
1906     pub const braille_dots_145: Key = Key(ffi::GDK_KEY_braille_dots_145 as u32);
1907     pub const braille_dots_245: Key = Key(ffi::GDK_KEY_braille_dots_245 as u32);
1908     pub const braille_dots_1245: Key = Key(ffi::GDK_KEY_braille_dots_1245 as u32);
1909     pub const braille_dots_345: Key = Key(ffi::GDK_KEY_braille_dots_345 as u32);
1910     pub const braille_dots_1345: Key = Key(ffi::GDK_KEY_braille_dots_1345 as u32);
1911     pub const braille_dots_2345: Key = Key(ffi::GDK_KEY_braille_dots_2345 as u32);
1912     pub const braille_dots_12345: Key = Key(ffi::GDK_KEY_braille_dots_12345 as u32);
1913     pub const braille_dots_6: Key = Key(ffi::GDK_KEY_braille_dots_6 as u32);
1914     pub const braille_dots_16: Key = Key(ffi::GDK_KEY_braille_dots_16 as u32);
1915     pub const braille_dots_26: Key = Key(ffi::GDK_KEY_braille_dots_26 as u32);
1916     pub const braille_dots_126: Key = Key(ffi::GDK_KEY_braille_dots_126 as u32);
1917     pub const braille_dots_36: Key = Key(ffi::GDK_KEY_braille_dots_36 as u32);
1918     pub const braille_dots_136: Key = Key(ffi::GDK_KEY_braille_dots_136 as u32);
1919     pub const braille_dots_236: Key = Key(ffi::GDK_KEY_braille_dots_236 as u32);
1920     pub const braille_dots_1236: Key = Key(ffi::GDK_KEY_braille_dots_1236 as u32);
1921     pub const braille_dots_46: Key = Key(ffi::GDK_KEY_braille_dots_46 as u32);
1922     pub const braille_dots_146: Key = Key(ffi::GDK_KEY_braille_dots_146 as u32);
1923     pub const braille_dots_246: Key = Key(ffi::GDK_KEY_braille_dots_246 as u32);
1924     pub const braille_dots_1246: Key = Key(ffi::GDK_KEY_braille_dots_1246 as u32);
1925     pub const braille_dots_346: Key = Key(ffi::GDK_KEY_braille_dots_346 as u32);
1926     pub const braille_dots_1346: Key = Key(ffi::GDK_KEY_braille_dots_1346 as u32);
1927     pub const braille_dots_2346: Key = Key(ffi::GDK_KEY_braille_dots_2346 as u32);
1928     pub const braille_dots_12346: Key = Key(ffi::GDK_KEY_braille_dots_12346 as u32);
1929     pub const braille_dots_56: Key = Key(ffi::GDK_KEY_braille_dots_56 as u32);
1930     pub const braille_dots_156: Key = Key(ffi::GDK_KEY_braille_dots_156 as u32);
1931     pub const braille_dots_256: Key = Key(ffi::GDK_KEY_braille_dots_256 as u32);
1932     pub const braille_dots_1256: Key = Key(ffi::GDK_KEY_braille_dots_1256 as u32);
1933     pub const braille_dots_356: Key = Key(ffi::GDK_KEY_braille_dots_356 as u32);
1934     pub const braille_dots_1356: Key = Key(ffi::GDK_KEY_braille_dots_1356 as u32);
1935     pub const braille_dots_2356: Key = Key(ffi::GDK_KEY_braille_dots_2356 as u32);
1936     pub const braille_dots_12356: Key = Key(ffi::GDK_KEY_braille_dots_12356 as u32);
1937     pub const braille_dots_456: Key = Key(ffi::GDK_KEY_braille_dots_456 as u32);
1938     pub const braille_dots_1456: Key = Key(ffi::GDK_KEY_braille_dots_1456 as u32);
1939     pub const braille_dots_2456: Key = Key(ffi::GDK_KEY_braille_dots_2456 as u32);
1940     pub const braille_dots_12456: Key = Key(ffi::GDK_KEY_braille_dots_12456 as u32);
1941     pub const braille_dots_3456: Key = Key(ffi::GDK_KEY_braille_dots_3456 as u32);
1942     pub const braille_dots_13456: Key = Key(ffi::GDK_KEY_braille_dots_13456 as u32);
1943     pub const braille_dots_23456: Key = Key(ffi::GDK_KEY_braille_dots_23456 as u32);
1944     pub const braille_dots_123456: Key = Key(ffi::GDK_KEY_braille_dots_123456 as u32);
1945     pub const braille_dots_7: Key = Key(ffi::GDK_KEY_braille_dots_7 as u32);
1946     pub const braille_dots_17: Key = Key(ffi::GDK_KEY_braille_dots_17 as u32);
1947     pub const braille_dots_27: Key = Key(ffi::GDK_KEY_braille_dots_27 as u32);
1948     pub const braille_dots_127: Key = Key(ffi::GDK_KEY_braille_dots_127 as u32);
1949     pub const braille_dots_37: Key = Key(ffi::GDK_KEY_braille_dots_37 as u32);
1950     pub const braille_dots_137: Key = Key(ffi::GDK_KEY_braille_dots_137 as u32);
1951     pub const braille_dots_237: Key = Key(ffi::GDK_KEY_braille_dots_237 as u32);
1952     pub const braille_dots_1237: Key = Key(ffi::GDK_KEY_braille_dots_1237 as u32);
1953     pub const braille_dots_47: Key = Key(ffi::GDK_KEY_braille_dots_47 as u32);
1954     pub const braille_dots_147: Key = Key(ffi::GDK_KEY_braille_dots_147 as u32);
1955     pub const braille_dots_247: Key = Key(ffi::GDK_KEY_braille_dots_247 as u32);
1956     pub const braille_dots_1247: Key = Key(ffi::GDK_KEY_braille_dots_1247 as u32);
1957     pub const braille_dots_347: Key = Key(ffi::GDK_KEY_braille_dots_347 as u32);
1958     pub const braille_dots_1347: Key = Key(ffi::GDK_KEY_braille_dots_1347 as u32);
1959     pub const braille_dots_2347: Key = Key(ffi::GDK_KEY_braille_dots_2347 as u32);
1960     pub const braille_dots_12347: Key = Key(ffi::GDK_KEY_braille_dots_12347 as u32);
1961     pub const braille_dots_57: Key = Key(ffi::GDK_KEY_braille_dots_57 as u32);
1962     pub const braille_dots_157: Key = Key(ffi::GDK_KEY_braille_dots_157 as u32);
1963     pub const braille_dots_257: Key = Key(ffi::GDK_KEY_braille_dots_257 as u32);
1964     pub const braille_dots_1257: Key = Key(ffi::GDK_KEY_braille_dots_1257 as u32);
1965     pub const braille_dots_357: Key = Key(ffi::GDK_KEY_braille_dots_357 as u32);
1966     pub const braille_dots_1357: Key = Key(ffi::GDK_KEY_braille_dots_1357 as u32);
1967     pub const braille_dots_2357: Key = Key(ffi::GDK_KEY_braille_dots_2357 as u32);
1968     pub const braille_dots_12357: Key = Key(ffi::GDK_KEY_braille_dots_12357 as u32);
1969     pub const braille_dots_457: Key = Key(ffi::GDK_KEY_braille_dots_457 as u32);
1970     pub const braille_dots_1457: Key = Key(ffi::GDK_KEY_braille_dots_1457 as u32);
1971     pub const braille_dots_2457: Key = Key(ffi::GDK_KEY_braille_dots_2457 as u32);
1972     pub const braille_dots_12457: Key = Key(ffi::GDK_KEY_braille_dots_12457 as u32);
1973     pub const braille_dots_3457: Key = Key(ffi::GDK_KEY_braille_dots_3457 as u32);
1974     pub const braille_dots_13457: Key = Key(ffi::GDK_KEY_braille_dots_13457 as u32);
1975     pub const braille_dots_23457: Key = Key(ffi::GDK_KEY_braille_dots_23457 as u32);
1976     pub const braille_dots_123457: Key = Key(ffi::GDK_KEY_braille_dots_123457 as u32);
1977     pub const braille_dots_67: Key = Key(ffi::GDK_KEY_braille_dots_67 as u32);
1978     pub const braille_dots_167: Key = Key(ffi::GDK_KEY_braille_dots_167 as u32);
1979     pub const braille_dots_267: Key = Key(ffi::GDK_KEY_braille_dots_267 as u32);
1980     pub const braille_dots_1267: Key = Key(ffi::GDK_KEY_braille_dots_1267 as u32);
1981     pub const braille_dots_367: Key = Key(ffi::GDK_KEY_braille_dots_367 as u32);
1982     pub const braille_dots_1367: Key = Key(ffi::GDK_KEY_braille_dots_1367 as u32);
1983     pub const braille_dots_2367: Key = Key(ffi::GDK_KEY_braille_dots_2367 as u32);
1984     pub const braille_dots_12367: Key = Key(ffi::GDK_KEY_braille_dots_12367 as u32);
1985     pub const braille_dots_467: Key = Key(ffi::GDK_KEY_braille_dots_467 as u32);
1986     pub const braille_dots_1467: Key = Key(ffi::GDK_KEY_braille_dots_1467 as u32);
1987     pub const braille_dots_2467: Key = Key(ffi::GDK_KEY_braille_dots_2467 as u32);
1988     pub const braille_dots_12467: Key = Key(ffi::GDK_KEY_braille_dots_12467 as u32);
1989     pub const braille_dots_3467: Key = Key(ffi::GDK_KEY_braille_dots_3467 as u32);
1990     pub const braille_dots_13467: Key = Key(ffi::GDK_KEY_braille_dots_13467 as u32);
1991     pub const braille_dots_23467: Key = Key(ffi::GDK_KEY_braille_dots_23467 as u32);
1992     pub const braille_dots_123467: Key = Key(ffi::GDK_KEY_braille_dots_123467 as u32);
1993     pub const braille_dots_567: Key = Key(ffi::GDK_KEY_braille_dots_567 as u32);
1994     pub const braille_dots_1567: Key = Key(ffi::GDK_KEY_braille_dots_1567 as u32);
1995     pub const braille_dots_2567: Key = Key(ffi::GDK_KEY_braille_dots_2567 as u32);
1996     pub const braille_dots_12567: Key = Key(ffi::GDK_KEY_braille_dots_12567 as u32);
1997     pub const braille_dots_3567: Key = Key(ffi::GDK_KEY_braille_dots_3567 as u32);
1998     pub const braille_dots_13567: Key = Key(ffi::GDK_KEY_braille_dots_13567 as u32);
1999     pub const braille_dots_23567: Key = Key(ffi::GDK_KEY_braille_dots_23567 as u32);
2000     pub const braille_dots_123567: Key = Key(ffi::GDK_KEY_braille_dots_123567 as u32);
2001     pub const braille_dots_4567: Key = Key(ffi::GDK_KEY_braille_dots_4567 as u32);
2002     pub const braille_dots_14567: Key = Key(ffi::GDK_KEY_braille_dots_14567 as u32);
2003     pub const braille_dots_24567: Key = Key(ffi::GDK_KEY_braille_dots_24567 as u32);
2004     pub const braille_dots_124567: Key = Key(ffi::GDK_KEY_braille_dots_124567 as u32);
2005     pub const braille_dots_34567: Key = Key(ffi::GDK_KEY_braille_dots_34567 as u32);
2006     pub const braille_dots_134567: Key = Key(ffi::GDK_KEY_braille_dots_134567 as u32);
2007     pub const braille_dots_234567: Key = Key(ffi::GDK_KEY_braille_dots_234567 as u32);
2008     pub const braille_dots_1234567: Key = Key(ffi::GDK_KEY_braille_dots_1234567 as u32);
2009     pub const braille_dots_8: Key = Key(ffi::GDK_KEY_braille_dots_8 as u32);
2010     pub const braille_dots_18: Key = Key(ffi::GDK_KEY_braille_dots_18 as u32);
2011     pub const braille_dots_28: Key = Key(ffi::GDK_KEY_braille_dots_28 as u32);
2012     pub const braille_dots_128: Key = Key(ffi::GDK_KEY_braille_dots_128 as u32);
2013     pub const braille_dots_38: Key = Key(ffi::GDK_KEY_braille_dots_38 as u32);
2014     pub const braille_dots_138: Key = Key(ffi::GDK_KEY_braille_dots_138 as u32);
2015     pub const braille_dots_238: Key = Key(ffi::GDK_KEY_braille_dots_238 as u32);
2016     pub const braille_dots_1238: Key = Key(ffi::GDK_KEY_braille_dots_1238 as u32);
2017     pub const braille_dots_48: Key = Key(ffi::GDK_KEY_braille_dots_48 as u32);
2018     pub const braille_dots_148: Key = Key(ffi::GDK_KEY_braille_dots_148 as u32);
2019     pub const braille_dots_248: Key = Key(ffi::GDK_KEY_braille_dots_248 as u32);
2020     pub const braille_dots_1248: Key = Key(ffi::GDK_KEY_braille_dots_1248 as u32);
2021     pub const braille_dots_348: Key = Key(ffi::GDK_KEY_braille_dots_348 as u32);
2022     pub const braille_dots_1348: Key = Key(ffi::GDK_KEY_braille_dots_1348 as u32);
2023     pub const braille_dots_2348: Key = Key(ffi::GDK_KEY_braille_dots_2348 as u32);
2024     pub const braille_dots_12348: Key = Key(ffi::GDK_KEY_braille_dots_12348 as u32);
2025     pub const braille_dots_58: Key = Key(ffi::GDK_KEY_braille_dots_58 as u32);
2026     pub const braille_dots_158: Key = Key(ffi::GDK_KEY_braille_dots_158 as u32);
2027     pub const braille_dots_258: Key = Key(ffi::GDK_KEY_braille_dots_258 as u32);
2028     pub const braille_dots_1258: Key = Key(ffi::GDK_KEY_braille_dots_1258 as u32);
2029     pub const braille_dots_358: Key = Key(ffi::GDK_KEY_braille_dots_358 as u32);
2030     pub const braille_dots_1358: Key = Key(ffi::GDK_KEY_braille_dots_1358 as u32);
2031     pub const braille_dots_2358: Key = Key(ffi::GDK_KEY_braille_dots_2358 as u32);
2032     pub const braille_dots_12358: Key = Key(ffi::GDK_KEY_braille_dots_12358 as u32);
2033     pub const braille_dots_458: Key = Key(ffi::GDK_KEY_braille_dots_458 as u32);
2034     pub const braille_dots_1458: Key = Key(ffi::GDK_KEY_braille_dots_1458 as u32);
2035     pub const braille_dots_2458: Key = Key(ffi::GDK_KEY_braille_dots_2458 as u32);
2036     pub const braille_dots_12458: Key = Key(ffi::GDK_KEY_braille_dots_12458 as u32);
2037     pub const braille_dots_3458: Key = Key(ffi::GDK_KEY_braille_dots_3458 as u32);
2038     pub const braille_dots_13458: Key = Key(ffi::GDK_KEY_braille_dots_13458 as u32);
2039     pub const braille_dots_23458: Key = Key(ffi::GDK_KEY_braille_dots_23458 as u32);
2040     pub const braille_dots_123458: Key = Key(ffi::GDK_KEY_braille_dots_123458 as u32);
2041     pub const braille_dots_68: Key = Key(ffi::GDK_KEY_braille_dots_68 as u32);
2042     pub const braille_dots_168: Key = Key(ffi::GDK_KEY_braille_dots_168 as u32);
2043     pub const braille_dots_268: Key = Key(ffi::GDK_KEY_braille_dots_268 as u32);
2044     pub const braille_dots_1268: Key = Key(ffi::GDK_KEY_braille_dots_1268 as u32);
2045     pub const braille_dots_368: Key = Key(ffi::GDK_KEY_braille_dots_368 as u32);
2046     pub const braille_dots_1368: Key = Key(ffi::GDK_KEY_braille_dots_1368 as u32);
2047     pub const braille_dots_2368: Key = Key(ffi::GDK_KEY_braille_dots_2368 as u32);
2048     pub const braille_dots_12368: Key = Key(ffi::GDK_KEY_braille_dots_12368 as u32);
2049     pub const braille_dots_468: Key = Key(ffi::GDK_KEY_braille_dots_468 as u32);
2050     pub const braille_dots_1468: Key = Key(ffi::GDK_KEY_braille_dots_1468 as u32);
2051     pub const braille_dots_2468: Key = Key(ffi::GDK_KEY_braille_dots_2468 as u32);
2052     pub const braille_dots_12468: Key = Key(ffi::GDK_KEY_braille_dots_12468 as u32);
2053     pub const braille_dots_3468: Key = Key(ffi::GDK_KEY_braille_dots_3468 as u32);
2054     pub const braille_dots_13468: Key = Key(ffi::GDK_KEY_braille_dots_13468 as u32);
2055     pub const braille_dots_23468: Key = Key(ffi::GDK_KEY_braille_dots_23468 as u32);
2056     pub const braille_dots_123468: Key = Key(ffi::GDK_KEY_braille_dots_123468 as u32);
2057     pub const braille_dots_568: Key = Key(ffi::GDK_KEY_braille_dots_568 as u32);
2058     pub const braille_dots_1568: Key = Key(ffi::GDK_KEY_braille_dots_1568 as u32);
2059     pub const braille_dots_2568: Key = Key(ffi::GDK_KEY_braille_dots_2568 as u32);
2060     pub const braille_dots_12568: Key = Key(ffi::GDK_KEY_braille_dots_12568 as u32);
2061     pub const braille_dots_3568: Key = Key(ffi::GDK_KEY_braille_dots_3568 as u32);
2062     pub const braille_dots_13568: Key = Key(ffi::GDK_KEY_braille_dots_13568 as u32);
2063     pub const braille_dots_23568: Key = Key(ffi::GDK_KEY_braille_dots_23568 as u32);
2064     pub const braille_dots_123568: Key = Key(ffi::GDK_KEY_braille_dots_123568 as u32);
2065     pub const braille_dots_4568: Key = Key(ffi::GDK_KEY_braille_dots_4568 as u32);
2066     pub const braille_dots_14568: Key = Key(ffi::GDK_KEY_braille_dots_14568 as u32);
2067     pub const braille_dots_24568: Key = Key(ffi::GDK_KEY_braille_dots_24568 as u32);
2068     pub const braille_dots_124568: Key = Key(ffi::GDK_KEY_braille_dots_124568 as u32);
2069     pub const braille_dots_34568: Key = Key(ffi::GDK_KEY_braille_dots_34568 as u32);
2070     pub const braille_dots_134568: Key = Key(ffi::GDK_KEY_braille_dots_134568 as u32);
2071     pub const braille_dots_234568: Key = Key(ffi::GDK_KEY_braille_dots_234568 as u32);
2072     pub const braille_dots_1234568: Key = Key(ffi::GDK_KEY_braille_dots_1234568 as u32);
2073     pub const braille_dots_78: Key = Key(ffi::GDK_KEY_braille_dots_78 as u32);
2074     pub const braille_dots_178: Key = Key(ffi::GDK_KEY_braille_dots_178 as u32);
2075     pub const braille_dots_278: Key = Key(ffi::GDK_KEY_braille_dots_278 as u32);
2076     pub const braille_dots_1278: Key = Key(ffi::GDK_KEY_braille_dots_1278 as u32);
2077     pub const braille_dots_378: Key = Key(ffi::GDK_KEY_braille_dots_378 as u32);
2078     pub const braille_dots_1378: Key = Key(ffi::GDK_KEY_braille_dots_1378 as u32);
2079     pub const braille_dots_2378: Key = Key(ffi::GDK_KEY_braille_dots_2378 as u32);
2080     pub const braille_dots_12378: Key = Key(ffi::GDK_KEY_braille_dots_12378 as u32);
2081     pub const braille_dots_478: Key = Key(ffi::GDK_KEY_braille_dots_478 as u32);
2082     pub const braille_dots_1478: Key = Key(ffi::GDK_KEY_braille_dots_1478 as u32);
2083     pub const braille_dots_2478: Key = Key(ffi::GDK_KEY_braille_dots_2478 as u32);
2084     pub const braille_dots_12478: Key = Key(ffi::GDK_KEY_braille_dots_12478 as u32);
2085     pub const braille_dots_3478: Key = Key(ffi::GDK_KEY_braille_dots_3478 as u32);
2086     pub const braille_dots_13478: Key = Key(ffi::GDK_KEY_braille_dots_13478 as u32);
2087     pub const braille_dots_23478: Key = Key(ffi::GDK_KEY_braille_dots_23478 as u32);
2088     pub const braille_dots_123478: Key = Key(ffi::GDK_KEY_braille_dots_123478 as u32);
2089     pub const braille_dots_578: Key = Key(ffi::GDK_KEY_braille_dots_578 as u32);
2090     pub const braille_dots_1578: Key = Key(ffi::GDK_KEY_braille_dots_1578 as u32);
2091     pub const braille_dots_2578: Key = Key(ffi::GDK_KEY_braille_dots_2578 as u32);
2092     pub const braille_dots_12578: Key = Key(ffi::GDK_KEY_braille_dots_12578 as u32);
2093     pub const braille_dots_3578: Key = Key(ffi::GDK_KEY_braille_dots_3578 as u32);
2094     pub const braille_dots_13578: Key = Key(ffi::GDK_KEY_braille_dots_13578 as u32);
2095     pub const braille_dots_23578: Key = Key(ffi::GDK_KEY_braille_dots_23578 as u32);
2096     pub const braille_dots_123578: Key = Key(ffi::GDK_KEY_braille_dots_123578 as u32);
2097     pub const braille_dots_4578: Key = Key(ffi::GDK_KEY_braille_dots_4578 as u32);
2098     pub const braille_dots_14578: Key = Key(ffi::GDK_KEY_braille_dots_14578 as u32);
2099     pub const braille_dots_24578: Key = Key(ffi::GDK_KEY_braille_dots_24578 as u32);
2100     pub const braille_dots_124578: Key = Key(ffi::GDK_KEY_braille_dots_124578 as u32);
2101     pub const braille_dots_34578: Key = Key(ffi::GDK_KEY_braille_dots_34578 as u32);
2102     pub const braille_dots_134578: Key = Key(ffi::GDK_KEY_braille_dots_134578 as u32);
2103     pub const braille_dots_234578: Key = Key(ffi::GDK_KEY_braille_dots_234578 as u32);
2104     pub const braille_dots_1234578: Key = Key(ffi::GDK_KEY_braille_dots_1234578 as u32);
2105     pub const braille_dots_678: Key = Key(ffi::GDK_KEY_braille_dots_678 as u32);
2106     pub const braille_dots_1678: Key = Key(ffi::GDK_KEY_braille_dots_1678 as u32);
2107     pub const braille_dots_2678: Key = Key(ffi::GDK_KEY_braille_dots_2678 as u32);
2108     pub const braille_dots_12678: Key = Key(ffi::GDK_KEY_braille_dots_12678 as u32);
2109     pub const braille_dots_3678: Key = Key(ffi::GDK_KEY_braille_dots_3678 as u32);
2110     pub const braille_dots_13678: Key = Key(ffi::GDK_KEY_braille_dots_13678 as u32);
2111     pub const braille_dots_23678: Key = Key(ffi::GDK_KEY_braille_dots_23678 as u32);
2112     pub const braille_dots_123678: Key = Key(ffi::GDK_KEY_braille_dots_123678 as u32);
2113     pub const braille_dots_4678: Key = Key(ffi::GDK_KEY_braille_dots_4678 as u32);
2114     pub const braille_dots_14678: Key = Key(ffi::GDK_KEY_braille_dots_14678 as u32);
2115     pub const braille_dots_24678: Key = Key(ffi::GDK_KEY_braille_dots_24678 as u32);
2116     pub const braille_dots_124678: Key = Key(ffi::GDK_KEY_braille_dots_124678 as u32);
2117     pub const braille_dots_34678: Key = Key(ffi::GDK_KEY_braille_dots_34678 as u32);
2118     pub const braille_dots_134678: Key = Key(ffi::GDK_KEY_braille_dots_134678 as u32);
2119     pub const braille_dots_234678: Key = Key(ffi::GDK_KEY_braille_dots_234678 as u32);
2120     pub const braille_dots_1234678: Key = Key(ffi::GDK_KEY_braille_dots_1234678 as u32);
2121     pub const braille_dots_5678: Key = Key(ffi::GDK_KEY_braille_dots_5678 as u32);
2122     pub const braille_dots_15678: Key = Key(ffi::GDK_KEY_braille_dots_15678 as u32);
2123     pub const braille_dots_25678: Key = Key(ffi::GDK_KEY_braille_dots_25678 as u32);
2124     pub const braille_dots_125678: Key = Key(ffi::GDK_KEY_braille_dots_125678 as u32);
2125     pub const braille_dots_35678: Key = Key(ffi::GDK_KEY_braille_dots_35678 as u32);
2126     pub const braille_dots_135678: Key = Key(ffi::GDK_KEY_braille_dots_135678 as u32);
2127     pub const braille_dots_235678: Key = Key(ffi::GDK_KEY_braille_dots_235678 as u32);
2128     pub const braille_dots_1235678: Key = Key(ffi::GDK_KEY_braille_dots_1235678 as u32);
2129     pub const braille_dots_45678: Key = Key(ffi::GDK_KEY_braille_dots_45678 as u32);
2130     pub const braille_dots_145678: Key = Key(ffi::GDK_KEY_braille_dots_145678 as u32);
2131     pub const braille_dots_245678: Key = Key(ffi::GDK_KEY_braille_dots_245678 as u32);
2132     pub const braille_dots_1245678: Key = Key(ffi::GDK_KEY_braille_dots_1245678 as u32);
2133     pub const braille_dots_345678: Key = Key(ffi::GDK_KEY_braille_dots_345678 as u32);
2134     pub const braille_dots_1345678: Key = Key(ffi::GDK_KEY_braille_dots_1345678 as u32);
2135     pub const braille_dots_2345678: Key = Key(ffi::GDK_KEY_braille_dots_2345678 as u32);
2136     pub const braille_dots_12345678: Key = Key(ffi::GDK_KEY_braille_dots_12345678 as u32);
2137     pub const Sinh_ng: Key = Key(ffi::GDK_KEY_Sinh_ng as u32);
2138     pub const Sinh_h2: Key = Key(ffi::GDK_KEY_Sinh_h2 as u32);
2139     pub const Sinh_a: Key = Key(ffi::GDK_KEY_Sinh_a as u32);
2140     pub const Sinh_aa: Key = Key(ffi::GDK_KEY_Sinh_aa as u32);
2141     pub const Sinh_ae: Key = Key(ffi::GDK_KEY_Sinh_ae as u32);
2142     pub const Sinh_aee: Key = Key(ffi::GDK_KEY_Sinh_aee as u32);
2143     pub const Sinh_i: Key = Key(ffi::GDK_KEY_Sinh_i as u32);
2144     pub const Sinh_ii: Key = Key(ffi::GDK_KEY_Sinh_ii as u32);
2145     pub const Sinh_u: Key = Key(ffi::GDK_KEY_Sinh_u as u32);
2146     pub const Sinh_uu: Key = Key(ffi::GDK_KEY_Sinh_uu as u32);
2147     pub const Sinh_ri: Key = Key(ffi::GDK_KEY_Sinh_ri as u32);
2148     pub const Sinh_rii: Key = Key(ffi::GDK_KEY_Sinh_rii as u32);
2149     pub const Sinh_lu: Key = Key(ffi::GDK_KEY_Sinh_lu as u32);
2150     pub const Sinh_luu: Key = Key(ffi::GDK_KEY_Sinh_luu as u32);
2151     pub const Sinh_e: Key = Key(ffi::GDK_KEY_Sinh_e as u32);
2152     pub const Sinh_ee: Key = Key(ffi::GDK_KEY_Sinh_ee as u32);
2153     pub const Sinh_ai: Key = Key(ffi::GDK_KEY_Sinh_ai as u32);
2154     pub const Sinh_o: Key = Key(ffi::GDK_KEY_Sinh_o as u32);
2155     pub const Sinh_oo: Key = Key(ffi::GDK_KEY_Sinh_oo as u32);
2156     pub const Sinh_au: Key = Key(ffi::GDK_KEY_Sinh_au as u32);
2157     pub const Sinh_ka: Key = Key(ffi::GDK_KEY_Sinh_ka as u32);
2158     pub const Sinh_kha: Key = Key(ffi::GDK_KEY_Sinh_kha as u32);
2159     pub const Sinh_ga: Key = Key(ffi::GDK_KEY_Sinh_ga as u32);
2160     pub const Sinh_gha: Key = Key(ffi::GDK_KEY_Sinh_gha as u32);
2161     pub const Sinh_ng2: Key = Key(ffi::GDK_KEY_Sinh_ng2 as u32);
2162     pub const Sinh_nga: Key = Key(ffi::GDK_KEY_Sinh_nga as u32);
2163     pub const Sinh_ca: Key = Key(ffi::GDK_KEY_Sinh_ca as u32);
2164     pub const Sinh_cha: Key = Key(ffi::GDK_KEY_Sinh_cha as u32);
2165     pub const Sinh_ja: Key = Key(ffi::GDK_KEY_Sinh_ja as u32);
2166     pub const Sinh_jha: Key = Key(ffi::GDK_KEY_Sinh_jha as u32);
2167     pub const Sinh_nya: Key = Key(ffi::GDK_KEY_Sinh_nya as u32);
2168     pub const Sinh_jnya: Key = Key(ffi::GDK_KEY_Sinh_jnya as u32);
2169     pub const Sinh_nja: Key = Key(ffi::GDK_KEY_Sinh_nja as u32);
2170     pub const Sinh_tta: Key = Key(ffi::GDK_KEY_Sinh_tta as u32);
2171     pub const Sinh_ttha: Key = Key(ffi::GDK_KEY_Sinh_ttha as u32);
2172     pub const Sinh_dda: Key = Key(ffi::GDK_KEY_Sinh_dda as u32);
2173     pub const Sinh_ddha: Key = Key(ffi::GDK_KEY_Sinh_ddha as u32);
2174     pub const Sinh_nna: Key = Key(ffi::GDK_KEY_Sinh_nna as u32);
2175     pub const Sinh_ndda: Key = Key(ffi::GDK_KEY_Sinh_ndda as u32);
2176     pub const Sinh_tha: Key = Key(ffi::GDK_KEY_Sinh_tha as u32);
2177     pub const Sinh_thha: Key = Key(ffi::GDK_KEY_Sinh_thha as u32);
2178     pub const Sinh_dha: Key = Key(ffi::GDK_KEY_Sinh_dha as u32);
2179     pub const Sinh_dhha: Key = Key(ffi::GDK_KEY_Sinh_dhha as u32);
2180     pub const Sinh_na: Key = Key(ffi::GDK_KEY_Sinh_na as u32);
2181     pub const Sinh_ndha: Key = Key(ffi::GDK_KEY_Sinh_ndha as u32);
2182     pub const Sinh_pa: Key = Key(ffi::GDK_KEY_Sinh_pa as u32);
2183     pub const Sinh_pha: Key = Key(ffi::GDK_KEY_Sinh_pha as u32);
2184     pub const Sinh_ba: Key = Key(ffi::GDK_KEY_Sinh_ba as u32);
2185     pub const Sinh_bha: Key = Key(ffi::GDK_KEY_Sinh_bha as u32);
2186     pub const Sinh_ma: Key = Key(ffi::GDK_KEY_Sinh_ma as u32);
2187     pub const Sinh_mba: Key = Key(ffi::GDK_KEY_Sinh_mba as u32);
2188     pub const Sinh_ya: Key = Key(ffi::GDK_KEY_Sinh_ya as u32);
2189     pub const Sinh_ra: Key = Key(ffi::GDK_KEY_Sinh_ra as u32);
2190     pub const Sinh_la: Key = Key(ffi::GDK_KEY_Sinh_la as u32);
2191     pub const Sinh_va: Key = Key(ffi::GDK_KEY_Sinh_va as u32);
2192     pub const Sinh_sha: Key = Key(ffi::GDK_KEY_Sinh_sha as u32);
2193     pub const Sinh_ssha: Key = Key(ffi::GDK_KEY_Sinh_ssha as u32);
2194     pub const Sinh_sa: Key = Key(ffi::GDK_KEY_Sinh_sa as u32);
2195     pub const Sinh_ha: Key = Key(ffi::GDK_KEY_Sinh_ha as u32);
2196     pub const Sinh_lla: Key = Key(ffi::GDK_KEY_Sinh_lla as u32);
2197     pub const Sinh_fa: Key = Key(ffi::GDK_KEY_Sinh_fa as u32);
2198     pub const Sinh_al: Key = Key(ffi::GDK_KEY_Sinh_al as u32);
2199     pub const Sinh_aa2: Key = Key(ffi::GDK_KEY_Sinh_aa2 as u32);
2200     pub const Sinh_ae2: Key = Key(ffi::GDK_KEY_Sinh_ae2 as u32);
2201     pub const Sinh_aee2: Key = Key(ffi::GDK_KEY_Sinh_aee2 as u32);
2202     pub const Sinh_i2: Key = Key(ffi::GDK_KEY_Sinh_i2 as u32);
2203     pub const Sinh_ii2: Key = Key(ffi::GDK_KEY_Sinh_ii2 as u32);
2204     pub const Sinh_u2: Key = Key(ffi::GDK_KEY_Sinh_u2 as u32);
2205     pub const Sinh_uu2: Key = Key(ffi::GDK_KEY_Sinh_uu2 as u32);
2206     pub const Sinh_ru2: Key = Key(ffi::GDK_KEY_Sinh_ru2 as u32);
2207     pub const Sinh_e2: Key = Key(ffi::GDK_KEY_Sinh_e2 as u32);
2208     pub const Sinh_ee2: Key = Key(ffi::GDK_KEY_Sinh_ee2 as u32);
2209     pub const Sinh_ai2: Key = Key(ffi::GDK_KEY_Sinh_ai2 as u32);
2210     pub const Sinh_o2: Key = Key(ffi::GDK_KEY_Sinh_o2 as u32);
2211     pub const Sinh_oo2: Key = Key(ffi::GDK_KEY_Sinh_oo2 as u32);
2212     pub const Sinh_au2: Key = Key(ffi::GDK_KEY_Sinh_au2 as u32);
2213     pub const Sinh_lu2: Key = Key(ffi::GDK_KEY_Sinh_lu2 as u32);
2214     pub const Sinh_ruu2: Key = Key(ffi::GDK_KEY_Sinh_ruu2 as u32);
2215     pub const Sinh_luu2: Key = Key(ffi::GDK_KEY_Sinh_luu2 as u32);
2216     pub const Sinh_kunddaliya: Key = Key(ffi::GDK_KEY_Sinh_kunddaliya as u32);
2217     pub const ModeLock: Key = Key(ffi::GDK_KEY_ModeLock as u32);
2218     pub const MonBrightnessUp: Key = Key(ffi::GDK_KEY_MonBrightnessUp as u32);
2219     pub const MonBrightnessDown: Key = Key(ffi::GDK_KEY_MonBrightnessDown as u32);
2220     pub const KbdLightOnOff: Key = Key(ffi::GDK_KEY_KbdLightOnOff as u32);
2221     pub const KbdBrightnessUp: Key = Key(ffi::GDK_KEY_KbdBrightnessUp as u32);
2222     pub const KbdBrightnessDown: Key = Key(ffi::GDK_KEY_KbdBrightnessDown as u32);
2223     pub const Standby: Key = Key(ffi::GDK_KEY_Standby as u32);
2224     pub const AudioLowerVolume: Key = Key(ffi::GDK_KEY_AudioLowerVolume as u32);
2225     pub const AudioMute: Key = Key(ffi::GDK_KEY_AudioMute as u32);
2226     pub const AudioRaiseVolume: Key = Key(ffi::GDK_KEY_AudioRaiseVolume as u32);
2227     pub const AudioPlay: Key = Key(ffi::GDK_KEY_AudioPlay as u32);
2228     pub const AudioStop: Key = Key(ffi::GDK_KEY_AudioStop as u32);
2229     pub const AudioPrev: Key = Key(ffi::GDK_KEY_AudioPrev as u32);
2230     pub const AudioNext: Key = Key(ffi::GDK_KEY_AudioNext as u32);
2231     pub const HomePage: Key = Key(ffi::GDK_KEY_HomePage as u32);
2232     pub const Mail: Key = Key(ffi::GDK_KEY_Mail as u32);
2233     pub const Start: Key = Key(ffi::GDK_KEY_Start as u32);
2234     pub const Search: Key = Key(ffi::GDK_KEY_Search as u32);
2235     pub const AudioRecord: Key = Key(ffi::GDK_KEY_AudioRecord as u32);
2236     pub const Calculator: Key = Key(ffi::GDK_KEY_Calculator as u32);
2237     pub const Memo: Key = Key(ffi::GDK_KEY_Memo as u32);
2238     pub const ToDoList: Key = Key(ffi::GDK_KEY_ToDoList as u32);
2239     pub const Calendar: Key = Key(ffi::GDK_KEY_Calendar as u32);
2240     pub const PowerDown: Key = Key(ffi::GDK_KEY_PowerDown as u32);
2241     pub const ContrastAdjust: Key = Key(ffi::GDK_KEY_ContrastAdjust as u32);
2242     pub const RockerUp: Key = Key(ffi::GDK_KEY_RockerUp as u32);
2243     pub const RockerDown: Key = Key(ffi::GDK_KEY_RockerDown as u32);
2244     pub const RockerEnter: Key = Key(ffi::GDK_KEY_RockerEnter as u32);
2245     pub const Back: Key = Key(ffi::GDK_KEY_Back as u32);
2246     pub const Forward: Key = Key(ffi::GDK_KEY_Forward as u32);
2247     pub const Stop: Key = Key(ffi::GDK_KEY_Stop as u32);
2248     pub const Refresh: Key = Key(ffi::GDK_KEY_Refresh as u32);
2249     pub const PowerOff: Key = Key(ffi::GDK_KEY_PowerOff as u32);
2250     pub const WakeUp: Key = Key(ffi::GDK_KEY_WakeUp as u32);
2251     pub const Eject: Key = Key(ffi::GDK_KEY_Eject as u32);
2252     pub const ScreenSaver: Key = Key(ffi::GDK_KEY_ScreenSaver as u32);
2253     pub const WWW: Key = Key(ffi::GDK_KEY_WWW as u32);
2254     pub const Sleep: Key = Key(ffi::GDK_KEY_Sleep as u32);
2255     pub const Favorites: Key = Key(ffi::GDK_KEY_Favorites as u32);
2256     pub const AudioPause: Key = Key(ffi::GDK_KEY_AudioPause as u32);
2257     pub const AudioMedia: Key = Key(ffi::GDK_KEY_AudioMedia as u32);
2258     pub const MyComputer: Key = Key(ffi::GDK_KEY_MyComputer as u32);
2259     pub const VendorHome: Key = Key(ffi::GDK_KEY_VendorHome as u32);
2260     pub const LightBulb: Key = Key(ffi::GDK_KEY_LightBulb as u32);
2261     pub const Shop: Key = Key(ffi::GDK_KEY_Shop as u32);
2262     pub const History: Key = Key(ffi::GDK_KEY_History as u32);
2263     pub const OpenURL: Key = Key(ffi::GDK_KEY_OpenURL as u32);
2264     pub const AddFavorite: Key = Key(ffi::GDK_KEY_AddFavorite as u32);
2265     pub const HotLinks: Key = Key(ffi::GDK_KEY_HotLinks as u32);
2266     pub const BrightnessAdjust: Key = Key(ffi::GDK_KEY_BrightnessAdjust as u32);
2267     pub const Finance: Key = Key(ffi::GDK_KEY_Finance as u32);
2268     pub const Community: Key = Key(ffi::GDK_KEY_Community as u32);
2269     pub const AudioRewind: Key = Key(ffi::GDK_KEY_AudioRewind as u32);
2270     pub const BackForward: Key = Key(ffi::GDK_KEY_BackForward as u32);
2271     pub const Launch0: Key = Key(ffi::GDK_KEY_Launch0 as u32);
2272     pub const Launch1: Key = Key(ffi::GDK_KEY_Launch1 as u32);
2273     pub const Launch2: Key = Key(ffi::GDK_KEY_Launch2 as u32);
2274     pub const Launch3: Key = Key(ffi::GDK_KEY_Launch3 as u32);
2275     pub const Launch4: Key = Key(ffi::GDK_KEY_Launch4 as u32);
2276     pub const Launch5: Key = Key(ffi::GDK_KEY_Launch5 as u32);
2277     pub const Launch6: Key = Key(ffi::GDK_KEY_Launch6 as u32);
2278     pub const Launch7: Key = Key(ffi::GDK_KEY_Launch7 as u32);
2279     pub const Launch8: Key = Key(ffi::GDK_KEY_Launch8 as u32);
2280     pub const Launch9: Key = Key(ffi::GDK_KEY_Launch9 as u32);
2281     pub const LaunchA: Key = Key(ffi::GDK_KEY_LaunchA as u32);
2282     pub const LaunchB: Key = Key(ffi::GDK_KEY_LaunchB as u32);
2283     pub const LaunchC: Key = Key(ffi::GDK_KEY_LaunchC as u32);
2284     pub const LaunchD: Key = Key(ffi::GDK_KEY_LaunchD as u32);
2285     pub const LaunchE: Key = Key(ffi::GDK_KEY_LaunchE as u32);
2286     pub const LaunchF: Key = Key(ffi::GDK_KEY_LaunchF as u32);
2287     pub const ApplicationLeft: Key = Key(ffi::GDK_KEY_ApplicationLeft as u32);
2288     pub const ApplicationRight: Key = Key(ffi::GDK_KEY_ApplicationRight as u32);
2289     pub const Book: Key = Key(ffi::GDK_KEY_Book as u32);
2290     pub const CD: Key = Key(ffi::GDK_KEY_CD as u32);
2291     pub const WindowClear: Key = Key(ffi::GDK_KEY_WindowClear as u32);
2292     pub const Close: Key = Key(ffi::GDK_KEY_Close as u32);
2293     pub const Copy: Key = Key(ffi::GDK_KEY_Copy as u32);
2294     pub const Cut: Key = Key(ffi::GDK_KEY_Cut as u32);
2295     pub const Display: Key = Key(ffi::GDK_KEY_Display as u32);
2296     pub const DOS: Key = Key(ffi::GDK_KEY_DOS as u32);
2297     pub const Documents: Key = Key(ffi::GDK_KEY_Documents as u32);
2298     pub const Excel: Key = Key(ffi::GDK_KEY_Excel as u32);
2299     pub const Explorer: Key = Key(ffi::GDK_KEY_Explorer as u32);
2300     pub const Game: Key = Key(ffi::GDK_KEY_Game as u32);
2301     pub const Go: Key = Key(ffi::GDK_KEY_Go as u32);
2302     pub const iTouch: Key = Key(ffi::GDK_KEY_iTouch as u32);
2303     pub const LogOff: Key = Key(ffi::GDK_KEY_LogOff as u32);
2304     pub const Market: Key = Key(ffi::GDK_KEY_Market as u32);
2305     pub const Meeting: Key = Key(ffi::GDK_KEY_Meeting as u32);
2306     pub const MenuKB: Key = Key(ffi::GDK_KEY_MenuKB as u32);
2307     pub const MenuPB: Key = Key(ffi::GDK_KEY_MenuPB as u32);
2308     pub const MySites: Key = Key(ffi::GDK_KEY_MySites as u32);
2309     pub const New: Key = Key(ffi::GDK_KEY_New as u32);
2310     pub const News: Key = Key(ffi::GDK_KEY_News as u32);
2311     pub const OfficeHome: Key = Key(ffi::GDK_KEY_OfficeHome as u32);
2312     pub const Open: Key = Key(ffi::GDK_KEY_Open as u32);
2313     pub const Option: Key = Key(ffi::GDK_KEY_Option as u32);
2314     pub const Paste: Key = Key(ffi::GDK_KEY_Paste as u32);
2315     pub const Phone: Key = Key(ffi::GDK_KEY_Phone as u32);
2316     pub const Reply: Key = Key(ffi::GDK_KEY_Reply as u32);
2317     pub const Reload: Key = Key(ffi::GDK_KEY_Reload as u32);
2318     pub const RotateWindows: Key = Key(ffi::GDK_KEY_RotateWindows as u32);
2319     pub const RotationPB: Key = Key(ffi::GDK_KEY_RotationPB as u32);
2320     pub const RotationKB: Key = Key(ffi::GDK_KEY_RotationKB as u32);
2321     pub const Save: Key = Key(ffi::GDK_KEY_Save as u32);
2322     pub const ScrollUp: Key = Key(ffi::GDK_KEY_ScrollUp as u32);
2323     pub const ScrollDown: Key = Key(ffi::GDK_KEY_ScrollDown as u32);
2324     pub const ScrollClick: Key = Key(ffi::GDK_KEY_ScrollClick as u32);
2325     pub const Send: Key = Key(ffi::GDK_KEY_Send as u32);
2326     pub const Spell: Key = Key(ffi::GDK_KEY_Spell as u32);
2327     pub const SplitScreen: Key = Key(ffi::GDK_KEY_SplitScreen as u32);
2328     pub const Support: Key = Key(ffi::GDK_KEY_Support as u32);
2329     pub const TaskPane: Key = Key(ffi::GDK_KEY_TaskPane as u32);
2330     pub const Terminal: Key = Key(ffi::GDK_KEY_Terminal as u32);
2331     pub const Tools: Key = Key(ffi::GDK_KEY_Tools as u32);
2332     pub const Travel: Key = Key(ffi::GDK_KEY_Travel as u32);
2333     pub const UserPB: Key = Key(ffi::GDK_KEY_UserPB as u32);
2334     pub const User1KB: Key = Key(ffi::GDK_KEY_User1KB as u32);
2335     pub const User2KB: Key = Key(ffi::GDK_KEY_User2KB as u32);
2336     pub const Video: Key = Key(ffi::GDK_KEY_Video as u32);
2337     pub const WheelButton: Key = Key(ffi::GDK_KEY_WheelButton as u32);
2338     pub const Word: Key = Key(ffi::GDK_KEY_Word as u32);
2339     pub const Xfer: Key = Key(ffi::GDK_KEY_Xfer as u32);
2340     pub const ZoomIn: Key = Key(ffi::GDK_KEY_ZoomIn as u32);
2341     pub const ZoomOut: Key = Key(ffi::GDK_KEY_ZoomOut as u32);
2342     pub const Away: Key = Key(ffi::GDK_KEY_Away as u32);
2343     pub const Messenger: Key = Key(ffi::GDK_KEY_Messenger as u32);
2344     pub const WebCam: Key = Key(ffi::GDK_KEY_WebCam as u32);
2345     pub const MailForward: Key = Key(ffi::GDK_KEY_MailForward as u32);
2346     pub const Pictures: Key = Key(ffi::GDK_KEY_Pictures as u32);
2347     pub const Music: Key = Key(ffi::GDK_KEY_Music as u32);
2348     pub const Battery: Key = Key(ffi::GDK_KEY_Battery as u32);
2349     pub const Bluetooth: Key = Key(ffi::GDK_KEY_Bluetooth as u32);
2350     pub const WLAN: Key = Key(ffi::GDK_KEY_WLAN as u32);
2351     pub const UWB: Key = Key(ffi::GDK_KEY_UWB as u32);
2352     pub const AudioForward: Key = Key(ffi::GDK_KEY_AudioForward as u32);
2353     pub const AudioRepeat: Key = Key(ffi::GDK_KEY_AudioRepeat as u32);
2354     pub const AudioRandomPlay: Key = Key(ffi::GDK_KEY_AudioRandomPlay as u32);
2355     pub const Subtitle: Key = Key(ffi::GDK_KEY_Subtitle as u32);
2356     pub const AudioCycleTrack: Key = Key(ffi::GDK_KEY_AudioCycleTrack as u32);
2357     pub const CycleAngle: Key = Key(ffi::GDK_KEY_CycleAngle as u32);
2358     pub const FrameBack: Key = Key(ffi::GDK_KEY_FrameBack as u32);
2359     pub const FrameForward: Key = Key(ffi::GDK_KEY_FrameForward as u32);
2360     pub const Time: Key = Key(ffi::GDK_KEY_Time as u32);
2361     pub const SelectButton: Key = Key(ffi::GDK_KEY_SelectButton as u32);
2362     pub const View: Key = Key(ffi::GDK_KEY_View as u32);
2363     pub const TopMenu: Key = Key(ffi::GDK_KEY_TopMenu as u32);
2364     pub const Red: Key = Key(ffi::GDK_KEY_Red as u32);
2365     pub const Green: Key = Key(ffi::GDK_KEY_Green as u32);
2366     pub const Yellow: Key = Key(ffi::GDK_KEY_Yellow as u32);
2367     pub const Blue: Key = Key(ffi::GDK_KEY_Blue as u32);
2368     pub const Suspend: Key = Key(ffi::GDK_KEY_Suspend as u32);
2369     pub const Hibernate: Key = Key(ffi::GDK_KEY_Hibernate as u32);
2370     pub const TouchpadToggle: Key = Key(ffi::GDK_KEY_TouchpadToggle as u32);
2371     pub const TouchpadOn: Key = Key(ffi::GDK_KEY_TouchpadOn as u32);
2372     pub const TouchpadOff: Key = Key(ffi::GDK_KEY_TouchpadOff as u32);
2373     pub const AudioMicMute: Key = Key(ffi::GDK_KEY_AudioMicMute as u32);
2374     pub const Switch_VT_1: Key = Key(ffi::GDK_KEY_Switch_VT_1 as u32);
2375     pub const Switch_VT_2: Key = Key(ffi::GDK_KEY_Switch_VT_2 as u32);
2376     pub const Switch_VT_3: Key = Key(ffi::GDK_KEY_Switch_VT_3 as u32);
2377     pub const Switch_VT_4: Key = Key(ffi::GDK_KEY_Switch_VT_4 as u32);
2378     pub const Switch_VT_5: Key = Key(ffi::GDK_KEY_Switch_VT_5 as u32);
2379     pub const Switch_VT_6: Key = Key(ffi::GDK_KEY_Switch_VT_6 as u32);
2380     pub const Switch_VT_7: Key = Key(ffi::GDK_KEY_Switch_VT_7 as u32);
2381     pub const Switch_VT_8: Key = Key(ffi::GDK_KEY_Switch_VT_8 as u32);
2382     pub const Switch_VT_9: Key = Key(ffi::GDK_KEY_Switch_VT_9 as u32);
2383     pub const Switch_VT_10: Key = Key(ffi::GDK_KEY_Switch_VT_10 as u32);
2384     pub const Switch_VT_11: Key = Key(ffi::GDK_KEY_Switch_VT_11 as u32);
2385     pub const Switch_VT_12: Key = Key(ffi::GDK_KEY_Switch_VT_12 as u32);
2386     pub const Ungrab: Key = Key(ffi::GDK_KEY_Ungrab as u32);
2387     pub const ClearGrab: Key = Key(ffi::GDK_KEY_ClearGrab as u32);
2388     pub const Next_VMode: Key = Key(ffi::GDK_KEY_Next_VMode as u32);
2389     pub const Prev_VMode: Key = Key(ffi::GDK_KEY_Prev_VMode as u32);
2390     pub const LogWindowTree: Key = Key(ffi::GDK_KEY_LogWindowTree as u32);
2391     pub const LogGrabInfo: Key = Key(ffi::GDK_KEY_LogGrabInfo as u32);
2392 }
2393