JavaTM 2 Platform
Std. Ed. v1.4.2

javax.swing
Class AbstractSpinnerModel

java.lang.Object
  extended byjavax.swing.AbstractSpinnerModel
All Implemented Interfaces:
SpinnerModel
Direct Known Subclasses:
SpinnerDateModel, SpinnerListModel, SpinnerNumberModel

public abstract class AbstractSpinnerModel
extends Object
implements SpinnerModel

This class provides the ChangeListener part of the SpinnerModel interface that should be suitable for most concrete SpinnerModel implementations. Subclasses must provide an implementation of the minimum, maximum, and value properties and the getNextValue and getPreviousValue methods.

Since:
1.4
See Also:
JSpinner, SpinnerModel, SpinnerListModel, SpinnerNumberModel, SpinnerDateModel

Field Summary
protected  EventListenerList listenerList
          The list of ChangeListeners for this model.
 
Constructor Summary
AbstractSpinnerModel()
           
 
Method Summary
 void addChangeListener(ChangeListener l)
          Adds a ChangeListener to the model's listener list.
protected  void fireStateChanged()
          Run each ChangeListeners stateChanged() method.
 ChangeListener[] getChangeListeners()
          Returns an array of all the ChangeListeners added to this AbstractSpinnerModel with addChangeListener().
 EventListener[] getListeners(Class listenerType)
          Return an array of all the listeners of the given type that were added to this model.
 void removeChangeListener(ChangeListener l)
          Removes a ChangeListener from the model's listener list.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.swing.SpinnerModel
getNextValue, getPreviousValue, getValue, setValue
 

Field Detail

listenerList

protected EventListenerList listenerList
The list of ChangeListeners for this model. Subclasses may store their own listeners here.

Constructor Detail

AbstractSpinnerModel

public AbstractSpinnerModel()
Method Detail

addChangeListener

public void addChangeListener(ChangeListener l)
Adds a ChangeListener to the model's listener list. The ChangeListeners must be notified when the models value changes.

Specified by:
addChangeListener in interface SpinnerModel
Parameters:
l - the ChangeListener to add
See Also:
removeChangeListener(javax.swing.event.ChangeListener), SpinnerModel.addChangeListener(javax.swing.event.ChangeListener)

removeChangeListener

public void removeChangeListener(ChangeListener l)
Removes a ChangeListener from the model's listener list.

Specified by:
removeChangeListener in interface SpinnerModel
Parameters:
l - the ChangeListener to remove
See Also:
addChangeListener(javax.swing.event.ChangeListener), SpinnerModel.removeChangeListener(javax.swing.event.ChangeListener)

getChangeListeners

public ChangeListener[] getChangeListeners()
Returns an array of all the ChangeListeners added to this AbstractSpinnerModel with addChangeListener().

Returns:
all of the ChangeListeners added or an empty array if no listeners have been added
Since:
1.4

fireStateChanged

protected void fireStateChanged()
Run each ChangeListeners stateChanged() method.

See Also:
SpinnerModel.setValue(java.lang.Object), EventListenerList

getListeners

public EventListener[] getListeners(Class listenerType)
Return an array of all the listeners of the given type that were added to this model. For example to find all of the ChangeListeners added to this model:
 myAbstractSpinnerModel.getListeners(ChangeListener.class);
 

Parameters:
listenerType - the type of listeners to return, e.g. ChangeListener.class
Returns:
all of the objects receiving listenerType notifications from this model

JavaTM 2 Platform
Std. Ed. v1.4.2

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.