JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / site / j2s / java / awt / Toolkit.js
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
6 this.calls = 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
11 }\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
19 });\r
20 Clazz.defineMethod (c$, "createComponent", \r
21 function (target) {\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
28 }, "~A");\r
29 Clazz.defineMethod (c$, "setDynamicLayout", \r
30 function (dynamic) {\r
31 }, "~B");\r
32 Clazz.defineMethod (c$, "isDynamicLayoutSet", \r
33 function () {\r
34 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {\r
35 return java.awt.Toolkit.getDefaultToolkit ().isDynamicLayoutSet ();\r
36 } else {\r
37 return false;\r
38 }});\r
39 Clazz.defineMethod (c$, "isDynamicLayoutActive", \r
40 function () {\r
41 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {\r
42 return java.awt.Toolkit.getDefaultToolkit ().isDynamicLayoutActive ();\r
43 } else {\r
44 return false;\r
45 }});\r
46 Clazz.defineMethod (c$, "getScreenInsets", \r
47 function (gc) {\r
48 if (this !== java.awt.Toolkit.getDefaultToolkit ()) {\r
49 return java.awt.Toolkit.getDefaultToolkit ().getScreenInsets (gc);\r
50 } else {\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
54 function () {\r
55 return (java.awt.Toolkit.toolkit == null ? java.awt.Toolkit.toolkit =  new swingjs.JSToolkit () : java.awt.Toolkit.toolkit);\r
56 });\r
57 Clazz.defineMethod (c$, "createImage", \r
58 function (imagedata) {\r
59 return this.createImage (imagedata, 0, imagedata.length);\r
60 }, "~A");\r
61 Clazz.defineMethod (c$, "getMenuShortcutKeyMask", \r
62 function () {\r
63 return 2;\r
64 });\r
65 c$.getNativeContainer = Clazz.defineMethod (c$, "getNativeContainer", \r
66 function (c) {\r
67 return null;\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
74 function (state) {\r
75 return (state == 0);\r
76 }, "~N");\r
77 c$.getProperty = Clazz.defineMethod (c$, "getProperty", \r
78 function (key, defaultValue) {\r
79 if (java.awt.Toolkit.resources != null) {\r
80 try {\r
81 return java.awt.Toolkit.resources.getString (key);\r
82 } catch (e) {\r
83 if (Clazz.exceptionOf (e, java.util.MissingResourceException)) {\r
84 } else {\r
85 throw e;\r
86 }\r
87 }\r
88 }return defaultValue;\r
89 }, "~S,~S");\r
90 Clazz.defineMethod (c$, "getSystemEventQueue", \r
91 function () {\r
92 return this.getSystemEventQueueImpl ();\r
93 });\r
94 c$.getEventQueue = Clazz.defineMethod (c$, "getEventQueue", \r
95 function () {\r
96 return java.awt.Toolkit.getDefaultToolkit ().getSystemEventQueueImpl ();\r
97 });\r
98 Clazz.defineMethod (c$, "getDesktopProperty", \r
99 function (propertyName) {\r
100 if (this.desktopProperties.isEmpty ()) {\r
101 this.initializeDesktopProperties ();\r
102 }var value;\r
103 if (propertyName.equals ("awt.dynamicLayoutSupported")) {\r
104 value = this.lazilyLoadDesktopProperty (propertyName);\r
105 return value;\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
113 }return value;\r
114 }, "~S");\r
115 Clazz.defineMethod (c$, "setDesktopProperty", \r
116 function (name, newValue) {\r
117 var oldValue;\r
118 {\r
119 oldValue = this.desktopProperties.get (name);\r
120 this.desktopProperties.put (name, newValue);\r
121 }this.desktopPropsSupport.firePropertyChange (name, oldValue, newValue);\r
122 }, "~S,~O");\r
123 Clazz.defineMethod (c$, "lazilyLoadDesktopProperty", \r
124 function (name) {\r
125 return null;\r
126 }, "~S");\r
127 Clazz.defineMethod (c$, "initializeDesktopProperties", \r
128 function () {\r
129 });\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
139 function () {\r
140 return this.desktopPropsSupport.getPropertyChangeListeners ();\r
141 });\r
142 Clazz.defineMethod (c$, "getPropertyChangeListeners", \r
143 function (propertyName) {\r
144 return this.desktopPropsSupport.getPropertyChangeListeners (propertyName);\r
145 }, "~S");\r
146 Clazz.defineMethod (c$, "isAlwaysOnTopSupported", \r
147 function () {\r
148 return true;\r
149 });\r
150 c$.deProxyAWTEventListener = Clazz.defineMethod (c$, "deProxyAWTEventListener", \r
151  function (l) {\r
152 var localL = l;\r
153 if (localL == null) {\r
154 return null;\r
155 }if (Clazz.instanceOf (l, java.awt.event.AWTEventListenerProxy)) {\r
156 localL = (l).getListener ();\r
157 }return localL;\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
163 return;\r
164 }{\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
174 if (mask == 0) {\r
175 break;\r
176 }if ((mask & 1) != 0) {\r
177 this.calls[i]++;\r
178 }mask >>>= 1;\r
179 }\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
185 return;\r
186 }{\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
195 }}\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
201 }, "~N");\r
202 Clazz.defineMethod (c$, "countAWTEventListeners", \r
203 function (eventMask) {\r
204 var ci = 0;\r
205 for (; eventMask != 0; eventMask >>>= 1, ci++) {\r
206 }\r
207 ci--;\r
208 return this.calls[ci];\r
209 }, "~N");\r
210 Clazz.defineMethod (c$, "getAWTEventListeners", \r
211 function () {\r
212 {\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
216 var sael = la[i];\r
217 var tempL = sael.getListener ();\r
218 ret[i] =  new java.awt.event.AWTEventListenerProxy (sael.getEventMask (), tempL);\r
219 }\r
220 return ret;\r
221 }});\r
222 Clazz.defineMethod (c$, "getAWTEventListeners", \r
223 function (eventMask) {\r
224 {\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
228 var sael = la[i];\r
229 if ((sael.getEventMask () & eventMask) == eventMask) {\r
230 list.add ( new java.awt.event.AWTEventListenerProxy (sael.getEventMask (), sael.getListener ()));\r
231 }}\r
232 return list.toArray ( new Array (0));\r
233 }}, "~N");\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
250 this.calls = null;\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
255 });\r
256 Clazz.defineMethod (c$, "getListener", \r
257 function () {\r
258 return this.listener;\r
259 });\r
260 Clazz.defineMethod (c$, "getEventMask", \r
261 function () {\r
262 return this.eventMask;\r
263 });\r
264 Clazz.defineMethod (c$, "getCalls", \r
265 function () {\r
266 return this.calls;\r
267 });\r
268 Clazz.defineMethod (c$, "orEventMasks", \r
269 function (a) {\r
270 this.eventMask |= a;\r
271 for (var b = 0; b < 32; b++) {\r
272 if (a == 0) {\r
273 break;\r
274 }if ((a & 1) != 0) {\r
275 this.calls[b]++;\r
276 }a >>>= 1;\r
277 }\r
278 }, "~N");\r
279 Clazz.makeConstructor (c$, \r
280 function (a, b) {\r
281 this.listener = a;\r
282 this.eventMask = b;\r
283 }, "java.awt.event.AWTEventListener,~N");\r
284 Clazz.defineMethod (c$, "eventDispatched", \r
285 function (a) {\r
286 var b = 0;\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
288 var c = 0;\r
289 for (var d = b; d != 0; d >>>= 1, c++) {\r
290 }\r
291 c--;\r
292 for (var e = 0; e < this.calls[c]; e++) {\r
293 this.listener.eventDispatched (a);\r
294 }\r
295 }}, "java.awt.AWTEvent");\r
296 c$ = Clazz.p0p ();\r
297 };\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
301 function (a, b) {\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
307 function (a, b) {\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
311 function (a) {\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
317 return this;\r
318 }return java.awt.Toolkit.ToolkitEventMulticaster.add (b, c);\r
319 }, "java.util.EventListener");\r
320 Clazz.defineMethod (c$, "eventDispatched", \r
321 function (a) {\r
322 (this.a).eventDispatched (a);\r
323 (this.b).eventDispatched (a);\r
324 }, "java.awt.AWTEvent");\r
325 c$ = Clazz.p0p ();\r
326 Clazz.defineStatics (c$,\r
327 "lightweightMarker", null,\r
328 "toolkit", null,\r
329 "resources", null,\r
330 "LONG_BITS", 32,\r
331 "enabledOnToolkitMask", 0);\r
332 });\r