home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / javax / swing / AbstractSpinnerModel.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  1.3 KB  |  43 lines

  1. package javax.swing;
  2.  
  3. import java.util.EventListener;
  4. import javax.swing.event.ChangeEvent;
  5. import javax.swing.event.ChangeListener;
  6. import javax.swing.event.EventListenerList;
  7.  
  8. public abstract class AbstractSpinnerModel implements SpinnerModel {
  9.    private transient ChangeEvent changeEvent = null;
  10.    protected EventListenerList listenerList = new EventListenerList();
  11.  
  12.    public void addChangeListener(ChangeListener var1) {
  13.       this.listenerList.add(ChangeListener.class, var1);
  14.    }
  15.  
  16.    public void removeChangeListener(ChangeListener var1) {
  17.       this.listenerList.remove(ChangeListener.class, var1);
  18.    }
  19.  
  20.    public ChangeListener[] getChangeListeners() {
  21.       return (ChangeListener[])this.listenerList.getListeners(ChangeListener.class);
  22.    }
  23.  
  24.    protected void fireStateChanged() {
  25.       Object[] var1 = this.listenerList.getListenerList();
  26.  
  27.       for(int var2 = var1.length - 2; var2 >= 0; var2 -= 2) {
  28.          if (var1[var2] == ChangeListener.class) {
  29.             if (this.changeEvent == null) {
  30.                this.changeEvent = new ChangeEvent(this);
  31.             }
  32.  
  33.             ((ChangeListener)var1[var2 + 1]).stateChanged(this.changeEvent);
  34.          }
  35.       }
  36.  
  37.    }
  38.  
  39.    public <T extends EventListener> T[] getListeners(Class<T> var1) {
  40.       return (T[])this.listenerList.getListeners(var1);
  41.    }
  42. }
  43.