1 Clazz.declarePackage ("javax.swing");
\r
2 Clazz.load (["java.util.Hashtable", "java.util.Locale"], "javax.swing.UIDefaults", ["java.lang.Boolean", "$.Error", "java.util.HashMap", "$.Vector", "java.awt.Color", "$.Dimension", "$.Font", "$.Insets", "javax.swing.Icon", "$.SwingUtilities", "javax.swing.border.Border", "javax.swing.event.SwingPropertyChangeSupport", "swingjs.JSToolkit"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.changeSupport = null;
\r
5 this.resourceBundles = null;
\r
6 this.defaultLocale = null;
\r
7 this.resourceCache = null;
\r
8 Clazz.instantialize (this, arguments);
\r
9 }, javax.swing, "UIDefaults", java.util.Hashtable);
\r
10 Clazz.prepareFields (c$, function () {
\r
11 this.defaultLocale = java.util.Locale.getDefault ();
\r
13 Clazz.makeConstructor (c$,
\r
15 this.construct (700, .75);
\r
17 Clazz.makeConstructor (c$,
\r
18 function (initialCapacity, loadFactor) {
\r
19 Clazz.superConstructor (this, javax.swing.UIDefaults, [initialCapacity, loadFactor]);
\r
20 this.resourceCache = new java.util.HashMap ();
\r
22 Clazz.makeConstructor (c$,
\r
23 function (keyValueList) {
\r
24 Clazz.superConstructor (this, javax.swing.UIDefaults, [Clazz.doubleToInt (keyValueList.length / 2)]);
\r
25 for (var i = 0; i < keyValueList.length; i += 2) {
\r
26 Clazz.superCall (this, javax.swing.UIDefaults, "put", [keyValueList[i], keyValueList[i + 1]]);
\r
29 Clazz.defineMethod (c$, "get",
\r
31 var value = this.getFromHashtable (key);
\r
32 return (value != null) ? value : this.getFromResourceBundle (key, null);
\r
34 Clazz.defineMethod (c$, "getFromHashtable",
\r
36 var value = Clazz.superCall (this, javax.swing.UIDefaults, "get", [key]);
\r
37 if (value == null && (Clazz.instanceOf (key, String))) {
\r
39 if (skey.endsWith (".font") || skey.endsWith (".background") || skey.endsWith (".foreground")) value = Clazz.superCall (this, javax.swing.UIDefaults, "get", ["*" + skey.substring (skey.lastIndexOf ("."))]);
\r
40 }if ((value !== javax.swing.UIDefaults.PENDING) && !(Clazz.instanceOf (value, javax.swing.UIDefaults.ActiveValue)) && !(Clazz.instanceOf (value, javax.swing.UIDefaults.LazyValue))) {
\r
42 }if (!(Clazz.instanceOf (value, javax.swing.UIDefaults.ActiveValue))) {
\r
44 }if (Clazz.instanceOf (value, javax.swing.UIDefaults.LazyValue)) {
\r
46 value = (value).createValue (this);
\r
48 if (value == null) {
\r
49 Clazz.superCall (this, javax.swing.UIDefaults, "remove", [key]);
\r
51 Clazz.superCall (this, javax.swing.UIDefaults, "put", [key, value]);
\r
54 value = (value).createValue (this);
\r
57 Clazz.defineMethod (c$, "get",
\r
59 var value = this.getFromHashtable (key);
\r
60 return (value != null) ? value : this.getFromResourceBundle (key, l);
\r
61 }, "~O,java.util.Locale");
\r
62 Clazz.defineMethod (c$, "getFromResourceBundle",
\r
64 if (this.resourceBundles == null || this.resourceBundles.isEmpty () || !(Clazz.instanceOf (key, String))) {
\r
67 if (this.defaultLocale == null) return null;
\r
68 else l = this.defaultLocale;
\r
70 return this.getResourceCache (l).get (key);
\r
71 }}, "~O,java.util.Locale");
\r
72 Clazz.defineMethod (c$, "getResourceCache",
\r
75 }, "java.util.Locale");
\r
76 Clazz.defineMethod (c$, "put",
\r
77 function (key, value) {
\r
78 var oldValue = (value == null) ? Clazz.superCall (this, javax.swing.UIDefaults, "remove", [key]) : Clazz.superCall (this, javax.swing.UIDefaults, "put", [key, value]);
\r
79 if (Clazz.instanceOf (key, String)) {
\r
80 this.firePropertyChange (key, oldValue, value);
\r
83 Clazz.defineMethod (c$, "putDefaults",
\r
84 function (keyValueList) {
\r
85 for (var i = 0, max = keyValueList.length; i < max; i += 2) {
\r
86 var value = keyValueList[i + 1];
\r
87 if (value == null) {
\r
88 Clazz.superCall (this, javax.swing.UIDefaults, "remove", [keyValueList[i]]);
\r
90 Clazz.superCall (this, javax.swing.UIDefaults, "put", [keyValueList[i], value]);
\r
92 this.firePropertyChange ("UIDefaults", null, null);
\r
94 Clazz.defineMethod (c$, "getFont",
\r
96 var value = this.get (key);
\r
97 return (Clazz.instanceOf (value, java.awt.Font)) ? value : null;
\r
99 Clazz.defineMethod (c$, "getFont",
\r
100 function (key, l) {
\r
101 var value = this.get (key, l);
\r
102 return (Clazz.instanceOf (value, java.awt.Font)) ? value : null;
\r
103 }, "~O,java.util.Locale");
\r
104 Clazz.defineMethod (c$, "getColor",
\r
106 var value = this.get (key);
\r
107 return (Clazz.instanceOf (value, java.awt.Color)) ? value : null;
\r
109 Clazz.defineMethod (c$, "getColor",
\r
110 function (key, l) {
\r
111 var value = this.get (key, l);
\r
112 return (Clazz.instanceOf (value, java.awt.Color)) ? value : null;
\r
113 }, "~O,java.util.Locale");
\r
114 Clazz.defineMethod (c$, "getIcon",
\r
116 var value = this.get (key);
\r
117 return (Clazz.instanceOf (value, javax.swing.Icon)) ? value : null;
\r
119 Clazz.defineMethod (c$, "getIcon",
\r
120 function (key, l) {
\r
121 var value = this.get (key, l);
\r
122 return (Clazz.instanceOf (value, javax.swing.Icon)) ? value : null;
\r
123 }, "~O,java.util.Locale");
\r
124 Clazz.defineMethod (c$, "getBorder",
\r
126 var value = this.get (key);
\r
127 return (Clazz.instanceOf (value, javax.swing.border.Border)) ? value : null;
\r
129 Clazz.defineMethod (c$, "getBorder",
\r
130 function (key, l) {
\r
131 var value = this.get (key, l);
\r
132 return (Clazz.instanceOf (value, javax.swing.border.Border)) ? value : null;
\r
133 }, "~O,java.util.Locale");
\r
134 Clazz.defineMethod (c$, "getString",
\r
136 var value = this.get (key);
\r
137 return (Clazz.instanceOf (value, String)) ? value : null;
\r
139 Clazz.defineMethod (c$, "getString",
\r
140 function (key, l) {
\r
141 var value = this.get (key, l);
\r
142 return (Clazz.instanceOf (value, String)) ? value : null;
\r
143 }, "~O,java.util.Locale");
\r
144 Clazz.defineMethod (c$, "getInt",
\r
146 var value = this.get (key);
\r
147 return (Clazz.instanceOf (value, Integer)) ? (value).intValue () : 0;
\r
149 Clazz.defineMethod (c$, "getInt",
\r
150 function (key, l) {
\r
151 var value = this.get (key, l);
\r
152 return (Clazz.instanceOf (value, Integer)) ? (value).intValue () : 0;
\r
153 }, "~O,java.util.Locale");
\r
154 Clazz.defineMethod (c$, "getBoolean",
\r
156 var value = this.get (key);
\r
157 return (Clazz.instanceOf (value, Boolean)) ? (value).booleanValue () : false;
\r
159 Clazz.defineMethod (c$, "getBoolean",
\r
160 function (key, l) {
\r
161 var value = this.get (key, l);
\r
162 return (Clazz.instanceOf (value, Boolean)) ? (value).booleanValue () : false;
\r
163 }, "~O,java.util.Locale");
\r
164 Clazz.defineMethod (c$, "getInsets",
\r
166 var value = this.get (key);
\r
167 return (Clazz.instanceOf (value, java.awt.Insets)) ? value : null;
\r
169 Clazz.defineMethod (c$, "getInsets",
\r
170 function (key, l) {
\r
171 var value = this.get (key, l);
\r
172 return (Clazz.instanceOf (value, java.awt.Insets)) ? value : null;
\r
173 }, "~O,java.util.Locale");
\r
174 Clazz.defineMethod (c$, "getDimension",
\r
176 var value = this.get (key);
\r
177 return (Clazz.instanceOf (value, java.awt.Dimension)) ? value : null;
\r
179 Clazz.defineMethod (c$, "getDimension",
\r
180 function (key, l) {
\r
181 var value = this.get (key, l);
\r
182 return (Clazz.instanceOf (value, java.awt.Dimension)) ? value : null;
\r
183 }, "~O,java.util.Locale");
\r
184 Clazz.defineMethod (c$, "getUIClass",
\r
185 function (uiClassID, uiClassLoader) {
\r
187 var className = this.get (uiClassID);
\r
188 if (className != null) {
\r
189 var cls = this.get (className);
\r
191 if (uiClassLoader == null) {
\r
192 cls = javax.swing.SwingUtilities.loadSystemClass (className);
\r
194 cls = uiClassLoader.loadClass (className);
\r
195 }if (cls != null) {
\r
196 this.put (className, cls);
\r
199 if (Clazz.exceptionOf (e$$, ClassNotFoundException)) {
\r
204 } else if (Clazz.exceptionOf (e$$, ClassCastException)) {
\r
214 }, "~S,ClassLoader");
\r
215 Clazz.defineMethod (c$, "getUIClass",
\r
216 function (uiClassID) {
\r
217 return this.getUIClass (uiClassID, null);
\r
219 Clazz.defineMethod (c$, "getUIError",
\r
221 System.err.println ("UIDefaults.getUI() failed: " + msg);
\r
223 throw new Error ();
\r
225 e.printStackTrace ();
\r
228 Clazz.defineMethod (c$, "getUI",
\r
229 function (target) {
\r
230 return swingjs.JSToolkit.getComponentUI (target);
\r
231 }, "javax.swing.JComponent");
\r
232 Clazz.defineMethod (c$, "addPropertyChangeListener",
\r
233 function (listener) {
\r
234 if (this.changeSupport == null) {
\r
235 this.changeSupport = new javax.swing.event.SwingPropertyChangeSupport (this);
\r
236 }this.changeSupport.addPropertyChangeListener (listener);
\r
237 }, "java.beans.PropertyChangeListener");
\r
238 Clazz.defineMethod (c$, "removePropertyChangeListener",
\r
239 function (listener) {
\r
240 if (this.changeSupport != null) {
\r
241 this.changeSupport.removePropertyChangeListener (listener);
\r
242 }}, "java.beans.PropertyChangeListener");
\r
243 Clazz.defineMethod (c$, "getPropertyChangeListeners",
\r
245 if (this.changeSupport == null) {
\r
246 return new Array (0);
\r
247 }return this.changeSupport.getPropertyChangeListeners ();
\r
249 Clazz.defineMethod (c$, "firePropertyChange",
\r
250 function (propertyName, oldValue, newValue) {
\r
251 if (this.changeSupport != null) {
\r
252 this.changeSupport.firePropertyChange (propertyName, oldValue, newValue);
\r
254 Clazz.defineMethod (c$, "addResourceBundle",
\r
255 function (bundleName) {
\r
256 if (bundleName == null) {
\r
258 }if (this.resourceBundles == null) {
\r
259 this.resourceBundles = new java.util.Vector (5);
\r
260 }if (!this.resourceBundles.contains (bundleName)) {
\r
261 this.resourceBundles.add (bundleName);
\r
262 this.resourceCache.clear ();
\r
264 Clazz.defineMethod (c$, "removeResourceBundle",
\r
265 function (bundleName) {
\r
266 if (this.resourceBundles != null) {
\r
267 this.resourceBundles.remove (bundleName);
\r
268 }this.resourceCache.clear ();
\r
270 Clazz.defineMethod (c$, "setDefaultLocale",
\r
272 this.defaultLocale = l;
\r
273 }, "java.util.Locale");
\r
274 Clazz.defineMethod (c$, "getDefaultLocale",
\r
276 return this.defaultLocale;
\r
278 Clazz.declareInterface (javax.swing.UIDefaults, "LazyValue");
\r
279 Clazz.declareInterface (javax.swing.UIDefaults, "ActiveValue");
\r
280 c$.PENDING = c$.prototype.PENDING = String.instantialize ("Pending");
\r