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:
Iterable<E>
,Collection<E>
,Set<E>
,Observable
,Property<ObservableSet<E>>
,ReadOnlyProperty<ObservableSet<E>>
,ObservableObjectValue<ObservableSet<E>>
,ObservableSetValue<E>
,ObservableValue<ObservableSet<E>>
,WritableObjectValue<ObservableSet<E>>
,WritableSetValue<E>
,WritableValue<ObservableSet<E>>
,ObservableSet<E>
A replacement for
ReadOnlySetWrapper
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.
-
Property Summary
Properties inherited from class javafx.beans.property.SetPropertyBase
empty, size
-
Constructor Summary
ConstructorDescriptionCreates a new unnamedReadOnlySetWrapperEx
.ReadOnlySetWrapperEx
(Object bean, String name) Creates a new namedReadOnlySetWrapperEx
related to the given bean.ReadOnlySetWrapperEx
(Object bean, String name, ObservableSet<E> initialValue) Creates a new namedReadOnlySetWrapperEx
, related to the given bean and provided with the initial value.ReadOnlySetWrapperEx
(ObservableSet<E> initialValue) Creates a new unnamedReadOnlySetWrapperEx
with the given initial value. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addListener
(InvalidationListener listener) void
addListener
(ChangeListener<? super ObservableSet<E>> listener) void
addListener
(SetChangeListener<? super E> listener) protected void
protected void
fireValueChangedEvent
(SetChangeListener.Change<? extends E> change) int
hashCode()
void
removeListener
(InvalidationListener listener) void
removeListener
(ChangeListener<? super ObservableSet<E>> listener) void
removeListener
(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 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 Details
-
ReadOnlySetWrapperEx
public ReadOnlySetWrapperEx()Creates a new unnamedReadOnlySetWrapperEx
. -
ReadOnlySetWrapperEx
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
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
Creates a new unnamedReadOnlySetWrapperEx
with the given initial value.- Parameters:
initialValue
- The initial value of the to be createdReadOnlySetWrapperEx
.
-
-
Method Details
-
addListener
- Specified by:
addListener
in interfaceObservableValue<E>
- Overrides:
addListener
in classSetPropertyBase<E>
-
addListener
- Specified by:
addListener
in interfaceObservable
- Overrides:
addListener
in classSetPropertyBase<E>
-
addListener
- Specified by:
addListener
in interfaceObservableSet<E>
- Overrides:
addListener
in classSetPropertyBase<E>
-
fireValueChangedEvent
protected void fireValueChangedEvent()- Overrides:
fireValueChangedEvent
in classReadOnlySetWrapper<E>
-
fireValueChangedEvent
- Overrides:
fireValueChangedEvent
in classReadOnlySetWrapper<E>
-
getReadOnlyProperty
- Overrides:
getReadOnlyProperty
in classReadOnlySetWrapper<E>
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfaceCollection<E>
- Specified by:
hashCode
in interfaceSet<E>
- Overrides:
hashCode
in classReadOnlySetProperty<E>
-
removeListener
- Specified by:
removeListener
in interfaceObservableValue<E>
- Overrides:
removeListener
in classSetPropertyBase<E>
-
removeListener
- Specified by:
removeListener
in interfaceObservable
- Overrides:
removeListener
in classSetPropertyBase<E>
-
removeListener
- Specified by:
removeListener
in interfaceObservableSet<E>
- Overrides:
removeListener
in classSetPropertyBase<E>
-