e51841f88e934ae533536599936bd24d6ead6d79
[jalviewjs.git] / site / swingjs / j2s / jssun / java2d / loops / CompositeType.js
1 Clazz.declarePackage ("jssun.java2d.loops");\r
2 Clazz.load (null, "jssun.java2d.loops.CompositeType", ["java.lang.InternalError"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.uniqueID = 0;\r
5 this.desc = null;\r
6 this.next = null;\r
7 Clazz.instantialize (this, arguments);\r
8 }, jssun.java2d.loops, "CompositeType");\r
9 Clazz.defineMethod (c$, "deriveSubType", \r
10 function (desc) {\r
11 return  new jssun.java2d.loops.CompositeType (this, desc);\r
12 }, "~S");\r
13 c$.forAlphaComposite = Clazz.defineMethod (c$, "forAlphaComposite", \r
14 function (ac) {\r
15 switch (ac.getRule ()) {\r
16 case 1:\r
17 return jssun.java2d.loops.CompositeType.Clear;\r
18 case 2:\r
19 if (ac.getAlpha () >= 1.0) {\r
20 return jssun.java2d.loops.CompositeType.SrcNoEa;\r
21 } else {\r
22 return jssun.java2d.loops.CompositeType.Src;\r
23 }case 9:\r
24 return jssun.java2d.loops.CompositeType.Dst;\r
25 case 3:\r
26 if (ac.getAlpha () >= 1.0) {\r
27 return jssun.java2d.loops.CompositeType.SrcOverNoEa;\r
28 } else {\r
29 return jssun.java2d.loops.CompositeType.SrcOver;\r
30 }case 4:\r
31 return jssun.java2d.loops.CompositeType.DstOver;\r
32 case 5:\r
33 return jssun.java2d.loops.CompositeType.SrcIn;\r
34 case 6:\r
35 return jssun.java2d.loops.CompositeType.DstIn;\r
36 case 7:\r
37 return jssun.java2d.loops.CompositeType.SrcOut;\r
38 case 8:\r
39 return jssun.java2d.loops.CompositeType.DstOut;\r
40 case 10:\r
41 return jssun.java2d.loops.CompositeType.SrcAtop;\r
42 case 11:\r
43 return jssun.java2d.loops.CompositeType.DstAtop;\r
44 case 12:\r
45 return jssun.java2d.loops.CompositeType.AlphaXor;\r
46 default:\r
47 throw  new InternalError ("Unrecognized alpha rule");\r
48 }\r
49 }, "java.awt.AlphaComposite");\r
50 Clazz.makeConstructor (c$, \r
51  function (parent, desc) {\r
52 this.next = parent;\r
53 this.desc = desc;\r
54 this.uniqueID = jssun.java2d.loops.CompositeType.makeUniqueID ();\r
55 }, "jssun.java2d.loops.CompositeType,~S");\r
56 c$.makeUniqueID = Clazz.defineMethod (c$, "makeUniqueID", \r
57  function () {\r
58 if (jssun.java2d.loops.CompositeType.unusedUID > 255) {\r
59 throw  new InternalError ("composite type id overflow");\r
60 }return jssun.java2d.loops.CompositeType.unusedUID++;\r
61 });\r
62 Clazz.defineMethod (c$, "getUniqueID", \r
63 function () {\r
64 return this.uniqueID;\r
65 });\r
66 Clazz.defineMethod (c$, "getDescriptor", \r
67 function () {\r
68 return this.desc;\r
69 });\r
70 Clazz.defineMethod (c$, "getSuperType", \r
71 function () {\r
72 return this.next;\r
73 });\r
74 Clazz.overrideMethod (c$, "hashCode", \r
75 function () {\r
76 return this.desc.hashCode ();\r
77 });\r
78 Clazz.defineMethod (c$, "isDerivedFrom", \r
79 function (other) {\r
80 var comptype = this;\r
81 do {\r
82 if (comptype.desc === other.desc) {\r
83 return true;\r
84 }comptype = comptype.next;\r
85 } while (comptype != null);\r
86 return false;\r
87 }, "jssun.java2d.loops.CompositeType");\r
88 Clazz.overrideMethod (c$, "equals", \r
89 function (o) {\r
90 if (Clazz.instanceOf (o, jssun.java2d.loops.CompositeType)) {\r
91 return ((o).uniqueID == this.uniqueID);\r
92 }return false;\r
93 }, "~O");\r
94 Clazz.overrideMethod (c$, "toString", \r
95 function () {\r
96 return this.desc;\r
97 });\r
98 Clazz.defineStatics (c$,\r
99 "DESC_ANY", "Any CompositeContext",\r
100 "DESC_XOR", "XOR mode",\r
101 "DESC_CLEAR", "Porter-Duff Clear",\r
102 "DESC_SRC", "Porter-Duff Src",\r
103 "DESC_DST", "Porter-Duff Dst",\r
104 "DESC_SRC_OVER", "Porter-Duff Src Over Dst",\r
105 "DESC_DST_OVER", "Porter-Duff Dst Over Src",\r
106 "DESC_SRC_IN", "Porter-Duff Src In Dst",\r
107 "DESC_DST_IN", "Porter-Duff Dst In Src",\r
108 "DESC_SRC_OUT", "Porter-Duff Src HeldOutBy Dst",\r
109 "DESC_DST_OUT", "Porter-Duff Dst HeldOutBy Src",\r
110 "DESC_SRC_ATOP", "Porter-Duff Src Atop Dst",\r
111 "DESC_DST_ATOP", "Porter-Duff Dst Atop Src",\r
112 "DESC_ALPHA_XOR", "Porter-Duff Xor",\r
113 "DESC_SRC_NO_EA", "Porter-Duff Src, No Extra Alpha",\r
114 "DESC_SRC_OVER_NO_EA", "Porter-Duff SrcOverDst, No Extra Alpha",\r
115 "DESC_ANY_ALPHA", "Any AlphaComposite Rule");\r
116 c$.Any = c$.prototype.Any =  new jssun.java2d.loops.CompositeType (null, "Any CompositeContext");\r
117 c$.General = c$.prototype.General = jssun.java2d.loops.CompositeType.Any;\r
118 c$.AnyAlpha = c$.prototype.AnyAlpha = jssun.java2d.loops.CompositeType.General.deriveSubType ("Any AlphaComposite Rule");\r
119 c$.Xor = c$.prototype.Xor = jssun.java2d.loops.CompositeType.General.deriveSubType ("XOR mode");\r
120 c$.Clear = c$.prototype.Clear = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Clear");\r
121 c$.Src = c$.prototype.Src = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Src");\r
122 c$.Dst = c$.prototype.Dst = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Dst");\r
123 c$.SrcOver = c$.prototype.SrcOver = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Src Over Dst");\r
124 c$.DstOver = c$.prototype.DstOver = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Dst Over Src");\r
125 c$.SrcIn = c$.prototype.SrcIn = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Src In Dst");\r
126 c$.DstIn = c$.prototype.DstIn = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Dst In Src");\r
127 c$.SrcOut = c$.prototype.SrcOut = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Src HeldOutBy Dst");\r
128 c$.DstOut = c$.prototype.DstOut = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Dst HeldOutBy Src");\r
129 c$.SrcAtop = c$.prototype.SrcAtop = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Src Atop Dst");\r
130 c$.DstAtop = c$.prototype.DstAtop = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Dst Atop Src");\r
131 c$.AlphaXor = c$.prototype.AlphaXor = jssun.java2d.loops.CompositeType.AnyAlpha.deriveSubType ("Porter-Duff Xor");\r
132 c$.SrcNoEa = c$.prototype.SrcNoEa = jssun.java2d.loops.CompositeType.Src.deriveSubType ("Porter-Duff Src, No Extra Alpha");\r
133 c$.SrcOverNoEa = c$.prototype.SrcOverNoEa = jssun.java2d.loops.CompositeType.SrcOver.deriveSubType ("Porter-Duff SrcOverDst, No Extra Alpha");\r
134 Clazz.defineStatics (c$,\r
135 "unusedUID", 1);\r
136 });\r