1 Clazz.declarePackage ("java.awt");
\r
2 Clazz.load (["java.awt.AWTEventMulticaster", "java.awt.event.AWTEventListener", "java.util.HashMap"], "java.awt.Toolkit", ["java.util.ArrayList", "java.awt.Cursor", "$.Insets", "$.RenderingHints", "java.awt.event.AWTEventListenerProxy", "java.beans.PropertyChangeSupport", "jssun.awt.NullComponentPeer"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.desktopProperties = null;
\r
5 this.desktopPropsSupport = null;
\r
7 this.eventListener = null;
\r
8 this.listener2SelectiveListener = null;
\r
9 if (!Clazz.isClassDefined ("java.awt.Toolkit.SelectiveAWTEventListener")) {
\r
10 java.awt.Toolkit.$Toolkit$SelectiveAWTEventListener$ ();
\r
12 Clazz.instantialize (this, arguments);
\r
13 }, java.awt, "Toolkit");
\r
14 Clazz.prepareFields (c$, function () {
\r
15 this.desktopProperties = new java.util.HashMap ();
\r
16 this.desktopPropsSupport = java.awt.Toolkit.createPropertyChangeSupport (this);
\r
17 this.calls = Clazz.newIntArray (32, 0);
\r
18 this.listener2SelectiveListener = new java.util.HashMap ();
\r
20 Clazz.defineMethod (c$, "createComponent",
\r
22 if (java.awt.Toolkit.lightweightMarker == null) {
\r
23 java.awt.Toolkit.lightweightMarker = new jssun.awt.NullComponentPeer ();
\r
24 }return java.awt.Toolkit.lightweightMarker;
\r
25 }, "java.awt.Component");
\r
26 Clazz.defineMethod (c$, "loadSystemColors",
\r
27 function (systemColors) {
\r
29 Clazz.defineMethod (c$, "setDynamicLayout",
\r
30 function (dynamic) {
\r
32 Clazz.defineMethod (c$, "isDynamicLayoutSet",
\r
34 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {
\r
35 return java.awt.Toolkit.getDefaultToolkit ().isDynamicLayoutSet ();
\r
39 Clazz.defineMethod (c$, "isDynamicLayoutActive",
\r
41 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {
\r
42 return java.awt.Toolkit.getDefaultToolkit ().isDynamicLayoutActive ();
\r
46 Clazz.defineMethod (c$, "getScreenInsets",
\r
48 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {
\r
49 return java.awt.Toolkit.getDefaultToolkit ().getScreenInsets (gc);
\r
51 return new java.awt.Insets (0, 0, 0, 0);
\r
52 }}, "java.awt.GraphicsConfiguration");
\r
53 c$.getDefaultToolkit = Clazz.defineMethod (c$, "getDefaultToolkit",
\r
55 return (java.awt.Toolkit.toolkit == null ? java.awt.Toolkit.toolkit = new swingjs.JSToolkit () : java.awt.Toolkit.toolkit);
\r
57 Clazz.defineMethod (c$, "createImage",
\r
58 function (imagedata) {
\r
59 return this.createImage (imagedata, 0, imagedata.length);
\r
61 Clazz.defineMethod (c$, "getMenuShortcutKeyMask",
\r
65 c$.getNativeContainer = Clazz.defineMethod (c$, "getNativeContainer",
\r
68 }, "java.awt.Component");
\r
69 Clazz.defineMethod (c$, "createCustomCursor",
\r
70 function (cursor, hotSpot, name) {
\r
71 return new java.awt.Cursor (0);
\r
72 }, "java.awt.Image,java.awt.Point,~S");
\r
73 Clazz.defineMethod (c$, "isFrameStateSupported",
\r
75 return (state == 0);
\r
77 c$.getProperty = Clazz.defineMethod (c$, "getProperty",
\r
78 function (key, defaultValue) {
\r
79 if (java.awt.Toolkit.resources != null) {
\r
81 return java.awt.Toolkit.resources.getString (key);
\r
83 if (Clazz.exceptionOf (e, java.util.MissingResourceException)) {
\r
88 }return defaultValue;
\r
90 Clazz.defineMethod (c$, "getSystemEventQueue",
\r
92 return this.getSystemEventQueueImpl ();
\r
94 c$.getEventQueue = Clazz.defineMethod (c$, "getEventQueue",
\r
96 return java.awt.Toolkit.getDefaultToolkit ().getSystemEventQueueImpl ();
\r
98 Clazz.defineMethod (c$, "getDesktopProperty",
\r
99 function (propertyName) {
\r
100 if (this.desktopProperties.isEmpty ()) {
\r
101 this.initializeDesktopProperties ();
\r
103 if (propertyName.equals ("awt.dynamicLayoutSupported")) {
\r
104 value = this.lazilyLoadDesktopProperty (propertyName);
\r
106 }value = this.desktopProperties.get (propertyName);
\r
107 if (value == null) {
\r
108 value = this.lazilyLoadDesktopProperty (propertyName);
\r
109 if (value != null) {
\r
110 this.setDesktopProperty (propertyName, value);
\r
111 }}if (Clazz.instanceOf (value, java.awt.RenderingHints)) {
\r
112 value = (value).clone ();
\r
115 Clazz.defineMethod (c$, "setDesktopProperty",
\r
116 function (name, newValue) {
\r
119 oldValue = this.desktopProperties.get (name);
\r
120 this.desktopProperties.put (name, newValue);
\r
121 }this.desktopPropsSupport.firePropertyChange (name, oldValue, newValue);
\r
123 Clazz.defineMethod (c$, "lazilyLoadDesktopProperty",
\r
127 Clazz.defineMethod (c$, "initializeDesktopProperties",
\r
130 Clazz.defineMethod (c$, "addPropertyChangeListener",
\r
131 function (name, pcl) {
\r
132 this.desktopPropsSupport.addPropertyChangeListener (name, pcl);
\r
133 }, "~S,java.beans.PropertyChangeListener");
\r
134 Clazz.defineMethod (c$, "removePropertyChangeListener",
\r
135 function (name, pcl) {
\r
136 this.desktopPropsSupport.removePropertyChangeListener (name, pcl);
\r
137 }, "~S,java.beans.PropertyChangeListener");
\r
138 Clazz.defineMethod (c$, "getPropertyChangeListeners",
\r
140 return this.desktopPropsSupport.getPropertyChangeListeners ();
\r
142 Clazz.defineMethod (c$, "getPropertyChangeListeners",
\r
143 function (propertyName) {
\r
144 return this.desktopPropsSupport.getPropertyChangeListeners (propertyName);
\r
146 Clazz.defineMethod (c$, "isAlwaysOnTopSupported",
\r
150 c$.deProxyAWTEventListener = Clazz.defineMethod (c$, "deProxyAWTEventListener",
\r
153 if (localL == null) {
\r
155 }if (Clazz.instanceOf (l, java.awt.event.AWTEventListenerProxy)) {
\r
156 localL = (l).getListener ();
\r
158 }, "java.awt.event.AWTEventListener");
\r
159 Clazz.defineMethod (c$, "addAWTEventListener",
\r
160 function (listener, eventMask) {
\r
161 var localL = java.awt.Toolkit.deProxyAWTEventListener (listener);
\r
162 if (localL == null) {
\r
165 var selectiveListener = this.listener2SelectiveListener.get (localL);
\r
166 if (selectiveListener == null) {
\r
167 selectiveListener = Clazz.innerTypeInstance (java.awt.Toolkit.SelectiveAWTEventListener, this, null, localL, eventMask);
\r
168 this.listener2SelectiveListener.put (localL, selectiveListener);
\r
169 this.eventListener = java.awt.Toolkit.ToolkitEventMulticaster.add (this.eventListener, selectiveListener);
\r
170 }selectiveListener.orEventMasks (eventMask);
\r
171 java.awt.Toolkit.enabledOnToolkitMask |= eventMask;
\r
172 var mask = eventMask;
\r
173 for (var i = 0; i < 32; i++) {
\r
176 }if ((mask & 1) != 0) {
\r
180 }}, "java.awt.event.AWTEventListener,~N");
\r
181 Clazz.defineMethod (c$, "removeAWTEventListener",
\r
182 function (listener) {
\r
183 var localL = java.awt.Toolkit.deProxyAWTEventListener (listener);
\r
184 if (listener == null) {
\r
187 var selectiveListener = this.listener2SelectiveListener.get (localL);
\r
188 if (selectiveListener != null) {
\r
189 this.listener2SelectiveListener.remove (localL);
\r
190 var listenerCalls = selectiveListener.getCalls ();
\r
191 for (var i = 0; i < 32; i++) {
\r
192 this.calls[i] -= listenerCalls[i];
\r
193 if (this.calls[i] == 0) {
\r
194 java.awt.Toolkit.enabledOnToolkitMask &= ~(1 << i);
\r
196 }this.eventListener = java.awt.Toolkit.ToolkitEventMulticaster.remove (this.eventListener, (selectiveListener == null) ? localL : selectiveListener);
\r
197 }}, "java.awt.event.AWTEventListener");
\r
198 c$.enabledOnToolkit = Clazz.defineMethod (c$, "enabledOnToolkit",
\r
199 function (eventMask) {
\r
200 return (java.awt.Toolkit.enabledOnToolkitMask & eventMask) != 0;
\r
202 Clazz.defineMethod (c$, "countAWTEventListeners",
\r
203 function (eventMask) {
\r
205 for (; eventMask != 0; eventMask >>>= 1, ci++) {
\r
208 return this.calls[ci];
\r
210 Clazz.defineMethod (c$, "getAWTEventListeners",
\r
213 var la = java.awt.Toolkit.ToolkitEventMulticaster.getListeners (this.eventListener, java.awt.event.AWTEventListener);
\r
214 var ret = new Array (la.length);
\r
215 for (var i = 0; i < la.length; i++) {
\r
217 var tempL = sael.getListener ();
\r
218 ret[i] = new java.awt.event.AWTEventListenerProxy (sael.getEventMask (), tempL);
\r
222 Clazz.defineMethod (c$, "getAWTEventListeners",
\r
223 function (eventMask) {
\r
225 var la = java.awt.Toolkit.ToolkitEventMulticaster.getListeners (this.eventListener, java.awt.event.AWTEventListener);
\r
226 var list = new java.util.ArrayList (la.length);
\r
227 for (var i = 0; i < la.length; i++) {
\r
229 if ((sael.getEventMask () & eventMask) == eventMask) {
\r
230 list.add ( new java.awt.event.AWTEventListenerProxy (sael.getEventMask (), sael.getListener ()));
\r
232 return list.toArray ( new Array (0));
\r
234 Clazz.defineMethod (c$, "notifyAWTEventListeners",
\r
235 function (theEvent) {
\r
236 var eventListener = this.eventListener;
\r
237 if (eventListener != null) {
\r
238 eventListener.eventDispatched (theEvent);
\r
239 }}, "java.awt.AWTEvent");
\r
240 c$.createPropertyChangeSupport = Clazz.defineMethod (c$, "createPropertyChangeSupport",
\r
241 function (toolkit) {
\r
242 return new java.beans.PropertyChangeSupport (toolkit);
\r
243 }, "java.awt.Toolkit");
\r
244 c$.$Toolkit$SelectiveAWTEventListener$ = function () {
\r
245 Clazz.pu$h(self.c$);
\r
246 c$ = Clazz.decorateAsClass (function () {
\r
247 Clazz.prepareCallback (this, arguments);
\r
248 this.listener = null;
\r
249 this.eventMask = 0;
\r
251 Clazz.instantialize (this, arguments);
\r
252 }, java.awt.Toolkit, "SelectiveAWTEventListener", null, java.awt.event.AWTEventListener);
\r
253 Clazz.prepareFields (c$, function () {
\r
254 this.calls = Clazz.newIntArray (32, 0);
\r
256 Clazz.defineMethod (c$, "getListener",
\r
258 return this.listener;
\r
260 Clazz.defineMethod (c$, "getEventMask",
\r
262 return this.eventMask;
\r
264 Clazz.defineMethod (c$, "getCalls",
\r
268 Clazz.defineMethod (c$, "orEventMasks",
\r
270 this.eventMask |= a;
\r
271 for (var b = 0; b < 32; b++) {
\r
274 }if ((a & 1) != 0) {
\r
279 Clazz.makeConstructor (c$,
\r
282 this.eventMask = b;
\r
283 }, "java.awt.event.AWTEventListener,~N");
\r
284 Clazz.defineMethod (c$, "eventDispatched",
\r
287 if (((b = this.eventMask & 1) != 0 && a.id >= 100 && a.id <= 103) || ((b = this.eventMask & 2) != 0 && a.id >= 300 && a.id <= 301) || ((b = this.eventMask & 4) != 0 && a.id >= 1004 && a.id <= 1005) || ((b = this.eventMask & 8) != 0 && a.id >= 400 && a.id <= 402) || ((b = this.eventMask & 131072) != 0 && a.id == 507) || ((b = this.eventMask & 32) != 0 && (a.id == 503 || a.id == 506)) || ((b = this.eventMask & 16) != 0 && a.id != 503 && a.id != 506 && a.id != 507 && a.id >= 500 && a.id <= 507) || ((b = this.eventMask & 64) != 0 && (a.id >= 200 && a.id <= 209)) || ((b = this.eventMask & 128) != 0 && a.id >= 1001 && a.id <= 1001) || ((b = this.eventMask & 256) != 0 && a.id >= 601 && a.id <= 601) || ((b = this.eventMask & 512) != 0 && a.id >= 701 && a.id <= 701) || ((b = this.eventMask & 1024) != 0 && a.id >= 900 && a.id <= 900) || ((b = this.eventMask & 2048) != 0 && a.id >= 1100 && a.id <= 1101) || ((b = this.eventMask & 8192) != 0 && a.id >= 800 && a.id <= 801) || ((b = this.eventMask & 16384) != 0 && a.id >= 1200 && a.id <= 1201) || ((b = this.eventMask & 32768) != 0 && a.id == 1400) || ((b = this.eventMask & 65536) != 0 && (a.id == 1401 || a.id == 1402)) || ((b = this.eventMask & 262144) != 0 && a.id == 209) || ((b = this.eventMask & 524288) != 0 && (a.id == 207 || a.id == 208))) {
\r
289 for (var d = b; d != 0; d >>>= 1, c++) {
\r
292 for (var e = 0; e < this.calls[c]; e++) {
\r
293 this.listener.eventDispatched (a);
\r
295 }}, "java.awt.AWTEvent");
\r
298 Clazz.pu$h(self.c$);
\r
299 c$ = Clazz.declareType (java.awt.Toolkit, "ToolkitEventMulticaster", java.awt.AWTEventMulticaster, java.awt.event.AWTEventListener);
\r
300 c$.add = Clazz.defineMethod (c$, "add",
\r
302 if (a == null) return b;
\r
303 if (b == null) return a;
\r
304 return new java.awt.Toolkit.ToolkitEventMulticaster (a, b);
\r
305 }, "java.awt.event.AWTEventListener,java.awt.event.AWTEventListener");
\r
306 c$.remove = Clazz.defineMethod (c$, "remove",
\r
308 return java.awt.AWTEventMulticaster.removeInternal (a, b);
\r
309 }, "java.awt.event.AWTEventListener,java.awt.event.AWTEventListener");
\r
310 Clazz.defineMethod (c$, "remove",
\r
312 if (a === this.a) return this.b;
\r
313 if (a === this.b) return this.a;
\r
314 var b = java.awt.AWTEventMulticaster.removeInternal (this.a, a);
\r
315 var c = java.awt.AWTEventMulticaster.removeInternal (this.b, a);
\r
316 if (b === this.a && c === this.b) {
\r
318 }return java.awt.Toolkit.ToolkitEventMulticaster.add (b, c);
\r
319 }, "java.util.EventListener");
\r
320 Clazz.defineMethod (c$, "eventDispatched",
\r
322 (this.a).eventDispatched (a);
\r
323 (this.b).eventDispatched (a);
\r
324 }, "java.awt.AWTEvent");
\r
326 Clazz.defineStatics (c$,
\r
327 "lightweightMarker", null,
\r
331 "enabledOnToolkitMask", 0);
\r