4dc48a00234d6ff3e48811142d6d8c9d21e42ad9
[jalviewjs.git] / site / swingjs / j2s / javax / swing / JSpinner.js
1 Clazz.declarePackage ("javax.swing");\r
2 Clazz.load (["java.awt.LayoutManager", "java.beans.PropertyChangeListener", "javax.swing.Action", "$.JComponent", "$.JFormattedTextField", "$.JPanel", "javax.swing.event.ChangeListener", "javax.swing.text.DocumentFilter", "$.NumberFormatter"], "javax.swing.JSpinner", ["java.lang.IllegalArgumentException", "java.awt.Dimension", "java.text.DecimalFormat", "javax.swing.SpinnerListModel", "$.SpinnerNumberModel", "$.UIManager", "javax.swing.event.ChangeEvent", "javax.swing.text.DefaultFormatterFactory"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.model = null;\r
5 this.editor = null;\r
6 this.modelListener = null;\r
7 this.changeEvent = null;\r
8 this.editorExplicitlySet = false;\r
9 if (!Clazz.isClassDefined ("javax.swing.JSpinner.ModelListener")) {\r
10 javax.swing.JSpinner.$JSpinner$ModelListener$ ();\r
11 }\r
12 Clazz.instantialize (this, arguments);\r
13 }, javax.swing, "JSpinner", javax.swing.JComponent);\r
14 Clazz.makeConstructor (c$, \r
15 function (model) {\r
16 Clazz.superConstructor (this, javax.swing.JSpinner, []);\r
17 this.model = model;\r
18 this.editor = this.createEditor (model);\r
19 this.setUIProperty ("opaque", new Boolean (true));\r
20 this.updateUI ();\r
21 }, "javax.swing.SpinnerModel");\r
22 Clazz.makeConstructor (c$, \r
23 function () {\r
24 this.construct ( new javax.swing.SpinnerNumberModel ());\r
25 });\r
26 Clazz.overrideMethod (c$, "getUI", \r
27 function () {\r
28 return this.ui;\r
29 });\r
30 Clazz.overrideMethod (c$, "getUIClassID", \r
31 function () {\r
32 return "SpinnerUI";\r
33 });\r
34 Clazz.overrideMethod (c$, "updateUI", \r
35 function () {\r
36 this.setUI (javax.swing.UIManager.getUI (this));\r
37 this.invalidate ();\r
38 });\r
39 Clazz.defineMethod (c$, "createEditor", \r
40 function (model) {\r
41 if (Clazz.instanceOf (model, javax.swing.SpinnerListModel)) {\r
42 return  new javax.swing.JSpinner.ListEditor (this);\r
43 } else if (Clazz.instanceOf (model, javax.swing.SpinnerNumberModel)) {\r
44 return  new javax.swing.JSpinner.NumberEditor (this);\r
45 } else {\r
46 return  new javax.swing.JSpinner.DefaultEditor (this);\r
47 }}, "javax.swing.SpinnerModel");\r
48 Clazz.defineMethod (c$, "setModel", \r
49 function (model) {\r
50 if (model == null) {\r
51 throw  new IllegalArgumentException ("null model");\r
52 }if (!model.equals (this.model)) {\r
53 var oldModel = this.model;\r
54 this.model = model;\r
55 if (this.modelListener != null) {\r
56 oldModel.removeChangeListener (this.modelListener);\r
57 this.model.addChangeListener (this.modelListener);\r
58 }this.firePropertyChangeObject ("model", oldModel, model);\r
59 if (!this.editorExplicitlySet) {\r
60 this.setEditor (this.createEditor (model));\r
61 this.editorExplicitlySet = false;\r
62 }this.repaint ();\r
63 this.revalidate ();\r
64 }}, "javax.swing.SpinnerModel");\r
65 Clazz.defineMethod (c$, "getModel", \r
66 function () {\r
67 return this.model;\r
68 });\r
69 Clazz.defineMethod (c$, "getValue", \r
70 function () {\r
71 return this.getModel ().getValue ();\r
72 });\r
73 Clazz.defineMethod (c$, "setValue", \r
74 function (value) {\r
75 this.getModel ().setValue (value);\r
76 }, "~O");\r
77 Clazz.defineMethod (c$, "getNextValue", \r
78 function () {\r
79 return this.getModel ().getNextValue ();\r
80 });\r
81 Clazz.defineMethod (c$, "addChangeListener", \r
82 function (listener) {\r
83 if (this.modelListener == null) {\r
84 this.modelListener = Clazz.innerTypeInstance (javax.swing.JSpinner.ModelListener, this, null);\r
85 this.getModel ().addChangeListener (this.modelListener);\r
86 }this.listenerList.add (javax.swing.event.ChangeListener, listener);\r
87 }, "javax.swing.event.ChangeListener");\r
88 Clazz.defineMethod (c$, "removeChangeListener", \r
89 function (listener) {\r
90 this.listenerList.remove (javax.swing.event.ChangeListener, listener);\r
91 }, "javax.swing.event.ChangeListener");\r
92 Clazz.defineMethod (c$, "getChangeListeners", \r
93 function () {\r
94 return this.listenerList.getListeners (javax.swing.event.ChangeListener);\r
95 });\r
96 Clazz.defineMethod (c$, "fireStateChanged", \r
97 function () {\r
98 var listeners = this.listenerList.getListenerList ();\r
99 for (var i = listeners.length - 2; i >= 0; i -= 2) {\r
100 if (listeners[i] === javax.swing.event.ChangeListener) {\r
101 if (this.changeEvent == null) {\r
102 this.changeEvent =  new javax.swing.event.ChangeEvent (this);\r
103 }(listeners[i + 1]).stateChanged (this.changeEvent);\r
104 }}\r
105 });\r
106 Clazz.defineMethod (c$, "getPreviousValue", \r
107 function () {\r
108 return this.getModel ().getPreviousValue ();\r
109 });\r
110 Clazz.defineMethod (c$, "setEditor", \r
111 function (editor) {\r
112 if (editor == null) {\r
113 throw  new IllegalArgumentException ("null editor");\r
114 }if (!editor.equals (this.editor)) {\r
115 var oldEditor = this.editor;\r
116 this.editor = editor;\r
117 if (Clazz.instanceOf (oldEditor, javax.swing.JSpinner.DefaultEditor)) {\r
118 (oldEditor).dismiss (this);\r
119 }this.editorExplicitlySet = true;\r
120 this.firePropertyChangeObject ("editor", oldEditor, editor);\r
121 this.revalidate ();\r
122 this.repaint ();\r
123 }}, "javax.swing.JComponent");\r
124 Clazz.defineMethod (c$, "getEditor", \r
125 function () {\r
126 return this.editor;\r
127 });\r
128 Clazz.defineMethod (c$, "commitEdit", \r
129 function () {\r
130 var editor = this.getEditor ();\r
131 if (Clazz.instanceOf (editor, javax.swing.JSpinner.DefaultEditor)) {\r
132 (editor).commitEdit ();\r
133 }});\r
134 c$.$JSpinner$ModelListener$ = function () {\r
135 Clazz.pu$h(self.c$);\r
136 c$ = Clazz.decorateAsClass (function () {\r
137 Clazz.prepareCallback (this, arguments);\r
138 Clazz.instantialize (this, arguments);\r
139 }, javax.swing.JSpinner, "ModelListener", null, javax.swing.event.ChangeListener);\r
140 Clazz.overrideMethod (c$, "stateChanged", \r
141 function (a) {\r
142 this.b$["javax.swing.JSpinner"].fireStateChanged ();\r
143 }, "javax.swing.event.ChangeEvent");\r
144 c$ = Clazz.p0p ();\r
145 };\r
146 Clazz.pu$h(self.c$);\r
147 c$ = Clazz.declareType (javax.swing.JSpinner, "DefaultEditor", javax.swing.JPanel, [javax.swing.event.ChangeListener, java.beans.PropertyChangeListener, java.awt.LayoutManager]);\r
148 Clazz.makeConstructor (c$, \r
149 function (a) {\r
150 Clazz.superConstructor (this, javax.swing.JSpinner.DefaultEditor, [null]);\r
151 var b =  new javax.swing.JFormattedTextField ();\r
152 b.setName ("Spinner.formattedTextField");\r
153 b.setValue (a.getValue ());\r
154 b.addPropertyChangeListener (this);\r
155 b.setEditable (false);\r
156 b.setInheritsPopupMenu (true);\r
157 var c = a.getToolTipText ();\r
158 if (c != null) {\r
159 b.setToolTipText (c);\r
160 }this.add (b);\r
161 this.setLayout (this);\r
162 a.addChangeListener (this);\r
163 var d = b.getActionMap ();\r
164 if (d != null) {\r
165 d.put ("increment", javax.swing.JSpinner.DISABLED_ACTION);\r
166 d.put ("decrement", javax.swing.JSpinner.DISABLED_ACTION);\r
167 }}, "javax.swing.JSpinner");\r
168 Clazz.defineMethod (c$, "dismiss", \r
169 function (a) {\r
170 a.removeChangeListener (this);\r
171 }, "javax.swing.JSpinner");\r
172 Clazz.defineMethod (c$, "getSpinner", \r
173 function () {\r
174 for (var a = this; a != null; a = a.getParent ()) {\r
175 if (Clazz.instanceOf (a, javax.swing.JSpinner)) {\r
176 return a;\r
177 }}\r
178 return null;\r
179 });\r
180 Clazz.defineMethod (c$, "getTextField", \r
181 function () {\r
182 return this.getComponent (0);\r
183 });\r
184 Clazz.overrideMethod (c$, "stateChanged", \r
185 function (a) {\r
186 var b = (a.getSource ());\r
187 this.getTextField ().setValue (b.getValue ());\r
188 }, "javax.swing.event.ChangeEvent");\r
189 Clazz.overrideMethod (c$, "propertyChange", \r
190 function (a) {\r
191 var b = this.getSpinner ();\r
192 if (b == null) {\r
193 return;\r
194 }var c = a.getSource ();\r
195 var d = a.getPropertyName ();\r
196 if ((Clazz.instanceOf (c, javax.swing.JFormattedTextField)) && "value".equals (d)) {\r
197 var e = b.getValue ();\r
198 try {\r
199 b.setValue (this.getTextField ().getValue ());\r
200 } catch (iae) {\r
201 if (Clazz.exceptionOf (iae, IllegalArgumentException)) {\r
202 try {\r
203 (c).setValue (e);\r
204 } catch (iae2) {\r
205 if (Clazz.exceptionOf (iae2, IllegalArgumentException)) {\r
206 } else {\r
207 throw iae2;\r
208 }\r
209 }\r
210 } else {\r
211 throw iae;\r
212 }\r
213 }\r
214 }}, "java.beans.PropertyChangeEvent");\r
215 Clazz.overrideMethod (c$, "addLayoutComponent", \r
216 function (a, b) {\r
217 }, "~S,java.awt.Component");\r
218 Clazz.overrideMethod (c$, "removeLayoutComponent", \r
219 function (a) {\r
220 }, "java.awt.Component");\r
221 Clazz.defineMethod (c$, "insetSize", \r
222  function (a) {\r
223 var b = a.getInsets ();\r
224 var c = b.left + b.right;\r
225 var d = b.top + b.bottom;\r
226 return  new java.awt.Dimension (c, d);\r
227 }, "java.awt.Container");\r
228 Clazz.overrideMethod (c$, "preferredLayoutSize", \r
229 function (a) {\r
230 var b = this.insetSize (a);\r
231 if (a.getComponentCount () > 0) {\r
232 var c = this.getComponent (0).getPreferredSize ();\r
233 b.width += c.width;\r
234 b.height += c.height;\r
235 }return b;\r
236 }, "java.awt.Container");\r
237 Clazz.overrideMethod (c$, "minimumLayoutSize", \r
238 function (a) {\r
239 var b = this.insetSize (a);\r
240 if (a.getComponentCount () > 0) {\r
241 var c = this.getComponent (0).getMinimumSize ();\r
242 b.width += c.width;\r
243 b.height += c.height;\r
244 }return b;\r
245 }, "java.awt.Container");\r
246 Clazz.overrideMethod (c$, "layoutContainer", \r
247 function (a) {\r
248 if (a.getComponentCount () > 0) {\r
249 var b = a.getInsets ();\r
250 var c = a.getWidth () - (b.left + b.right);\r
251 var d = a.getHeight () - (b.top + b.bottom);\r
252 this.getComponent (0).setBounds (b.left, b.top, c, d);\r
253 }}, "java.awt.Container");\r
254 Clazz.defineMethod (c$, "commitEdit", \r
255 function () {\r
256 });\r
257 Clazz.defineMethod (c$, "getBaseline", \r
258 function (a, b) {\r
259 Clazz.superCall (this, javax.swing.JSpinner.DefaultEditor, "getBaseline", [a, b]);\r
260 var c = this.getInsets ();\r
261 a = a - c.left - c.right;\r
262 b = b - c.top - c.bottom;\r
263 var d = this.getComponent (0).getBaseline (a, b);\r
264 if (d >= 0) {\r
265 return d + c.top;\r
266 }return -1;\r
267 }, "~N,~N");\r
268 Clazz.overrideMethod (c$, "getBaselineResizeBehavior", \r
269 function () {\r
270 return this.getComponent (0).getBaselineResizeBehavior ();\r
271 });\r
272 c$ = Clazz.p0p ();\r
273 Clazz.pu$h(self.c$);\r
274 c$ = Clazz.decorateAsClass (function () {\r
275 this.model = null;\r
276 Clazz.instantialize (this, arguments);\r
277 }, javax.swing.JSpinner, "NumberEditorFormatter", javax.swing.text.NumberFormatter);\r
278 Clazz.makeConstructor (c$, \r
279 function (a, b) {\r
280 Clazz.superConstructor (this, javax.swing.JSpinner.NumberEditorFormatter, [b]);\r
281 this.model = a;\r
282 this.setValueClass (a.getValue ().getClass ());\r
283 }, "javax.swing.SpinnerNumberModel,java.text.NumberFormat");\r
284 Clazz.overrideMethod (c$, "setMinimum", \r
285 function (a) {\r
286 this.model.setMinimum (a);\r
287 }, "Comparable");\r
288 Clazz.overrideMethod (c$, "getMinimum", \r
289 function () {\r
290 return this.model.getMinimum ();\r
291 });\r
292 Clazz.overrideMethod (c$, "setMaximum", \r
293 function (a) {\r
294 this.model.setMaximum (a);\r
295 }, "Comparable");\r
296 Clazz.overrideMethod (c$, "getMaximum", \r
297 function () {\r
298 return this.model.getMaximum ();\r
299 });\r
300 c$ = Clazz.p0p ();\r
301 Clazz.pu$h(self.c$);\r
302 c$ = Clazz.declareType (javax.swing.JSpinner, "NumberEditor", javax.swing.JSpinner.DefaultEditor);\r
303 c$.getDefaultPattern = Clazz.defineMethod (c$, "getDefaultPattern", \r
304  function (a) {\r
305 return null;\r
306 }, "java.util.Locale");\r
307 Clazz.makeConstructor (c$, \r
308 function (a) {\r
309 this.construct (a, javax.swing.JSpinner.NumberEditor.getDefaultPattern (a.getLocale ()));\r
310 }, "javax.swing.JSpinner");\r
311 Clazz.makeConstructor (c$, \r
312 function (a, b) {\r
313 this.construct (a,  new java.text.DecimalFormat (b));\r
314 }, "javax.swing.JSpinner,~S");\r
315 Clazz.makeConstructor (c$, \r
316  function (a, b) {\r
317 Clazz.superConstructor (this, javax.swing.JSpinner.NumberEditor, [a]);\r
318 if (!(Clazz.instanceOf (a.getModel (), javax.swing.SpinnerNumberModel))) {\r
319 throw  new IllegalArgumentException ("model not a SpinnerNumberModel");\r
320 }var c = a.getModel ();\r
321 var d =  new javax.swing.JSpinner.NumberEditorFormatter (c, b);\r
322 var e =  new javax.swing.text.DefaultFormatterFactory (d);\r
323 var f = this.getTextField ();\r
324 f.setEditable (true);\r
325 f.setFormatterFactory (e);\r
326 f.setHorizontalAlignment (4);\r
327 try {\r
328 var g = d.valueToString (c.getMinimum ());\r
329 var h = d.valueToString (c.getMaximum ());\r
330 f.setColumns (Math.max (g.length, h.length));\r
331 } catch (e) {\r
332 if (Clazz.exceptionOf (e, java.text.ParseException)) {\r
333 } else {\r
334 throw e;\r
335 }\r
336 }\r
337 }, "javax.swing.JSpinner,java.text.DecimalFormat");\r
338 Clazz.defineMethod (c$, "getFormat", \r
339 function () {\r
340 return ((this.getTextField ().getFormatter ())).getFormat ();\r
341 });\r
342 Clazz.defineMethod (c$, "getModel", \r
343 function () {\r
344 return (this.getSpinner ().getModel ());\r
345 });\r
346 c$ = Clazz.p0p ();\r
347 Clazz.pu$h(self.c$);\r
348 c$ = Clazz.decorateAsClass (function () {\r
349 if (!Clazz.isClassDefined ("javax.swing.JSpinner.ListEditor.ListFormatter")) {\r
350 javax.swing.JSpinner.ListEditor.$JSpinner$ListEditor$ListFormatter$ ();\r
351 }\r
352 Clazz.instantialize (this, arguments);\r
353 }, javax.swing.JSpinner, "ListEditor", javax.swing.JSpinner.DefaultEditor);\r
354 Clazz.makeConstructor (c$, \r
355 function (a) {\r
356 Clazz.superConstructor (this, javax.swing.JSpinner.ListEditor, [a]);\r
357 if (!(Clazz.instanceOf (a.getModel (), javax.swing.SpinnerListModel))) {\r
358 throw  new IllegalArgumentException ("model not a SpinnerListModel");\r
359 }this.getTextField ().setEditable (true);\r
360 this.getTextField ().setFormatterFactory ( new javax.swing.text.DefaultFormatterFactory (Clazz.innerTypeInstance (javax.swing.JSpinner.ListEditor.ListFormatter, this, null)));\r
361 }, "javax.swing.JSpinner");\r
362 Clazz.defineMethod (c$, "getModel", \r
363 function () {\r
364 return (this.getSpinner ().getModel ());\r
365 });\r
366 c$.$JSpinner$ListEditor$ListFormatter$ = function () {\r
367 Clazz.pu$h(self.c$);\r
368 c$ = Clazz.decorateAsClass (function () {\r
369 Clazz.prepareCallback (this, arguments);\r
370 this.filter = null;\r
371 if (!Clazz.isClassDefined ("javax.swing.JSpinner.ListEditor.ListFormatter.Filter")) {\r
372 javax.swing.JSpinner.ListEditor.ListFormatter.$JSpinner$ListEditor$ListFormatter$Filter$ ();\r
373 }\r
374 Clazz.instantialize (this, arguments);\r
375 }, javax.swing.JSpinner.ListEditor, "ListFormatter", javax.swing.JFormattedTextField.AbstractFormatter);\r
376 Clazz.overrideMethod (c$, "valueToString", \r
377 function (a) {\r
378 if (a == null) {\r
379 return "";\r
380 }return a.toString ();\r
381 }, "~O");\r
382 Clazz.overrideMethod (c$, "stringToValue", \r
383 function (a) {\r
384 return a;\r
385 }, "~S");\r
386 Clazz.overrideMethod (c$, "getDocumentFilter", \r
387 function () {\r
388 if (this.filter == null) {\r
389 this.filter = Clazz.innerTypeInstance (javax.swing.JSpinner.ListEditor.ListFormatter.Filter, this, null);\r
390 }return this.filter;\r
391 });\r
392 c$.$JSpinner$ListEditor$ListFormatter$Filter$ = function () {\r
393 Clazz.pu$h(self.c$);\r
394 c$ = Clazz.decorateAsClass (function () {\r
395 Clazz.prepareCallback (this, arguments);\r
396 Clazz.instantialize (this, arguments);\r
397 }, javax.swing.JSpinner.ListEditor.ListFormatter, "Filter", javax.swing.text.DocumentFilter);\r
398 Clazz.defineMethod (c$, "replace", \r
399 function (a, b, c, d, e) {\r
400 if (d != null && (b + c) == a.getDocument ().getLength ()) {\r
401 var f = this.b$["javax.swing.JSpinner.ListEditor"].getModel ().findNextMatch (a.getDocument ().getText (0, b) + d);\r
402 var g = (f != null) ? f.toString () : null;\r
403 if (g != null) {\r
404 a.remove (0, b + c);\r
405 a.insertString (0, g, null);\r
406 this.b$["javax.swing.JSpinner.ListEditor.ListFormatter"].getFormattedTextField ().select (b + d.length, g.length);\r
407 return;\r
408 }}Clazz.superCall (this, javax.swing.JSpinner.ListEditor.ListFormatter.Filter, "replace", [a, b, c, d, e]);\r
409 }, "javax.swing.text.DocumentFilter.FilterBypass,~N,~N,~S,javax.swing.text.AttributeSet");\r
410 Clazz.overrideMethod (c$, "insertString", \r
411 function (a, b, c, d) {\r
412 this.replace (a, b, 0, c, d);\r
413 }, "javax.swing.text.DocumentFilter.FilterBypass,~N,~S,javax.swing.text.AttributeSet");\r
414 c$ = Clazz.p0p ();\r
415 };\r
416 c$ = Clazz.p0p ();\r
417 };\r
418 c$ = Clazz.p0p ();\r
419 Clazz.pu$h(self.c$);\r
420 c$ = Clazz.declareType (javax.swing.JSpinner, "DisabledAction", null, javax.swing.Action);\r
421 Clazz.overrideMethod (c$, "getValue", \r
422 function (a) {\r
423 return null;\r
424 }, "~S");\r
425 Clazz.overrideMethod (c$, "putValue", \r
426 function (a, b) {\r
427 }, "~S,~O");\r
428 Clazz.overrideMethod (c$, "setEnabled", \r
429 function (a) {\r
430 }, "~B");\r
431 Clazz.overrideMethod (c$, "isEnabled", \r
432 function () {\r
433 return false;\r
434 });\r
435 Clazz.overrideMethod (c$, "addPropertyChangeListener", \r
436 function (a) {\r
437 }, "java.beans.PropertyChangeListener");\r
438 Clazz.overrideMethod (c$, "removePropertyChangeListener", \r
439 function (a) {\r
440 }, "java.beans.PropertyChangeListener");\r
441 Clazz.overrideMethod (c$, "actionPerformed", \r
442 function (a) {\r
443 }, "java.awt.event.ActionEvent");\r
444 c$ = Clazz.p0p ();\r
445 Clazz.defineStatics (c$,\r
446 "$uiClassID", "SpinnerUI");\r
447 c$.DISABLED_ACTION = c$.prototype.DISABLED_ACTION =  new javax.swing.JSpinner.DisabledAction ();\r
448 });\r