1 Clazz.declarePackage ("javax.swing.event");
2 Clazz.load (null, "javax.swing.event.EventListenerList", ["java.lang.reflect.Array"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.listenerList = null;
5 Clazz.instantialize (this, arguments);
6 }, javax.swing.event, "EventListenerList");
7 Clazz.prepareFields (c$, function () {
8 this.listenerList = javax.swing.event.EventListenerList.NULL_ARRAY;
10 Clazz.defineMethod (c$, "getListenerList",
12 return this.listenerList;
14 Clazz.defineMethod (c$, "getListeners",
16 var lList = this.listenerList;
17 var n = this.getListenerCount (lList, t);
18 var result = java.lang.reflect.Array.newInstance (t, n);
20 for (var i = lList.length - 2; i >= 0; i -= 2) {
22 result[j++] = lList[i + 1];
26 Clazz.defineMethod (c$, "getListenerCount",
28 return Clazz.doubleToInt (this.listenerList.length / 2);
30 Clazz.defineMethod (c$, "getListenerCount",
32 var lList = this.listenerList;
33 return this.getListenerCount (lList, t);
35 Clazz.defineMethod (c$, "getListenerCount",
38 for (var i = 0; i < list.length; i += 2) {
39 if (t === list[i]) count++;
43 Clazz.defineMethod (c$, "add",
47 }if (this.listenerList === javax.swing.event.EventListenerList.NULL_ARRAY) {
48 this.listenerList = Clazz.newArray (-1, [t, l]);
50 var i = this.listenerList.length;
51 var tmp = new Array (i + 2);
52 System.arraycopy (this.listenerList, 0, tmp, 0, i);
55 this.listenerList = tmp;
57 Clazz.defineMethod (c$, "remove",
62 for (var i = this.listenerList.length - 2; i >= 0; i -= 2) {
63 if ((this.listenerList[i] === t) && (this.listenerList[i + 1].equals (l) == true)) {
68 var tmp = new Array (this.listenerList.length - 2);
69 System.arraycopy (this.listenerList, 0, tmp, 0, index);
70 if (index < tmp.length) System.arraycopy (this.listenerList, index + 2, tmp, index, tmp.length - index);
71 this.listenerList = (tmp.length == 0) ? javax.swing.event.EventListenerList.NULL_ARRAY : tmp;
73 Clazz.overrideMethod (c$, "toString",
75 var lList = this.listenerList;
76 var s = "EventListenerList: ";
77 s += Clazz.doubleToInt (lList.length / 2) + " listeners: ";
78 for (var i = 0; i <= lList.length - 2; i += 2) {
79 s += " type " + (lList[i]).getName ();
80 s += " listener " + lList[i + 1];
84 c$.NULL_ARRAY = c$.prototype.NULL_ARRAY = new Array (0);