1 Clazz.declarePackage ("jssun.awt");
2 Clazz.load (null, "jssun.awt.SunGraphicsCallback", ["java.awt.Container", "$.Graphics2D", "jssun.awt.ConstrainableGraphics", "$.Graphics2Delegate"], function () {
3 c$ = Clazz.declareType (jssun.awt, "SunGraphicsCallback");
4 Clazz.defineMethod (c$, "constrainGraphics",
6 if (Clazz.instanceOf (g, jssun.awt.ConstrainableGraphics)) {
7 (g).constrain (bounds.x, bounds.y, bounds.width, bounds.height);
9 g.translate (bounds.x, bounds.y);
10 }g.clipRect (0, 0, bounds.width, bounds.height);
11 }, "java.awt.Graphics,java.awt.Rectangle");
12 Clazz.defineMethod (c$, "runOneComponent",
13 function (comp, bounds, g, clip, weightFlags) {
14 if (comp == null || !comp.isLightweight () || !comp.isVisible ()) {
16 }var lightweight = comp.isLightweight ();
17 if ((lightweight && (weightFlags & 2) == 0) || (!lightweight && (weightFlags & 1) == 0)) {
19 }if (bounds == null) {
20 bounds = comp.getBounds ();
21 }if (clip == null || clip.intersects (bounds)) {
22 var cg = g.createSwingJS ();
24 this.constrainGraphics (cg, bounds);
25 cg.setFont (comp.getFont ());
26 cg.setColor (comp.getForeground ());
27 if (Clazz.instanceOf (cg, java.awt.Graphics2D)) {
28 (cg).setBackground (comp.getBackground ());
29 } else if (Clazz.instanceOf (cg, jssun.awt.Graphics2Delegate)) {
30 (cg).setBackground (comp.getBackground ());
35 }}, "java.awt.Component,java.awt.Rectangle,java.awt.Graphics,java.awt.Shape,~N");
36 Clazz.defineMethod (c$, "runComponents",
37 function (comps, g, weightFlags) {
38 var ncomponents = comps.length;
39 var clip = g.getClip ();
40 for (var i = ncomponents - 1; i >= 0; i--) {
41 this.runOneComponent (comps[i], null, g, clip, weightFlags);
43 }, "~A,java.awt.Graphics,~N");
45 c$ = Clazz.declareType (jssun.awt.SunGraphicsCallback, "PaintHeavyweightComponentsCallback", jssun.awt.SunGraphicsCallback);
46 Clazz.makeConstructor (c$,
48 Clazz.superConstructor (this, jssun.awt.SunGraphicsCallback.PaintHeavyweightComponentsCallback, []);
50 Clazz.overrideMethod (c$, "run",
52 if (!a.isLightweight ()) {
54 } else if (Clazz.instanceOf (a, java.awt.Container)) {
55 this.runComponents ((a).getComponents (), b, 3);
56 }}, "java.awt.Component,java.awt.Graphics");
57 c$.getInstance = Clazz.defineMethod (c$, "getInstance",
59 return jssun.awt.SunGraphicsCallback.PaintHeavyweightComponentsCallback.instance;
61 c$.instance = c$.prototype.instance = new jssun.awt.SunGraphicsCallback.PaintHeavyweightComponentsCallback ();
63 Clazz.defineStatics (c$,