- java.lang.Object
-
- javax.swing.DefaultSingleSelectionModel
-
- All Implemented Interfaces:
Serializable
,SingleSelectionModel
public class DefaultSingleSelectionModel extends Object implements SingleSelectionModel, Serializable
A generic implementation of SingleSelectionModel.Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the
java.beans
package. Please seeXMLEncoder
.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected ChangeEvent
changeEvent
Only one ModelChangeEvent is needed per model instance since the event's only (read-only) state is the source property.protected EventListenerList
listenerList
The collection of registered listeners
-
Constructor Summary
Constructors Constructor Description DefaultSingleSelectionModel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChangeListener(ChangeListener l)
Adds aChangeListener
to the button.void
clearSelection()
Clears the selection (to -1).protected void
fireStateChanged()
Notifies all listeners that have registered interest for notification on this event type.ChangeListener[]
getChangeListeners()
Returns an array of all the change listeners registered on thisDefaultSingleSelectionModel
.<T extends EventListener>
T[]getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered asFooListener
s upon this model.int
getSelectedIndex()
Returns the model's selection.boolean
isSelected()
Returns true if the selection model currently has a selected value.void
removeChangeListener(ChangeListener l)
Removes aChangeListener
from the button.void
setSelectedIndex(int index)
Sets the model's selected index to index.
-
-
-
Field Detail
-
changeEvent
protected transient ChangeEvent changeEvent
Only one ModelChangeEvent is needed per model instance since the event's only (read-only) state is the source property. The source of events generated here is always "this".
-
listenerList
protected EventListenerList listenerList
The collection of registered listeners
-
-
Method Detail
-
getSelectedIndex
public int getSelectedIndex()
Returns the model's selection.- Specified by:
getSelectedIndex
in interfaceSingleSelectionModel
- Returns:
- the model's selection, or -1 if there is no selection
- See Also:
SingleSelectionModel.setSelectedIndex(int)
-
setSelectedIndex
public void setSelectedIndex(int index)
Sets the model's selected index to index. Notifies any listeners if the model changes- Specified by:
setSelectedIndex
in interfaceSingleSelectionModel
- Parameters:
index
- an int specifying the model selection- See Also:
SingleSelectionModel.getSelectedIndex()
,SingleSelectionModel.addChangeListener(javax.swing.event.ChangeListener)
-
clearSelection
public void clearSelection()
Clears the selection (to -1).- Specified by:
clearSelection
in interfaceSingleSelectionModel
-
isSelected
public boolean isSelected()
Returns true if the selection model currently has a selected value.- Specified by:
isSelected
in interfaceSingleSelectionModel
- Returns:
- true if a value is currently selected
-
addChangeListener
public void addChangeListener(ChangeListener l)
Adds aChangeListener
to the button.- Specified by:
addChangeListener
in interfaceSingleSelectionModel
- Parameters:
l
- the ChangeListener to add
-
removeChangeListener
public void removeChangeListener(ChangeListener l)
Removes aChangeListener
from the button.- Specified by:
removeChangeListener
in interfaceSingleSelectionModel
- Parameters:
l
- the ChangeListener to remove
-
getChangeListeners
public ChangeListener[] getChangeListeners()
Returns an array of all the change listeners registered on thisDefaultSingleSelectionModel
.- Returns:
- all of this model's
ChangeListener
s or an empty array if no change listeners are currently registered - Since:
- 1.4
- See Also:
addChangeListener(javax.swing.event.ChangeListener)
,removeChangeListener(javax.swing.event.ChangeListener)
-
fireStateChanged
protected void fireStateChanged()
Notifies all listeners that have registered interest for notification on this event type. The event instance is created lazily.- See Also:
EventListenerList
-
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered asFooListener
s upon this model.FooListener
s are registered using theaddFooListener
method.You can specify the
listenerType
argument with a class literal, such asFooListener.class
. For example, you can query aDefaultSingleSelectionModel
instancem
for its change listeners with the following code:ChangeListener[] cls = (ChangeListener[])(m.getListeners(ChangeListener.class));
If no such listeners exist, this method returns an empty array.- Type Parameters:
T
- the type ofEventListener
class being requested- Parameters:
listenerType
- the type of listeners requested; this parameter should specify an interface that descends fromjava.util.EventListener
- Returns:
- an array of all objects registered as
FooListener
s on this model, or an empty array if no such listeners have been added - Throws:
ClassCastException
- iflistenerType
doesn't specify a class or interface that implementsjava.util.EventListener
- Since:
- 1.3
- See Also:
getChangeListeners()
-
-