de.caff.util.settings

## Interface ChangeableItem

- All Known Subinterfaces:
    BooleanPreferenceProperty, BytePreferenceProperty, CharPreferenceProperty, ColorPreferenceProperty, DirectoryPreferenceProperty, DoublePreferenceProperty, EditablePreferenceProperty, EditableProperty, EnumPreferenceProperty<E>, FloatPreferenceProperty, IntegerPreferenceProperty, LongPreferenceProperty, PhysicalLengthPreferenceProperty, PreferenceProperty, Property<T>, ShortPreferenceProperty, StringListPreferenceProperty, StringPreferenceProperty, UrlListPreferenceProperty
  All Known Implementing Classes:
    AbstractBasicChangeableItem, AbstractBasicLocalizableChangeableItem, AbstractBasicSimpleEditableChangeableItem, BasicPhysicalLengthPreferenceProperty, BoundsPreferenceProperty, EditablePreferenceGroup, EditablePropertyGroup, EnumCheckedProxyProperty, FixValueProperty, SimpleBooleanPreferenceProperty, SimpleBooleanProperty, SimpleBytePreferenceProperty, SimpleByteProperty, SimpleCharPreferenceProperty, SimpleCharProperty, SimpleDirectoryPreferenceProperty, SimpleDoublePreferenceProperty, SimpleDoubleProperty, SimpleFloatPreferenceProperty, SimpleFloatProperty, SimpleIntegerPreferenceProperty, SimpleIntegerProperty, SimpleLongPreferenceProperty, SimpleLongProperty, SimpleNonNullProperty, SimpleNullableProperty, SimplePreferenceGroup, SimpleShortPreferenceProperty, SimpleShortProperty, SimpleStringPreferenceProperty, SizePreferenceProperty, SwingBooleanPreferenceProperty, SwingBooleanProperty, SwingColorPreferenceProperty, SwingColorProperty, SwingDirectoryPreferenceProperty, SwingDoublePreferenceProperty, SwingDoubleProperty, SwingEnumPreferenceProperty, SwingEnumProperty, SwingFormattedStringProperty, SwingHttpProxyPropertySettings, SwingIntegerPreferenceProperty, SwingIntegerProperty, SwingLongPreferenceProperty, SwingLookAndFeelPreferenceProperty, SwingNumberProperty, SwingRecentFilesPreferenceProperty, SwingStringPreferenceProperty, SwingStringProperty, SwingTextProperty, SwingUrlListPreferenceProperty

      public interface ChangeableItem

  Interface for items which might change.
  Author:
    Rammi

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addValueChangeListener(java.beans.PropertyChangeListener listener)` Add a listener which will be called for all value changes.
    `void` | `addValueChangeListenerWeakly(java.beans.PropertyChangeListener listener)` Add a listener which will be called for all value changes.
    `void` | `removeValueChangeListener(java.beans.PropertyChangeListener listener)` Remove a listener which will be called for all value changes.
    `void` | `removeValueChangeListenerWeakly(java.beans.PropertyChangeListener listener)` Remove a weakly referenced listener which will be called for all value changes.

- - ### Method Detail

    - #### addValueChangeListener

          void addValueChangeListener(@NotNull
                                      java.beans.PropertyChangeListener listener)

      Add a listener which will be called for all value changes.
      Parameters:
        `listener` - value change listener to add

    - #### removeValueChangeListener

          void removeValueChangeListener(@NotNull
                                         java.beans.PropertyChangeListener listener)

      Remove a listener which will be called for all value changes.
      Parameters:
        `listener` - value change listener to remove

    - #### addValueChangeListenerWeakly

          void addValueChangeListenerWeakly(@NotNull
                                            java.beans.PropertyChangeListener listener)

      Add a listener which will be called for all value changes. The listener is registered with a weak reference, allowing it to be freed if this is the only reference.

      If you want to remove the listener please use the corresponding `removeValueChangeListenerWeakly(java.beans.PropertyChangeListener)` method.

      Parameters:
        `listener` - value change listener to add
      See Also:
        `addValueChangeListener(java.beans.PropertyChangeListener)`

    - #### removeValueChangeListenerWeakly

          void removeValueChangeListenerWeakly(@NotNull
                                               java.beans.PropertyChangeListener listener)

      Remove a weakly referenced listener which will be called for all value changes.
      Parameters:
        `listener` - value change listener to remove
      See Also:
        `removeValueChangeListener(java.beans.PropertyChangeListener)`