1 package com.atlassian.selenium;
2
3 import com.atlassian.selenium.keyboard.KeyEvent;
4 import com.atlassian.selenium.keyboard.KeyEventSequence;
5 import com.atlassian.webtest.ui.keys.KeyEventType;
6 import com.google.gson.Gson;
7 import com.google.gson.GsonBuilder;
8 import com.google.gson.reflect.TypeToken;
9 import junit.framework.TestCase;
10
11 import java.io.BufferedReader;
12 import java.io.IOException;
13 import java.io.InputStreamReader;
14 import java.lang.reflect.Type;
15 import java.util.ArrayList;
16 import java.util.HashMap;
17 import java.util.HashSet;
18 import java.util.List;
19 import java.util.Map;
20 import java.util.Set;
21 import java.util.TreeMap;
22
23
24
25
26
27 public class TestGenerateJSonKeyEventsForCharacters extends TestCase
28 {
29
30 Set<Browser> allBrowsers = new HashSet<Browser>();
31 Set<Browser> firefoxOpera = new HashSet<Browser>();
32 Set<Browser> chromeIESafari = new HashSet<Browser>();
33 Set<Browser> fireFoxOnly = new HashSet<Browser>();
34
35 final KeyEvent shiftKeyDown = new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_SHIFT,allBrowsers,true,false,false,false,true,false);
36 final KeyEvent shiftKeyUp = new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_SHIFT,allBrowsers,false,false,false,false,true,false);
37
38 public void testCreateObjectsAndJSONify() throws Exception {
39 Map<String, KeyEventSequence> cksl = new TreeMap<String, KeyEventSequence>();
40 allBrowsers.add(Browser.CHROME);
41 allBrowsers.add(Browser.FIREFOX);
42 allBrowsers.add(Browser.IE);
43 allBrowsers.add(Browser.OPERA);
44 allBrowsers.add(Browser.SAFARI);
45 allBrowsers.add(Browser.UNKNOWN);
46 firefoxOpera.add(Browser.FIREFOX);
47 firefoxOpera.add(Browser.OPERA);
48 chromeIESafari.add(Browser.CHROME);
49 chromeIESafari.add(Browser.IE);
50 chromeIESafari.add(Browser.SAFARI);
51 fireFoxOnly.add(Browser.FIREFOX);
52 for (Character c = 'a'; c <= 'z'; c++ )
53 {
54 List<KeyEvent> ke = new ArrayList<KeyEvent>();
55 ke.add(new KeyEvent(KeyEventType.KEYDOWN,c.toString().toUpperCase().charAt(0),allBrowsers,false,false,false,false,true,false));
56 ke.add(new KeyEvent(KeyEventType.KEYPRESS,c,allBrowsers,false,false,false,false,false,true));
57 ke.add(new KeyEvent(KeyEventType.KEYUP,c.toString().toUpperCase().charAt(0),allBrowsers,false,false,false,false,true,false));
58 KeyEventSequence cks = new KeyEventSequence(c.toString(),ke);
59 cksl.put(cks.getIdentifier(),cks);
60 }
61 for (Character c = 'A'; c <= 'Z'; c++ )
62 {
63 List<KeyEvent> ke = new ArrayList<KeyEvent>();
64 ke.add(shiftKeyDown);
65 ke.add(new KeyEvent(KeyEventType.KEYDOWN,c.toString().toUpperCase().charAt(0),allBrowsers,true,false,false,false,true,false));
66 ke.add(new KeyEvent(KeyEventType.KEYPRESS,c,allBrowsers,true,false,false,false,false,true));
67 ke.add(new KeyEvent(KeyEventType.KEYUP,c.toString().toUpperCase().charAt(0),allBrowsers,true,false,false,false,true,false));
68 ke.add(shiftKeyUp);
69 KeyEventSequence cks = new KeyEventSequence(c.toString(),ke);
70 cksl.put(cks.getIdentifier(),cks);
71 }
72 for (Character c = '0'; c <= '9'; c++ )
73 {
74 List<KeyEvent> ke = new ArrayList<KeyEvent>();
75 ke.add(new KeyEvent(KeyEventType.KEYDOWN,c,allBrowsers,false,false,false,false,true,false));
76 ke.add(new KeyEvent(KeyEventType.KEYPRESS,c,allBrowsers,false,false,false,false,false,true));
77 ke.add(new KeyEvent(KeyEventType.KEYUP,c,allBrowsers,false,false,false,false,true,false));
78 KeyEventSequence cks = new KeyEventSequence(c.toString(),ke);
79 cksl.put(cks.getIdentifier(),cks);
80 }
81
82 List<KeyEvent> ke = new ArrayList<KeyEvent>();
83 ke.add(shiftKeyDown);
84 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'1',allBrowsers,true,false,false,false,true,false));
85 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'!',allBrowsers,true,false,false,false,false,true));
86 ke.add(new KeyEvent(KeyEventType.KEYUP,'1',allBrowsers,true,false,false,false,true,false));
87 ke.add(shiftKeyUp);
88 KeyEventSequence cks = new KeyEventSequence("!",ke);
89 cksl.put(cks.getIdentifier(),cks);
90
91 ke = new ArrayList<KeyEvent>();
92 ke.add(shiftKeyDown);
93 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'2',allBrowsers,true,false,false,false,true,false));
94 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'@',allBrowsers,true,false,false,false,false,true));
95 ke.add(new KeyEvent(KeyEventType.KEYUP,'2',allBrowsers,true,false,false,false,true,false));
96 ke.add(shiftKeyUp);
97 cks = new KeyEventSequence("@",ke);
98 cksl.put(cks.getIdentifier(),cks);
99
100 ke = new ArrayList<KeyEvent>();
101 ke.add(shiftKeyDown);
102 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'3',allBrowsers,true,false,false,false,true,false));
103 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'#',allBrowsers,true,false,false,false,false,true));
104 ke.add(new KeyEvent(KeyEventType.KEYUP,'3',allBrowsers,true,false,false,false,true,false));
105 ke.add(shiftKeyUp);
106 cks = new KeyEventSequence("#",ke);
107 cksl.put(cks.getIdentifier(),cks);
108
109 ke = new ArrayList<KeyEvent>();
110 ke.add(shiftKeyDown);
111 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'4',allBrowsers,true,false,false,false,true,false));
112 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'$',allBrowsers,true,false,false,false,false,true));
113 ke.add(new KeyEvent(KeyEventType.KEYUP,'4',allBrowsers,true,false,false,false,true,false));
114 ke.add(shiftKeyUp);
115 cks = new KeyEventSequence("$",ke);
116 cksl.put(cks.getIdentifier(),cks);
117
118 ke = new ArrayList<KeyEvent>();
119 ke.add(shiftKeyDown);
120 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'5',allBrowsers,true,false,false,false,true,false));
121 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'%',allBrowsers,true,false,false,false,false,true));
122 ke.add(new KeyEvent(KeyEventType.KEYUP,'5',allBrowsers,true,false,false,false,true,false));
123 ke.add(shiftKeyUp);
124 cks = new KeyEventSequence("%",ke);
125 cksl.put(cks.getIdentifier(),cks);
126
127 ke = new ArrayList<KeyEvent>();
128 ke.add(shiftKeyDown);
129 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'6',allBrowsers,true,false,false,false,true,false));
130 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'^',allBrowsers,true,false,false,false,false,true));
131 ke.add(new KeyEvent(KeyEventType.KEYUP,'6',allBrowsers,true,false,false,false,true,false));
132 ke.add(shiftKeyUp);
133 cks = new KeyEventSequence("^",ke);
134 cksl.put(cks.getIdentifier(),cks);
135
136 ke = new ArrayList<KeyEvent>();
137 ke.add(shiftKeyDown);
138 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'7',allBrowsers,true,false,false,false,true,false));
139 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'&',allBrowsers,true,false,false,false,false,true));
140 ke.add(new KeyEvent(KeyEventType.KEYUP,'7',allBrowsers,true,false,false,false,true,false));
141 ke.add(shiftKeyUp);
142 cks = new KeyEventSequence("&",ke);
143 cksl.put(cks.getIdentifier(),cks);
144
145 ke = new ArrayList<KeyEvent>();
146 ke.add(shiftKeyDown);
147 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'8',allBrowsers,true,false,false,false,true,false));
148 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'*',allBrowsers,true,false,false,false,false,true));
149 ke.add(new KeyEvent(KeyEventType.KEYUP,'8',allBrowsers,true,false,false,false,true,false));
150 ke.add(shiftKeyUp);
151 cks = new KeyEventSequence("*",ke);
152 cksl.put(cks.getIdentifier(),cks);
153
154 ke = new ArrayList<KeyEvent>();
155 ke.add(shiftKeyDown);
156 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'9',allBrowsers,true,false,false,false,true,false));
157 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'(',allBrowsers,true,false,false,false,false,true));
158 ke.add(new KeyEvent(KeyEventType.KEYUP,'9',allBrowsers,true,false,false,false,true,false));
159 ke.add(shiftKeyUp);
160 cks = new KeyEventSequence("(",ke);
161 cksl.put(cks.getIdentifier(),cks);
162
163 ke = new ArrayList<KeyEvent>();
164 ke.add(shiftKeyDown);
165 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'0',allBrowsers,true,false,false,false,true,false));
166 ke.add(new KeyEvent(KeyEventType.KEYPRESS,')',allBrowsers,true,false,false,false,false,true));
167 ke.add(new KeyEvent(KeyEventType.KEYUP,'0',allBrowsers,true,false,false,false,true,false));
168 ke.add(shiftKeyUp);
169 cks = new KeyEventSequence(")",ke);
170 cksl.put(cks.getIdentifier(),cks);
171
172 ke = new ArrayList<KeyEvent>();
173 ke.add(new KeyEvent(KeyEventType.KEYDOWN,' ',allBrowsers,false,false,false,false,true,false));
174 ke.add(new KeyEvent(KeyEventType.KEYPRESS,' ',allBrowsers,false,false,false,false,false,true));
175 ke.add(new KeyEvent(KeyEventType.KEYUP,' ',allBrowsers,false,false,false,false,true,false));
176 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_SPACE),ke);
177 cksl.put(cks.getIdentifier(),cks);
178
179 ke = new ArrayList<KeyEvent>();
180 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_ENTER,allBrowsers,false,false,false,false,true,false));
181 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_ENTER,allBrowsers,false,false,false,false,true,false));
182 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_ENTER,allBrowsers,false,false,false,false,true,false));
183 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_ENTER),ke);
184 cksl.put(cks.getIdentifier(),cks);
185
186
187 ke = new ArrayList<KeyEvent>();
188 ke.add(new KeyEvent(KeyEventType.KEYDOWN,13,allBrowsers,false,false,false,false,true,false));
189 ke.add(new KeyEvent(KeyEventType.KEYPRESS,13,allBrowsers,false,false,false,false,true,false));
190 ke.add(new KeyEvent(KeyEventType.KEYUP,13,allBrowsers,false,false,false,false,true,false));
191 cks = new KeyEventSequence(String.format("0x%x",13),ke);
192 cksl.put(cks.getIdentifier(),cks);
193
194
195 ke = new ArrayList<KeyEvent>();
196 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_TAB,allBrowsers,false,false,false,false,true,false));
197 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_TAB,allBrowsers,false,false,false,false,true,false));
198 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_TAB),ke);
199 cksl.put(cks.getIdentifier(),cks);
200
201 ke = new ArrayList<KeyEvent>();
202 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_ESCAPE,allBrowsers,false,false,false,false,true,false));
203 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_ESCAPE,fireFoxOnly,false,false,false,false,true,false));
204 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_ESCAPE,allBrowsers,false,false,false,false,true,false));
205 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_ESCAPE),ke);
206 cksl.put(cks.getIdentifier(),cks);
207
208 ke = new ArrayList<KeyEvent>();
209 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_BACK_SPACE,allBrowsers,false,false,false,false,true,false));
210 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_BACK_SPACE,fireFoxOnly,false,false,false,false,true,false));
211 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_BACK_SPACE,allBrowsers,false,false,false,false,true,false));
212 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_BACK_SPACE),ke);
213 cksl.put(cks.getIdentifier(),cks);
214
215 createSymbols(cksl);
216 createSpecialKeys(cksl);
217 createFNKeys(cksl);
218 createModifierKeys(cksl);
219
220
221 Gson gson = new GsonBuilder().setPrettyPrinting().create();
222
223
224
225
226
227
228
229 String characterArrayJSON = readFile("charactersKeySequences.json");
230 Type collectionType = new TypeToken<HashMap<String, KeyEventSequence>>(){}.getType();
231 Map cksMap = gson.fromJson(characterArrayJSON,collectionType);
232
233
234
235 }
236
237 private void createModifierKeys(Map<String, KeyEventSequence> cksl)
238 {
239 List<KeyEvent> ke = new ArrayList<KeyEvent>();
240 ke.add(shiftKeyDown);
241 ke.add(shiftKeyUp);
242 KeyEventSequence cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_SHIFT),ke);
243 cksl.put(cks.getIdentifier(),cks);
244
245 ke = new ArrayList<KeyEvent>();
246 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_ALT,allBrowsers,false,true,false,false,true,false));
247 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_ALT,allBrowsers,false,false,false,false,true,false));
248 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_ALT),ke);
249 cksl.put(cks.getIdentifier(),cks);
250
251 ke = new ArrayList<KeyEvent>();
252 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_CONTROL,allBrowsers,false,false,true,false,true,false));
253 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_CONTROL,allBrowsers,false,false,false,false,true,false));
254 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_CONTROL),ke);
255 cksl.put(cks.getIdentifier(),cks);
256
257 ke = new ArrayList<KeyEvent>();
258 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_META,allBrowsers,false,false,false,true,true,false));
259 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_META,allBrowsers,false,false,false,false,true,false));
260 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_META),ke);
261 cksl.put(cks.getIdentifier(),cks);
262
263 }
264
265 private void createFNKeys(Map<String, KeyEventSequence> cksl)
266 {
267 Set<Browser> chromeOnly = new HashSet<Browser>();
268 chromeOnly.add(Browser.CHROME);
269
270 List<KeyEvent> ke = new ArrayList<KeyEvent>();
271 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F1,allBrowsers,false,false,false,false,true,false));
272 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F1,fireFoxOnly,false,false,false,false,true,false));
273 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63236,chromeOnly,false,false,false,false,true,true));
274 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F1,allBrowsers,false,false,false,false,true,false));
275 KeyEventSequence cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F1),ke);
276 cksl.put(cks.getIdentifier(),cks);
277
278 ke = new ArrayList<KeyEvent>();
279 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F2,allBrowsers,false,false,false,false,true,false));
280 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F2,fireFoxOnly,false,false,false,false,true,false));
281 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63237,chromeOnly,false,false,false,false,true,true));
282 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F2,allBrowsers,false,false,false,false,true,false));
283 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F2),ke);
284 cksl.put(cks.getIdentifier(),cks);
285
286 ke = new ArrayList<KeyEvent>();
287 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F3,allBrowsers,false,false,false,false,true,false));
288 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F3,fireFoxOnly,false,false,false,false,true,false));
289 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63238,chromeOnly,false,false,false,false,true,true));
290 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F3,allBrowsers,false,false,false,false,true,false));
291 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F3),ke);
292 cksl.put(cks.getIdentifier(),cks);
293
294 ke = new ArrayList<KeyEvent>();
295 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F4,allBrowsers,false,false,false,false,true,false));
296 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F4,fireFoxOnly,false,false,false,false,true,false));
297 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63239,chromeOnly,false,false,false,false,true,true));
298 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F4,allBrowsers,false,false,false,false,true,false));
299 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F4),ke);
300 cksl.put(cks.getIdentifier(),cks);
301
302 ke = new ArrayList<KeyEvent>();
303 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F5,allBrowsers,false,false,false,false,true,false));
304 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F5,fireFoxOnly,false,false,false,false,true,false));
305 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63240,chromeOnly,false,false,false,false,true,true));
306 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F5,allBrowsers,false,false,false,false,true,false));
307 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F5),ke);
308 cksl.put(cks.getIdentifier(),cks);
309
310 ke = new ArrayList<KeyEvent>();
311 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F6,allBrowsers,false,false,false,false,true,false));
312 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F6,fireFoxOnly,false,false,false,false,true,false));
313 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63241,chromeOnly,false,false,false,false,true,true));
314 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F6,allBrowsers,false,false,false,false,true,false));
315 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F6),ke);
316 cksl.put(cks.getIdentifier(),cks);
317
318 ke = new ArrayList<KeyEvent>();
319 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F7,allBrowsers,false,false,false,false,true,false));
320 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F7,fireFoxOnly,false,false,false,false,true,false));
321 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63242,chromeOnly,false,false,false,false,true,true));
322 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F7,allBrowsers,false,false,false,false,true,false));
323 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F7),ke);
324 cksl.put(cks.getIdentifier(),cks);
325
326 ke = new ArrayList<KeyEvent>();
327 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F8,allBrowsers,false,false,false,false,true,false));
328 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F8,fireFoxOnly,false,false,false,false,true,false));
329 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63243,chromeOnly,false,false,false,false,true,true));
330 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F8,allBrowsers,false,false,false,false,true,false));
331 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F8),ke);
332 cksl.put(cks.getIdentifier(),cks);
333
334 ke = new ArrayList<KeyEvent>();
335 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F9,allBrowsers,false,false,false,false,true,false));
336 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F9,fireFoxOnly,false,false,false,false,true,false));
337 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63244,chromeOnly,false,false,false,false,true,true));
338 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F9,allBrowsers,false,false,false,false,true,false));
339 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F9),ke);
340 cksl.put(cks.getIdentifier(),cks);
341
342 ke = new ArrayList<KeyEvent>();
343 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F10,allBrowsers,false,false,false,false,true,false));
344 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F10,fireFoxOnly,false,false,false,false,true,false));
345 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63245,chromeOnly,false,false,false,false,true,true));
346 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F10,allBrowsers,false,false,false,false,true,false));
347 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F10),ke);
348 cksl.put(cks.getIdentifier(),cks);
349
350 ke = new ArrayList<KeyEvent>();
351 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F11,allBrowsers,false,false,false,false,true,false));
352 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F11,fireFoxOnly,false,false,false,false,true,false));
353 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63246,chromeOnly,false,false,false,false,true,true));
354 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F11,allBrowsers,false,false,false,false,true,false));
355 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F11),ke);
356 cksl.put(cks.getIdentifier(),cks);
357
358 ke = new ArrayList<KeyEvent>();
359 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F12,allBrowsers,false,false,false,false,true,false));
360 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F12,fireFoxOnly,false,false,false,false,true,false));
361 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63247,chromeOnly,false,false,false,false,true,true));
362 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F12,allBrowsers,false,false,false,false,true,false));
363 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F12),ke);
364 cksl.put(cks.getIdentifier(),cks);
365
366 ke = new ArrayList<KeyEvent>();
367 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F13,allBrowsers,false,false,false,false,true,false));
368 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F13,fireFoxOnly,false,false,false,false,true,false));
369 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63248,chromeOnly,false,false,false,false,true,true));
370 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F13,allBrowsers,false,false,false,false,true,false));
371 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F13),ke);
372 cksl.put(cks.getIdentifier(),cks);
373
374 ke = new ArrayList<KeyEvent>();
375 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F14,allBrowsers,false,false,false,false,true,false));
376 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F14,fireFoxOnly,false,false,false,false,true,false));
377 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63249,chromeOnly,false,false,false,false,true,true));
378 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F14,allBrowsers,false,false,false,false,true,false));
379 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F14),ke);
380 cksl.put(cks.getIdentifier(),cks);
381
382 ke = new ArrayList<KeyEvent>();
383 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F15,allBrowsers,false,false,false,false,true,false));
384 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F15,fireFoxOnly,false,false,false,false,true,false));
385 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63250,chromeOnly,false,false,false,false,true,true));
386 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F15,allBrowsers,false,false,false,false,true,false));
387 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F15),ke);
388 cksl.put(cks.getIdentifier(),cks);
389
390 ke = new ArrayList<KeyEvent>();
391 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F16,allBrowsers,false,false,false,false,true,false));
392 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F16,fireFoxOnly,false,false,false,false,true,false));
393 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63251,chromeOnly,false,false,false,false,true,true));
394 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F16,allBrowsers,false,false,false,false,true,false));
395 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F16),ke);
396 cksl.put(cks.getIdentifier(),cks);
397
398 ke = new ArrayList<KeyEvent>();
399 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F17,allBrowsers,false,false,false,false,true,false));
400 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F17,fireFoxOnly,false,false,false,false,true,false));
401 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63252,chromeOnly,false,false,false,false,true,true));
402 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F17,allBrowsers,false,false,false,false,true,false));
403 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F17),ke);
404 cksl.put(cks.getIdentifier(),cks);
405
406 ke = new ArrayList<KeyEvent>();
407 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F18,allBrowsers,false,false,false,false,true,false));
408 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F18,fireFoxOnly,false,false,false,false,true,false));
409 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63253,chromeOnly,false,false,false,false,true,true));
410 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F18,allBrowsers,false,false,false,false,true,false));
411 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F18),ke);
412 cksl.put(cks.getIdentifier(),cks);
413
414 ke = new ArrayList<KeyEvent>();
415 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_F19,allBrowsers,false,false,false,false,true,false));
416 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_F19,fireFoxOnly,false,false,false,false,true,false));
417 ke.add(new KeyEvent(KeyEventType.KEYPRESS,63254,chromeOnly,false,false,false,false,true,true));
418 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_F19,allBrowsers,false,false,false,false,true,false));
419 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_F19),ke);
420 cksl.put(cks.getIdentifier(),cks);
421
422 }
423
424 private void createSpecialKeys(Map<String, KeyEventSequence> cksl)
425 {
426 List<KeyEvent> ke = new ArrayList<KeyEvent>();
427 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_LEFT,allBrowsers,false,false,false,false,true,false));
428 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_LEFT,fireFoxOnly,false,false,false,false,true,false));
429 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_LEFT,allBrowsers,false,false,false,false,true,false));
430 KeyEventSequence cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_LEFT),ke);
431 cksl.put(cks.getIdentifier(),cks);
432
433 ke = new ArrayList<KeyEvent>();
434 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_RIGHT,allBrowsers,false,false,false,false,true,false));
435 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_RIGHT,fireFoxOnly,false,false,false,false,true,false));
436 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_RIGHT,allBrowsers,false,false,false,false,true,false));
437 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_RIGHT),ke);
438 cksl.put(cks.getIdentifier(),cks);
439
440 ke = new ArrayList<KeyEvent>();
441 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_UP,allBrowsers,false,false,false,false,true,false));
442 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_UP,fireFoxOnly,false,false,false,false,true,false));
443 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_UP,allBrowsers,false,false,false,false,true,false));
444 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_UP),ke);
445 cksl.put(cks.getIdentifier(),cks);
446
447 ke = new ArrayList<KeyEvent>();
448 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_DOWN,allBrowsers,false,false,false,false,true,false));
449 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_DOWN,fireFoxOnly,false,false,false,false,true,false));
450 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_DOWN,allBrowsers,false,false,false,false,true,false));
451 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_DOWN),ke);
452 cksl.put(cks.getIdentifier(),cks);
453
454
455 ke = new ArrayList<KeyEvent>();
456 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_INSERT,allBrowsers,false,false,false,false,true,false));
457 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_INSERT,fireFoxOnly,false,false,false,false,true,false));
458 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_INSERT,allBrowsers,false,false,false,false,true,false));
459 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_INSERT),ke);
460 cksl.put(cks.getIdentifier(),cks);
461
462 ke = new ArrayList<KeyEvent>();
463 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_DELETE,allBrowsers,false,false,false,false,true,false));
464 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_DELETE,fireFoxOnly,false,false,false,false,true,false));
465 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_DELETE,allBrowsers,false,false,false,false,true,false));
466 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_DELETE),ke);
467 cksl.put(cks.getIdentifier(),cks);
468
469 ke = new ArrayList<KeyEvent>();
470 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_HOME,allBrowsers,false,false,false,false,true,false));
471 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_HOME,fireFoxOnly,false,false,false,false,true,false));
472 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_HOME,allBrowsers,false,false,false,false,true,false));
473 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_HOME),ke);
474 cksl.put(cks.getIdentifier(),cks);
475
476 ke = new ArrayList<KeyEvent>();
477 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_END,allBrowsers,false,false,false,false,true,false));
478 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_END,fireFoxOnly,false,false,false,false,true,false));
479 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_END,allBrowsers,false,false,false,false,true,false));
480 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_END),ke);
481 cksl.put(cks.getIdentifier(),cks);
482
483 ke = new ArrayList<KeyEvent>();
484 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_PAGE_UP,allBrowsers,false,false,false,false,true,false));
485 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_PAGE_UP,fireFoxOnly,false,false,false,false,true,false));
486 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_PAGE_UP,allBrowsers,false,false,false,false,true,false));
487 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_PAGE_UP),ke);
488 cksl.put(cks.getIdentifier(),cks);
489
490 ke = new ArrayList<KeyEvent>();
491 ke.add(new KeyEvent(KeyEventType.KEYDOWN,java.awt.event.KeyEvent.VK_PAGE_DOWN,allBrowsers,false,false,false,false,true,false));
492 ke.add(new KeyEvent(KeyEventType.KEYPRESS,java.awt.event.KeyEvent.VK_PAGE_DOWN,fireFoxOnly,false,false,false,false,true,false));
493 ke.add(new KeyEvent(KeyEventType.KEYUP,java.awt.event.KeyEvent.VK_PAGE_DOWN,allBrowsers,false,false,false,false,true,false));
494 cks = new KeyEventSequence(String.format("0x%x",java.awt.event.KeyEvent.VK_PAGE_DOWN),ke);
495 cksl.put(cks.getIdentifier(),cks);
496
497 }
498
499 private void createSymbols(Map<String, KeyEventSequence> cksl)
500 {
501 List<KeyEvent> ke = new ArrayList<KeyEvent>();
502 ke.add(new KeyEvent(KeyEventType.KEYDOWN,';',firefoxOpera,false,false,false,false,true,false));
503 ke.add(new KeyEvent(KeyEventType.KEYDOWN,186,chromeIESafari,false,false,false,false,true,false));
504 ke.add(new KeyEvent(KeyEventType.KEYPRESS,';',allBrowsers,false,false,false,false,false,true));
505 ke.add(new KeyEvent(KeyEventType.KEYUP,';',firefoxOpera,false,false,false,false,true,false));
506 ke.add(new KeyEvent(KeyEventType.KEYUP,186,chromeIESafari,false,false,false,false,true,false));
507 KeyEventSequence cks = new KeyEventSequence(";",ke);
508 cksl.put(cks.getIdentifier(),cks);
509
510
511 ke = new ArrayList<KeyEvent>();
512 ke.add(shiftKeyDown);
513 ke.add(new KeyEvent(KeyEventType.KEYDOWN,';',firefoxOpera,true,false,false,false,true,false));
514 ke.add(new KeyEvent(KeyEventType.KEYDOWN,186,chromeIESafari,true,false,false,false,true,false));
515 ke.add(new KeyEvent(KeyEventType.KEYPRESS,':',allBrowsers,true,false,false,false,false,true));
516 ke.add(new KeyEvent(KeyEventType.KEYUP,';',firefoxOpera,true,false,false,false,true,false));
517 ke.add(new KeyEvent(KeyEventType.KEYUP,186,chromeIESafari,true,false,false,false,true,false));
518 ke.add(shiftKeyUp);
519 cks = new KeyEventSequence(":",ke);
520 cksl.put(cks.getIdentifier(),cks);
521
522 ke = new ArrayList<KeyEvent>();
523 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'=',firefoxOpera,false,false,false,false,true,false));
524 ke.add(new KeyEvent(KeyEventType.KEYDOWN,187,chromeIESafari,false,false,false,false,true,false));
525 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'=',allBrowsers,false,false,false,false,false,true));
526 ke.add(new KeyEvent(KeyEventType.KEYUP,'=',firefoxOpera,false,false,false,false,true,false));
527 ke.add(new KeyEvent(KeyEventType.KEYUP,187,chromeIESafari,false,false,false,false,true,false));
528 cks = new KeyEventSequence("=",ke);
529 cksl.put(cks.getIdentifier(),cks);
530
531
532 ke = new ArrayList<KeyEvent>();
533 ke.add(shiftKeyDown);
534 ke.add(new KeyEvent(KeyEventType.KEYDOWN,'=',firefoxOpera,true,false,false,false,true,false));
535 ke.add(new KeyEvent(KeyEventType.KEYDOWN,187,chromeIESafari,true,false,false,false,true,false));
536 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'+',allBrowsers,true,false,false,false,false,true));
537 ke.add(new KeyEvent(KeyEventType.KEYUP,'=',firefoxOpera,true,false,false,false,true,false));
538 ke.add(new KeyEvent(KeyEventType.KEYUP,187,chromeIESafari,true,false,false,false,true,false));
539 ke.add(shiftKeyUp);
540 cks = new KeyEventSequence("+",ke);
541 cksl.put(cks.getIdentifier(),cks);
542
543 ke = new ArrayList<KeyEvent>();
544 ke.add(new KeyEvent(KeyEventType.KEYDOWN,188,firefoxOpera,false,false,false,false,true,false));
545 ke.add(new KeyEvent(KeyEventType.KEYDOWN,188,chromeIESafari,false,false,false,false,true,false));
546 ke.add(new KeyEvent(KeyEventType.KEYPRESS,',',allBrowsers,false,false,false,false,false,true));
547 ke.add(new KeyEvent(KeyEventType.KEYUP,188,firefoxOpera,false,false,false,false,true,false));
548 ke.add(new KeyEvent(KeyEventType.KEYUP,188,chromeIESafari,false,false,false,false,true,false));
549 cks = new KeyEventSequence(",",ke);
550 cksl.put(cks.getIdentifier(),cks);
551
552
553 ke = new ArrayList<KeyEvent>();
554 ke.add(shiftKeyDown);
555 ke.add(new KeyEvent(KeyEventType.KEYDOWN,188,firefoxOpera,true,false,false,false,true,false));
556 ke.add(new KeyEvent(KeyEventType.KEYDOWN,188,chromeIESafari,true,false,false,false,true,false));
557 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'<',allBrowsers,true,false,false,false,false,true));
558 ke.add(new KeyEvent(KeyEventType.KEYUP,188,firefoxOpera,true,false,false,false,true,false));
559 ke.add(new KeyEvent(KeyEventType.KEYUP,188,chromeIESafari,true,false,false,false,true,false));
560 ke.add(shiftKeyUp);
561 cks = new KeyEventSequence("<",ke);
562 cksl.put(cks.getIdentifier(),cks);
563
564 ke = new ArrayList<KeyEvent>();
565 ke.add(new KeyEvent(KeyEventType.KEYDOWN,109,firefoxOpera,false,false,false,false,true,false));
566 ke.add(new KeyEvent(KeyEventType.KEYDOWN,189,chromeIESafari,false,false,false,false,true,false));
567 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'-',allBrowsers,false,false,false,false,false,true));
568 ke.add(new KeyEvent(KeyEventType.KEYUP,109,firefoxOpera,false,false,false,false,true,false));
569 ke.add(new KeyEvent(KeyEventType.KEYUP,189,chromeIESafari,false,false,false,false,true,false));
570 cks = new KeyEventSequence("-",ke);
571 cksl.put(cks.getIdentifier(),cks);
572
573
574 ke = new ArrayList<KeyEvent>();
575 ke.add(shiftKeyDown);
576 ke.add(new KeyEvent(KeyEventType.KEYDOWN,109,firefoxOpera,true,false,false,false,true,false));
577 ke.add(new KeyEvent(KeyEventType.KEYDOWN,189,chromeIESafari,true,false,false,false,true,false));
578 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'_',allBrowsers,true,false,false,false,false,true));
579 ke.add(new KeyEvent(KeyEventType.KEYUP,109,firefoxOpera,true,false,false,false,true,false));
580 ke.add(new KeyEvent(KeyEventType.KEYUP,189,chromeIESafari,true,false,false,false,true,false));
581 ke.add(shiftKeyUp);
582 cks = new KeyEventSequence("_",ke);
583 cksl.put(cks.getIdentifier(),cks);
584
585 ke = new ArrayList<KeyEvent>();
586 ke.add(new KeyEvent(KeyEventType.KEYDOWN,190,firefoxOpera,false,false,false,false,true,false));
587 ke.add(new KeyEvent(KeyEventType.KEYDOWN,190,chromeIESafari,false,false,false,false,true,false));
588 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'.',allBrowsers,false,false,false,false,false,true));
589 ke.add(new KeyEvent(KeyEventType.KEYUP,190,firefoxOpera,false,false,false,false,true,false));
590 ke.add(new KeyEvent(KeyEventType.KEYUP,190,chromeIESafari,false,false,false,false,true,false));
591 cks = new KeyEventSequence(".",ke);
592 cksl.put(cks.getIdentifier(),cks);
593
594
595 ke = new ArrayList<KeyEvent>();
596 ke.add(shiftKeyDown);
597 ke.add(new KeyEvent(KeyEventType.KEYDOWN,190,firefoxOpera,true,false,false,false,true,false));
598 ke.add(new KeyEvent(KeyEventType.KEYDOWN,190,chromeIESafari,true,false,false,false,true,false));
599 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'>',allBrowsers,true,false,false,false,false,true));
600 ke.add(new KeyEvent(KeyEventType.KEYUP,190,firefoxOpera,true,false,false,false,true,false));
601 ke.add(new KeyEvent(KeyEventType.KEYUP,190,chromeIESafari,true,false,false,false,true,false));
602 ke.add(shiftKeyUp);
603 cks = new KeyEventSequence(">",ke);
604 cksl.put(cks.getIdentifier(),cks);
605
606 ke = new ArrayList<KeyEvent>();
607 ke.add(new KeyEvent(KeyEventType.KEYDOWN,191,firefoxOpera,false,false,false,false,true,false));
608 ke.add(new KeyEvent(KeyEventType.KEYDOWN,191,chromeIESafari,false,false,false,false,true,false));
609 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'/',allBrowsers,false,false,false,false,false,true));
610 ke.add(new KeyEvent(KeyEventType.KEYUP,191,firefoxOpera,false,false,false,false,true,false));
611 ke.add(new KeyEvent(KeyEventType.KEYUP,191,chromeIESafari,false,false,false,false,true,false));
612 cks = new KeyEventSequence("/",ke);
613 cksl.put(cks.getIdentifier(),cks);
614
615
616 ke = new ArrayList<KeyEvent>();
617 ke.add(shiftKeyDown);
618 ke.add(new KeyEvent(KeyEventType.KEYDOWN,191,firefoxOpera,true,false,false,false,true,false));
619 ke.add(new KeyEvent(KeyEventType.KEYDOWN,191,chromeIESafari,true,false,false,false,true,false));
620 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'?',allBrowsers,true,false,false,false,false,true));
621 ke.add(new KeyEvent(KeyEventType.KEYUP,191,firefoxOpera,true,false,false,false,true,false));
622 ke.add(new KeyEvent(KeyEventType.KEYUP,191,chromeIESafari,true,false,false,false,true,false));
623 ke.add(shiftKeyUp);
624 cks = new KeyEventSequence("?",ke);
625 cksl.put(cks.getIdentifier(),cks);
626
627 ke = new ArrayList<KeyEvent>();
628 ke.add(new KeyEvent(KeyEventType.KEYDOWN,192,firefoxOpera,false,false,false,false,true,false));
629 ke.add(new KeyEvent(KeyEventType.KEYDOWN,192,chromeIESafari,false,false,false,false,true,false));
630 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'`',allBrowsers,false,false,false,false,false,true));
631 ke.add(new KeyEvent(KeyEventType.KEYUP,192,firefoxOpera,false,false,false,false,true,false));
632 ke.add(new KeyEvent(KeyEventType.KEYUP,192,chromeIESafari,false,false,false,false,true,false));
633 cks = new KeyEventSequence("`",ke);
634 cksl.put(cks.getIdentifier(),cks);
635
636
637 ke = new ArrayList<KeyEvent>();
638 ke.add(shiftKeyDown);
639 ke.add(new KeyEvent(KeyEventType.KEYDOWN,192,firefoxOpera,true,false,false,false,true,false));
640 ke.add(new KeyEvent(KeyEventType.KEYDOWN,192,chromeIESafari,true,false,false,false,true,false));
641 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'~',allBrowsers,true,false,false,false,false,true));
642 ke.add(new KeyEvent(KeyEventType.KEYUP,192,firefoxOpera,true,false,false,false,true,false));
643 ke.add(new KeyEvent(KeyEventType.KEYUP,192,chromeIESafari,true,false,false,false,true,false));
644 ke.add(shiftKeyUp);
645 cks = new KeyEventSequence("~",ke);
646 cksl.put(cks.getIdentifier(),cks);
647
648 ke = new ArrayList<KeyEvent>();
649 ke.add(new KeyEvent(KeyEventType.KEYDOWN,219,allBrowsers,false,false,false,false,true,false));
650 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'[',allBrowsers,false,false,false,false,false,true));
651 ke.add(new KeyEvent(KeyEventType.KEYUP,219,allBrowsers,false,false,false,false,true,false));
652 cks = new KeyEventSequence("[",ke);
653 cksl.put(cks.getIdentifier(),cks);
654
655
656 ke = new ArrayList<KeyEvent>();
657 ke.add(shiftKeyDown);
658 ke.add(new KeyEvent(KeyEventType.KEYDOWN,219,allBrowsers,true,false,false,false,true,false));
659 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'{',allBrowsers,true,false,false,false,false,true));
660 ke.add(new KeyEvent(KeyEventType.KEYUP,219,allBrowsers,true,false,false,false,true,false));
661 ke.add(shiftKeyUp);
662 cks = new KeyEventSequence("{",ke);
663 cksl.put(cks.getIdentifier(),cks);
664
665 ke = new ArrayList<KeyEvent>();
666 ke.add(new KeyEvent(KeyEventType.KEYDOWN,220,allBrowsers,false,false,false,false,true,false));
667 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'\\',allBrowsers,false,false,false,false,false,true));
668 ke.add(new KeyEvent(KeyEventType.KEYUP,220,allBrowsers,false,false,false,false,true,false));
669 cks = new KeyEventSequence("\\",ke);
670 cksl.put(cks.getIdentifier(),cks);
671
672
673 ke = new ArrayList<KeyEvent>();
674 ke.add(shiftKeyDown);
675 ke.add(new KeyEvent(KeyEventType.KEYDOWN,220,allBrowsers,true,false,false,false,true,false));
676 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'|',allBrowsers,true,false,false,false,false,true));
677 ke.add(new KeyEvent(KeyEventType.KEYUP,220,allBrowsers,true,false,false,false,true,false));
678 ke.add(shiftKeyUp);
679 cks = new KeyEventSequence("|",ke);
680 cksl.put(cks.getIdentifier(),cks);
681
682 ke = new ArrayList<KeyEvent>();
683 ke.add(new KeyEvent(KeyEventType.KEYDOWN,221,allBrowsers,false,false,false,false,true,false));
684 ke.add(new KeyEvent(KeyEventType.KEYPRESS,']',allBrowsers,false,false,false,false,false,true));
685 ke.add(new KeyEvent(KeyEventType.KEYUP,221,allBrowsers,false,false,false,false,true,false));
686 cks = new KeyEventSequence("]",ke);
687 cksl.put(cks.getIdentifier(),cks);
688
689
690 ke = new ArrayList<KeyEvent>();
691 ke.add(shiftKeyDown);
692 ke.add(new KeyEvent(KeyEventType.KEYDOWN,221,allBrowsers,true,false,false,false,true,false));
693 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'}',allBrowsers,true,false,false,false,false,true));
694 ke.add(new KeyEvent(KeyEventType.KEYUP,221,allBrowsers,true,false,false,false,true,false));
695 ke.add(shiftKeyUp);
696 cks = new KeyEventSequence("}",ke);
697 cksl.put(cks.getIdentifier(),cks);
698
699 ke = new ArrayList<KeyEvent>();
700 ke.add(new KeyEvent(KeyEventType.KEYDOWN,222,allBrowsers,false,false,false,false,true,false));
701 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'\'',allBrowsers,false,false,false,false,false,true));
702 ke.add(new KeyEvent(KeyEventType.KEYUP,219,allBrowsers,false,false,false,false,true,false));
703 cks = new KeyEventSequence("'",ke);
704 cksl.put(cks.getIdentifier(),cks);
705
706
707 ke = new ArrayList<KeyEvent>();
708 ke.add(shiftKeyDown);
709 ke.add(new KeyEvent(KeyEventType.KEYDOWN,219,allBrowsers,true,false,false,false,true,false));
710 ke.add(new KeyEvent(KeyEventType.KEYPRESS,'"',allBrowsers,true,false,false,false,false,true));
711 ke.add(new KeyEvent(KeyEventType.KEYUP,219,allBrowsers,true,false,false,false,true,false));
712 ke.add(shiftKeyUp);
713 cks = new KeyEventSequence("\"",ke);
714 cksl.put(cks.getIdentifier(),cks);
715
716 }
717
718 private static String readFile(String file) throws IOException
719 {
720 BufferedReader reader = new BufferedReader(new InputStreamReader(ClassLoader.getSystemClassLoader().getResourceAsStream(file)));
721
722 String line = reader.readLine();
723 StringBuffer contents = new StringBuffer();
724
725 while(line != null)
726 {
727 contents.append(line).append("\n");
728 line = reader.readLine();
729 }
730
731 return contents.toString();
732 }
733
734 }