25e8d58088903789ee224a328799c1ba5ee1a718
[jalviewjs.git] / site / swingjs / j2s / jssun / swing / ImageCache.js
1 Clazz.declarePackage ("jssun.swing");\r
2 Clazz.load (null, "jssun.swing.ImageCache", ["java.util.LinkedList"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.maxCount = 0;\r
5 this.entries = null;\r
6 Clazz.instantialize (this, arguments);\r
7 }, jssun.swing, "ImageCache");\r
8 Clazz.makeConstructor (c$, \r
9 function (maxCount) {\r
10 this.maxCount = maxCount;\r
11 this.entries =  new java.util.LinkedList ();\r
12 }, "~N");\r
13 Clazz.defineMethod (c$, "setMaxCount", \r
14 function (maxCount) {\r
15 this.maxCount = maxCount;\r
16 }, "~N");\r
17 Clazz.defineMethod (c$, "flush", \r
18 function () {\r
19 this.entries.clear ();\r
20 });\r
21 Clazz.defineMethod (c$, "getEntry", \r
22  function (key, config, w, h, args) {\r
23 var entry;\r
24 var iter = this.entries.listIterator ();\r
25 while (iter.hasNext ()) {\r
26 var ref = iter.next ();\r
27 entry = ref;\r
28 if (entry == null) {\r
29 iter.remove ();\r
30 } else if (entry.equals (config, w, h, args)) {\r
31 iter.remove ();\r
32 this.entries.addFirst (ref);\r
33 return entry;\r
34 }}\r
35 entry =  new jssun.swing.ImageCache.Entry (config, w, h, args);\r
36 if (this.entries.size () >= this.maxCount) {\r
37 this.entries.removeLast ();\r
38 }this.entries.addFirst (entry);\r
39 return entry;\r
40 }, "~O,java.awt.GraphicsConfiguration,~N,~N,~A");\r
41 Clazz.defineMethod (c$, "getImage", \r
42 function (key, config, w, h, args) {\r
43 var entry = this.getEntry (key, config, w, h, args);\r
44 return entry.getImage ();\r
45 }, "~O,java.awt.GraphicsConfiguration,~N,~N,~A");\r
46 Clazz.defineMethod (c$, "setImage", \r
47 function (key, config, w, h, args, image) {\r
48 var entry = this.getEntry (key, config, w, h, args);\r
49 entry.setImage (image);\r
50 }, "~O,java.awt.GraphicsConfiguration,~N,~N,~A,java.awt.Image");\r
51 Clazz.pu$h(self.c$);\r
52 c$ = Clazz.decorateAsClass (function () {\r
53 this.config = null;\r
54 this.w = 0;\r
55 this.h = 0;\r
56 this.args = null;\r
57 this.image = null;\r
58 Clazz.instantialize (this, arguments);\r
59 }, jssun.swing.ImageCache, "Entry");\r
60 Clazz.makeConstructor (c$, \r
61 function (a, b, c, d) {\r
62 this.config = a;\r
63 this.args = d;\r
64 this.w = b;\r
65 this.h = c;\r
66 }, "java.awt.GraphicsConfiguration,~N,~N,~A");\r
67 Clazz.defineMethod (c$, "setImage", \r
68 function (a) {\r
69 this.image = a;\r
70 }, "java.awt.Image");\r
71 Clazz.defineMethod (c$, "getImage", \r
72 function () {\r
73 return this.image;\r
74 });\r
75 Clazz.defineMethod (c$, "toString", \r
76 function () {\r
77 var a = Clazz.superCall (this, jssun.swing.ImageCache.Entry, "toString", []) + "[ graphicsConfig=" + this.config + ", image=" + this.image + ", w=" + this.w + ", h=" + this.h;\r
78 if (this.args != null) {\r
79 for (var b = 0; b < this.args.length; b++) {\r
80 a += ", " + this.args[b];\r
81 }\r
82 }a += "]";\r
83 return a;\r
84 });\r
85 Clazz.defineMethod (c$, "equals", \r
86 function (a, b, c, d) {\r
87 if (this.w == b && this.h == c && ((this.config != null && this.config.equals (a)) || (this.config == null && a == null))) {\r
88 if (this.args == null && d == null) {\r
89 return true;\r
90 }if (this.args != null && d != null && this.args.length == d.length) {\r
91 for (var e = d.length - 1; e >= 0; e--) {\r
92 var f = this.args[e];\r
93 var g = d[e];\r
94 if ((f == null && g != null) || (f != null && !f.equals (g))) {\r
95 return false;\r
96 }}\r
97 return true;\r
98 }}return false;\r
99 }, "java.awt.GraphicsConfiguration,~N,~N,~A");\r
100 c$ = Clazz.p0p ();\r
101 });\r