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
20 if (!Clazz.isClassDefined ("javax.swing.JSlider.JSliderSmartHashtable")) {
\r
21 javax.swing.JSlider.$JSlider$JSliderSmartHashtable$ ();
\r
23 if (!Clazz.isClassDefined ("javax.swing.JSlider.JSliderLabelUIResource")) {
\r
24 javax.swing.JSlider.$JSlider$JSliderLabelUIResource$ ();
\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
31 Clazz.defineMethod (c$, "checkOrientation",
\r
32 function (orientation) {
\r
33 switch (orientation) {
\r
38 throw new IllegalArgumentException ("orientation must be one of: VERTICAL, HORIZONTAL");
\r
41 Clazz.makeConstructor (c$,
\r
43 this.construct (0, 0, 100, 50);
\r
45 Clazz.makeConstructor (c$,
\r
46 function (orientation) {
\r
47 this.construct (orientation, 0, 100, 50);
\r
49 Clazz.makeConstructor (c$,
\r
50 function (min, max) {
\r
51 this.construct (0, min, max, Clazz.doubleToInt ((min + max) / 2));
\r
53 Clazz.makeConstructor (c$,
\r
54 function (min, max, value) {
\r
55 this.construct (0, min, max, value);
\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
66 Clazz.makeConstructor (c$,
\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
73 }, "javax.swing.BoundedRangeModel");
\r
74 Clazz.overrideMethod (c$, "getUI",
\r
78 Clazz.defineMethod (c$, "updateUI",
\r
80 this.setUI (javax.swing.UIManager.getUI (this));
\r
81 this.updateLabelUIs ();
\r
83 Clazz.overrideMethod (c$, "getUIClassID",
\r
87 Clazz.defineMethod (c$, "createChangeListener",
\r
89 return Clazz.innerTypeInstance (javax.swing.JSlider.ModelListener, this, null);
\r
91 Clazz.defineMethod (c$, "addChangeListener",
\r
93 this.listenerList.add (javax.swing.event.ChangeListener, l);
\r
94 }, "javax.swing.event.ChangeListener");
\r
95 Clazz.defineMethod (c$, "removeChangeListener",
\r
97 this.listenerList.remove (javax.swing.event.ChangeListener, l);
\r
98 }, "javax.swing.event.ChangeListener");
\r
99 Clazz.defineMethod (c$, "getChangeListeners",
\r
101 return this.listenerList.getListeners (javax.swing.event.ChangeListener);
\r
103 Clazz.defineMethod (c$, "fireStateChanged",
\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
113 Clazz.defineMethod (c$, "getModel",
\r
115 return this.sliderModel;
\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
129 return this.getModel ().getValue ();
\r
131 Clazz.defineMethod (c$, "setValue",
\r
133 var m = this.getModel ();
\r
134 var oldValue = m.getValue ();
\r
135 if (oldValue == n) {
\r
139 Clazz.defineMethod (c$, "getMinimum",
\r
141 return this.getModel ().getMinimum ();
\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
149 Clazz.defineMethod (c$, "getMaximum",
\r
151 return this.getModel ().getMaximum ();
\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
159 Clazz.defineMethod (c$, "getValueIsAdjusting",
\r
161 return this.getModel ().getValueIsAdjusting ();
\r
163 Clazz.defineMethod (c$, "setValueIsAdjusting",
\r
165 var m = this.getModel ();
\r
166 m.setValueIsAdjusting (b);
\r
168 Clazz.defineMethod (c$, "getExtent",
\r
170 return this.getModel ().getExtent ();
\r
172 Clazz.defineMethod (c$, "setExtent",
\r
173 function (extent) {
\r
174 this.getModel ().setExtent (extent);
\r
176 Clazz.defineMethod (c$, "getOrientation",
\r
178 return this.orientation;
\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
189 Clazz.defineMethod (c$, "setFont",
\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
196 return this.labelTable;
\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
207 }}, "java.util.Dictionary");
\r
208 Clazz.defineMethod (c$, "updateLabelUIs",
\r
210 if (this.getLabelTable () == null) {
\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
221 Clazz.defineMethod (c$, "updateLabelSizes",
\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
233 Clazz.defineMethod (c$, "createStandardLabels",
\r
234 function (increment) {
\r
235 return this.createStandardLabels (increment, this.getMinimum ());
\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
249 Clazz.defineMethod (c$, "getInverted",
\r
251 return this.isInverted;
\r
253 Clazz.defineMethod (c$, "setInverted",
\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
261 Clazz.defineMethod (c$, "getMajorTickSpacing",
\r
263 return this.majorTickSpacing;
\r
265 Clazz.defineMethod (c$, "setMajorTickSpacing",
\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
275 Clazz.defineMethod (c$, "getMinorTickSpacing",
\r
277 return this.minorTickSpacing;
\r
279 Clazz.defineMethod (c$, "setMinorTickSpacing",
\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
287 Clazz.defineMethod (c$, "getSnapToTicks",
\r
289 return this.snapToTicks;
\r
291 Clazz.defineMethod (c$, "getSnapToValue",
\r
293 return this.snapToValue;
\r
295 Clazz.defineMethod (c$, "setSnapToTicks",
\r
297 var oldValue = this.snapToTicks;
\r
298 this.snapToTicks = b;
\r
299 this.firePropertyChangeBool ("snapToTicks", oldValue, this.snapToTicks);
\r
301 Clazz.defineMethod (c$, "setSnapToValue",
\r
303 var oldValue = this.snapToValue;
\r
304 this.snapToValue = b;
\r
305 this.firePropertyChangeBool ("snapToValue", oldValue, this.snapToValue);
\r
307 Clazz.defineMethod (c$, "getPaintTicks",
\r
309 return this.paintTicks;
\r
311 Clazz.defineMethod (c$, "setPaintTicks",
\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
320 Clazz.defineMethod (c$, "getPaintTrack",
\r
322 return this.paintTrack;
\r
324 Clazz.defineMethod (c$, "setPaintTrack",
\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
332 Clazz.defineMethod (c$, "getPaintLabels",
\r
334 return this.paintLabels;
\r
336 Clazz.defineMethod (c$, "setPaintLabels",
\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
347 Clazz.defineMethod (c$, "paramString",
\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
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
366 this.b$["javax.swing.JSlider"].fireStateChanged ();
\r
367 }, "javax.swing.event.ChangeEvent");
\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
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
381 Clazz.superConstructor (this, javax.swing.JSlider.JSliderSmartHashtable);
\r
382 this.increment = a;
\r
384 this.startAtMin = b == this.b$["javax.swing.JSlider"].getMinimum ();
\r
385 this.createLabels ();
\r
387 Clazz.overrideMethod (c$, "propertyChange",
\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
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
402 this.createLabels ();
\r
404 while (b.hasMoreElements ()) {
\r
405 c = b.nextElement ();
\r
406 this.put (c, d.get (c));
\r
408 (a.getSource ()).setLabelTable (this);
\r
409 }}, "java.beans.PropertyChangeEvent");
\r
410 Clazz.defineMethod (c$, "createLabels",
\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
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
426 Clazz.superConstructor (this, javax.swing.JSlider.JSliderLabelUIResource, [a, b]);
\r
427 this.setName ("Slider.label");
\r
429 Clazz.defineMethod (c$, "getFont",
\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
434 }return this.b$["javax.swing.JSlider"].getFont ();
\r
436 Clazz.defineMethod (c$, "getForeground",
\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
441 }if (!(Clazz.instanceOf (this.b$["javax.swing.JSlider"].getForeground (), javax.swing.plaf.UIResource))) {
\r
442 return this.b$["javax.swing.JSlider"].getForeground ();
\r
447 Clazz.defineStatics (c$,
\r
448 "$uiClassID", "SliderUI");
\r