SwingPropertyChangeSupport (Java SE 14 & JDK 14)
Description: declaration: module: java.desktop, package: javax.swing.event, class: SwingPropertyChangeSupport
Keywords: javax.swing.event.SwingPropertyChangeSupport class

Module java.desktop
Package javax.swing.event

# Class SwingPropertyChangeSupport

java.lang.Object
java.beans.PropertyChangeSupport
javax.swing.event.SwingPropertyChangeSupport

All Implemented Interfaces:
  `Serializable`

    public final class SwingPropertyChangeSupport
    extends PropertyChangeSupport

This subclass of `java.beans.PropertyChangeSupport` is almost identical in functionality. The only difference is if constructed with `SwingPropertyChangeSupport(sourceBean, true)` it ensures listeners are only ever notified on the Event Dispatch Thread.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `SwingPropertyChangeSupport​(Object sourceBean)` | Constructs a SwingPropertyChangeSupport object.
  `SwingPropertyChangeSupport​(Object sourceBean, boolean notifyOnEDT)` | Constructs a SwingPropertyChangeSupport object.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `firePropertyChange​(PropertyChangeEvent evt)` | Fires a property change event to listeners that have been registered to track updates of all properties or a property with the specified name.
  `boolean` | `isNotifyOnEDT()` | Returns `notifyOnEDT` property.

  ### Methods declared in class java.beans.PropertyChangeSupport

  `addPropertyChangeListener, addPropertyChangeListener, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getPropertyChangeListeners, getPropertyChangeListeners, hasListeners, removePropertyChangeListener, removePropertyChangeListener`

  ### Methods declared in class java.lang.Object

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

- ## Constructor Details

  - ### SwingPropertyChangeSupport

    public SwingPropertyChangeSupport​(Object sourceBean)
    Constructs a SwingPropertyChangeSupport object.
    Parameters:
      `sourceBean` - The bean to be given as the source for any events.
    Throws:
      `NullPointerException` - if `sourceBean` is `null`

  - ### SwingPropertyChangeSupport

    public SwingPropertyChangeSupport​(Object sourceBean, boolean notifyOnEDT)
    Constructs a SwingPropertyChangeSupport object.
    Parameters:
      `sourceBean` - the bean to be given as the source for any events
      `notifyOnEDT` - whether to notify listeners on the Event Dispatch Thread only
    Throws:
      `NullPointerException` - if `sourceBean` is `null`
    Since:
      1.6

- ## Method Details

  - ### firePropertyChange

    public void firePropertyChange​(PropertyChangeEvent evt)
    Fires a property change event to listeners that have been registered to track updates of all properties or a property with the specified name.

    No event is fired if the given event's old and new values are equal and non-null.

    If `isNotifyOnEDT()` is `true` and called off the Event Dispatch Thread this implementation uses `SwingUtilities.invokeLater` to send out the notification on the Event Dispatch Thread. This ensures listeners are only ever notified on the Event Dispatch Thread.

    Overrides:
      `firePropertyChange` in class `PropertyChangeSupport`
    Parameters:
      `evt` - the `PropertyChangeEvent` to be fired
    Throws:
      `NullPointerException` - if `evt` is `null`
    Since:
      1.6

  - ### isNotifyOnEDT

    public boolean isNotifyOnEDT()
    Returns `notifyOnEDT` property.
    Returns:
      `notifyOnEDT` property
    Since:
      1.6
    See Also:
      `SwingPropertyChangeSupport(Object sourceBean, boolean notifyOnEDT)`