1 Clazz.declarePackage ("java.awt.event");
2 Clazz.load (["java.awt.event.InputEvent"], "java.awt.event.KeyEvent", ["java.lang.IllegalArgumentException", "$.StringBuilder", "java.awt.Toolkit"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.isProxyActive = false;
8 Clazz.instantialize (this, arguments);
9 }, java.awt.event, "KeyEvent", java.awt.event.InputEvent);
10 Clazz.makeConstructor (c$,
11 function (source, id, when, modifiers, keyCode, keyChar, keyLocation) {
12 Clazz.superConstructor (this, java.awt.event.KeyEvent, [source, id, when, modifiers]);
14 if (keyChar == '\uffff') {
15 throw new IllegalArgumentException ("invalid keyChar");
17 throw new IllegalArgumentException ("invalid keyCode");
18 }if (keyLocation != 0) {
19 throw new IllegalArgumentException ("invalid keyLocation");
20 }}this.keyCode = keyCode;
21 this.keyChar = keyChar;
22 if ((keyLocation < 0) || (keyLocation > 4)) {
23 throw new IllegalArgumentException ("invalid keyLocation");
24 }this.keyLocation = keyLocation;
25 if ((this.getModifiers () != 0) && (this.getModifiersEx () == 0)) {
26 this.setNewModifiers ();
27 } else if ((this.getModifiers () == 0) && (this.getModifiersEx () != 0)) {
28 this.setOldModifiers ();
29 }}, "java.awt.Component,~N,~N,~N,~N,~S,~N");
30 Clazz.makeConstructor (c$,
31 function (source, id, when, modifiers, keyCode, keyChar) {
32 this.construct (source, id, when, modifiers, keyCode, keyChar, 0);
33 }, "java.awt.Component,~N,~N,~N,~N,~S");
34 Clazz.makeConstructor (c$,
35 function (source, id, when, modifiers, keyCode) {
36 this.construct (source, id, when, modifiers, keyCode, String.fromCharCode (keyCode));
37 }, "java.awt.Component,~N,~N,~N,~N");
38 Clazz.defineMethod (c$, "getKeyCode",
42 Clazz.defineMethod (c$, "setKeyCode",
44 this.keyCode = keyCode;
46 Clazz.defineMethod (c$, "getKeyChar",
50 Clazz.defineMethod (c$, "setKeyChar",
52 this.keyChar = keyChar;
54 Clazz.defineMethod (c$, "setModifiers",
55 function (modifiers) {
56 this.modifiers = modifiers;
57 if ((this.getModifiers () != 0) && (this.getModifiersEx () == 0)) {
58 this.setNewModifiers ();
59 } else if ((this.getModifiers () == 0) && (this.getModifiersEx () != 0)) {
60 this.setOldModifiers ();
62 Clazz.defineMethod (c$, "getKeyLocation",
64 return this.keyLocation;
66 c$.getKeyText = Clazz.defineMethod (c$, "getKeyText",
68 if (keyCode >= 48 && keyCode <= 57 || keyCode >= 65 && keyCode <= 90) {
69 return String.valueOf (String.fromCharCode (keyCode));
72 return java.awt.Toolkit.getProperty ("AWT.enter", "Enter");
74 return java.awt.Toolkit.getProperty ("AWT.backSpace", "Backspace");
76 return java.awt.Toolkit.getProperty ("AWT.tab", "Tab");
78 return java.awt.Toolkit.getProperty ("AWT.cancel", "Cancel");
80 return java.awt.Toolkit.getProperty ("AWT.clear", "Clear");
82 return java.awt.Toolkit.getProperty ("AWT.compose", "Compose");
84 return java.awt.Toolkit.getProperty ("AWT.pause", "Pause");
86 return java.awt.Toolkit.getProperty ("AWT.capsLock", "Caps Lock");
88 return java.awt.Toolkit.getProperty ("AWT.escape", "Escape");
90 return java.awt.Toolkit.getProperty ("AWT.space", "Space");
92 return java.awt.Toolkit.getProperty ("AWT.pgup", "Page Up");
94 return java.awt.Toolkit.getProperty ("AWT.pgdn", "Page Down");
96 return java.awt.Toolkit.getProperty ("AWT.end", "End");
98 return java.awt.Toolkit.getProperty ("AWT.home", "Home");
100 return java.awt.Toolkit.getProperty ("AWT.left", "Left");
102 return java.awt.Toolkit.getProperty ("AWT.up", "Up");
104 return java.awt.Toolkit.getProperty ("AWT.right", "Right");
106 return java.awt.Toolkit.getProperty ("AWT.down", "Down");
108 return java.awt.Toolkit.getProperty ("AWT.begin", "Begin");
110 return java.awt.Toolkit.getProperty ("AWT.shift", "Shift");
112 return java.awt.Toolkit.getProperty ("AWT.control", "Control");
114 return java.awt.Toolkit.getProperty ("AWT.alt", "Alt");
116 return java.awt.Toolkit.getProperty ("AWT.meta", "Meta");
118 return java.awt.Toolkit.getProperty ("AWT.altGraph", "Alt Graph");
120 return java.awt.Toolkit.getProperty ("AWT.comma", "Comma");
122 return java.awt.Toolkit.getProperty ("AWT.period", "Period");
124 return java.awt.Toolkit.getProperty ("AWT.slash", "Slash");
126 return java.awt.Toolkit.getProperty ("AWT.semicolon", "Semicolon");
128 return java.awt.Toolkit.getProperty ("AWT.equals", "Equals");
130 return java.awt.Toolkit.getProperty ("AWT.openBracket", "Open Bracket");
132 return java.awt.Toolkit.getProperty ("AWT.backSlash", "Back Slash");
134 return java.awt.Toolkit.getProperty ("AWT.closeBracket", "Close Bracket");
136 return java.awt.Toolkit.getProperty ("AWT.multiply", "NumPad *");
138 return java.awt.Toolkit.getProperty ("AWT.add", "NumPad +");
140 return java.awt.Toolkit.getProperty ("AWT.separator", "NumPad ,");
142 return java.awt.Toolkit.getProperty ("AWT.subtract", "NumPad -");
144 return java.awt.Toolkit.getProperty ("AWT.decimal", "NumPad .");
146 return java.awt.Toolkit.getProperty ("AWT.divide", "NumPad /");
148 return java.awt.Toolkit.getProperty ("AWT.delete", "Delete");
150 return java.awt.Toolkit.getProperty ("AWT.numLock", "Num Lock");
152 return java.awt.Toolkit.getProperty ("AWT.scrollLock", "Scroll Lock");
154 return java.awt.Toolkit.getProperty ("AWT.windows", "Windows");
156 return java.awt.Toolkit.getProperty ("AWT.context", "Context Menu");
158 return java.awt.Toolkit.getProperty ("AWT.f1", "F1");
160 return java.awt.Toolkit.getProperty ("AWT.f2", "F2");
162 return java.awt.Toolkit.getProperty ("AWT.f3", "F3");
164 return java.awt.Toolkit.getProperty ("AWT.f4", "F4");
166 return java.awt.Toolkit.getProperty ("AWT.f5", "F5");
168 return java.awt.Toolkit.getProperty ("AWT.f6", "F6");
170 return java.awt.Toolkit.getProperty ("AWT.f7", "F7");
172 return java.awt.Toolkit.getProperty ("AWT.f8", "F8");
174 return java.awt.Toolkit.getProperty ("AWT.f9", "F9");
176 return java.awt.Toolkit.getProperty ("AWT.f10", "F10");
178 return java.awt.Toolkit.getProperty ("AWT.f11", "F11");
180 return java.awt.Toolkit.getProperty ("AWT.f12", "F12");
182 return java.awt.Toolkit.getProperty ("AWT.f13", "F13");
184 return java.awt.Toolkit.getProperty ("AWT.f14", "F14");
186 return java.awt.Toolkit.getProperty ("AWT.f15", "F15");
188 return java.awt.Toolkit.getProperty ("AWT.f16", "F16");
190 return java.awt.Toolkit.getProperty ("AWT.f17", "F17");
192 return java.awt.Toolkit.getProperty ("AWT.f18", "F18");
194 return java.awt.Toolkit.getProperty ("AWT.f19", "F19");
196 return java.awt.Toolkit.getProperty ("AWT.f20", "F20");
198 return java.awt.Toolkit.getProperty ("AWT.f21", "F21");
200 return java.awt.Toolkit.getProperty ("AWT.f22", "F22");
202 return java.awt.Toolkit.getProperty ("AWT.f23", "F23");
204 return java.awt.Toolkit.getProperty ("AWT.f24", "F24");
206 return java.awt.Toolkit.getProperty ("AWT.printScreen", "Print Screen");
208 return java.awt.Toolkit.getProperty ("AWT.insert", "Insert");
210 return java.awt.Toolkit.getProperty ("AWT.help", "Help");
212 return java.awt.Toolkit.getProperty ("AWT.backQuote", "Back Quote");
214 return java.awt.Toolkit.getProperty ("AWT.quote", "Quote");
216 return java.awt.Toolkit.getProperty ("AWT.up", "Up");
218 return java.awt.Toolkit.getProperty ("AWT.down", "Down");
220 return java.awt.Toolkit.getProperty ("AWT.left", "Left");
222 return java.awt.Toolkit.getProperty ("AWT.right", "Right");
224 return java.awt.Toolkit.getProperty ("AWT.deadGrave", "Dead Grave");
226 return java.awt.Toolkit.getProperty ("AWT.deadAcute", "Dead Acute");
228 return java.awt.Toolkit.getProperty ("AWT.deadCircumflex", "Dead Circumflex");
230 return java.awt.Toolkit.getProperty ("AWT.deadTilde", "Dead Tilde");
232 return java.awt.Toolkit.getProperty ("AWT.deadMacron", "Dead Macron");
234 return java.awt.Toolkit.getProperty ("AWT.deadBreve", "Dead Breve");
236 return java.awt.Toolkit.getProperty ("AWT.deadAboveDot", "Dead Above Dot");
238 return java.awt.Toolkit.getProperty ("AWT.deadDiaeresis", "Dead Diaeresis");
240 return java.awt.Toolkit.getProperty ("AWT.deadAboveRing", "Dead Above Ring");
242 return java.awt.Toolkit.getProperty ("AWT.deadDoubleAcute", "Dead Double Acute");
244 return java.awt.Toolkit.getProperty ("AWT.deadCaron", "Dead Caron");
246 return java.awt.Toolkit.getProperty ("AWT.deadCedilla", "Dead Cedilla");
248 return java.awt.Toolkit.getProperty ("AWT.deadOgonek", "Dead Ogonek");
250 return java.awt.Toolkit.getProperty ("AWT.deadIota", "Dead Iota");
252 return java.awt.Toolkit.getProperty ("AWT.deadVoicedSound", "Dead Voiced Sound");
254 return java.awt.Toolkit.getProperty ("AWT.deadSemivoicedSound", "Dead Semivoiced Sound");
256 return java.awt.Toolkit.getProperty ("AWT.ampersand", "Ampersand");
258 return java.awt.Toolkit.getProperty ("AWT.asterisk", "Asterisk");
260 return java.awt.Toolkit.getProperty ("AWT.quoteDbl", "Double Quote");
262 return java.awt.Toolkit.getProperty ("AWT.Less", "Less");
264 return java.awt.Toolkit.getProperty ("AWT.greater", "Greater");
266 return java.awt.Toolkit.getProperty ("AWT.braceLeft", "Left Brace");
268 return java.awt.Toolkit.getProperty ("AWT.braceRight", "Right Brace");
270 return java.awt.Toolkit.getProperty ("AWT.at", "At");
272 return java.awt.Toolkit.getProperty ("AWT.colon", "Colon");
274 return java.awt.Toolkit.getProperty ("AWT.circumflex", "Circumflex");
276 return java.awt.Toolkit.getProperty ("AWT.dollar", "Dollar");
278 return java.awt.Toolkit.getProperty ("AWT.euro", "Euro");
280 return java.awt.Toolkit.getProperty ("AWT.exclamationMark", "Exclamation Mark");
282 return java.awt.Toolkit.getProperty ("AWT.invertedExclamationMark", "Inverted Exclamation Mark");
284 return java.awt.Toolkit.getProperty ("AWT.leftParenthesis", "Left Parenthesis");
286 return java.awt.Toolkit.getProperty ("AWT.numberSign", "Number Sign");
288 return java.awt.Toolkit.getProperty ("AWT.minus", "Minus");
290 return java.awt.Toolkit.getProperty ("AWT.plus", "Plus");
292 return java.awt.Toolkit.getProperty ("AWT.rightParenthesis", "Right Parenthesis");
294 return java.awt.Toolkit.getProperty ("AWT.underscore", "Underscore");
296 return java.awt.Toolkit.getProperty ("AWT.final", "Final");
298 return java.awt.Toolkit.getProperty ("AWT.convert", "Convert");
300 return java.awt.Toolkit.getProperty ("AWT.noconvert", "No Convert");
302 return java.awt.Toolkit.getProperty ("AWT.accept", "Accept");
304 return java.awt.Toolkit.getProperty ("AWT.modechange", "Mode Change");
306 return java.awt.Toolkit.getProperty ("AWT.kana", "Kana");
308 return java.awt.Toolkit.getProperty ("AWT.kanji", "Kanji");
310 return java.awt.Toolkit.getProperty ("AWT.alphanumeric", "Alphanumeric");
312 return java.awt.Toolkit.getProperty ("AWT.katakana", "Katakana");
314 return java.awt.Toolkit.getProperty ("AWT.hiragana", "Hiragana");
316 return java.awt.Toolkit.getProperty ("AWT.fullWidth", "Full-Width");
318 return java.awt.Toolkit.getProperty ("AWT.halfWidth", "Half-Width");
320 return java.awt.Toolkit.getProperty ("AWT.romanCharacters", "Roman Characters");
322 return java.awt.Toolkit.getProperty ("AWT.allCandidates", "All Candidates");
324 return java.awt.Toolkit.getProperty ("AWT.previousCandidate", "Previous Candidate");
326 return java.awt.Toolkit.getProperty ("AWT.codeInput", "Code Input");
328 return java.awt.Toolkit.getProperty ("AWT.japaneseKatakana", "Japanese Katakana");
330 return java.awt.Toolkit.getProperty ("AWT.japaneseHiragana", "Japanese Hiragana");
332 return java.awt.Toolkit.getProperty ("AWT.japaneseRoman", "Japanese Roman");
334 return java.awt.Toolkit.getProperty ("AWT.kanaLock", "Kana Lock");
336 return java.awt.Toolkit.getProperty ("AWT.inputMethodOnOff", "Input Method On/Off");
338 return java.awt.Toolkit.getProperty ("AWT.again", "Again");
340 return java.awt.Toolkit.getProperty ("AWT.undo", "Undo");
342 return java.awt.Toolkit.getProperty ("AWT.copy", "Copy");
344 return java.awt.Toolkit.getProperty ("AWT.paste", "Paste");
346 return java.awt.Toolkit.getProperty ("AWT.cut", "Cut");
348 return java.awt.Toolkit.getProperty ("AWT.find", "Find");
350 return java.awt.Toolkit.getProperty ("AWT.props", "Props");
352 return java.awt.Toolkit.getProperty ("AWT.stop", "Stop");
354 if (keyCode >= 96 && keyCode <= 105) {
355 var numpad = java.awt.Toolkit.getProperty ("AWT.numpad", "NumPad");
356 var c = String.fromCharCode (keyCode - 96 + 48);
357 return numpad + "-" + c;
358 }var unknown = java.awt.Toolkit.getProperty ("AWT.unknown", "Unknown");
359 return unknown + " keyCode: 0x" + Integer.toString (keyCode, 16);
361 c$.getKeyModifiersText = Clazz.defineMethod (c$, "getKeyModifiersText",
362 function (modifiers) {
363 var buf = new StringBuilder ();
364 if ((modifiers & 4) != 0) {
365 buf.append (java.awt.Toolkit.getProperty ("AWT.meta", "Meta"));
367 }if ((modifiers & 2) != 0) {
368 buf.append (java.awt.Toolkit.getProperty ("AWT.control", "Ctrl"));
370 }if ((modifiers & 8) != 0) {
371 buf.append (java.awt.Toolkit.getProperty ("AWT.alt", "Alt"));
373 }if ((modifiers & 1) != 0) {
374 buf.append (java.awt.Toolkit.getProperty ("AWT.shift", "Shift"));
376 }if ((modifiers & 32) != 0) {
377 buf.append (java.awt.Toolkit.getProperty ("AWT.altGraph", "Alt Graph"));
379 }if ((modifiers & 16) != 0) {
380 buf.append (java.awt.Toolkit.getProperty ("AWT.button1", "Button1"));
382 }if (buf.length () > 0) {
383 buf.setLength (buf.length () - 1);
384 }return buf.toString ();
386 Clazz.defineMethod (c$, "isActionKey",
388 switch (this.keyCode) {
468 Clazz.overrideMethod (c$, "paramString",
470 var str = new StringBuilder (100);
473 str.append ("KEY_PRESSED");
476 str.append ("KEY_RELEASED");
479 str.append ("KEY_TYPED");
482 str.append ("unknown type");
485 str.append (",keyCode=").append ("" + this.keyCode);
486 str.append (",keyText=").append (java.awt.event.KeyEvent.getKeyText (this.keyCode));
487 str.append (",keyChar=");
488 switch (this.keyChar) {
490 str.append (java.awt.event.KeyEvent.getKeyText (8));
493 str.append (java.awt.event.KeyEvent.getKeyText (9));
496 str.append (java.awt.event.KeyEvent.getKeyText (10));
499 str.append (java.awt.event.KeyEvent.getKeyText (3));
502 str.append (java.awt.event.KeyEvent.getKeyText (27));
505 str.append (java.awt.event.KeyEvent.getKeyText (127));
508 str.append (java.awt.Toolkit.getProperty ("AWT.undefined", "Undefined"));
509 str.append (" keyChar");
512 str.append ("'").append (this.keyChar).append ("'");
515 if (this.getModifiers () != 0) {
516 str.append (",modifiers=").append (java.awt.event.KeyEvent.getKeyModifiersText (this.modifiers));
517 }if (this.getModifiersEx () != 0) {
518 str.append (",extModifiers=").append (java.awt.event.InputEvent.getModifiersExText (this.modifiers));
519 }str.append (",keyLocation=");
520 switch (this.keyLocation) {
522 str.append ("KEY_LOCATION_UNKNOWN");
525 str.append ("KEY_LOCATION_STANDARD");
528 str.append ("KEY_LOCATION_LEFT");
531 str.append ("KEY_LOCATION_RIGHT");
534 str.append ("KEY_LOCATION_NUMPAD");
537 str.append ("KEY_LOCATION_UNKNOWN");
540 return str.toString ();
542 Clazz.defineMethod (c$, "setNewModifiers",
544 if ((this.modifiers & 1) != 0) {
545 this.modifiers |= 64;
546 }if ((this.modifiers & 8) != 0) {
547 this.modifiers |= 512;
548 }if ((this.modifiers & 2) != 0) {
549 this.modifiers |= 128;
550 }if ((this.modifiers & 4) != 0) {
551 this.modifiers |= 256;
552 }if ((this.modifiers & 32) != 0) {
553 this.modifiers |= 8192;
554 }if ((this.modifiers & 16) != 0) {
555 this.modifiers |= 1024;
557 Clazz.defineMethod (c$, "setOldModifiers",
559 if ((this.modifiers & 64) != 0) {
561 }if ((this.modifiers & 512) != 0) {
563 }if ((this.modifiers & 128) != 0) {
565 }if ((this.modifiers & 256) != 0) {
567 }if ((this.modifiers & 8192) != 0) {
568 this.modifiers |= 32;
569 }if ((this.modifiers & 1024) != 0) {
570 this.modifiers |= 16;
572 Clazz.defineStatics (c$,
579 "VK_BACK_SPACE", '\b',
587 "VK_CAPS_LOCK", 0x14,
591 "VK_PAGE_DOWN", 0x22,
612 "VK_SEMICOLON", 0x3B,
640 "VK_OPEN_BRACKET", 0x5B,
641 "VK_BACK_SLASH", 0x5C,
642 "VK_CLOSE_BRACKET", 0x5D,
655 "VK_SEPARATER", 0x6C,
662 "VK_SCROLL_LOCK", 0x91,
687 "VK_PRINTSCREEN", 0x9A,
691 "VK_BACK_QUOTE", 0xC0,
697 "VK_DEAD_GRAVE", 0x80,
698 "VK_DEAD_ACUTE", 0x81,
699 "VK_DEAD_CIRCUMFLEX", 0x82,
700 "VK_DEAD_TILDE", 0x83,
701 "VK_DEAD_MACRON", 0x84,
702 "VK_DEAD_BREVE", 0x85,
703 "VK_DEAD_ABOVEDOT", 0x86,
704 "VK_DEAD_DIAERESIS", 0x87,
705 "VK_DEAD_ABOVERING", 0x88,
706 "VK_DEAD_DOUBLEACUTE", 0x89,
707 "VK_DEAD_CARON", 0x8a,
708 "VK_DEAD_CEDILLA", 0x8b,
709 "VK_DEAD_OGONEK", 0x8c,
710 "VK_DEAD_IOTA", 0x8d,
711 "VK_DEAD_VOICED_SOUND", 0x8e,
712 "VK_DEAD_SEMIVOICED_SOUND", 0x8f,
713 "VK_AMPERSAND", 0x96,
718 "VK_BRACELEFT", 0xa1,
719 "VK_BRACERIGHT", 0xa2,
722 "VK_CIRCUMFLEX", 0x0202,
724 "VK_EURO_SIGN", 0x0204,
725 "VK_EXCLAMATION_MARK", 0x0205,
726 "VK_INVERTED_EXCLAMATION_MARK", 0x0206,
727 "VK_LEFT_PARENTHESIS", 0x0207,
728 "VK_NUMBER_SIGN", 0x0208,
730 "VK_RIGHT_PARENTHESIS", 0x020A,
731 "VK_UNDERSCORE", 0x020B,
732 "VK_WINDOWS", 0x020C,
733 "VK_CONTEXT_MENU", 0x020D,
735 "VK_CONVERT", 0x001C,
736 "VK_NONCONVERT", 0x001D,
738 "VK_MODECHANGE", 0x001F,
741 "VK_ALPHANUMERIC", 0x00F0,
742 "VK_KATAKANA", 0x00F1,
743 "VK_HIRAGANA", 0x00F2,
744 "VK_FULL_WIDTH", 0x00F3,
745 "VK_HALF_WIDTH", 0x00F4,
746 "VK_ROMAN_CHARACTERS", 0x00F5,
747 "VK_ALL_CANDIDATES", 0x0100,
748 "VK_PREVIOUS_CANDIDATE", 0x0101,
749 "VK_CODE_INPUT", 0x0102,
750 "VK_JAPANESE_KATAKANA", 0x0103,
751 "VK_JAPANESE_HIRAGANA", 0x0104,
752 "VK_JAPANESE_ROMAN", 0x0105,
753 "VK_KANA_LOCK", 0x0106,
754 "VK_INPUT_METHOD_ON_OFF", 0x0107,
763 "VK_COMPOSE", 0xFF20,
764 "VK_ALT_GRAPH", 0xFF7E,
767 "CHAR_UNDEFINED", String.fromCharCode (0xFFFF),
768 "KEY_LOCATION_UNKNOWN", 0,
769 "KEY_LOCATION_STANDARD", 1,
770 "KEY_LOCATION_LEFT", 2,
771 "KEY_LOCATION_RIGHT", 3,
772 "KEY_LOCATION_NUMPAD", 4);