1 /****************************************************************************
2 **
3 ** Copyright (C) 2017 The Qt Company Ltd.
4 ** Copyright (C) 2015-2016 Oleksandr Tymoshenko <gonzo@bluezbox.com>
5 ** Contact: https://www.qt.io/licensing/
6 **
7 ** This file is part of the plugins of the Qt Toolkit.
8 **
9 ** $QT_BEGIN_LICENSE:LGPL$
10 ** Commercial License Usage
11 ** Licensees holding valid commercial Qt licenses may use this file in
12 ** accordance with the commercial license agreement provided with the
13 ** Software or, alternatively, in accordance with the terms contained in
14 ** a written agreement between you and The Qt Company. For licensing terms
15 ** and conditions see https://www.qt.io/terms-conditions. For further
16 ** information use the contact form at https://www.qt.io/contact-us.
17 **
18 ** GNU Lesser General Public License Usage
19 ** Alternatively, this file may be used under the terms of the GNU Lesser
20 ** General Public License version 3 as published by the Free Software
21 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
22 ** packaging of this file. Please review the following information to
23 ** ensure the GNU Lesser General Public License version 3 requirements
24 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
25 **
26 ** GNU General Public License Usage
27 ** Alternatively, this file may be used under the terms of the GNU
28 ** General Public License version 2.0 or (at your option) the GNU General
29 ** Public license version 3 or any later version approved by the KDE Free
30 ** Qt Foundation. The licenses are as published by the Free Software
31 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
32 ** included in the packaging of this file. Please review the following
33 ** information to ensure the GNU General Public License requirements will
34 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
35 ** https://www.gnu.org/licenses/gpl-3.0.html.
36 **
37 ** $QT_END_LICENSE$
38 **
39 ****************************************************************************/
40 
41 #ifndef QBSDKEYBOARD_DEFAULTMAP_P_H
42 #define QBSDKEYBOARD_DEFAULTMAP_P_H
43 
44 //
45 //  W A R N I N G
46 //  -------------
47 //
48 // This file is not part of the Qt API.  It exists purely as an
49 // implementation detail.  This header file may change from version to
50 // version without notice, or even be removed.
51 //
52 // We mean it.
53 //
54 
55 #include "qnamespace.h"
56 
57 // no QT_BEGIN_NAMESPACE, since we include it internally...
58 using namespace QBsdKeyboardMap;
59 
60 #define QCTRL(x)    ((x) | Qt::ControlModifier)
61 #define QALT(x)     ((x) | Qt::AltModifier)
62 #define QKEYPAD(x)  ((x) | Qt::KeypadModifier)
63 
64 const QBsdKeyboardMap::Mapping keymapDefault[] = {
65     {   1, 0xffff, Qt::Key_Escape,              ModPlain,                        NoFlags, 0x0000 },
66     {   2, 0x0031, Qt::Key_1,                   ModPlain,                        NoFlags, 0x0000 },
67     {   2, 0x0021, Qt::Key_Exclam,              ModShift,                        NoFlags, 0x0000 },
68     {   3, 0x0032, Qt::Key_2,                   ModPlain,                        NoFlags, 0x0000 },
69     {   3, 0x0040, Qt::Key_At,                  ModShift,                        NoFlags, 0x0000 },
70     {   3, 0x0040, Qt::Key_At,                  ModAltGr,                        NoFlags, 0x0000 },
71     {   4, 0x0033, Qt::Key_3,                   ModPlain,                        NoFlags, 0x0000 },
72     {   4, 0x0023, Qt::Key_NumberSign,          ModShift,                        NoFlags, 0x0000 },
73     {   4, 0xffff, Qt::Key_Escape,              ModControl,                      NoFlags, 0x0000 },
74     {   5, 0x0034, Qt::Key_4,                   ModPlain,                        NoFlags, 0x0000 },
75     {   5, 0x0024, Qt::Key_Dollar,              ModShift,                        NoFlags, 0x0000 },
76     {   5, 0x0024, Qt::Key_Dollar,              ModAltGr,                        NoFlags, 0x0000 },
77     {   5, 0x005c, QCTRL(Qt::Key_Backslash),    ModControl,                      NoFlags, 0x0000 },
78     {   6, 0x0035, Qt::Key_5,                   ModPlain,                        NoFlags, 0x0000 },
79     {   6, 0x0025, Qt::Key_Percent,             ModShift,                        NoFlags, 0x0000 },
80     {   6, 0x005d, QCTRL(Qt::Key_BracketRight), ModControl,                      NoFlags, 0x0000 },
81     {   7, 0x0036, Qt::Key_6,                   ModPlain,                        NoFlags, 0x0000 },
82     {   7, 0x005e, Qt::Key_AsciiCircum,         ModShift,                        NoFlags, 0x0000 },
83     {   7, 0x005e, QCTRL(Qt::Key_AsciiCircum),  ModControl,                      NoFlags, 0x0000 },
84     {   8, 0x0037, Qt::Key_7,                   ModPlain,                        NoFlags, 0x0000 },
85     {   8, 0x0026, Qt::Key_Ampersand,           ModShift,                        NoFlags, 0x0000 },
86     {   8, 0x007b, Qt::Key_BraceLeft,           ModAltGr,                        NoFlags, 0x0000 },
87     {   8, 0x005f, QCTRL(Qt::Key_Underscore),   ModControl,                      NoFlags, 0x0000 },
88     {   9, 0x0038, Qt::Key_8,                   ModPlain,                        NoFlags, 0x0000 },
89     {   9, 0x002a, Qt::Key_Asterisk,            ModShift,                        NoFlags, 0x0000 },
90     {   9, 0x005b, Qt::Key_BracketLeft,         ModAltGr,                        NoFlags, 0x0000 },
91     {   9, 0xffff, Qt::Key_Backspace,           ModControl,                      NoFlags, 0x0000 },
92     {  10, 0x0039, Qt::Key_9,                   ModPlain,                        NoFlags, 0x0000 },
93     {  10, 0x0028, Qt::Key_ParenLeft,           ModShift,                        NoFlags, 0x0000 },
94     {  10, 0x005d, Qt::Key_BracketRight,        ModAltGr,                        NoFlags, 0x0000 },
95     {  11, 0x0030, Qt::Key_0,                   ModPlain,                        NoFlags, 0x0000 },
96     {  11, 0x0029, Qt::Key_ParenRight,          ModShift,                        NoFlags, 0x0000 },
97     {  11, 0x007d, Qt::Key_BraceRight,          ModAltGr,                        NoFlags, 0x0000 },
98     {  12, 0x002d, Qt::Key_Minus,               ModPlain,                        NoFlags, 0x0000 },
99     {  12, 0x005f, Qt::Key_Underscore,          ModShift,                        NoFlags, 0x0000 },
100     {  12, 0x005c, Qt::Key_Backslash,           ModAltGr,                        NoFlags, 0x0000 },
101     {  12, 0x005f, QCTRL(Qt::Key_Underscore),   ModControl,                      NoFlags, 0x0000 },
102     {  12, 0x005f, QCTRL(Qt::Key_Underscore),   ModShift | ModControl,           NoFlags, 0x0000 },
103     {  13, 0x003d, Qt::Key_Equal,               ModPlain,                        NoFlags, 0x0000 },
104     {  13, 0x002b, Qt::Key_Plus,                ModShift,                        NoFlags, 0x0000 },
105     {  14, 0xffff, Qt::Key_Backspace,           ModPlain,                        NoFlags, 0x0000 },
106     {  15, 0xffff, Qt::Key_Tab,                 ModPlain,                        NoFlags, 0x0000 },
107     {  16, 0x0071, Qt::Key_Q,                   ModPlain,                        IsLetter, 0x0000 },
108     {  16, 0x0051, Qt::Key_Q,                   ModShift,                        IsLetter, 0x0000 },
109     {  16, 0x0071, Qt::Key_Q,                   ModAltGr,                        IsLetter, 0x0000 },
110     {  16, 0x0051, Qt::Key_Q,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
111     {  16, 0x0071, QCTRL(Qt::Key_Q),            ModControl,                      IsLetter, 0x0000 },
112     {  16, 0x0071, QCTRL(Qt::Key_Q),            ModShift | ModControl,           IsLetter, 0x0000 },
113     {  16, 0x0071, QCTRL(Qt::Key_Q),            ModAltGr | ModControl,           IsLetter, 0x0000 },
114     {  16, 0x0071, QCTRL(Qt::Key_Q),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
115     {  16, 0x0071, QALT(Qt::Key_Q),             ModAlt,                          IsLetter, 0x0000 },
116     {  16, 0x0071, QALT(Qt::Key_Q),             ModShift | ModAlt,               IsLetter, 0x0000 },
117     {  16, 0x0071, QALT(Qt::Key_Q),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
118     {  16, 0x0071, QALT(Qt::Key_Q),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
119     {  16, 0x0071, QCTRL(QALT(Qt::Key_Q)),      ModControl | ModAlt,             IsLetter, 0x0000 },
120     {  16, 0x0071, QCTRL(QALT(Qt::Key_Q)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
121     {  16, 0x0071, QCTRL(QALT(Qt::Key_Q)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
122     {  16, 0x0071, QCTRL(QALT(Qt::Key_Q)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
123     {  17, 0x0077, Qt::Key_W,                   ModPlain,                        IsLetter, 0x0000 },
124     {  17, 0x0057, Qt::Key_W,                   ModShift,                        IsLetter, 0x0000 },
125     {  17, 0x0077, Qt::Key_W,                   ModAltGr,                        IsLetter, 0x0000 },
126     {  17, 0x0057, Qt::Key_W,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
127     {  17, 0x0077, QCTRL(Qt::Key_W),            ModControl,                      IsLetter, 0x0000 },
128     {  17, 0x0077, QCTRL(Qt::Key_W),            ModShift | ModControl,           IsLetter, 0x0000 },
129     {  17, 0x0077, QCTRL(Qt::Key_W),            ModAltGr | ModControl,           IsLetter, 0x0000 },
130     {  17, 0x0077, QCTRL(Qt::Key_W),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
131     {  17, 0x0077, QALT(Qt::Key_W),             ModAlt,                          IsLetter, 0x0000 },
132     {  17, 0x0077, QALT(Qt::Key_W),             ModShift | ModAlt,               IsLetter, 0x0000 },
133     {  17, 0x0077, QALT(Qt::Key_W),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
134     {  17, 0x0077, QALT(Qt::Key_W),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
135     {  17, 0x0077, QCTRL(QALT(Qt::Key_W)),      ModControl | ModAlt,             IsLetter, 0x0000 },
136     {  17, 0x0077, QCTRL(QALT(Qt::Key_W)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
137     {  17, 0x0077, QCTRL(QALT(Qt::Key_W)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
138     {  17, 0x0077, QCTRL(QALT(Qt::Key_W)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
139     {  18, 0x0065, Qt::Key_E,                   ModPlain,                        IsLetter, 0x0000 },
140     {  18, 0x0045, Qt::Key_E,                   ModShift,                        IsLetter, 0x0000 },
141     {  18, 0x0065, Qt::Key_E,                   ModAltGr,                        IsLetter, 0x0000 },
142     {  18, 0x0045, Qt::Key_E,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
143     {  18, 0x0065, QCTRL(Qt::Key_E),            ModControl,                      IsLetter, 0x0000 },
144     {  18, 0x0065, QCTRL(Qt::Key_E),            ModShift | ModControl,           IsLetter, 0x0000 },
145     {  18, 0x0065, QCTRL(Qt::Key_E),            ModAltGr | ModControl,           IsLetter, 0x0000 },
146     {  18, 0x0065, QCTRL(Qt::Key_E),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
147     {  18, 0x0065, QALT(Qt::Key_E),             ModAlt,                          IsLetter, 0x0000 },
148     {  18, 0x0065, QALT(Qt::Key_E),             ModShift | ModAlt,               IsLetter, 0x0000 },
149     {  18, 0x0065, QALT(Qt::Key_E),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
150     {  18, 0x0065, QALT(Qt::Key_E),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
151     {  18, 0x0065, QCTRL(QALT(Qt::Key_E)),      ModControl | ModAlt,             IsLetter, 0x0000 },
152     {  18, 0x0065, QCTRL(QALT(Qt::Key_E)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
153     {  18, 0x0065, QCTRL(QALT(Qt::Key_E)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
154     {  18, 0x0065, QCTRL(QALT(Qt::Key_E)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
155     {  19, 0x0072, Qt::Key_R,                   ModPlain,                        IsLetter, 0x0000 },
156     {  19, 0x0052, Qt::Key_R,                   ModShift,                        IsLetter, 0x0000 },
157     {  19, 0x0072, Qt::Key_R,                   ModAltGr,                        IsLetter, 0x0000 },
158     {  19, 0x0052, Qt::Key_R,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
159     {  19, 0x0072, QCTRL(Qt::Key_R),            ModControl,                      IsLetter, 0x0000 },
160     {  19, 0x0072, QCTRL(Qt::Key_R),            ModShift | ModControl,           IsLetter, 0x0000 },
161     {  19, 0x0072, QCTRL(Qt::Key_R),            ModAltGr | ModControl,           IsLetter, 0x0000 },
162     {  19, 0x0072, QCTRL(Qt::Key_R),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
163     {  19, 0x0072, QALT(Qt::Key_R),             ModAlt,                          IsLetter, 0x0000 },
164     {  19, 0x0072, QALT(Qt::Key_R),             ModShift | ModAlt,               IsLetter, 0x0000 },
165     {  19, 0x0072, QALT(Qt::Key_R),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
166     {  19, 0x0072, QALT(Qt::Key_R),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
167     {  19, 0x0072, QCTRL(QALT(Qt::Key_R)),      ModControl | ModAlt,             IsLetter, 0x0000 },
168     {  19, 0x0072, QCTRL(QALT(Qt::Key_R)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
169     {  19, 0x0072, QCTRL(QALT(Qt::Key_R)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
170     {  19, 0x0072, QCTRL(QALT(Qt::Key_R)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
171     {  20, 0x0074, Qt::Key_T,                   ModPlain,                        IsLetter, 0x0000 },
172     {  20, 0x0054, Qt::Key_T,                   ModShift,                        IsLetter, 0x0000 },
173     {  20, 0x0074, Qt::Key_T,                   ModAltGr,                        IsLetter, 0x0000 },
174     {  20, 0x0054, Qt::Key_T,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
175     {  20, 0x0074, QCTRL(Qt::Key_T),            ModControl,                      IsLetter, 0x0000 },
176     {  20, 0x0074, QCTRL(Qt::Key_T),            ModShift | ModControl,           IsLetter, 0x0000 },
177     {  20, 0x0074, QCTRL(Qt::Key_T),            ModAltGr | ModControl,           IsLetter, 0x0000 },
178     {  20, 0x0074, QCTRL(Qt::Key_T),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
179     {  20, 0x0074, QALT(Qt::Key_T),             ModAlt,                          IsLetter, 0x0000 },
180     {  20, 0x0074, QALT(Qt::Key_T),             ModShift | ModAlt,               IsLetter, 0x0000 },
181     {  20, 0x0074, QALT(Qt::Key_T),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
182     {  20, 0x0074, QALT(Qt::Key_T),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
183     {  20, 0x0074, QCTRL(QALT(Qt::Key_T)),      ModControl | ModAlt,             IsLetter, 0x0000 },
184     {  20, 0x0074, QCTRL(QALT(Qt::Key_T)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
185     {  20, 0x0074, QCTRL(QALT(Qt::Key_T)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
186     {  20, 0x0074, QCTRL(QALT(Qt::Key_T)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
187     {  21, 0x0079, Qt::Key_Y,                   ModPlain,                        IsLetter, 0x0000 },
188     {  21, 0x0059, Qt::Key_Y,                   ModShift,                        IsLetter, 0x0000 },
189     {  21, 0x0079, Qt::Key_Y,                   ModAltGr,                        IsLetter, 0x0000 },
190     {  21, 0x0059, Qt::Key_Y,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
191     {  21, 0x0079, QCTRL(Qt::Key_Y),            ModControl,                      IsLetter, 0x0000 },
192     {  21, 0x0079, QCTRL(Qt::Key_Y),            ModShift | ModControl,           IsLetter, 0x0000 },
193     {  21, 0x0079, QCTRL(Qt::Key_Y),            ModAltGr | ModControl,           IsLetter, 0x0000 },
194     {  21, 0x0079, QCTRL(Qt::Key_Y),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
195     {  21, 0x0079, QALT(Qt::Key_Y),             ModAlt,                          IsLetter, 0x0000 },
196     {  21, 0x0079, QALT(Qt::Key_Y),             ModShift | ModAlt,               IsLetter, 0x0000 },
197     {  21, 0x0079, QALT(Qt::Key_Y),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
198     {  21, 0x0079, QALT(Qt::Key_Y),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
199     {  21, 0x0079, QCTRL(QALT(Qt::Key_Y)),      ModControl | ModAlt,             IsLetter, 0x0000 },
200     {  21, 0x0079, QCTRL(QALT(Qt::Key_Y)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
201     {  21, 0x0079, QCTRL(QALT(Qt::Key_Y)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
202     {  21, 0x0079, QCTRL(QALT(Qt::Key_Y)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
203     {  22, 0x0075, Qt::Key_U,                   ModPlain,                        IsLetter, 0x0000 },
204     {  22, 0x0055, Qt::Key_U,                   ModShift,                        IsLetter, 0x0000 },
205     {  22, 0x0075, Qt::Key_U,                   ModAltGr,                        IsLetter, 0x0000 },
206     {  22, 0x0055, Qt::Key_U,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
207     {  22, 0x0075, QCTRL(Qt::Key_U),            ModControl,                      IsLetter, 0x0000 },
208     {  22, 0x0075, QCTRL(Qt::Key_U),            ModShift | ModControl,           IsLetter, 0x0000 },
209     {  22, 0x0075, QCTRL(Qt::Key_U),            ModAltGr | ModControl,           IsLetter, 0x0000 },
210     {  22, 0x0075, QCTRL(Qt::Key_U),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
211     {  22, 0x0075, QALT(Qt::Key_U),             ModAlt,                          IsLetter, 0x0000 },
212     {  22, 0x0075, QALT(Qt::Key_U),             ModShift | ModAlt,               IsLetter, 0x0000 },
213     {  22, 0x0075, QALT(Qt::Key_U),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
214     {  22, 0x0075, QALT(Qt::Key_U),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
215     {  22, 0x0075, QCTRL(QALT(Qt::Key_U)),      ModControl | ModAlt,             IsLetter, 0x0000 },
216     {  22, 0x0075, QCTRL(QALT(Qt::Key_U)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
217     {  22, 0x0075, QCTRL(QALT(Qt::Key_U)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
218     {  22, 0x0075, QCTRL(QALT(Qt::Key_U)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
219     {  23, 0x0069, Qt::Key_I,                   ModPlain,                        IsLetter, 0x0000 },
220     {  23, 0x0049, Qt::Key_I,                   ModShift,                        IsLetter, 0x0000 },
221     {  23, 0x0069, Qt::Key_I,                   ModAltGr,                        IsLetter, 0x0000 },
222     {  23, 0x0049, Qt::Key_I,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
223     {  23, 0x0069, QCTRL(Qt::Key_I),            ModControl,                      IsLetter, 0x0000 },
224     {  23, 0x0069, QCTRL(Qt::Key_I),            ModShift | ModControl,           IsLetter, 0x0000 },
225     {  23, 0x0069, QCTRL(Qt::Key_I),            ModAltGr | ModControl,           IsLetter, 0x0000 },
226     {  23, 0x0069, QCTRL(Qt::Key_I),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
227     {  23, 0x0069, QALT(Qt::Key_I),             ModAlt,                          IsLetter, 0x0000 },
228     {  23, 0x0069, QALT(Qt::Key_I),             ModShift | ModAlt,               IsLetter, 0x0000 },
229     {  23, 0x0069, QALT(Qt::Key_I),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
230     {  23, 0x0069, QALT(Qt::Key_I),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
231     {  23, 0x0069, QCTRL(QALT(Qt::Key_I)),      ModControl | ModAlt,             IsLetter, 0x0000 },
232     {  23, 0x0069, QCTRL(QALT(Qt::Key_I)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
233     {  23, 0x0069, QCTRL(QALT(Qt::Key_I)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
234     {  23, 0x0069, QCTRL(QALT(Qt::Key_I)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
235     {  24, 0x006f, Qt::Key_O,                   ModPlain,                        IsLetter, 0x0000 },
236     {  24, 0x004f, Qt::Key_O,                   ModShift,                        IsLetter, 0x0000 },
237     {  24, 0x006f, Qt::Key_O,                   ModAltGr,                        IsLetter, 0x0000 },
238     {  24, 0x004f, Qt::Key_O,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
239     {  24, 0x006f, QCTRL(Qt::Key_O),            ModControl,                      IsLetter, 0x0000 },
240     {  24, 0x006f, QCTRL(Qt::Key_O),            ModShift | ModControl,           IsLetter, 0x0000 },
241     {  24, 0x006f, QCTRL(Qt::Key_O),            ModAltGr | ModControl,           IsLetter, 0x0000 },
242     {  24, 0x006f, QCTRL(Qt::Key_O),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
243     {  24, 0x006f, QALT(Qt::Key_O),             ModAlt,                          IsLetter, 0x0000 },
244     {  24, 0x006f, QALT(Qt::Key_O),             ModShift | ModAlt,               IsLetter, 0x0000 },
245     {  24, 0x006f, QALT(Qt::Key_O),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
246     {  24, 0x006f, QALT(Qt::Key_O),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
247     {  24, 0x006f, QCTRL(QALT(Qt::Key_O)),      ModControl | ModAlt,             IsLetter, 0x0000 },
248     {  24, 0x006f, QCTRL(QALT(Qt::Key_O)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
249     {  24, 0x006f, QCTRL(QALT(Qt::Key_O)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
250     {  24, 0x006f, QCTRL(QALT(Qt::Key_O)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
251     {  25, 0x0070, Qt::Key_P,                   ModPlain,                        IsLetter, 0x0000 },
252     {  25, 0x0050, Qt::Key_P,                   ModShift,                        IsLetter, 0x0000 },
253     {  25, 0x0070, Qt::Key_P,                   ModAltGr,                        IsLetter, 0x0000 },
254     {  25, 0x0050, Qt::Key_P,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
255     {  25, 0x0070, QCTRL(Qt::Key_P),            ModControl,                      IsLetter, 0x0000 },
256     {  25, 0x0070, QCTRL(Qt::Key_P),            ModShift | ModControl,           IsLetter, 0x0000 },
257     {  25, 0x0070, QCTRL(Qt::Key_P),            ModAltGr | ModControl,           IsLetter, 0x0000 },
258     {  25, 0x0070, QCTRL(Qt::Key_P),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
259     {  25, 0x0070, QALT(Qt::Key_P),             ModAlt,                          IsLetter, 0x0000 },
260     {  25, 0x0070, QALT(Qt::Key_P),             ModShift | ModAlt,               IsLetter, 0x0000 },
261     {  25, 0x0070, QALT(Qt::Key_P),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
262     {  25, 0x0070, QALT(Qt::Key_P),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
263     {  25, 0x0070, QCTRL(QALT(Qt::Key_P)),      ModControl | ModAlt,             IsLetter, 0x0000 },
264     {  25, 0x0070, QCTRL(QALT(Qt::Key_P)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
265     {  25, 0x0070, QCTRL(QALT(Qt::Key_P)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
266     {  25, 0x0070, QCTRL(QALT(Qt::Key_P)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
267     {  26, 0x005b, Qt::Key_BracketLeft,         ModPlain,                        NoFlags, 0x0000 },
268     {  26, 0x007b, Qt::Key_BraceLeft,           ModShift,                        NoFlags, 0x0000 },
269     {  26, 0xffff, Qt::Key_Escape,              ModControl,                      NoFlags, 0x0000 },
270     {  27, 0x005d, Qt::Key_BracketRight,        ModPlain,                        NoFlags, 0x0000 },
271     {  27, 0x007d, Qt::Key_BraceRight,          ModShift,                        NoFlags, 0x0000 },
272     {  27, 0x007e, Qt::Key_AsciiTilde,          ModAltGr,                        NoFlags, 0x0000 },
273     {  27, 0x005d, QCTRL(Qt::Key_BracketRight), ModControl,                      NoFlags, 0x0000 },
274     {  28, 0xffff, Qt::Key_Return,              ModPlain,                        NoFlags, 0x0000 },
275     {  28, 0x006d, QCTRL(QALT(Qt::Key_M)),      ModAlt,                          NoFlags, 0x0000 },
276     {  29, 0xffff, Qt::Key_Control,             ModPlain,                        IsModifier, ModControl },
277     {  30, 0x0061, Qt::Key_A,                   ModPlain,                        IsLetter, 0x0000 },
278     {  30, 0x0041, Qt::Key_A,                   ModShift,                        IsLetter, 0x0000 },
279     {  30, 0x0061, Qt::Key_A,                   ModAltGr,                        IsLetter, 0x0000 },
280     {  30, 0x0041, Qt::Key_A,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
281     {  30, 0x0061, QCTRL(Qt::Key_A),            ModControl,                      IsLetter, 0x0000 },
282     {  30, 0x0061, QCTRL(Qt::Key_A),            ModShift | ModControl,           IsLetter, 0x0000 },
283     {  30, 0x0061, QCTRL(Qt::Key_A),            ModAltGr | ModControl,           IsLetter, 0x0000 },
284     {  30, 0x0061, QCTRL(Qt::Key_A),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
285     {  30, 0x0061, QALT(Qt::Key_A),             ModAlt,                          IsLetter, 0x0000 },
286     {  30, 0x0061, QALT(Qt::Key_A),             ModShift | ModAlt,               IsLetter, 0x0000 },
287     {  30, 0x0061, QALT(Qt::Key_A),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
288     {  30, 0x0061, QALT(Qt::Key_A),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
289     {  30, 0x0061, QCTRL(QALT(Qt::Key_A)),      ModControl | ModAlt,             IsLetter, 0x0000 },
290     {  30, 0x0061, QCTRL(QALT(Qt::Key_A)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
291     {  30, 0x0061, QCTRL(QALT(Qt::Key_A)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
292     {  30, 0x0061, QCTRL(QALT(Qt::Key_A)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
293     {  31, 0x0073, Qt::Key_S,                   ModPlain,                        IsLetter, 0x0000 },
294     {  31, 0x0053, Qt::Key_S,                   ModShift,                        IsLetter, 0x0000 },
295     {  31, 0x0073, Qt::Key_S,                   ModAltGr,                        IsLetter, 0x0000 },
296     {  31, 0x0053, Qt::Key_S,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
297     {  31, 0x0073, QCTRL(Qt::Key_S),            ModControl,                      IsLetter, 0x0000 },
298     {  31, 0x0073, QCTRL(Qt::Key_S),            ModShift | ModControl,           IsLetter, 0x0000 },
299     {  31, 0x0073, QCTRL(Qt::Key_S),            ModAltGr | ModControl,           IsLetter, 0x0000 },
300     {  31, 0x0073, QCTRL(Qt::Key_S),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
301     {  31, 0x0073, QALT(Qt::Key_S),             ModAlt,                          IsLetter, 0x0000 },
302     {  31, 0x0073, QALT(Qt::Key_S),             ModShift | ModAlt,               IsLetter, 0x0000 },
303     {  31, 0x0073, QALT(Qt::Key_S),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
304     {  31, 0x0073, QALT(Qt::Key_S),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
305     {  31, 0x0073, QCTRL(QALT(Qt::Key_S)),      ModControl | ModAlt,             IsLetter, 0x0000 },
306     {  31, 0x0073, QCTRL(QALT(Qt::Key_S)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
307     {  31, 0x0073, QCTRL(QALT(Qt::Key_S)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
308     {  31, 0x0073, QCTRL(QALT(Qt::Key_S)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
309     {  32, 0x0064, Qt::Key_D,                   ModPlain,                        IsLetter, 0x0000 },
310     {  32, 0x0044, Qt::Key_D,                   ModShift,                        IsLetter, 0x0000 },
311     {  32, 0x0064, Qt::Key_D,                   ModAltGr,                        IsLetter, 0x0000 },
312     {  32, 0x0044, Qt::Key_D,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
313     {  32, 0x0064, QCTRL(Qt::Key_D),            ModControl,                      IsLetter, 0x0000 },
314     {  32, 0x0064, QCTRL(Qt::Key_D),            ModShift | ModControl,           IsLetter, 0x0000 },
315     {  32, 0x0064, QCTRL(Qt::Key_D),            ModAltGr | ModControl,           IsLetter, 0x0000 },
316     {  32, 0x0064, QCTRL(Qt::Key_D),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
317     {  32, 0x0064, QALT(Qt::Key_D),             ModAlt,                          IsLetter, 0x0000 },
318     {  32, 0x0064, QALT(Qt::Key_D),             ModShift | ModAlt,               IsLetter, 0x0000 },
319     {  32, 0x0064, QALT(Qt::Key_D),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
320     {  32, 0x0064, QALT(Qt::Key_D),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
321     {  32, 0x0064, QCTRL(QALT(Qt::Key_D)),      ModControl | ModAlt,             IsLetter, 0x0000 },
322     {  32, 0x0064, QCTRL(QALT(Qt::Key_D)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
323     {  32, 0x0064, QCTRL(QALT(Qt::Key_D)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
324     {  32, 0x0064, QCTRL(QALT(Qt::Key_D)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
325     {  33, 0x0066, Qt::Key_F,                   ModPlain,                        IsLetter, 0x0000 },
326     {  33, 0x0046, Qt::Key_F,                   ModShift,                        IsLetter, 0x0000 },
327     {  33, 0x0066, Qt::Key_F,                   ModAltGr,                        IsLetter, 0x0000 },
328     {  33, 0x0046, Qt::Key_F,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
329     {  33, 0x0066, QCTRL(Qt::Key_F),            ModControl,                      IsLetter, 0x0000 },
330     {  33, 0x0066, QCTRL(Qt::Key_F),            ModShift | ModControl,           IsLetter, 0x0000 },
331     {  33, 0x0066, QCTRL(Qt::Key_F),            ModAltGr | ModControl,           IsLetter, 0x0000 },
332     {  33, 0x0066, QCTRL(Qt::Key_F),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
333     {  33, 0x0066, QALT(Qt::Key_F),             ModAlt,                          IsLetter, 0x0000 },
334     {  33, 0x0066, QALT(Qt::Key_F),             ModShift | ModAlt,               IsLetter, 0x0000 },
335     {  33, 0x0066, QALT(Qt::Key_F),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
336     {  33, 0x0066, QALT(Qt::Key_F),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
337     {  33, 0x0066, QCTRL(QALT(Qt::Key_F)),      ModControl | ModAlt,             IsLetter, 0x0000 },
338     {  33, 0x0066, QCTRL(QALT(Qt::Key_F)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
339     {  33, 0x0066, QCTRL(QALT(Qt::Key_F)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
340     {  33, 0x0066, QCTRL(QALT(Qt::Key_F)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
341     {  34, 0x0067, Qt::Key_G,                   ModPlain,                        IsLetter, 0x0000 },
342     {  34, 0x0047, Qt::Key_G,                   ModShift,                        IsLetter, 0x0000 },
343     {  34, 0x0067, Qt::Key_G,                   ModAltGr,                        IsLetter, 0x0000 },
344     {  34, 0x0047, Qt::Key_G,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
345     {  34, 0x0067, QCTRL(Qt::Key_G),            ModControl,                      IsLetter, 0x0000 },
346     {  34, 0x0067, QCTRL(Qt::Key_G),            ModShift | ModControl,           IsLetter, 0x0000 },
347     {  34, 0x0067, QCTRL(Qt::Key_G),            ModAltGr | ModControl,           IsLetter, 0x0000 },
348     {  34, 0x0067, QCTRL(Qt::Key_G),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
349     {  34, 0x0067, QALT(Qt::Key_G),             ModAlt,                          IsLetter, 0x0000 },
350     {  34, 0x0067, QALT(Qt::Key_G),             ModShift | ModAlt,               IsLetter, 0x0000 },
351     {  34, 0x0067, QALT(Qt::Key_G),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
352     {  34, 0x0067, QALT(Qt::Key_G),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
353     {  34, 0x0067, QCTRL(QALT(Qt::Key_G)),      ModControl | ModAlt,             IsLetter, 0x0000 },
354     {  34, 0x0067, QCTRL(QALT(Qt::Key_G)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
355     {  34, 0x0067, QCTRL(QALT(Qt::Key_G)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
356     {  34, 0x0067, QCTRL(QALT(Qt::Key_G)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
357     {  35, 0x0068, Qt::Key_H,                   ModPlain,                        IsLetter, 0x0000 },
358     {  35, 0x0048, Qt::Key_H,                   ModShift,                        IsLetter, 0x0000 },
359     {  35, 0x0068, Qt::Key_H,                   ModAltGr,                        IsLetter, 0x0000 },
360     {  35, 0x0048, Qt::Key_H,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
361     {  35, 0x0068, QCTRL(Qt::Key_H),            ModControl,                      IsLetter, 0x0000 },
362     {  35, 0x0068, QCTRL(Qt::Key_H),            ModShift | ModControl,           IsLetter, 0x0000 },
363     {  35, 0x0068, QCTRL(Qt::Key_H),            ModAltGr | ModControl,           IsLetter, 0x0000 },
364     {  35, 0x0068, QCTRL(Qt::Key_H),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
365     {  35, 0x0068, QALT(Qt::Key_H),             ModAlt,                          IsLetter, 0x0000 },
366     {  35, 0x0068, QALT(Qt::Key_H),             ModShift | ModAlt,               IsLetter, 0x0000 },
367     {  35, 0x0068, QALT(Qt::Key_H),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
368     {  35, 0x0068, QALT(Qt::Key_H),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
369     {  35, 0x0068, QCTRL(QALT(Qt::Key_H)),      ModControl | ModAlt,             IsLetter, 0x0000 },
370     {  35, 0x0068, QCTRL(QALT(Qt::Key_H)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
371     {  35, 0x0068, QCTRL(QALT(Qt::Key_H)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
372     {  35, 0x0068, QCTRL(QALT(Qt::Key_H)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
373     {  36, 0x006a, Qt::Key_J,                   ModPlain,                        IsLetter, 0x0000 },
374     {  36, 0x004a, Qt::Key_J,                   ModShift,                        IsLetter, 0x0000 },
375     {  36, 0x006a, Qt::Key_J,                   ModAltGr,                        IsLetter, 0x0000 },
376     {  36, 0x004a, Qt::Key_J,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
377     {  36, 0x006a, QCTRL(Qt::Key_J),            ModControl,                      IsLetter, 0x0000 },
378     {  36, 0x006a, QCTRL(Qt::Key_J),            ModShift | ModControl,           IsLetter, 0x0000 },
379     {  36, 0x006a, QCTRL(Qt::Key_J),            ModAltGr | ModControl,           IsLetter, 0x0000 },
380     {  36, 0x006a, QCTRL(Qt::Key_J),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
381     {  36, 0x006a, QALT(Qt::Key_J),             ModAlt,                          IsLetter, 0x0000 },
382     {  36, 0x006a, QALT(Qt::Key_J),             ModShift | ModAlt,               IsLetter, 0x0000 },
383     {  36, 0x006a, QALT(Qt::Key_J),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
384     {  36, 0x006a, QALT(Qt::Key_J),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
385     {  36, 0x006a, QCTRL(QALT(Qt::Key_J)),      ModControl | ModAlt,             IsLetter, 0x0000 },
386     {  36, 0x006a, QCTRL(QALT(Qt::Key_J)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
387     {  36, 0x006a, QCTRL(QALT(Qt::Key_J)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
388     {  36, 0x006a, QCTRL(QALT(Qt::Key_J)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
389     {  37, 0x006b, Qt::Key_K,                   ModPlain,                        IsLetter, 0x0000 },
390     {  37, 0x004b, Qt::Key_K,                   ModShift,                        IsLetter, 0x0000 },
391     {  37, 0x006b, Qt::Key_K,                   ModAltGr,                        IsLetter, 0x0000 },
392     {  37, 0x004b, Qt::Key_K,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
393     {  37, 0x006b, QCTRL(Qt::Key_K),            ModControl,                      IsLetter, 0x0000 },
394     {  37, 0x006b, QCTRL(Qt::Key_K),            ModShift | ModControl,           IsLetter, 0x0000 },
395     {  37, 0x006b, QCTRL(Qt::Key_K),            ModAltGr | ModControl,           IsLetter, 0x0000 },
396     {  37, 0x006b, QCTRL(Qt::Key_K),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
397     {  37, 0x006b, QALT(Qt::Key_K),             ModAlt,                          IsLetter, 0x0000 },
398     {  37, 0x006b, QALT(Qt::Key_K),             ModShift | ModAlt,               IsLetter, 0x0000 },
399     {  37, 0x006b, QALT(Qt::Key_K),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
400     {  37, 0x006b, QALT(Qt::Key_K),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
401     {  37, 0x006b, QCTRL(QALT(Qt::Key_K)),      ModControl | ModAlt,             IsLetter, 0x0000 },
402     {  37, 0x006b, QCTRL(QALT(Qt::Key_K)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
403     {  37, 0x006b, QCTRL(QALT(Qt::Key_K)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
404     {  37, 0x006b, QCTRL(QALT(Qt::Key_K)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
405     {  38, 0x006c, Qt::Key_L,                   ModPlain,                        IsLetter, 0x0000 },
406     {  38, 0x004c, Qt::Key_L,                   ModShift,                        IsLetter, 0x0000 },
407     {  38, 0x006c, Qt::Key_L,                   ModAltGr,                        IsLetter, 0x0000 },
408     {  38, 0x004c, Qt::Key_L,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
409     {  38, 0x006c, QCTRL(Qt::Key_L),            ModControl,                      IsLetter, 0x0000 },
410     {  38, 0x006c, QCTRL(Qt::Key_L),            ModShift | ModControl,           IsLetter, 0x0000 },
411     {  38, 0x006c, QCTRL(Qt::Key_L),            ModAltGr | ModControl,           IsLetter, 0x0000 },
412     {  38, 0x006c, QCTRL(Qt::Key_L),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
413     {  38, 0x006c, QALT(Qt::Key_L),             ModAlt,                          IsLetter, 0x0000 },
414     {  38, 0x006c, QALT(Qt::Key_L),             ModShift | ModAlt,               IsLetter, 0x0000 },
415     {  38, 0x006c, QALT(Qt::Key_L),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
416     {  38, 0x006c, QALT(Qt::Key_L),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
417     {  38, 0x006c, QCTRL(QALT(Qt::Key_L)),      ModControl | ModAlt,             IsLetter, 0x0000 },
418     {  38, 0x006c, QCTRL(QALT(Qt::Key_L)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
419     {  38, 0x006c, QCTRL(QALT(Qt::Key_L)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
420     {  38, 0x006c, QCTRL(QALT(Qt::Key_L)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
421     {  39, 0x003b, Qt::Key_Semicolon,           ModPlain,                        NoFlags, 0x0000 },
422     {  39, 0x003a, Qt::Key_Colon,               ModShift,                        NoFlags, 0x0000 },
423     {  40, 0x0027, Qt::Key_Apostrophe,          ModPlain,                        NoFlags, 0x0000 },
424     {  40, 0x0022, Qt::Key_QuoteDbl,            ModShift,                        NoFlags, 0x0000 },
425     {  40, 0x0067, QCTRL(Qt::Key_G),            ModControl,                      NoFlags, 0x0000 },
426     {  41, 0x0060, Qt::Key_QuoteLeft,           ModPlain,                        NoFlags, 0x0000 },
427     {  41, 0x007e, Qt::Key_AsciiTilde,          ModShift,                        NoFlags, 0x0000 },
428     {  42, 0xffff, Qt::Key_Shift,               ModPlain,                        IsModifier, ModShift },
429     {  43, 0x005c, Qt::Key_Backslash,           ModPlain,                        NoFlags, 0x0000 },
430     {  43, 0x007c, Qt::Key_Bar,                 ModShift,                        NoFlags, 0x0000 },
431     {  43, 0x005c, QCTRL(Qt::Key_Backslash),    ModControl,                      NoFlags, 0x0000 },
432     {  44, 0x007a, Qt::Key_Z,                   ModPlain,                        IsLetter, 0x0000 },
433     {  44, 0x005a, Qt::Key_Z,                   ModShift,                        IsLetter, 0x0000 },
434     {  44, 0x007a, Qt::Key_Z,                   ModAltGr,                        IsLetter, 0x0000 },
435     {  44, 0x005a, Qt::Key_Z,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
436     {  44, 0x007a, QCTRL(Qt::Key_Z),            ModControl,                      IsLetter, 0x0000 },
437     {  44, 0x007a, QCTRL(Qt::Key_Z),            ModShift | ModControl,           IsLetter, 0x0000 },
438     {  44, 0x007a, QCTRL(Qt::Key_Z),            ModAltGr | ModControl,           IsLetter, 0x0000 },
439     {  44, 0x007a, QCTRL(Qt::Key_Z),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
440     {  44, 0x007a, QALT(Qt::Key_Z),             ModAlt,                          IsLetter, 0x0000 },
441     {  44, 0x007a, QALT(Qt::Key_Z),             ModShift | ModAlt,               IsLetter, 0x0000 },
442     {  44, 0x007a, QALT(Qt::Key_Z),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
443     {  44, 0x007a, QALT(Qt::Key_Z),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
444     {  44, 0x007a, QCTRL(QALT(Qt::Key_Z)),      ModControl | ModAlt,             IsLetter, 0x0000 },
445     {  44, 0x007a, QCTRL(QALT(Qt::Key_Z)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
446     {  44, 0x007a, QCTRL(QALT(Qt::Key_Z)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
447     {  44, 0x007a, QCTRL(QALT(Qt::Key_Z)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
448     {  45, 0x0078, Qt::Key_X,                   ModPlain,                        IsLetter, 0x0000 },
449     {  45, 0x0058, Qt::Key_X,                   ModShift,                        IsLetter, 0x0000 },
450     {  45, 0x0078, Qt::Key_X,                   ModAltGr,                        IsLetter, 0x0000 },
451     {  45, 0x0058, Qt::Key_X,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
452     {  45, 0x0078, QCTRL(Qt::Key_X),            ModControl,                      IsLetter, 0x0000 },
453     {  45, 0x0078, QCTRL(Qt::Key_X),            ModShift | ModControl,           IsLetter, 0x0000 },
454     {  45, 0x0078, QCTRL(Qt::Key_X),            ModAltGr | ModControl,           IsLetter, 0x0000 },
455     {  45, 0x0078, QCTRL(Qt::Key_X),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
456     {  45, 0x0078, QALT(Qt::Key_X),             ModAlt,                          IsLetter, 0x0000 },
457     {  45, 0x0078, QALT(Qt::Key_X),             ModShift | ModAlt,               IsLetter, 0x0000 },
458     {  45, 0x0078, QALT(Qt::Key_X),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
459     {  45, 0x0078, QALT(Qt::Key_X),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
460     {  45, 0x0078, QCTRL(QALT(Qt::Key_X)),      ModControl | ModAlt,             IsLetter, 0x0000 },
461     {  45, 0x0078, QCTRL(QALT(Qt::Key_X)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
462     {  45, 0x0078, QCTRL(QALT(Qt::Key_X)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
463     {  45, 0x0078, QCTRL(QALT(Qt::Key_X)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
464     {  46, 0x0063, Qt::Key_C,                   ModPlain,                        IsLetter, 0x0000 },
465     {  46, 0x0043, Qt::Key_C,                   ModShift,                        IsLetter, 0x0000 },
466     {  46, 0x0063, Qt::Key_C,                   ModAltGr,                        IsLetter, 0x0000 },
467     {  46, 0x0043, Qt::Key_C,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
468     {  46, 0x0063, QCTRL(Qt::Key_C),            ModControl,                      IsLetter, 0x0000 },
469     {  46, 0x0063, QCTRL(Qt::Key_C),            ModShift | ModControl,           IsLetter, 0x0000 },
470     {  46, 0x0063, QCTRL(Qt::Key_C),            ModAltGr | ModControl,           IsLetter, 0x0000 },
471     {  46, 0x0063, QCTRL(Qt::Key_C),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
472     {  46, 0x0063, QALT(Qt::Key_C),             ModAlt,                          IsLetter, 0x0000 },
473     {  46, 0x0063, QALT(Qt::Key_C),             ModShift | ModAlt,               IsLetter, 0x0000 },
474     {  46, 0x0063, QALT(Qt::Key_C),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
475     {  46, 0x0063, QALT(Qt::Key_C),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
476     {  46, 0x0063, QCTRL(QALT(Qt::Key_C)),      ModControl | ModAlt,             IsLetter, 0x0000 },
477     {  46, 0x0063, QCTRL(QALT(Qt::Key_C)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
478     {  46, 0x0063, QCTRL(QALT(Qt::Key_C)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
479     {  46, 0x0063, QCTRL(QALT(Qt::Key_C)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
480     {  47, 0x0076, Qt::Key_V,                   ModPlain,                        IsLetter, 0x0000 },
481     {  47, 0x0056, Qt::Key_V,                   ModShift,                        IsLetter, 0x0000 },
482     {  47, 0x0076, Qt::Key_V,                   ModAltGr,                        IsLetter, 0x0000 },
483     {  47, 0x0056, Qt::Key_V,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
484     {  47, 0x0076, QCTRL(Qt::Key_V),            ModControl,                      IsLetter, 0x0000 },
485     {  47, 0x0076, QCTRL(Qt::Key_V),            ModShift | ModControl,           IsLetter, 0x0000 },
486     {  47, 0x0076, QCTRL(Qt::Key_V),            ModAltGr | ModControl,           IsLetter, 0x0000 },
487     {  47, 0x0076, QCTRL(Qt::Key_V),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
488     {  47, 0x0076, QALT(Qt::Key_V),             ModAlt,                          IsLetter, 0x0000 },
489     {  47, 0x0076, QALT(Qt::Key_V),             ModShift | ModAlt,               IsLetter, 0x0000 },
490     {  47, 0x0076, QALT(Qt::Key_V),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
491     {  47, 0x0076, QALT(Qt::Key_V),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
492     {  47, 0x0076, QCTRL(QALT(Qt::Key_V)),      ModControl | ModAlt,             IsLetter, 0x0000 },
493     {  47, 0x0076, QCTRL(QALT(Qt::Key_V)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
494     {  47, 0x0076, QCTRL(QALT(Qt::Key_V)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
495     {  47, 0x0076, QCTRL(QALT(Qt::Key_V)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
496     {  48, 0x0062, Qt::Key_B,                   ModPlain,                        IsLetter, 0x0000 },
497     {  48, 0x0042, Qt::Key_B,                   ModShift,                        IsLetter, 0x0000 },
498     {  48, 0x0062, Qt::Key_B,                   ModAltGr,                        IsLetter, 0x0000 },
499     {  48, 0x0042, Qt::Key_B,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
500     {  48, 0x0062, QCTRL(Qt::Key_B),            ModControl,                      IsLetter, 0x0000 },
501     {  48, 0x0062, QCTRL(Qt::Key_B),            ModShift | ModControl,           IsLetter, 0x0000 },
502     {  48, 0x0062, QCTRL(Qt::Key_B),            ModAltGr | ModControl,           IsLetter, 0x0000 },
503     {  48, 0x0062, QCTRL(Qt::Key_B),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
504     {  48, 0x0062, QALT(Qt::Key_B),             ModAlt,                          IsLetter, 0x0000 },
505     {  48, 0x0062, QALT(Qt::Key_B),             ModShift | ModAlt,               IsLetter, 0x0000 },
506     {  48, 0x0062, QALT(Qt::Key_B),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
507     {  48, 0x0062, QALT(Qt::Key_B),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
508     {  48, 0x0062, QCTRL(QALT(Qt::Key_B)),      ModControl | ModAlt,             IsLetter, 0x0000 },
509     {  48, 0x0062, QCTRL(QALT(Qt::Key_B)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
510     {  48, 0x0062, QCTRL(QALT(Qt::Key_B)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
511     {  48, 0x0062, QCTRL(QALT(Qt::Key_B)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
512     {  49, 0x006e, Qt::Key_N,                   ModPlain,                        IsLetter, 0x0000 },
513     {  49, 0x004e, Qt::Key_N,                   ModShift,                        IsLetter, 0x0000 },
514     {  49, 0x006e, Qt::Key_N,                   ModAltGr,                        IsLetter, 0x0000 },
515     {  49, 0x004e, Qt::Key_N,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
516     {  49, 0x006e, QCTRL(Qt::Key_N),            ModControl,                      IsLetter, 0x0000 },
517     {  49, 0x006e, QCTRL(Qt::Key_N),            ModShift | ModControl,           IsLetter, 0x0000 },
518     {  49, 0x006e, QCTRL(Qt::Key_N),            ModAltGr | ModControl,           IsLetter, 0x0000 },
519     {  49, 0x006e, QCTRL(Qt::Key_N),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
520     {  49, 0x006e, QALT(Qt::Key_N),             ModAlt,                          IsLetter, 0x0000 },
521     {  49, 0x006e, QALT(Qt::Key_N),             ModShift | ModAlt,               IsLetter, 0x0000 },
522     {  49, 0x006e, QALT(Qt::Key_N),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
523     {  49, 0x006e, QALT(Qt::Key_N),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
524     {  49, 0x006e, QCTRL(QALT(Qt::Key_N)),      ModControl | ModAlt,             IsLetter, 0x0000 },
525     {  49, 0x006e, QCTRL(QALT(Qt::Key_N)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
526     {  49, 0x006e, QCTRL(QALT(Qt::Key_N)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
527     {  49, 0x006e, QCTRL(QALT(Qt::Key_N)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
528     {  50, 0x006d, Qt::Key_M,                   ModPlain,                        IsLetter, 0x0000 },
529     {  50, 0x004d, Qt::Key_M,                   ModShift,                        IsLetter, 0x0000 },
530     {  50, 0x006d, Qt::Key_M,                   ModAltGr,                        IsLetter, 0x0000 },
531     {  50, 0x004d, Qt::Key_M,                   ModShift | ModAltGr,             IsLetter, 0x0000 },
532     {  50, 0x006d, QCTRL(Qt::Key_M),            ModControl,                      IsLetter, 0x0000 },
533     {  50, 0x006d, QCTRL(Qt::Key_M),            ModShift | ModControl,           IsLetter, 0x0000 },
534     {  50, 0x006d, QCTRL(Qt::Key_M),            ModAltGr | ModControl,           IsLetter, 0x0000 },
535     {  50, 0x006d, QCTRL(Qt::Key_M),            ModShift | ModAltGr | ModControl, IsLetter, 0x0000 },
536     {  50, 0x006d, QALT(Qt::Key_M),             ModAlt,                          IsLetter, 0x0000 },
537     {  50, 0x006d, QALT(Qt::Key_M),             ModShift | ModAlt,               IsLetter, 0x0000 },
538     {  50, 0x006d, QALT(Qt::Key_M),             ModAltGr | ModAlt,               IsLetter, 0x0000 },
539     {  50, 0x006d, QALT(Qt::Key_M),             ModShift | ModAltGr | ModAlt,    IsLetter, 0x0000 },
540     {  50, 0x006d, QCTRL(QALT(Qt::Key_M)),      ModControl | ModAlt,             IsLetter, 0x0000 },
541     {  50, 0x006d, QCTRL(QALT(Qt::Key_M)),      ModShift | ModControl | ModAlt,  IsLetter, 0x0000 },
542     {  50, 0x006d, QCTRL(QALT(Qt::Key_M)),      ModAltGr | ModControl | ModAlt,  IsLetter, 0x0000 },
543     {  50, 0x006d, QCTRL(QALT(Qt::Key_M)),      ModShift | ModAltGr | ModControl | ModAlt, IsLetter, 0x0000 },
544     {  51, 0x002c, Qt::Key_Comma,               ModPlain,                        NoFlags, 0x0000 },
545     {  51, 0x003c, Qt::Key_Less,                ModShift,                        NoFlags, 0x0000 },
546     {  52, 0x002e, Qt::Key_Period,              ModPlain,                        NoFlags, 0x0000 },
547     {  52, 0x003e, Qt::Key_Greater,             ModShift,                        NoFlags, 0x0000 },
548     {  52, 0xffff, Qt::Key_Multi_key,           ModAltGr,                        NoFlags, 0x0000 },
549     {  53, 0x002f, Qt::Key_Slash,               ModPlain,                        NoFlags, 0x0000 },
550     {  53, 0x003f, Qt::Key_Question,            ModShift,                        NoFlags, 0x0000 },
551     {  53, 0xffff, Qt::Key_Backspace,           ModControl,                      NoFlags, 0x0000 },
552     {  54, 0xffff, Qt::Key_Shift,               ModPlain,                        IsModifier, ModShift },
553     {  55, 0x002a, QKEYPAD(Qt::Key_Asterisk),   ModPlain,                        NoFlags, 0x0000 },
554     {  56, 0xffff, Qt::Key_Alt,                 ModPlain,                        IsModifier, ModAlt },
555     {  57, 0x0020, Qt::Key_Space,               ModPlain,                        NoFlags, 0x0000 },
556     {  58, 0xffff, Qt::Key_CapsLock,            ModPlain,                        NoFlags, 0x0000 },
557     {  59, 0xffff, Qt::Key_F1,                  ModPlain,                        NoFlags, 0x0000 },
558     {  59, 0xffff, Qt::Key_F13,                 ModShift,                        NoFlags, 0x0000 },
559     {  59, 0xffff, Qt::Key_F25,                 ModControl,                      NoFlags, 0x0000 },
560     {  60, 0xffff, Qt::Key_F2,                  ModPlain,                        NoFlags, 0x0000 },
561     {  60, 0xffff, Qt::Key_F14,                 ModShift,                        NoFlags, 0x0000 },
562     {  60, 0xffff, Qt::Key_F26,                 ModControl,                      NoFlags, 0x0000 },
563     {  61, 0xffff, Qt::Key_F3,                  ModPlain,                        NoFlags, 0x0000 },
564     {  61, 0xffff, Qt::Key_F15,                 ModShift,                        NoFlags, 0x0000 },
565     {  61, 0xffff, Qt::Key_F27,                 ModControl,                      NoFlags, 0x0000 },
566     {  62, 0xffff, Qt::Key_F4,                  ModPlain,                        NoFlags, 0x0000 },
567     {  62, 0xffff, Qt::Key_F16,                 ModShift,                        NoFlags, 0x0000 },
568     {  62, 0xffff, Qt::Key_F28,                 ModControl,                      NoFlags, 0x0000 },
569     {  63, 0xffff, Qt::Key_F5,                  ModPlain,                        NoFlags, 0x0000 },
570     {  63, 0xffff, Qt::Key_F17,                 ModShift,                        NoFlags, 0x0000 },
571     {  63, 0xffff, Qt::Key_F29,                 ModControl,                      NoFlags, 0x0000 },
572     {  64, 0xffff, Qt::Key_F6,                  ModPlain,                        NoFlags, 0x0000 },
573     {  64, 0xffff, Qt::Key_F18,                 ModShift,                        NoFlags, 0x0000 },
574     {  64, 0xffff, Qt::Key_F30,                 ModControl,                      NoFlags, 0x0000 },
575     {  65, 0xffff, Qt::Key_F7,                  ModPlain,                        NoFlags, 0x0000 },
576     {  65, 0xffff, Qt::Key_F19,                 ModShift,                        NoFlags, 0x0000 },
577     {  65, 0xffff, Qt::Key_F31,                 ModControl,                      NoFlags, 0x0000 },
578     {  66, 0xffff, Qt::Key_F8,                  ModPlain,                        NoFlags, 0x0000 },
579     {  66, 0xffff, Qt::Key_F20,                 ModShift,                        NoFlags, 0x0000 },
580     {  66, 0xffff, Qt::Key_F32,                 ModControl,                      NoFlags, 0x0000 },
581     {  67, 0xffff, Qt::Key_F9,                  ModPlain,                        NoFlags, 0x0000 },
582     {  67, 0xffff, Qt::Key_F21,                 ModShift,                        NoFlags, 0x0000 },
583     {  67, 0xffff, Qt::Key_F33,                 ModControl,                      NoFlags, 0x0000 },
584     {  68, 0xffff, Qt::Key_F10,                 ModPlain,                        NoFlags, 0x0000 },
585     {  68, 0xffff, Qt::Key_F22,                 ModShift,                        NoFlags, 0x0000 },
586     {  68, 0xffff, Qt::Key_F34,                 ModControl,                      NoFlags, 0x0000 },
587     {  69, 0xffff, Qt::Key_NumLock,             ModPlain,                        NoFlags, 0x0000 },
588     {  70, 0xffff, Qt::Key_ScrollLock,          ModPlain,                        NoFlags, 0x0000 },
589     {  70, 0xffff, Qt::Key_ScrollLock,          ModAlt,                          NoFlags, 0x0000 },
590     {  71, 0x0037, QKEYPAD(Qt::Key_7),          ModPlain,                        NoFlags, 0x0000 },
591     {  72, 0x0038, QKEYPAD(Qt::Key_8),          ModPlain,                        NoFlags, 0x0000 },
592     {  73, 0x0039, QKEYPAD(Qt::Key_9),          ModPlain,                        NoFlags, 0x0000 },
593     {  74, 0x002d, QKEYPAD(Qt::Key_Minus),      ModPlain,                        NoFlags, 0x0000 },
594     {  75, 0x0034, QKEYPAD(Qt::Key_4),          ModPlain,                        NoFlags, 0x0000 },
595     {  76, 0x0035, QKEYPAD(Qt::Key_5),          ModPlain,                        NoFlags, 0x0000 },
596     {  77, 0x0036, QKEYPAD(Qt::Key_6),          ModPlain,                        NoFlags, 0x0000 },
597     {  78, 0x002b, QKEYPAD(Qt::Key_Plus),       ModPlain,                        NoFlags, 0x0000 },
598     {  79, 0x0031, QKEYPAD(Qt::Key_1),          ModPlain,                        NoFlags, 0x0000 },
599     {  80, 0x0032, QKEYPAD(Qt::Key_2),          ModPlain,                        NoFlags, 0x0000 },
600     {  81, 0x0033, QKEYPAD(Qt::Key_3),          ModPlain,                        NoFlags, 0x0000 },
601     {  82, 0x0030, QKEYPAD(Qt::Key_0),          ModPlain,                        NoFlags, 0x0000 },
602     {  83, 0x002e, QKEYPAD(Qt::Key_Period),     ModPlain,                        NoFlags, 0x0000 },
603     {  86, 0x003c, Qt::Key_Less,                ModPlain,                        NoFlags, 0x0000 },
604     {  86, 0x003e, Qt::Key_Greater,             ModShift,                        NoFlags, 0x0000 },
605     {  86, 0x007c, Qt::Key_Bar,                 ModAltGr,                        NoFlags, 0x0000 },
606     {  87, 0xffff, Qt::Key_F11,                 ModPlain,                        NoFlags, 0x0000 },
607     {  87, 0xffff, Qt::Key_F23,                 ModShift,                        NoFlags, 0x0000 },
608     {  87, 0xffff, Qt::Key_F35,                 ModControl,                      NoFlags, 0x0000 },
609     {  88, 0xffff, Qt::Key_F12,                 ModPlain,                        NoFlags, 0x0000 },
610     {  88, 0xffff, Qt::Key_F24,                 ModShift,                        NoFlags, 0x0000 },
611     {  89, 0xffff, QKEYPAD(Qt::Key_Enter),      ModPlain,                        NoFlags, 0x0000 },
612     {  90, 0xffff, Qt::Key_Control,             ModPlain,                        IsModifier, ModControl },
613     {  91, 0x002f, QKEYPAD(Qt::Key_Slash),      ModPlain,                        NoFlags, 0x0000 },
614     {  92, 0x005c, QCTRL(Qt::Key_Backslash),    ModPlain,                        NoFlags, 0x0000 },
615     {  93, 0xffff, Qt::Key_AltGr,               ModPlain,                        IsModifier, ModAltGr },
616     {  94, 0xffff, Qt::Key_Home,                ModPlain,                        NoFlags, 0x0000 },
617     {  95, 0xffff, Qt::Key_Up,                  ModPlain,                        NoFlags, 0x0000 },
618     {  96, 0xffff, Qt::Key_PageUp,              ModPlain,                        NoFlags, 0x0000 },
619     {  97, 0xffff, Qt::Key_Left,                ModPlain,                        NoFlags, 0x0000 },
620     {  98, 0xffff, Qt::Key_Right,               ModPlain,                        NoFlags, 0x0000 },
621     {  99, 0xffff, Qt::Key_End,                 ModPlain,                        NoFlags, 0x0000 },
622     { 100, 0xffff, Qt::Key_Down,                ModPlain,                        NoFlags, 0x0000 },
623     { 101, 0xffff, Qt::Key_PageDown,            ModPlain,                        NoFlags, 0x0000 },
624     { 102, 0xffff, Qt::Key_Insert,              ModPlain,                        NoFlags, 0x0000 },
625     { 103, 0xffff, Qt::Key_Delete,              ModPlain,                        NoFlags, 0x0000 },
626 };
627 
628 #endif // QBSDKEYBOARD_DEFAULTMAP_P_H
629