1 Clazz.declarePackage ("javax.swing");
\r
2 Clazz.load (["javax.swing.AbstractSpinnerModel"], "javax.swing.SpinnerListModel", ["java.lang.IllegalArgumentException", "java.util.Arrays"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
6 Clazz.instantialize (this, arguments);
\r
7 }, javax.swing, "SpinnerListModel", javax.swing.AbstractSpinnerModel);
\r
8 Clazz.makeConstructor (c$,
\r
10 Clazz.superConstructor (this, javax.swing.SpinnerListModel, []);
\r
11 if (values == null || values.size () == 0) {
\r
12 throw new IllegalArgumentException ("SpinnerListModel(List) expects non-null non-empty List");
\r
13 }this.list = values;
\r
15 }, "java.util.List");
\r
16 Clazz.makeConstructor (c$,
\r
18 Clazz.superConstructor (this, javax.swing.SpinnerListModel, []);
\r
19 if (values == null || values.length == 0) {
\r
20 throw new IllegalArgumentException ("SpinnerListModel(Object[]) expects non-null non-empty Object[]");
\r
21 }this.list = java.util.Arrays.asList (values);
\r
24 Clazz.makeConstructor (c$,
\r
26 this.construct ( Clazz.newArray (-1, ["empty"]));
\r
28 Clazz.defineMethod (c$, "getList",
\r
32 Clazz.defineMethod (c$, "setList",
\r
34 if ((list == null) || (list.size () == 0)) {
\r
35 throw new IllegalArgumentException ("invalid list");
\r
36 }if (!list.equals (this.list)) {
\r
39 this.fireStateChanged ();
\r
40 }}, "java.util.List");
\r
41 Clazz.overrideMethod (c$, "getValue",
\r
43 return this.list.get (this.index);
\r
45 Clazz.overrideMethod (c$, "setValue",
\r
47 var index = this.list.indexOf (elt);
\r
49 throw new IllegalArgumentException ("invalid sequence element");
\r
50 } else if (index != this.index) {
\r
52 this.fireStateChanged ();
\r
54 Clazz.overrideMethod (c$, "getNextValue",
\r
56 return (this.index >= (this.list.size () - 1)) ? null : this.list.get (this.index + 1);
\r
58 Clazz.overrideMethod (c$, "getPreviousValue",
\r
60 return (this.index <= 0) ? null : this.list.get (this.index - 1);
\r
62 Clazz.defineMethod (c$, "findNextMatch",
\r
63 function (substring) {
\r
64 var max = this.list.size ();
\r
67 }var counter = this.index;
\r
69 var value = this.list.get (counter);
\r
70 var string = value.toString ();
\r
71 if (string != null && string.startsWith (substring)) {
\r
73 }counter = (counter + 1) % max;
\r
74 } while (counter != this.index);
\r