afbba4769ef0c2b9401a079b41e23ff49e92bcf5
[jalviewjs.git] / site / swingjs / j2s / javax / swing / JSlider.js
1 Clazz.declarePackage ("javax.swing");\r
2 Clazz.load (["java.util.Hashtable", "java.beans.PropertyChangeListener", "javax.swing.JComponent", "$.JLabel", "$.SwingConstants", "javax.swing.event.ChangeListener", "javax.swing.plaf.UIResource"], "javax.swing.JSlider", ["java.lang.IllegalArgumentException", "javax.swing.DefaultBoundedRangeModel", "$.UIManager", "javax.swing.event.ChangeEvent"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.paintTicks = false;\r
5 this.paintTrack = true;\r
6 this.paintLabels = false;\r
7 this.isInverted = false;\r
8 this.sliderModel = null;\r
9 this.majorTickSpacing = 0;\r
10 this.minorTickSpacing = 0;\r
11 this.snapToTicks = false;\r
12 this.snapToValue = true;\r
13 this.orientation = 0;\r
14 this.labelTable = null;\r
15 this.changeListener = null;\r
16 this.changeEvent = null;\r
17 if (!Clazz.isClassDefined ("javax.swing.JSlider.ModelListener")) {\r
18 javax.swing.JSlider.$JSlider$ModelListener$ ();\r
19 }\r
20 if (!Clazz.isClassDefined ("javax.swing.JSlider.JSliderSmartHashtable")) {\r
21 javax.swing.JSlider.$JSlider$JSliderSmartHashtable$ ();\r
22 }\r
23 if (!Clazz.isClassDefined ("javax.swing.JSlider.JSliderLabelUIResource")) {\r
24 javax.swing.JSlider.$JSlider$JSliderLabelUIResource$ ();\r
25 }\r
26 Clazz.instantialize (this, arguments);\r
27 }, javax.swing, "JSlider", javax.swing.JComponent, javax.swing.SwingConstants);\r
28 Clazz.prepareFields (c$, function () {\r
29 this.changeListener = this.createChangeListener ();\r
30 });\r
31 Clazz.defineMethod (c$, "checkOrientation", \r
32  function (orientation) {\r
33 switch (orientation) {\r
34 case 1:\r
35 case 0:\r
36 break;\r
37 default:\r
38 throw  new IllegalArgumentException ("orientation must be one of: VERTICAL, HORIZONTAL");\r
39 }\r
40 }, "~N");\r
41 Clazz.makeConstructor (c$, \r
42 function () {\r
43 this.construct (0, 0, 100, 50);\r
44 });\r
45 Clazz.makeConstructor (c$, \r
46 function (orientation) {\r
47 this.construct (orientation, 0, 100, 50);\r
48 }, "~N");\r
49 Clazz.makeConstructor (c$, \r
50 function (min, max) {\r
51 this.construct (0, min, max, Clazz.doubleToInt ((min + max) / 2));\r
52 }, "~N,~N");\r
53 Clazz.makeConstructor (c$, \r
54 function (min, max, value) {\r
55 this.construct (0, min, max, value);\r
56 }, "~N,~N,~N");\r
57 Clazz.makeConstructor (c$, \r
58 function (orientation, min, max, value) {\r
59 Clazz.superConstructor (this, javax.swing.JSlider, []);\r
60 this.checkOrientation (orientation);\r
61 this.orientation = orientation;\r
62 this.sliderModel =  new javax.swing.DefaultBoundedRangeModel (value, 0, min, max);\r
63 this.sliderModel.addChangeListener (this.changeListener);\r
64 this.updateUI ();\r
65 }, "~N,~N,~N,~N");\r
66 Clazz.makeConstructor (c$, \r
67 function (brm) {\r
68 Clazz.superConstructor (this, javax.swing.JSlider, []);\r
69 this.orientation = 0;\r
70 this.setModel (brm);\r
71 this.sliderModel.addChangeListener (this.changeListener);\r
72 this.updateUI ();\r
73 }, "javax.swing.BoundedRangeModel");\r
74 Clazz.overrideMethod (c$, "getUI", \r
75 function () {\r
76 return this.ui;\r
77 });\r
78 Clazz.defineMethod (c$, "updateUI", \r
79 function () {\r
80 this.setUI (javax.swing.UIManager.getUI (this));\r
81 this.updateLabelUIs ();\r
82 });\r
83 Clazz.overrideMethod (c$, "getUIClassID", \r
84 function () {\r
85 return "SliderUI";\r
86 });\r
87 Clazz.defineMethod (c$, "createChangeListener", \r
88 function () {\r
89 return Clazz.innerTypeInstance (javax.swing.JSlider.ModelListener, this, null);\r
90 });\r
91 Clazz.defineMethod (c$, "addChangeListener", \r
92 function (l) {\r
93 this.listenerList.add (javax.swing.event.ChangeListener, l);\r
94 }, "javax.swing.event.ChangeListener");\r
95 Clazz.defineMethod (c$, "removeChangeListener", \r
96 function (l) {\r
97 this.listenerList.remove (javax.swing.event.ChangeListener, l);\r
98 }, "javax.swing.event.ChangeListener");\r
99 Clazz.defineMethod (c$, "getChangeListeners", \r
100 function () {\r
101 return this.listenerList.getListeners (javax.swing.event.ChangeListener);\r
102 });\r
103 Clazz.defineMethod (c$, "fireStateChanged", \r
104 function () {\r
105 var listeners = this.listenerList.getListenerList ();\r
106 for (var i = listeners.length - 2; i >= 0; i -= 2) {\r
107 if (listeners[i] === javax.swing.event.ChangeListener) {\r
108 if (this.changeEvent == null) {\r
109 this.changeEvent =  new javax.swing.event.ChangeEvent (this);\r
110 }(listeners[i + 1]).stateChanged (this.changeEvent);\r
111 }}\r
112 });\r
113 Clazz.defineMethod (c$, "getModel", \r
114 function () {\r
115 return this.sliderModel;\r
116 });\r
117 Clazz.defineMethod (c$, "setModel", \r
118 function (newModel) {\r
119 var oldModel = this.getModel ();\r
120 if (oldModel != null) {\r
121 oldModel.removeChangeListener (this.changeListener);\r
122 }this.sliderModel = newModel;\r
123 if (newModel != null) {\r
124 newModel.addChangeListener (this.changeListener);\r
125 }this.firePropertyChangeObject ("model", oldModel, this.sliderModel);\r
126 }, "javax.swing.BoundedRangeModel");\r
127 Clazz.defineMethod (c$, "getValue", \r
128 function () {\r
129 return this.getModel ().getValue ();\r
130 });\r
131 Clazz.defineMethod (c$, "setValue", \r
132 function (n) {\r
133 var m = this.getModel ();\r
134 var oldValue = m.getValue ();\r
135 if (oldValue == n) {\r
136 return;\r
137 }m.setValue (n);\r
138 }, "~N");\r
139 Clazz.defineMethod (c$, "getMinimum", \r
140 function () {\r
141 return this.getModel ().getMinimum ();\r
142 });\r
143 Clazz.defineMethod (c$, "setMinimum", \r
144 function (minimum) {\r
145 var oldMin = this.getModel ().getMinimum ();\r
146 this.getModel ().setMinimum (minimum);\r
147 this.firePropertyChangeObject ("minimum",  new Integer (oldMin),  new Integer (minimum));\r
148 }, "~N");\r
149 Clazz.defineMethod (c$, "getMaximum", \r
150 function () {\r
151 return this.getModel ().getMaximum ();\r
152 });\r
153 Clazz.defineMethod (c$, "setMaximum", \r
154 function (maximum) {\r
155 var oldMax = this.getModel ().getMaximum ();\r
156 this.getModel ().setMaximum (maximum);\r
157 this.firePropertyChangeObject ("maximum",  new Integer (oldMax),  new Integer (maximum));\r
158 }, "~N");\r
159 Clazz.defineMethod (c$, "getValueIsAdjusting", \r
160 function () {\r
161 return this.getModel ().getValueIsAdjusting ();\r
162 });\r
163 Clazz.defineMethod (c$, "setValueIsAdjusting", \r
164 function (b) {\r
165 var m = this.getModel ();\r
166 m.setValueIsAdjusting (b);\r
167 }, "~B");\r
168 Clazz.defineMethod (c$, "getExtent", \r
169 function () {\r
170 return this.getModel ().getExtent ();\r
171 });\r
172 Clazz.defineMethod (c$, "setExtent", \r
173 function (extent) {\r
174 this.getModel ().setExtent (extent);\r
175 }, "~N");\r
176 Clazz.defineMethod (c$, "getOrientation", \r
177 function () {\r
178 return this.orientation;\r
179 });\r
180 Clazz.defineMethod (c$, "setOrientation", \r
181 function (orientation) {\r
182 this.checkOrientation (orientation);\r
183 var oldValue = this.orientation;\r
184 this.orientation = orientation;\r
185 this.firePropertyChangeInt ("orientation", oldValue, orientation);\r
186 if (orientation != oldValue) {\r
187 this.revalidate ();\r
188 }}, "~N");\r
189 Clazz.defineMethod (c$, "setFont", \r
190 function (font) {\r
191 Clazz.superCall (this, javax.swing.JSlider, "setFont", [font]);\r
192 this.updateLabelSizes ();\r
193 }, "java.awt.Font");\r
194 Clazz.defineMethod (c$, "getLabelTable", \r
195 function () {\r
196 return this.labelTable;\r
197 });\r
198 Clazz.defineMethod (c$, "setLabelTable", \r
199 function (labels) {\r
200 var oldTable = this.labelTable;\r
201 this.labelTable = labels;\r
202 this.updateLabelUIs ();\r
203 this.firePropertyChangeObject ("labelTable", oldTable, this.labelTable);\r
204 if (labels !== oldTable) {\r
205 this.revalidate ();\r
206 this.repaint ();\r
207 }}, "java.util.Dictionary");\r
208 Clazz.defineMethod (c$, "updateLabelUIs", \r
209 function () {\r
210 if (this.getLabelTable () == null) {\r
211 return;\r
212 }var labels = this.getLabelTable ().keys ();\r
213 while (labels.hasMoreElements ()) {\r
214 var value = this.getLabelTable ().get (labels.nextElement ());\r
215 if (Clazz.instanceOf (value, javax.swing.JComponent)) {\r
216 var component = value;\r
217 component.updateUI ();\r
218 component.setSize (component.getPreferredSize ());\r
219 }}\r
220 });\r
221 Clazz.defineMethod (c$, "updateLabelSizes", \r
222  function () {\r
223 var labelTable = this.getLabelTable ();\r
224 if (labelTable != null) {\r
225 var labels = labelTable.elements ();\r
226 while (labels.hasMoreElements ()) {\r
227 var value = labels.nextElement ();\r
228 if (Clazz.instanceOf (value, javax.swing.JComponent)) {\r
229 var component = value;\r
230 component.setSize (component.getPreferredSize ());\r
231 }}\r
232 }});\r
233 Clazz.defineMethod (c$, "createStandardLabels", \r
234 function (increment) {\r
235 return this.createStandardLabels (increment, this.getMinimum ());\r
236 }, "~N");\r
237 Clazz.defineMethod (c$, "createStandardLabels", \r
238 function (increment, start) {\r
239 if (start > this.getMaximum () || start < this.getMinimum ()) {\r
240 throw  new IllegalArgumentException ("Slider label start point out of range.");\r
241 }if (increment <= 0) {\r
242 throw  new IllegalArgumentException ("Label incremement must be > 0");\r
243 }var table = Clazz.innerTypeInstance (javax.swing.JSlider.JSliderSmartHashtable, this, null, increment, start);\r
244 if (this.getLabelTable () != null && (Clazz.instanceOf (this.getLabelTable (), java.beans.PropertyChangeListener))) {\r
245 this.removePropertyChangeListener (this.getLabelTable ());\r
246 }this.addPropertyChangeListener (table);\r
247 return table;\r
248 }, "~N,~N");\r
249 Clazz.defineMethod (c$, "getInverted", \r
250 function () {\r
251 return this.isInverted;\r
252 });\r
253 Clazz.defineMethod (c$, "setInverted", \r
254 function (b) {\r
255 var oldValue = this.isInverted;\r
256 this.isInverted = b;\r
257 this.firePropertyChangeBool ("inverted", oldValue, this.isInverted);\r
258 if (b != oldValue) {\r
259 this.repaint ();\r
260 }}, "~B");\r
261 Clazz.defineMethod (c$, "getMajorTickSpacing", \r
262 function () {\r
263 return this.majorTickSpacing;\r
264 });\r
265 Clazz.defineMethod (c$, "setMajorTickSpacing", \r
266 function (n) {\r
267 var oldValue = this.majorTickSpacing;\r
268 this.majorTickSpacing = n;\r
269 if (this.labelTable == null && this.getMajorTickSpacing () > 0 && this.getPaintLabels ()) {\r
270 this.setLabelTable (this.createStandardLabels (this.getMajorTickSpacing ()));\r
271 }this.firePropertyChangeInt ("majorTickSpacing", oldValue, this.majorTickSpacing);\r
272 if (this.majorTickSpacing != oldValue && this.getPaintTicks ()) {\r
273 this.repaint ();\r
274 }}, "~N");\r
275 Clazz.defineMethod (c$, "getMinorTickSpacing", \r
276 function () {\r
277 return this.minorTickSpacing;\r
278 });\r
279 Clazz.defineMethod (c$, "setMinorTickSpacing", \r
280 function (n) {\r
281 var oldValue = this.minorTickSpacing;\r
282 this.minorTickSpacing = n;\r
283 this.firePropertyChangeInt ("minorTickSpacing", oldValue, this.minorTickSpacing);\r
284 if (this.minorTickSpacing != oldValue && this.getPaintTicks ()) {\r
285 this.repaint ();\r
286 }}, "~N");\r
287 Clazz.defineMethod (c$, "getSnapToTicks", \r
288 function () {\r
289 return this.snapToTicks;\r
290 });\r
291 Clazz.defineMethod (c$, "getSnapToValue", \r
292 function () {\r
293 return this.snapToValue;\r
294 });\r
295 Clazz.defineMethod (c$, "setSnapToTicks", \r
296 function (b) {\r
297 var oldValue = this.snapToTicks;\r
298 this.snapToTicks = b;\r
299 this.firePropertyChangeBool ("snapToTicks", oldValue, this.snapToTicks);\r
300 }, "~B");\r
301 Clazz.defineMethod (c$, "setSnapToValue", \r
302 function (b) {\r
303 var oldValue = this.snapToValue;\r
304 this.snapToValue = b;\r
305 this.firePropertyChangeBool ("snapToValue", oldValue, this.snapToValue);\r
306 }, "~B");\r
307 Clazz.defineMethod (c$, "getPaintTicks", \r
308 function () {\r
309 return this.paintTicks;\r
310 });\r
311 Clazz.defineMethod (c$, "setPaintTicks", \r
312 function (b) {\r
313 var oldValue = this.paintTicks;\r
314 this.paintTicks = b;\r
315 this.firePropertyChangeBool ("paintTicks", oldValue, this.paintTicks);\r
316 if (this.paintTicks != oldValue) {\r
317 this.revalidate ();\r
318 this.repaint ();\r
319 }}, "~B");\r
320 Clazz.defineMethod (c$, "getPaintTrack", \r
321 function () {\r
322 return this.paintTrack;\r
323 });\r
324 Clazz.defineMethod (c$, "setPaintTrack", \r
325 function (b) {\r
326 var oldValue = this.paintTrack;\r
327 this.paintTrack = b;\r
328 this.firePropertyChangeBool ("paintTrack", oldValue, this.paintTrack);\r
329 if (this.paintTrack != oldValue) {\r
330 this.repaint ();\r
331 }}, "~B");\r
332 Clazz.defineMethod (c$, "getPaintLabels", \r
333 function () {\r
334 return this.paintLabels;\r
335 });\r
336 Clazz.defineMethod (c$, "setPaintLabels", \r
337 function (b) {\r
338 var oldValue = this.paintLabels;\r
339 this.paintLabels = b;\r
340 if (this.labelTable == null && this.getMajorTickSpacing () > 0) {\r
341 this.setLabelTable (this.createStandardLabels (this.getMajorTickSpacing ()));\r
342 }this.firePropertyChangeBool ("paintLabels", oldValue, this.paintLabels);\r
343 if (this.paintLabels != oldValue) {\r
344 this.revalidate ();\r
345 this.repaint ();\r
346 }}, "~B");\r
347 Clazz.defineMethod (c$, "paramString", \r
348 function () {\r
349 var paintTicksString = (this.paintTicks ? "true" : "false");\r
350 var paintTrackString = (this.paintTrack ? "true" : "false");\r
351 var paintLabelsString = (this.paintLabels ? "true" : "false");\r
352 var isInvertedString = (this.isInverted ? "true" : "false");\r
353 var snapToTicksString = (this.snapToTicks ? "true" : "false");\r
354 var snapToValueString = (this.snapToValue ? "true" : "false");\r
355 var orientationString = (this.orientation == 0 ? "HORIZONTAL" : "VERTICAL");\r
356 return Clazz.superCall (this, javax.swing.JSlider, "paramString", []) + ",isInverted=" + isInvertedString + ",majorTickSpacing=" + this.majorTickSpacing + ",minorTickSpacing=" + this.minorTickSpacing + ",orientation=" + orientationString + ",paintLabels=" + paintLabelsString + ",paintTicks=" + paintTicksString + ",paintTrack=" + paintTrackString + ",snapToTicks=" + snapToTicksString + ",snapToValue=" + snapToValueString;\r
357 });\r
358 c$.$JSlider$ModelListener$ = function () {\r
359 Clazz.pu$h(self.c$);\r
360 c$ = Clazz.decorateAsClass (function () {\r
361 Clazz.prepareCallback (this, arguments);\r
362 Clazz.instantialize (this, arguments);\r
363 }, javax.swing.JSlider, "ModelListener", null, javax.swing.event.ChangeListener);\r
364 Clazz.overrideMethod (c$, "stateChanged", \r
365 function (a) {\r
366 this.b$["javax.swing.JSlider"].fireStateChanged ();\r
367 }, "javax.swing.event.ChangeEvent");\r
368 c$ = Clazz.p0p ();\r
369 };\r
370 c$.$JSlider$JSliderSmartHashtable$ = function () {\r
371 Clazz.pu$h(self.c$);\r
372 c$ = Clazz.decorateAsClass (function () {\r
373 Clazz.prepareCallback (this, arguments);\r
374 this.increment = 0;\r
375 this.start = 0;\r
376 this.startAtMin = false;\r
377 Clazz.instantialize (this, arguments);\r
378 }, javax.swing.JSlider, "JSliderSmartHashtable", java.util.Hashtable, java.beans.PropertyChangeListener);\r
379 Clazz.makeConstructor (c$, \r
380 function (a, b) {\r
381 Clazz.superConstructor (this, javax.swing.JSlider.JSliderSmartHashtable);\r
382 this.increment = a;\r
383 this.start = b;\r
384 this.startAtMin = b == this.b$["javax.swing.JSlider"].getMinimum ();\r
385 this.createLabels ();\r
386 }, "~N,~N");\r
387 Clazz.overrideMethod (c$, "propertyChange", \r
388 function (a) {\r
389 if (a.getPropertyName ().equals ("minimum") && this.startAtMin) {\r
390 this.start = this.b$["javax.swing.JSlider"].getMinimum ();\r
391 }if (a.getPropertyName ().equals ("minimum") || a.getPropertyName ().equals ("maximum")) {\r
392 var b = this.b$["javax.swing.JSlider"].getLabelTable ().keys ();\r
393 var c = null;\r
394 var d =  new java.util.Hashtable ();\r
395 while (b.hasMoreElements ()) {\r
396 c = b.nextElement ();\r
397 var e = this.b$["javax.swing.JSlider"].getLabelTable ().get (c);\r
398 if (!(Clazz.instanceOf (e, javax.swing.JSlider.JSliderLabelUIResource))) {\r
399 d.put (c, e);\r
400 }}\r
401 this.clear ();\r
402 this.createLabels ();\r
403 b = d.keys ();\r
404 while (b.hasMoreElements ()) {\r
405 c = b.nextElement ();\r
406 this.put (c, d.get (c));\r
407 }\r
408 (a.getSource ()).setLabelTable (this);\r
409 }}, "java.beans.PropertyChangeEvent");\r
410 Clazz.defineMethod (c$, "createLabels", \r
411 function () {\r
412 for (var a = this.start; a <= this.b$["javax.swing.JSlider"].getMaximum (); a += this.increment) {\r
413 this.put ( new Integer (a), Clazz.innerTypeInstance (javax.swing.JSlider.JSliderLabelUIResource, this, null, "" + a, 0));\r
414 }\r
415 });\r
416 c$ = Clazz.p0p ();\r
417 };\r
418 c$.$JSlider$JSliderLabelUIResource$ = function () {\r
419 Clazz.pu$h(self.c$);\r
420 c$ = Clazz.decorateAsClass (function () {\r
421 Clazz.prepareCallback (this, arguments);\r
422 Clazz.instantialize (this, arguments);\r
423 }, javax.swing.JSlider, "JSliderLabelUIResource", javax.swing.JLabel, javax.swing.plaf.UIResource);\r
424 Clazz.makeConstructor (c$, \r
425 function (a, b) {\r
426 Clazz.superConstructor (this, javax.swing.JSlider.JSliderLabelUIResource, [a, b]);\r
427 this.setName ("Slider.label");\r
428 }, "~S,~N");\r
429 Clazz.defineMethod (c$, "getFont", \r
430 function () {\r
431 var a = Clazz.superCall (this, javax.swing.JSlider.JSliderLabelUIResource, "getFont", []);\r
432 if (a != null && !(Clazz.instanceOf (a, javax.swing.plaf.UIResource))) {\r
433 return a;\r
434 }return this.b$["javax.swing.JSlider"].getFont ();\r
435 });\r
436 Clazz.defineMethod (c$, "getForeground", \r
437 function () {\r
438 var a = Clazz.superCall (this, javax.swing.JSlider.JSliderLabelUIResource, "getForeground", []);\r
439 if (a != null && !(Clazz.instanceOf (a, javax.swing.plaf.UIResource))) {\r
440 return a;\r
441 }if (!(Clazz.instanceOf (this.b$["javax.swing.JSlider"].getForeground (), javax.swing.plaf.UIResource))) {\r
442 return this.b$["javax.swing.JSlider"].getForeground ();\r
443 }return a;\r
444 });\r
445 c$ = Clazz.p0p ();\r
446 };\r
447 Clazz.defineStatics (c$,\r
448 "$uiClassID", "SliderUI");\r
449 });\r