Class ReadOnlySetWrapperEx<E>
- java.lang.Object
-
- javafx.beans.binding.SetExpression<E>
-
- javafx.beans.property.ReadOnlySetProperty<E>
-
- javafx.beans.property.SetProperty<E>
-
- javafx.beans.property.SetPropertyBase<E>
-
- javafx.beans.property.SimpleSetProperty<E>
-
- javafx.beans.property.ReadOnlySetWrapper<E>
-
- org.eclipse.gef.common.beans.property.ReadOnlySetWrapperEx<E>
-
- Type Parameters:
E
- The element type of the wrappedObservableSet
.
- 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 ReadOnlySetWrapperEx<E> extends javafx.beans.property.ReadOnlySetWrapper<E>
A replacement forReadOnlySetWrapper
to fix the following JavaFX issues:- Change notifications are fired even when the observed value did not change.(https://bugs.openjdk.java.net/browse/JDK-8089169)
- Bidirectional binding not working (https://bugs.openjdk.java.net/browse/JDK-8089557): fixed by not forwarding listeners to the nested read-only property but rather keeping the lists of listeners distinct.
-
-
Constructor Summary
Constructors Constructor Description ReadOnlySetWrapperEx()
Creates a new unnamedReadOnlySetWrapperEx
.ReadOnlySetWrapperEx(java.lang.Object bean, java.lang.String name)
Creates a new namedReadOnlySetWrapperEx
related to the given bean.ReadOnlySetWrapperEx(java.lang.Object bean, java.lang.String name, javafx.collections.ObservableSet<E> initialValue)
Creates a new namedReadOnlySetWrapperEx
, related to the given bean and provided with the initial value.ReadOnlySetWrapperEx(javafx.collections.ObservableSet<E> initialValue)
Creates a new unnamedReadOnlySetWrapperEx
with the given initial value.
-
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)
javafx.beans.property.ReadOnlySetProperty<E>
getReadOnlyProperty()
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.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
-
-
-
-
Constructor Detail
-
ReadOnlySetWrapperEx
public ReadOnlySetWrapperEx()
Creates a new unnamedReadOnlySetWrapperEx
.
-
ReadOnlySetWrapperEx
public ReadOnlySetWrapperEx(java.lang.Object bean, java.lang.String name)
Creates a new namedReadOnlySetWrapperEx
related to the given bean.- Parameters:
bean
- The bean to relate the to be createdReadOnlySetWrapperEx
to.name
- The name for the to be createdReadOnlySetWrapperEx
.
-
ReadOnlySetWrapperEx
public ReadOnlySetWrapperEx(java.lang.Object bean, java.lang.String name, javafx.collections.ObservableSet<E> initialValue)
Creates a new namedReadOnlySetWrapperEx
, related to the given bean and provided with the initial value.- Parameters:
bean
- The bean to relate the to be createdReadOnlySetWrapperEx
to.name
- The name for the to be createdReadOnlySetWrapperEx
.initialValue
- The initial value of the to be createdReadOnlySetWrapperEx
.
-
ReadOnlySetWrapperEx
public ReadOnlySetWrapperEx(javafx.collections.ObservableSet<E> initialValue)
Creates a new unnamedReadOnlySetWrapperEx
with the given initial value.- Parameters:
initialValue
- The initial value of the to be createdReadOnlySetWrapperEx
.
-
-
Method Detail
-
addListener
public void addListener(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)
-
addListener
public void addListener(javafx.beans.InvalidationListener listener)
- Specified by:
addListener
in interfacejavafx.beans.Observable
- Overrides:
addListener
in classjavafx.beans.property.SetPropertyBase<E>
-
addListener
public void addListener(javafx.collections.SetChangeListener<? super E> listener)
-
fireValueChangedEvent
protected void fireValueChangedEvent()
- Overrides:
fireValueChangedEvent
in classjavafx.beans.property.ReadOnlySetWrapper<E>
-
fireValueChangedEvent
protected void fireValueChangedEvent(javafx.collections.SetChangeListener.Change<? extends E> change)
- Overrides:
fireValueChangedEvent
in classjavafx.beans.property.ReadOnlySetWrapper<E>
-
getReadOnlyProperty
public javafx.beans.property.ReadOnlySetProperty<E> getReadOnlyProperty()
- Overrides:
getReadOnlyProperty
in classjavafx.beans.property.ReadOnlySetWrapper<E>
-
hashCode
public int hashCode()
-
removeListener
public void removeListener(javafx.beans.value.ChangeListener<? super javafx.collections.ObservableSet<E>> listener)
-
removeListener
public void removeListener(javafx.beans.InvalidationListener listener)
- Specified by:
removeListener
in interfacejavafx.beans.Observable
- Overrides:
removeListener
in classjavafx.beans.property.SetPropertyBase<E>
-
-