edec3ff954aac6fabaeacd2072753ddf07dce527
[jalviewjs.git] / site / j2s / javax / swing / SwingUtilities.js
1 Clazz.declarePackage ("javax.swing");\r
2 Clazz.load (["java.awt.Frame", "java.awt.event.WindowListener", "javax.swing.SwingConstants"], "javax.swing.SwingUtilities", ["java.lang.Character", "$.Error", "$.Thread", "java.applet.Applet", "java.awt.Component", "$.Container", "$.EventQueue", "$.Point", "$.Rectangle", "$.Window", "java.awt.event.ActionEvent", "$.MouseEvent", "$.MouseWheelEvent", "javax.swing.JComponent", "javax.swing.JComponent.ActionStandin", "javax.swing.JRootPane", "$.RootPaneContainer", "javax.swing.event.MenuDragMouseEvent", "javax.swing.plaf.UIResource", "jssun.awt.AppContext", "jssun.swing.UIAction", "swingjs.api.Interface"], function () {\r
3 c$ = Clazz.declareType (javax.swing, "SwingUtilities", null, javax.swing.SwingConstants);\r
4 c$.installSwingDropTargetAsNecessary = Clazz.defineMethod (c$, "installSwingDropTargetAsNecessary", \r
5 function (c, t) {\r
6 }, "java.awt.Component,javax.swing.TransferHandler");\r
7 c$.isRectangleContainingRectangle = Clazz.defineMethod (c$, "isRectangleContainingRectangle", \r
8 function (a, b) {\r
9 if (b.x >= a.x && (b.x + b.width) <= (a.x + a.width) && b.y >= a.y && (b.y + b.height) <= (a.y + a.height)) {\r
10 return true;\r
11 }return false;\r
12 }, "java.awt.Rectangle,java.awt.Rectangle");\r
13 c$.getLocalBounds = Clazz.defineMethod (c$, "getLocalBounds", \r
14 function (aComponent) {\r
15 var b =  new java.awt.Rectangle (aComponent.getBounds ());\r
16 b.x = b.y = 0;\r
17 return b;\r
18 }, "java.awt.Component");\r
19 c$.getWindowAncestor = Clazz.defineMethod (c$, "getWindowAncestor", \r
20 function (c) {\r
21 for (var p = c.getParent (); p != null; p = p.getParent ()) {\r
22 if (Clazz.instanceOf (p, java.awt.Window)) {\r
23 return p;\r
24 }}\r
25 return null;\r
26 }, "java.awt.Component");\r
27 c$.convertScreenLocationToParent = Clazz.defineMethod (c$, "convertScreenLocationToParent", \r
28 function (parent, x, y) {\r
29 for (var p = parent; p != null; p = p.getParent ()) {\r
30 if (Clazz.instanceOf (p, java.awt.Window)) {\r
31 var point =  new java.awt.Point (x, y);\r
32 javax.swing.SwingUtilities.convertPointFromScreen (point, parent);\r
33 return point;\r
34 }}\r
35 throw  new Error ("convertScreenLocationToParent: no window ancestor");\r
36 }, "java.awt.Container,~N,~N");\r
37 c$.convertPoint = Clazz.defineMethod (c$, "convertPoint", \r
38 function (source, aPoint, destination) {\r
39 var p;\r
40 if (source == null && destination == null) return aPoint;\r
41 if (source == null) {\r
42 source = javax.swing.SwingUtilities.getWindowAncestor (destination);\r
43 if (source == null) throw  new Error ("Source component not connected to component tree hierarchy");\r
44 }p =  new java.awt.Point (aPoint);\r
45 javax.swing.SwingUtilities.convertPointToScreen (p, source);\r
46 if (destination == null) {\r
47 destination = javax.swing.SwingUtilities.getWindowAncestor (source);\r
48 if (destination == null) throw  new Error ("Destination component not connected to component tree hierarchy");\r
49 }javax.swing.SwingUtilities.convertPointFromScreen (p, destination);\r
50 return p;\r
51 }, "java.awt.Component,java.awt.Point,java.awt.Component");\r
52 c$.convertPoint = Clazz.defineMethod (c$, "convertPoint", \r
53 function (source, x, y, destination) {\r
54 var point =  new java.awt.Point (x, y);\r
55 return javax.swing.SwingUtilities.convertPoint (source, point, destination);\r
56 }, "java.awt.Component,~N,~N,java.awt.Component");\r
57 c$.convertRectangle = Clazz.defineMethod (c$, "convertRectangle", \r
58 function (source, aRectangle, destination) {\r
59 var point =  new java.awt.Point (aRectangle.x, aRectangle.y);\r
60 point = javax.swing.SwingUtilities.convertPoint (source, point, destination);\r
61 return  new java.awt.Rectangle (point.x, point.y, aRectangle.width, aRectangle.height);\r
62 }, "java.awt.Component,java.awt.Rectangle,java.awt.Component");\r
63 c$.getAncestorOfClass = Clazz.defineMethod (c$, "getAncestorOfClass", \r
64 function (c, comp) {\r
65 if (comp == null || c == null) return null;\r
66 var parent = comp.getParent ();\r
67 while (parent != null && !(c.isInstance (parent))) parent = parent.getParent ();\r
68 \r
69 return parent;\r
70 }, "Class,java.awt.Component");\r
71 c$.getAncestorNamed = Clazz.defineMethod (c$, "getAncestorNamed", \r
72 function (name, comp) {\r
73 if (comp == null || name == null) return null;\r
74 var parent = comp.getParent ();\r
75 while (parent != null && !(name.equals (parent.getName ()))) parent = parent.getParent ();\r
76 \r
77 return parent;\r
78 }, "~S,java.awt.Component");\r
79 c$.getDeepestComponentAt = Clazz.defineMethod (c$, "getDeepestComponentAt", \r
80 function (parent, x, y) {\r
81 if (!parent.contains (x, y)) {\r
82 return null;\r
83 }if (Clazz.instanceOf (parent, java.awt.Container)) {\r
84 var components = (parent).getComponents ();\r
85 for (var i = 0; i < components.length; i++) {\r
86 var comp = components[i];\r
87 if (comp != null && comp.isVisible ()) {\r
88 var loc = comp.getLocation ();\r
89 if (Clazz.instanceOf (comp, java.awt.Container)) {\r
90 comp = javax.swing.SwingUtilities.getDeepestComponentAt (comp, x - loc.x, y - loc.y);\r
91 } else {\r
92 comp = comp.getComponentAt (x - loc.x, y - loc.y);\r
93 }if (comp != null && comp.isVisible ()) {\r
94 return comp;\r
95 }}}\r
96 }return parent;\r
97 }, "java.awt.Component,~N,~N");\r
98 c$.convertMouseEvent = Clazz.defineMethod (c$, "convertMouseEvent", \r
99 function (source, sourceEvent, destination) {\r
100 var p = javax.swing.SwingUtilities.convertPoint (source,  new java.awt.Point (sourceEvent.getX (), sourceEvent.getY ()), destination);\r
101 var newSource;\r
102 if (destination != null) newSource = destination;\r
103  else newSource = source;\r
104 var newEvent;\r
105 if (Clazz.instanceOf (sourceEvent, java.awt.event.MouseWheelEvent)) {\r
106 var sourceWheelEvent = sourceEvent;\r
107 newEvent =  new java.awt.event.MouseWheelEvent (newSource, sourceWheelEvent.getID (), sourceWheelEvent.getWhen (), sourceWheelEvent.getModifiers (), p.x, p.y, sourceWheelEvent.getXOnScreen (), sourceWheelEvent.getYOnScreen (), sourceWheelEvent.getClickCount (), sourceWheelEvent.isPopupTrigger (), sourceWheelEvent.getScrollType (), sourceWheelEvent.getScrollAmount (), sourceWheelEvent.getWheelRotation ());\r
108 } else if (Clazz.instanceOf (sourceEvent, javax.swing.event.MenuDragMouseEvent)) {\r
109 var sourceMenuDragEvent = sourceEvent;\r
110 newEvent =  new javax.swing.event.MenuDragMouseEvent (newSource, sourceMenuDragEvent.getID (), sourceMenuDragEvent.getWhen (), sourceMenuDragEvent.getModifiers (), p.x, p.y, sourceMenuDragEvent.getXOnScreen (), sourceMenuDragEvent.getYOnScreen (), sourceMenuDragEvent.getClickCount (), sourceMenuDragEvent.isPopupTrigger (), sourceMenuDragEvent.getPath (), sourceMenuDragEvent.getMenuSelectionManager ());\r
111 } else {\r
112 newEvent =  new java.awt.event.MouseEvent (newSource, sourceEvent.getID (), sourceEvent.getWhen (), sourceEvent.getModifiers (), p.x, p.y, sourceEvent.getXOnScreen (), sourceEvent.getYOnScreen (), sourceEvent.getClickCount (), sourceEvent.isPopupTrigger (), 0);\r
113 }return newEvent;\r
114 }, "java.awt.Component,java.awt.event.MouseEvent,java.awt.Component");\r
115 c$.convertPointToScreen = Clazz.defineMethod (c$, "convertPointToScreen", \r
116 function (p, c) {\r
117 var x;\r
118 var y;\r
119 do {\r
120 if (Clazz.instanceOf (c, javax.swing.JComponent)) {\r
121 x = (c).getX ();\r
122 y = (c).getY ();\r
123 } else if (Clazz.instanceOf (c, java.applet.Applet) || Clazz.instanceOf (c, java.awt.Window)) {\r
124 try {\r
125 var pp = c.getLocationOnScreen ();\r
126 x = pp.x;\r
127 y = pp.y;\r
128 } catch (icse) {\r
129 if (Clazz.exceptionOf (icse, java.awt.IllegalComponentStateException)) {\r
130 x = c.getX ();\r
131 y = c.getY ();\r
132 } else {\r
133 throw icse;\r
134 }\r
135 }\r
136 } else {\r
137 x = c.getX ();\r
138 y = c.getY ();\r
139 }p.x += x;\r
140 p.y += y;\r
141 if (Clazz.instanceOf (c, java.awt.Window) || Clazz.instanceOf (c, java.applet.Applet)) break;\r
142 c = c.getParent ();\r
143 } while (c != null);\r
144 }, "java.awt.Point,java.awt.Component");\r
145 c$.convertPointFromScreen = Clazz.defineMethod (c$, "convertPointFromScreen", \r
146 function (p, c) {\r
147 var x;\r
148 var y;\r
149 do {\r
150 if (Clazz.instanceOf (c, javax.swing.JComponent)) {\r
151 x = (c).getX ();\r
152 y = (c).getY ();\r
153 } else if (Clazz.instanceOf (c, java.applet.Applet) || Clazz.instanceOf (c, java.awt.Window)) {\r
154 try {\r
155 var pp = c.getLocationOnScreen ();\r
156 x = pp.x;\r
157 y = pp.y;\r
158 } catch (icse) {\r
159 if (Clazz.exceptionOf (icse, java.awt.IllegalComponentStateException)) {\r
160 x = c.getX ();\r
161 y = c.getY ();\r
162 } else {\r
163 throw icse;\r
164 }\r
165 }\r
166 } else {\r
167 x = c.getX ();\r
168 y = c.getY ();\r
169 }p.x -= x;\r
170 p.y -= y;\r
171 if (Clazz.instanceOf (c, java.awt.Window) || Clazz.instanceOf (c, java.applet.Applet)) break;\r
172 c = c.getParent ();\r
173 } while (c != null);\r
174 }, "java.awt.Point,java.awt.Component");\r
175 c$.windowForComponent = Clazz.defineMethod (c$, "windowForComponent", \r
176 function (c) {\r
177 return javax.swing.SwingUtilities.getWindowAncestor (c);\r
178 }, "java.awt.Component");\r
179 c$.isDescendingFrom = Clazz.defineMethod (c$, "isDescendingFrom", \r
180 function (a, b) {\r
181 if (a === b) return true;\r
182 for (var p = a.getParent (); p != null; p = p.getParent ()) if (p === b) return true;\r
183 \r
184 return false;\r
185 }, "java.awt.Component,java.awt.Component");\r
186 c$.computeIntersection = Clazz.defineMethod (c$, "computeIntersection", \r
187 function (x, y, width, height, dest) {\r
188 var x1 = (x > dest.x) ? x : dest.x;\r
189 var x2 = ((x + width) < (dest.x + dest.width)) ? (x + width) : (dest.x + dest.width);\r
190 var y1 = (y > dest.y) ? y : dest.y;\r
191 var y2 = ((y + height) < (dest.y + dest.height) ? (y + height) : (dest.y + dest.height));\r
192 dest.x = x1;\r
193 dest.y = y1;\r
194 dest.width = x2 - x1;\r
195 dest.height = y2 - y1;\r
196 if (dest.width < 0 || dest.height < 0) {\r
197 dest.x = dest.y = dest.width = dest.height = 0;\r
198 }return dest;\r
199 }, "~N,~N,~N,~N,java.awt.Rectangle");\r
200 c$.computeUnion = Clazz.defineMethod (c$, "computeUnion", \r
201 function (x, y, width, height, dest) {\r
202 var x1 = (x < dest.x) ? x : dest.x;\r
203 var x2 = ((x + width) > (dest.x + dest.width)) ? (x + width) : (dest.x + dest.width);\r
204 var y1 = (y < dest.y) ? y : dest.y;\r
205 var y2 = ((y + height) > (dest.y + dest.height)) ? (y + height) : (dest.y + dest.height);\r
206 dest.x = x1;\r
207 dest.y = y1;\r
208 dest.width = (x2 - x1);\r
209 dest.height = (y2 - y1);\r
210 return dest;\r
211 }, "~N,~N,~N,~N,java.awt.Rectangle");\r
212 c$.computeDifference = Clazz.defineMethod (c$, "computeDifference", \r
213 function (rectA, rectB) {\r
214 if (rectB == null || !rectA.intersects (rectB) || javax.swing.SwingUtilities.isRectangleContainingRectangle (rectB, rectA)) {\r
215 return  new Array (0);\r
216 }var t =  new java.awt.Rectangle ();\r
217 var a = null;\r
218 var b = null;\r
219 var c = null;\r
220 var d = null;\r
221 var result;\r
222 var rectCount = 0;\r
223 if (javax.swing.SwingUtilities.isRectangleContainingRectangle (rectA, rectB)) {\r
224 t.x = rectA.x;\r
225 t.y = rectA.y;\r
226 t.width = rectB.x - rectA.x;\r
227 t.height = rectA.height;\r
228 if (t.width > 0 && t.height > 0) {\r
229 a =  new java.awt.Rectangle (t);\r
230 rectCount++;\r
231 }t.x = rectB.x;\r
232 t.y = rectA.y;\r
233 t.width = rectB.width;\r
234 t.height = rectB.y - rectA.y;\r
235 if (t.width > 0 && t.height > 0) {\r
236 b =  new java.awt.Rectangle (t);\r
237 rectCount++;\r
238 }t.x = rectB.x;\r
239 t.y = rectB.y + rectB.height;\r
240 t.width = rectB.width;\r
241 t.height = rectA.y + rectA.height - (rectB.y + rectB.height);\r
242 if (t.width > 0 && t.height > 0) {\r
243 c =  new java.awt.Rectangle (t);\r
244 rectCount++;\r
245 }t.x = rectB.x + rectB.width;\r
246 t.y = rectA.y;\r
247 t.width = rectA.x + rectA.width - (rectB.x + rectB.width);\r
248 t.height = rectA.height;\r
249 if (t.width > 0 && t.height > 0) {\r
250 d =  new java.awt.Rectangle (t);\r
251 rectCount++;\r
252 }} else {\r
253 if (rectB.x <= rectA.x && rectB.y <= rectA.y) {\r
254 if ((rectB.x + rectB.width) > (rectA.x + rectA.width)) {\r
255 t.x = rectA.x;\r
256 t.y = rectB.y + rectB.height;\r
257 t.width = rectA.width;\r
258 t.height = rectA.y + rectA.height - (rectB.y + rectB.height);\r
259 if (t.width > 0 && t.height > 0) {\r
260 a = t;\r
261 rectCount++;\r
262 }} else if ((rectB.y + rectB.height) > (rectA.y + rectA.height)) {\r
263 t.reshape ((rectB.x + rectB.width), rectA.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), rectA.height);\r
264 if (t.width > 0 && t.height > 0) {\r
265 a = t;\r
266 rectCount++;\r
267 }} else {\r
268 t.reshape ((rectB.x + rectB.width), rectA.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), (rectB.y + rectB.height) - rectA.y);\r
269 if (t.width > 0 && t.height > 0) {\r
270 a =  new java.awt.Rectangle (t);\r
271 rectCount++;\r
272 }t.reshape (rectA.x, (rectB.y + rectB.height), rectA.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
273 if (t.width > 0 && t.height > 0) {\r
274 b =  new java.awt.Rectangle (t);\r
275 rectCount++;\r
276 }}} else if (rectB.x <= rectA.x && (rectB.y + rectB.height) >= (rectA.y + rectA.height)) {\r
277 if ((rectB.x + rectB.width) > (rectA.x + rectA.width)) {\r
278 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
279 if (t.width > 0 && t.height > 0) {\r
280 a = t;\r
281 rectCount++;\r
282 }} else {\r
283 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
284 if (t.width > 0 && t.height > 0) {\r
285 a =  new java.awt.Rectangle (t);\r
286 rectCount++;\r
287 }t.reshape ((rectB.x + rectB.width), rectB.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), (rectA.y + rectA.height) - rectB.y);\r
288 if (t.width > 0 && t.height > 0) {\r
289 b =  new java.awt.Rectangle (t);\r
290 rectCount++;\r
291 }}} else if (rectB.x <= rectA.x) {\r
292 if ((rectB.x + rectB.width) >= (rectA.x + rectA.width)) {\r
293 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
294 if (t.width > 0 && t.height > 0) {\r
295 a =  new java.awt.Rectangle (t);\r
296 rectCount++;\r
297 }t.reshape (rectA.x, (rectB.y + rectB.height), rectA.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
298 if (t.width > 0 && t.height > 0) {\r
299 b =  new java.awt.Rectangle (t);\r
300 rectCount++;\r
301 }} else {\r
302 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
303 if (t.width > 0 && t.height > 0) {\r
304 a =  new java.awt.Rectangle (t);\r
305 rectCount++;\r
306 }t.reshape ((rectB.x + rectB.width), rectB.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), rectB.height);\r
307 if (t.width > 0 && t.height > 0) {\r
308 b =  new java.awt.Rectangle (t);\r
309 rectCount++;\r
310 }t.reshape (rectA.x, (rectB.y + rectB.height), rectA.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
311 if (t.width > 0 && t.height > 0) {\r
312 c =  new java.awt.Rectangle (t);\r
313 rectCount++;\r
314 }}} else if (rectB.x <= (rectA.x + rectA.width) && (rectB.x + rectB.width) > (rectA.x + rectA.width)) {\r
315 if (rectB.y <= rectA.y && (rectB.y + rectB.height) > (rectA.y + rectA.height)) {\r
316 t.reshape (rectA.x, rectA.y, rectB.x - rectA.x, rectA.height);\r
317 if (t.width > 0 && t.height > 0) {\r
318 a = t;\r
319 rectCount++;\r
320 }} else if (rectB.y <= rectA.y) {\r
321 t.reshape (rectA.x, rectA.y, rectB.x - rectA.x, (rectB.y + rectB.height) - rectA.y);\r
322 if (t.width > 0 && t.height > 0) {\r
323 a =  new java.awt.Rectangle (t);\r
324 rectCount++;\r
325 }t.reshape (rectA.x, (rectB.y + rectB.height), rectA.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
326 if (t.width > 0 && t.height > 0) {\r
327 b =  new java.awt.Rectangle (t);\r
328 rectCount++;\r
329 }} else if ((rectB.y + rectB.height) > (rectA.y + rectA.height)) {\r
330 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
331 if (t.width > 0 && t.height > 0) {\r
332 a =  new java.awt.Rectangle (t);\r
333 rectCount++;\r
334 }t.reshape (rectA.x, rectB.y, rectB.x - rectA.x, (rectA.y + rectA.height) - rectB.y);\r
335 if (t.width > 0 && t.height > 0) {\r
336 b =  new java.awt.Rectangle (t);\r
337 rectCount++;\r
338 }} else {\r
339 t.reshape (rectA.x, rectA.y, rectA.width, rectB.y - rectA.y);\r
340 if (t.width > 0 && t.height > 0) {\r
341 a =  new java.awt.Rectangle (t);\r
342 rectCount++;\r
343 }t.reshape (rectA.x, rectB.y, rectB.x - rectA.x, rectB.height);\r
344 if (t.width > 0 && t.height > 0) {\r
345 b =  new java.awt.Rectangle (t);\r
346 rectCount++;\r
347 }t.reshape (rectA.x, (rectB.y + rectB.height), rectA.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
348 if (t.width > 0 && t.height > 0) {\r
349 c =  new java.awt.Rectangle (t);\r
350 rectCount++;\r
351 }}} else if (rectB.x >= rectA.x && (rectB.x + rectB.width) <= (rectA.x + rectA.width)) {\r
352 if (rectB.y <= rectA.y && (rectB.y + rectB.height) > (rectA.y + rectA.height)) {\r
353 t.reshape (rectA.x, rectA.y, rectB.x - rectA.x, rectA.height);\r
354 if (t.width > 0 && t.height > 0) {\r
355 a =  new java.awt.Rectangle (t);\r
356 rectCount++;\r
357 }t.reshape ((rectB.x + rectB.width), rectA.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), rectA.height);\r
358 if (t.width > 0 && t.height > 0) {\r
359 b =  new java.awt.Rectangle (t);\r
360 rectCount++;\r
361 }} else if (rectB.y <= rectA.y) {\r
362 t.reshape (rectA.x, rectA.y, rectB.x - rectA.x, rectA.height);\r
363 if (t.width > 0 && t.height > 0) {\r
364 a =  new java.awt.Rectangle (t);\r
365 rectCount++;\r
366 }t.reshape (rectB.x, (rectB.y + rectB.height), rectB.width, (rectA.y + rectA.height) - (rectB.y + rectB.height));\r
367 if (t.width > 0 && t.height > 0) {\r
368 b =  new java.awt.Rectangle (t);\r
369 rectCount++;\r
370 }t.reshape ((rectB.x + rectB.width), rectA.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), rectA.height);\r
371 if (t.width > 0 && t.height > 0) {\r
372 c =  new java.awt.Rectangle (t);\r
373 rectCount++;\r
374 }} else {\r
375 t.reshape (rectA.x, rectA.y, rectB.x - rectA.x, rectA.height);\r
376 if (t.width > 0 && t.height > 0) {\r
377 a =  new java.awt.Rectangle (t);\r
378 rectCount++;\r
379 }t.reshape (rectB.x, rectA.y, rectB.width, rectB.y - rectA.y);\r
380 if (t.width > 0 && t.height > 0) {\r
381 b =  new java.awt.Rectangle (t);\r
382 rectCount++;\r
383 }t.reshape ((rectB.x + rectB.width), rectA.y, (rectA.x + rectA.width) - (rectB.x + rectB.width), rectA.height);\r
384 if (t.width > 0 && t.height > 0) {\r
385 c =  new java.awt.Rectangle (t);\r
386 rectCount++;\r
387 }}}}result =  new Array (rectCount);\r
388 rectCount = 0;\r
389 if (a != null) result[rectCount++] = a;\r
390 if (b != null) result[rectCount++] = b;\r
391 if (c != null) result[rectCount++] = c;\r
392 if (d != null) result[rectCount++] = d;\r
393 return result;\r
394 }, "java.awt.Rectangle,java.awt.Rectangle");\r
395 c$.isLeftMouseButton = Clazz.defineMethod (c$, "isLeftMouseButton", \r
396 function (anEvent) {\r
397 return ((anEvent.getModifiers () & 16) != 0);\r
398 }, "java.awt.event.MouseEvent");\r
399 c$.isMiddleMouseButton = Clazz.defineMethod (c$, "isMiddleMouseButton", \r
400 function (anEvent) {\r
401 return ((anEvent.getModifiers () & 8) == 8);\r
402 }, "java.awt.event.MouseEvent");\r
403 c$.isRightMouseButton = Clazz.defineMethod (c$, "isRightMouseButton", \r
404 function (anEvent) {\r
405 return ((anEvent.getModifiers () & 4) == 4);\r
406 }, "java.awt.event.MouseEvent");\r
407 c$.paintComponent = Clazz.defineMethod (c$, "paintComponent", \r
408 function (g, c, p, x, y, w, h) {\r
409 javax.swing.SwingUtilities.getCellRendererPane (c, p).paintComponent (g, c, p, x, y, w, h, false);\r
410 }, "java.awt.Graphics,java.awt.Component,java.awt.Container,~N,~N,~N,~N");\r
411 c$.paintComponent = Clazz.defineMethod (c$, "paintComponent", \r
412 function (g, c, p, r) {\r
413 javax.swing.SwingUtilities.paintComponent (g, c, p, r.x, r.y, r.width, r.height);\r
414 }, "java.awt.Graphics,java.awt.Component,java.awt.Container,java.awt.Rectangle");\r
415 c$.getCellRendererPane = Clazz.defineMethod (c$, "getCellRendererPane", \r
416  function (c, p) {\r
417 var shell = c.getParent ();\r
418 if (Clazz.instanceOf (shell, javax.swing.CellRendererPane)) {\r
419 if (shell.getParent () !== p) {\r
420 p.add (shell);\r
421 }} else {\r
422 shell = swingjs.api.Interface.getInstance ("javax.swing.CellRendererPane", false);\r
423 shell.add (c);\r
424 p.add (shell);\r
425 }return shell;\r
426 }, "java.awt.Component,java.awt.Container");\r
427 c$.updateComponentTreeUI = Clazz.defineMethod (c$, "updateComponentTreeUI", \r
428 function (c) {\r
429 javax.swing.SwingUtilities.updateComponentTreeUI0 (c);\r
430 c.invalidate ();\r
431 c.validate ();\r
432 c.repaint ();\r
433 }, "java.awt.Component");\r
434 c$.updateComponentTreeUI0 = Clazz.defineMethod (c$, "updateComponentTreeUI0", \r
435  function (c) {\r
436 if (Clazz.instanceOf (c, javax.swing.JComponent)) {\r
437 var jc = c;\r
438 jc.updateUI ();\r
439 var jpm = jc.getComponentPopupMenu ();\r
440 if (jpm != null) {\r
441 javax.swing.SwingUtilities.updateComponentTreeUI (jpm);\r
442 }}var children = null;\r
443 if (Clazz.instanceOf (c, javax.swing.JMenu)) {\r
444 children = (c).getMenuComponents ();\r
445 } else if (Clazz.instanceOf (c, java.awt.Container)) {\r
446 children = (c).getComponents ();\r
447 }if (children != null) {\r
448 for (var i = 0; i < children.length; i++) {\r
449 javax.swing.SwingUtilities.updateComponentTreeUI0 (children[i]);\r
450 }\r
451 }}, "java.awt.Component");\r
452 c$.invokeLater = Clazz.defineMethod (c$, "invokeLater", \r
453 function (doRun) {\r
454 java.awt.EventQueue.invokeLater (doRun);\r
455 }, "Runnable");\r
456 c$.invokeAndWait = Clazz.defineMethod (c$, "invokeAndWait", \r
457 function (doRun) {\r
458 java.awt.EventQueue.invokeAndWait (doRun);\r
459 }, "Runnable");\r
460 c$.isEventDispatchThread = Clazz.defineMethod (c$, "isEventDispatchThread", \r
461 function () {\r
462 return java.awt.EventQueue.isDispatchThread ();\r
463 });\r
464 c$.getRootPane = Clazz.defineMethod (c$, "getRootPane", \r
465 function (c) {\r
466 if (Clazz.instanceOf (c, javax.swing.RootPaneContainer)) {\r
467 return (c).getRootPane ();\r
468 }for (; c != null; c = c.getParent ()) {\r
469 if (Clazz.instanceOf (c, javax.swing.JRootPane)) {\r
470 return c;\r
471 }}\r
472 return null;\r
473 }, "java.awt.Component");\r
474 c$.getRoot = Clazz.defineMethod (c$, "getRoot", \r
475 function (c) {\r
476 var applet = null;\r
477 for (var p = c; p != null; p = p.getParent ()) {\r
478 if (Clazz.instanceOf (p, java.awt.Window)) {\r
479 return p;\r
480 }if (Clazz.instanceOf (p, java.applet.Applet)) {\r
481 applet = p;\r
482 }}\r
483 return applet;\r
484 }, "java.awt.Component");\r
485 c$.processKeyBindings = Clazz.defineMethod (c$, "processKeyBindings", \r
486 function (event) {\r
487 if (event != null) {\r
488 if (event.isConsumed ()) {\r
489 return false;\r
490 }var component = event.getComponent ();\r
491 var pressed = (event.getID () == 401);\r
492 if (!javax.swing.SwingUtilities.isValidKeyEventForKeyBindings (event)) {\r
493 return false;\r
494 }while (component != null) {\r
495 if (Clazz.instanceOf (component, javax.swing.JComponent)) {\r
496 return (component).processKeyBindings (event, pressed);\r
497 }if ((Clazz.instanceOf (component, java.applet.Applet)) || (Clazz.instanceOf (component, java.awt.Window))) {\r
498 return javax.swing.JComponent.processKeyBindingsForAllComponents (event, component, pressed);\r
499 }component = component.getParent ();\r
500 }\r
501 }return false;\r
502 }, "java.awt.event.KeyEvent");\r
503 c$.isValidKeyEventForKeyBindings = Clazz.defineMethod (c$, "isValidKeyEventForKeyBindings", \r
504 function (e) {\r
505 if (e.getID () == 400) {\r
506 var mod = e.getModifiers ();\r
507 if (((mod & 8) != 0) && ((mod & 2) == 0)) {\r
508 return false;\r
509 }}return true;\r
510 }, "java.awt.event.KeyEvent");\r
511 c$.notifyAction = Clazz.defineMethod (c$, "notifyAction", \r
512 function (action, ks, event, sender, modifiers) {\r
513 if (action == null) {\r
514 return false;\r
515 }if (Clazz.instanceOf (action, jssun.swing.UIAction)) {\r
516 if (!(action).isEnabled (sender)) {\r
517 return false;\r
518 }} else if (!action.isEnabled ()) {\r
519 return false;\r
520 }var commandO;\r
521 var stayNull;\r
522 commandO = action.getValue ("ActionCommandKey");\r
523 if (commandO == null && (Clazz.instanceOf (action, javax.swing.JComponent.ActionStandin))) {\r
524 stayNull = true;\r
525 } else {\r
526 stayNull = false;\r
527 }var command;\r
528 if (commandO != null) {\r
529 command = commandO.toString ();\r
530 } else if (!stayNull && event.getKeyChar () != '\uffff') {\r
531 command = String.valueOf (event.getKeyChar ());\r
532 } else {\r
533 command = null;\r
534 }action.actionPerformed ( new java.awt.event.ActionEvent (sender, 1001, command, event.getWhen (), modifiers));\r
535 return true;\r
536 }, "javax.swing.Action,javax.swing.KeyStroke,java.awt.event.KeyEvent,~O,~N");\r
537 c$.replaceUIInputMap = Clazz.defineMethod (c$, "replaceUIInputMap", \r
538 function (component, type, uiInputMap) {\r
539 var map = component.getInputMap (type, (uiInputMap != null));\r
540 while (map != null) {\r
541 var parent = map.getParent ();\r
542 if (parent == null || (Clazz.instanceOf (parent, javax.swing.plaf.UIResource))) {\r
543 map.setParent (uiInputMap);\r
544 return;\r
545 }map = parent;\r
546 }\r
547 }, "javax.swing.JComponent,~N,javax.swing.InputMap");\r
548 c$.replaceUIActionMap = Clazz.defineMethod (c$, "replaceUIActionMap", \r
549 function (component, uiActionMap) {\r
550 var map = component.getActionMap ((uiActionMap != null));\r
551 ;while (map != null) {\r
552 var parent = map.getParent ();\r
553 if (parent == null || (Clazz.instanceOf (parent, javax.swing.plaf.UIResource))) {\r
554 map.setParent (uiActionMap);\r
555 return;\r
556 }map = parent;\r
557 }\r
558 }, "javax.swing.JComponent,javax.swing.ActionMap");\r
559 c$.getUIInputMap = Clazz.defineMethod (c$, "getUIInputMap", \r
560 function (component, condition) {\r
561 var map = component.getInputMap (condition, false);\r
562 while (map != null) {\r
563 var parent = map.getParent ();\r
564 if (Clazz.instanceOf (parent, javax.swing.plaf.UIResource)) {\r
565 return parent;\r
566 }map = parent;\r
567 }\r
568 return null;\r
569 }, "javax.swing.JComponent,~N");\r
570 c$.getUIActionMap = Clazz.defineMethod (c$, "getUIActionMap", \r
571 function (component) {\r
572 var map = component.getActionMap (false);\r
573 while (map != null) {\r
574 var parent = map.getParent ();\r
575 if (Clazz.instanceOf (parent, javax.swing.plaf.UIResource)) {\r
576 return parent;\r
577 }map = parent;\r
578 }\r
579 return null;\r
580 }, "javax.swing.JComponent");\r
581 c$.getSharedOwnerFrame = Clazz.defineMethod (c$, "getSharedOwnerFrame", \r
582 function () {\r
583 var sharedOwnerFrame = javax.swing.SwingUtilities.appContextGet (javax.swing.SwingUtilities.sharedOwnerFrameKey);\r
584 if (sharedOwnerFrame == null) {\r
585 sharedOwnerFrame =  new javax.swing.SwingUtilities.SharedOwnerFrame ();\r
586 javax.swing.SwingUtilities.appContextPut (javax.swing.SwingUtilities.sharedOwnerFrameKey, sharedOwnerFrame);\r
587 }return sharedOwnerFrame;\r
588 });\r
589 c$.getSharedOwnerFrameShutdownListener = Clazz.defineMethod (c$, "getSharedOwnerFrameShutdownListener", \r
590 function () {\r
591 var sharedOwnerFrame = javax.swing.SwingUtilities.getSharedOwnerFrame ();\r
592 return sharedOwnerFrame;\r
593 });\r
594 c$.appContextGet = Clazz.defineMethod (c$, "appContextGet", \r
595 function (key) {\r
596 return jssun.awt.AppContext.getAppContext ().get (key);\r
597 }, "~O");\r
598 c$.appContextPut = Clazz.defineMethod (c$, "appContextPut", \r
599 function (key, value) {\r
600 jssun.awt.AppContext.getAppContext ().put (key, value);\r
601 }, "~O,~O");\r
602 c$.appContextRemove = Clazz.defineMethod (c$, "appContextRemove", \r
603 function (key) {\r
604 jssun.awt.AppContext.getAppContext ().remove (key);\r
605 }, "~O");\r
606 c$.loadSystemClass = Clazz.defineMethod (c$, "loadSystemClass", \r
607 function (className) {\r
608 return Clazz._4Name (className, true, Thread.currentThread ().getContextClassLoader ());\r
609 }, "~S");\r
610 c$.isLeftToRight = Clazz.defineMethod (c$, "isLeftToRight", \r
611 function (c) {\r
612 return c.getComponentOrientation ().isLeftToRight ();\r
613 }, "java.awt.Component");\r
614 c$.doesIconReferenceImage = Clazz.defineMethod (c$, "doesIconReferenceImage", \r
615 function (icon, image) {\r
616 var iconImage = (icon != null && (Clazz.instanceOf (icon, javax.swing.ImageIcon))) ? (icon).getImage () : null;\r
617 return (iconImage === image);\r
618 }, "javax.swing.Icon,java.awt.Image");\r
619 c$.findDisplayedMnemonicIndex = Clazz.defineMethod (c$, "findDisplayedMnemonicIndex", \r
620 function (text, mnemonic) {\r
621 if (text == null || mnemonic == 0) {\r
622 return -1;\r
623 }var uc = Character.toUpperCase (String.fromCharCode (mnemonic));\r
624 var lc = Character.toLowerCase (String.fromCharCode (mnemonic));\r
625 var uci = text.indexOf (uc);\r
626 var lci = text.indexOf (lc);\r
627 if (uci == -1) {\r
628 return lci;\r
629 } else if (lci == -1) {\r
630 return uci;\r
631 } else {\r
632 return (lci < uci) ? lci : uci;\r
633 }}, "~S,~N");\r
634 c$.calculateInnerArea = Clazz.defineMethod (c$, "calculateInnerArea", \r
635 function (c, r) {\r
636 if (c == null) {\r
637 return null;\r
638 }var rect = r;\r
639 var insets = c.getInsets ();\r
640 if (rect == null) {\r
641 rect =  new java.awt.Rectangle ();\r
642 }rect.x = insets.left;\r
643 rect.y = insets.top;\r
644 rect.width = c.getWidth () - insets.left - insets.right;\r
645 rect.height = c.getHeight () - insets.top - insets.bottom;\r
646 return rect;\r
647 }, "javax.swing.JComponent,java.awt.Rectangle");\r
648 c$.updateRendererOrEditorUI = Clazz.defineMethod (c$, "updateRendererOrEditorUI", \r
649 function (rendererOrEditor) {\r
650 if (rendererOrEditor == null) {\r
651 return;\r
652 }var component = null;\r
653 if (Clazz.instanceOf (rendererOrEditor, java.awt.Component)) {\r
654 component = rendererOrEditor;\r
655 }if (Clazz.instanceOf (rendererOrEditor, javax.swing.DefaultCellEditor)) {\r
656 component = (rendererOrEditor).getComponent ();\r
657 }if (component != null) {\r
658 javax.swing.SwingUtilities.updateComponentTreeUI (component);\r
659 }}, "~O");\r
660 Clazz.pu$h(self.c$);\r
661 c$ = Clazz.declareType (javax.swing.SwingUtilities, "SharedOwnerFrame", java.awt.Frame, java.awt.event.WindowListener);\r
662 Clazz.defineMethod (c$, "addNotify", \r
663 function () {\r
664 Clazz.superCall (this, javax.swing.SwingUtilities.SharedOwnerFrame, "addNotify", []);\r
665 this.installListeners ();\r
666 });\r
667 Clazz.defineMethod (c$, "installListeners", \r
668 function () {\r
669 var a = this.getOwnedWindows ();\r
670 for (var b = 0; b < a.length; b++) {\r
671 var c = a[b];\r
672 if (c != null) {\r
673 c.removeWindowListener (this);\r
674 c.addWindowListener (this);\r
675 }}\r
676 });\r
677 Clazz.overrideMethod (c$, "windowClosed", \r
678 function (a) {\r
679 var b = this.getOwnedWindows ();\r
680 for (var c = 0; c < b.length; c++) {\r
681 var d = b[c];\r
682 if (d != null) {\r
683 if (d.isDisplayable ()) {\r
684 return;\r
685 }d.removeWindowListener (this);\r
686 }this.dispose ();\r
687 }\r
688 }, "java.awt.event.WindowEvent");\r
689 Clazz.overrideMethod (c$, "windowOpened", \r
690 function (a) {\r
691 }, "java.awt.event.WindowEvent");\r
692 Clazz.overrideMethod (c$, "windowClosing", \r
693 function (a) {\r
694 }, "java.awt.event.WindowEvent");\r
695 Clazz.overrideMethod (c$, "windowIconified", \r
696 function (a) {\r
697 }, "java.awt.event.WindowEvent");\r
698 Clazz.overrideMethod (c$, "windowDeiconified", \r
699 function (a) {\r
700 }, "java.awt.event.WindowEvent");\r
701 Clazz.overrideMethod (c$, "windowActivated", \r
702 function (a) {\r
703 }, "java.awt.event.WindowEvent");\r
704 Clazz.overrideMethod (c$, "windowDeactivated", \r
705 function (a) {\r
706 }, "java.awt.event.WindowEvent");\r
707 Clazz.defineMethod (c$, "show", \r
708 function () {\r
709 });\r
710 Clazz.overrideMethod (c$, "dispose", \r
711 function () {\r
712 });\r
713 c$ = Clazz.p0p ();\r
714 c$.sharedOwnerFrameKey = c$.prototype.sharedOwnerFrameKey =  new Clazz._O ();\r
715 });\r