1 Clazz.declarePackage ("swingjs.test.converter");
\r
2 Clazz.load (["javax.swing.event.ChangeListener", "swingjs.test.converter.ConverterRangeModel"], "swingjs.test.converter.FollowerRangeModel", null, function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.sourceModel = null;
\r
5 Clazz.instantialize (this, arguments);
\r
6 }, swingjs.test.converter, "FollowerRangeModel", swingjs.test.converter.ConverterRangeModel, javax.swing.event.ChangeListener);
\r
7 Clazz.makeConstructor (c$,
\r
8 function (sourceModel) {
\r
9 Clazz.superConstructor (this, swingjs.test.converter.FollowerRangeModel, []);
\r
10 this.sourceModel = sourceModel;
\r
11 sourceModel.addChangeListener (this);
\r
12 }, "swingjs.test.converter.ConverterRangeModel");
\r
13 Clazz.overrideMethod (c$, "stateChanged",
\r
15 this.fireStateChanged ();
\r
16 }, "javax.swing.event.ChangeEvent");
\r
17 Clazz.defineMethod (c$, "getMaximum",
\r
19 var modelMax = this.sourceModel.getMaximum ();
\r
20 var multiplyBy = this.sourceModel.getMultiplier () / this.getMultiplier ();
\r
21 return Clazz.doubleToInt (modelMax * multiplyBy);
\r
23 Clazz.defineMethod (c$, "setMaximum",
\r
24 function (newMaximum) {
\r
25 this.sourceModel.setMaximum (Clazz.doubleToInt (newMaximum * (this.getMultiplier () / this.sourceModel.getMultiplier ())));
\r
27 Clazz.overrideMethod (c$, "getValue",
\r
29 return Clazz.doubleToInt (this.getDoubleValue ());
\r
31 Clazz.overrideMethod (c$, "setValue",
\r
32 function (newValue) {
\r
33 this.setDoubleValue (newValue);
\r
35 Clazz.defineMethod (c$, "getDoubleValue",
\r
37 return this.sourceModel.getDoubleValue () * this.sourceModel.getMultiplier () / this.getMultiplier ();
\r
39 Clazz.defineMethod (c$, "setDoubleValue",
\r
40 function (newValue) {
\r
41 this.sourceModel.setDoubleValue (newValue * this.getMultiplier () / this.sourceModel.getMultiplier ());
\r
43 Clazz.defineMethod (c$, "setRangeProperties",
\r
44 function (value, extent, min, max, adjusting) {
\r
45 var multiplyBy = this.getMultiplier () / this.sourceModel.getMultiplier ();
\r
46 this.sourceModel.setRangeProperties (value * multiplyBy, extent, min, Clazz.doubleToInt (max * multiplyBy), adjusting);
\r
47 }, "~N,~N,~N,~N,~B");
\r