Class 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 see XMLEncoder.

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 a ChangeListener to the button.

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 this DefaultSingleSelectionModel.

<T extends EventListener>
T[]
getListeners​(Class<T> listenerType)

Returns an array of all the objects currently registered as FooListeners upon this model.

void removeChangeListener​(ChangeListener l)

Removes a ChangeListener from the button.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Methods declared in interface javax.swing.SingleSelectionModel

clearSelection, getSelectedIndex, isSelected, setSelectedIndex

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

Constructor Detail

DefaultSingleSelectionModel

public DefaultSingleSelectionModel()

Method Detail

addChangeListener

public void addChangeListener​(ChangeListener l)

Adds a ChangeListener to the button.

Specified by:
addChangeListener in interface SingleSelectionModel
Parameters:
l - the ChangeListener to add

removeChangeListener

public void removeChangeListener​(ChangeListener l)

Removes a ChangeListener from the button.

Specified by:
removeChangeListener in interface SingleSelectionModel
Parameters:
l - the ChangeListener to remove

getChangeListeners

public ChangeListener[] getChangeListeners()

Returns an array of all the change listeners registered on this DefaultSingleSelectionModel.

Returns:
all of this model's ChangeListeners 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 as FooListeners upon this model. FooListeners are registered using the addFooListener method.

You can specify the listenerType argument with a class literal, such as FooListener.class. For example, you can query a DefaultSingleSelectionModel instance m 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 of EventListener class being requested
Parameters:
listenerType - the type of listeners requested; this parameter should specify an interface that descends from java.util.EventListener
Returns:
an array of all objects registered as FooListeners on this model, or an empty array if no such listeners have been added
Throws:
ClassCastException - if listenerType doesn't specify a class or interface that implements java.util.EventListener
Since:
1.3
See Also:
getChangeListeners()