Class SimpleSetPropertyEx<E>

  • Type Parameters:
    E - The element type of the SimpleSetProperty.
    All Implemented Interfaces:
    java.lang.Iterable<E>, java.util.Collection<E>, java.util.Set<E>, javafx.beans.Observable, javafx.beans.property.Property<javafx.collections.ObservableSet<E>>, javafx.beans.property.ReadOnlyProperty<javafx.collections.ObservableSet<E>>, javafx.beans.value.ObservableObjectValue<javafx.collections.ObservableSet<E>>, javafx.beans.value.ObservableSetValue<E>, javafx.beans.value.ObservableValue<javafx.collections.ObservableSet<E>>, javafx.beans.value.WritableObjectValue<javafx.collections.ObservableSet<E>>, javafx.beans.value.WritableSetValue<E>, javafx.beans.value.WritableValue<javafx.collections.ObservableSet<E>>, javafx.collections.ObservableSet<E>

    public class SimpleSetPropertyEx<E>
    extends javafx.beans.property.SimpleSetProperty<E>
    A replacement for SimpleSetProperty to fix the following JavaFX issue:
    • Change notifications are fired even when the observed value did not change.(https://bugs.openjdk.java.net/browse/JDK-8089169)
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addListener​(javafx.beans.InvalidationListener listener)  
      void addListener​(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)  
      void addListener​(javafx.collections.SetChangeListener<? super E> listener)  
      protected void fireValueChangedEvent()  
      protected void fireValueChangedEvent​(javafx.collections.SetChangeListener.Change<? extends E> change)  
      int hashCode()  
      void removeListener​(javafx.beans.InvalidationListener listener)  
      void removeListener​(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)  
      void removeListener​(javafx.collections.SetChangeListener<? super E> listener)  
      • Methods inherited from class javafx.beans.property.SimpleSetProperty

        getBean, getName
      • Methods inherited from class javafx.beans.property.SetPropertyBase

        bind, emptyProperty, get, invalidated, isBound, set, sizeProperty, toString, unbind
      • Methods inherited from class javafx.beans.property.SetProperty

        bindBidirectional, setValue, unbindBidirectional
      • Methods inherited from class javafx.beans.property.ReadOnlySetProperty

        bindContent, bindContentBidirectional, equals, unbindContent, unbindContentBidirectional
      • Methods inherited from class javafx.beans.binding.SetExpression

        add, addAll, asString, clear, contains, containsAll, getSize, getValue, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, remove, removeAll, retainAll, setExpression, size, toArray, toArray
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Collection

        parallelStream, removeIf, stream, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface javafx.beans.value.ObservableValue

        getValue
      • Methods inherited from interface java.util.Set

        add, addAll, clear, contains, containsAll, equals, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray
      • Methods inherited from interface javafx.beans.value.WritableValue

        getValue
    • Constructor Detail

      • SimpleSetPropertyEx

        public SimpleSetPropertyEx​(java.lang.Object bean,
                                   java.lang.String name)
        Constructs a new SimpleSetPropertyEx for the given bean and with the given name.
        Parameters:
        bean - The bean this property is related to.
        name - The name of the property.
      • SimpleSetPropertyEx

        public SimpleSetPropertyEx​(java.lang.Object bean,
                                   java.lang.String name,
                                   javafx.collections.ObservableSet<E> initialValue)
        Constructs a new SimpleSetPropertyEx for the given bean and with the given name and initial value.
        Parameters:
        bean - The bean this property is related to.
        name - The name of the property.
        initialValue - The initial value of the property
      • SimpleSetPropertyEx

        public SimpleSetPropertyEx​(javafx.collections.ObservableSet<E> initialValue)
        Constructs a new unnamed SimpleSetPropertyEx that is not related to a bean, with the given initial value.
        Parameters:
        initialValue - The initial value of the property
    • Method Detail

      • addListener

        public void addListener​(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)
        Specified by:
        addListener in interface javafx.beans.value.ObservableValue<E>
        Overrides:
        addListener in class javafx.beans.property.SetPropertyBase<E>
      • addListener

        public void addListener​(javafx.beans.InvalidationListener listener)
        Specified by:
        addListener in interface javafx.beans.Observable
        Overrides:
        addListener in class javafx.beans.property.SetPropertyBase<E>
      • addListener

        public void addListener​(javafx.collections.SetChangeListener<? super E> listener)
        Specified by:
        addListener in interface javafx.collections.ObservableSet<E>
        Overrides:
        addListener in class javafx.beans.property.SetPropertyBase<E>
      • fireValueChangedEvent

        protected void fireValueChangedEvent()
        Overrides:
        fireValueChangedEvent in class javafx.beans.property.SetPropertyBase<E>
      • fireValueChangedEvent

        protected void fireValueChangedEvent​(javafx.collections.SetChangeListener.Change<? extends E> change)
        Overrides:
        fireValueChangedEvent in class javafx.beans.property.SetPropertyBase<E>
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface java.util.Collection<E>
        Specified by:
        hashCode in interface java.util.Set<E>
        Overrides:
        hashCode in class javafx.beans.property.ReadOnlySetProperty<E>
      • removeListener

        public void removeListener​(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)
        Specified by:
        removeListener in interface javafx.beans.value.ObservableValue<E>
        Overrides:
        removeListener in class javafx.beans.property.SetPropertyBase<E>
      • removeListener

        public void removeListener​(javafx.beans.InvalidationListener listener)
        Specified by:
        removeListener in interface javafx.beans.Observable
        Overrides:
        removeListener in class javafx.beans.property.SetPropertyBase<E>
      • removeListener

        public void removeListener​(javafx.collections.SetChangeListener<? super E> listener)
        Specified by:
        removeListener in interface javafx.collections.ObservableSet<E>
        Overrides:
        removeListener in class javafx.beans.property.SetPropertyBase<E>