|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.beans.PropertyChangeSupport javax.swing.event.SwingPropertyChangeSupport
This subclass of java.beans.PropertyChangeSupport is identical in functionality -- it sacrifices thread-safety (not a Swing concern) for reduce memory consumption, which helps performance (both big Swing concerns). Most of the overridden methods are only necessary because all of PropertyChangeSupport's instance data is private, without accessor methods.
Field Summary | |
private Hashtable |
children
|
private EventListenerList |
listeners
|
(package private) static long |
serialVersionUID
|
private Object |
source
|
Fields inherited from class java.beans.PropertyChangeSupport |
|
Constructor Summary | |
SwingPropertyChangeSupport(Object sourceBean)
Constructs a SwingPropertyChangeSupport object. |
Method Summary | |
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a PropertyChangeListener to the listener list. |
void |
addPropertyChangeListener(String propertyName,
java.beans.PropertyChangeListener listener)
Add a PropertyChangeListener for a specific property. |
void |
firePropertyChange(java.beans.PropertyChangeEvent evt)
Fire an existing PropertyChangeEvent to any registered listeners. |
void |
firePropertyChange(String propertyName,
Object oldValue,
Object newValue)
Report a bound property update to any registered listeners. |
java.beans.PropertyChangeListener[] |
getPropertyChangeListeners()
Returns an array of all the listeners that were added to the SwingPropertyChangeSupport object with addPropertyChangeListener(). |
java.beans.PropertyChangeListener[] |
getPropertyChangeListeners(String propertyName)
Returns an array of all the listeners which have been associated with the named property. |
boolean |
hasListeners(String propertyName)
Check if there are any listeners for a specific property. |
private void |
readObject(ObjectInputStream s)
|
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a PropertyChangeListener from the listener list. |
void |
removePropertyChangeListener(String propertyName,
java.beans.PropertyChangeListener listener)
Remove a PropertyChangeListener for a specific property. |
private void |
writeObject(ObjectOutputStream s)
|
Methods inherited from class java.beans.PropertyChangeSupport |
firePropertyChange, firePropertyChange |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private transient EventListenerList listeners
private Hashtable children
private Object source
static final long serialVersionUID
Constructor Detail |
public SwingPropertyChangeSupport(Object sourceBean)
sourceBean
- The bean to be given as the source for any events.Method Detail |
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The PropertyChangeListener to be addedpublic void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The PropertyChangeListener to be removedpublic java.beans.PropertyChangeListener[] getPropertyChangeListeners()
If some listeners have been added with a named property, then
the returned array will be a mixture of PropertyChangeListeners
and PropertyChangeListenerProxy
s. If the calling
method is interested in distinguishing the listeners then it must
test each element to see if it's a
PropertyChangeListenerProxy
perform the cast and examine
the parameter.
PropertyChangeListener[] listeners = support.getPropertyChangeListeners(); for (int i = 0; i < listeners.length; i++) { if (listeners[i] instanceof PropertyChangeListenerProxy) { PropertyChangeListenerProxy proxy = (PropertyChangeListenerProxy)listeners[i]; if (proxy.getPropertyName().equals("foo")) { // proxy is a PropertyChangeListener which was associated // with the property named "foo" } } }
PropertyChangeListener
s added or an
empty array if no listeners have been addedPropertyChangeListenerProxy
,
PropertyChangeSupport.getPropertyChangeListeners()
public void addPropertyChangeListener(String propertyName, java.beans.PropertyChangeListener listener)
propertyName
- The name of the property to listen on.listener
- The PropertyChangeListener to be addedpublic void removePropertyChangeListener(String propertyName, java.beans.PropertyChangeListener listener)
propertyName
- The name of the property that was listened on.listener
- The PropertyChangeListener to be removedpublic java.beans.PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
PropertyChangeListeners
associated with
the named property or an empty array if no listeners have
been addedpublic void firePropertyChange(String propertyName, Object oldValue, Object newValue)
propertyName
- The programmatic name of the property
that was changed.oldValue
- The old value of the property.newValue
- The new value of the property.public void firePropertyChange(java.beans.PropertyChangeEvent evt)
evt
- The PropertyChangeEvent object.public boolean hasListeners(String propertyName)
propertyName
- the property name.
private void writeObject(ObjectOutputStream s) throws IOException
IOException
private void readObject(ObjectInputStream s) throws ClassNotFoundException, IOException
ClassNotFoundException
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |