Class ListProperty<E>
java.lang.Object
javafx.beans.binding.ListExpression<E>
javafx.beans.property.ReadOnlyListProperty<E>
javafx.beans.property.ListProperty<E>
- Type Parameters:
E- the type of theListelements
- All Implemented Interfaces:
Iterable<E>, Collection<E>, List<E>, SequencedCollection<E>, Observable, Property<ObservableList<E>>, ReadOnlyProperty<ObservableList<E>>, ObservableListValue<E>, ObservableObjectValue<ObservableList<E>>, ObservableValue<ObservableList<E>>, WritableListValue<E>, WritableObjectValue<ObservableList<E>>, WritableValue<ObservableList<E>>, ObservableList<E>
- Direct Known Subclasses:
ListPropertyBase
public abstract class ListProperty<E>
extends ReadOnlyListProperty<E>
implements Property<ObservableList<E>>, WritableListValue<E>
This class provides a full implementation of a
Property wrapping an
ObservableList.
The value of a ListProperty can be get and set with ObservableObjectValue.get(),
ListExpression.getValue(), WritableObjectValue.set(Object), and setValue(ObservableList).
A property can be bound and unbound unidirectional with
Property.bind(javafx.beans.value.ObservableValue) and Property.unbind(). Bidirectional bindings
can be created and removed with bindBidirectional(Property) and
unbindBidirectional(Property).
The context of a ListProperty can be read with ReadOnlyProperty.getBean()
and ReadOnlyProperty.getName().- Since:
- JavaFX 2.1
- See Also:
-
Property Summary
Properties declared in class ListExpression
empty, sizeTypePropertyDescriptionabstract ReadOnlyBooleanPropertyA boolean property that istrue, if the list is empty.abstract ReadOnlyIntegerPropertyAn integer property that represents the size of the list. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbindBidirectional(Property<ObservableList<E>> other) Create a bidirectional binding between thisPropertyand another one.voidsetValue(ObservableList<E> v) Set the wrapped value.toString()Returns a string representation of thisListPropertyobject.voidunbindBidirectional(Property<ObservableList<E>> other) Removes a bidirectional binding between thisPropertyand another one.Methods declared in class ReadOnlyListProperty
bindContent, bindContentBidirectional, equals, hashCode, unbindContent, unbindContentBidirectionalModifier and TypeMethodDescriptionvoidbindContent(ObservableList<E> list) Creates a content binding between theObservableList, that is wrapped in thisReadOnlyListProperty, and anotherObservableList.voidCreates a bidirectional content binding of theObservableList, that is wrapped in thisReadOnlyListProperty, and anotherObservableList.booleaninthashCode()voidunbindContent(Object object) Deletes a content binding between theObservableList, that is wrapped in thisReadOnlyListProperty, and anotherObject.voidunbindContentBidirectional(Object object) Deletes a bidirectional content binding between theObservableList, that is wrapped in thisReadOnlyListProperty, and anotherObject.Methods declared in class ListExpression
add, add, addAll, addAll, addAll, asString, clear, contains, containsAll, emptyProperty, get, getSize, getValue, indexOf, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, lastIndexOf, listExpression, listIterator, listIterator, remove, remove, remove, removeAll, removeAll, retainAll, retainAll, set, setAll, setAll, size, sizeProperty, subList, toArray, toArray, valueAt, valueAtModifier and TypeMethodDescriptionvoidbooleanbooleanaddAll(int i, Collection<? extends E> elements) booleanA convenience method for var-arg addition of elements.booleanaddAll(Collection<? extends E> elements) asString()voidclear()booleanbooleancontainsAll(Collection<?> objects) abstract ReadOnlyBooleanPropertyA boolean property that istrue, if the list is empty.get(int i) intgetSize()The size of the listgetValue()Returns the current value of thisObservableValueintbooleanisEmpty()Gets the value of theemptyproperty.isEqualTo(ObservableList<?> other) isNotEqualTo(ObservableList<?> other) isNull()iterator()intlastIndexOf(Object obj) static <E> ListExpression<E> listExpression(ObservableListValue<E> value) Returns aListExpressionthat wraps aObservableListValue.listIterator(int i) remove(int i) voidremove(int from, int to) A simplified way of callingsublist(from, to).clear().booleanbooleanA convenience method for var-arg usage of theremoveAllmethod.booleanremoveAll(Collection<?> objects) booleanA convenience method for var-arg usage of theretainAllmethod.booleanretainAll(Collection<?> objects) booleanClears the ObservableList and adds all the elements passed as var-args.booleansetAll(Collection<? extends E> elements) Clears the ObservableList and adds all elements from the collection.intsize()abstract ReadOnlyIntegerPropertyAn integer property that represents the size of the list.subList(int from, int to) Object[]toArray()<T> T[]toArray(T[] array) valueAt(int index) Creates a newObjectBindingthat contains the element at the specified position.valueAt(ObservableIntegerValue index) Creates a newObjectBindingthat contains the element at the specified position.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods declared in interface Collection
parallelStream, removeIf, stream, toArrayMethods declared in interface List
addFirst, addLast, getFirst, getLast, removeFirst, removeLast, replaceAll, reversed, sort, spliteratorMethods declared in interface Observable
addListener, removeListener, subscribeModifier and TypeMethodDescriptionvoidaddListener(InvalidationListener listener) Adds anInvalidationListenerwhich will be notified whenever theObservablebecomes invalid.voidremoveListener(InvalidationListener listener) Removes the given listener from the list of listeners, that are notified whenever the value of theObservablebecomes invalid.default SubscriptionCreates aSubscriptionon thisObservablewhich callsinvalidationSubscriberwhenever it becomes invalid.Methods declared in interface ObservableList
addListener, filtered, removeListener, replaceRange, sorted, sortedModifier and TypeMethodDescriptionvoidaddListener(ListChangeListener<? super E> listener) Add a listener to this observable list.default FilteredList<E> Creates aFilteredListwrapper of this list using the specified predicate.voidremoveListener(ListChangeListener<? super E> listener) Tries to remove a listener from this observable list.default booleanreplaceRange(int from, int to, Collection<? extends E> col) Replaces the elements in the range[from, to)with the elements from the given collection.default SortedList<E> sorted()Creates aSortedListwrapper of this list with the natural ordering.default SortedList<E> sorted(Comparator<E> comparator) Creates aSortedListwrapper of this list using the specified comparator.Methods declared in interface ObservableObjectValue
getModifier and TypeMethodDescriptionget()Returns the current value of thisObservableObjectValue<T>.Methods declared in interface ObservableValue
addListener, flatMap, map, orElse, removeListener, subscribe, subscribe, whenModifier and TypeMethodDescriptionvoidaddListener(ChangeListener<? super ObservableList<E>> listener) Adds aChangeListenerwhich will be notified whenever the value of theObservableValuechanges.default <U> ObservableValue<U> flatMap(Function<? super ObservableList<E>, ? extends ObservableValue<? extends U>> mapper) Returns anObservableValuethat holds the value of anObservableValueproduced by applying the given mapping function on this value.default <U> ObservableValue<U> map(Function<? super ObservableList<E>, ? extends U> mapper) Returns anObservableValuethat holds the result of applying the given mapping function on this value.default ObservableValue<ObservableList<E>> orElse(ObservableList<E> constant) Returns anObservableValuethat holds this value, or the given constant if it isnull.voidremoveListener(ChangeListener<? super ObservableList<E>> listener) Removes the given listener from the list of listeners that are notified whenever the value of theObservableValuechanges.default Subscriptionsubscribe(BiConsumer<? super ObservableList<E>, ? super ObservableList<E>> changeSubscriber) Creates aSubscriptionon thisObservableValuewhich calls the givenchangeSubscriberwith the old and new value whenever its value changes.default Subscriptionsubscribe(Consumer<? super ObservableList<E>> valueSubscriber) Creates aSubscriptionon thisObservableValuewhich immediately provides the current value to the givenvalueSubscriber, followed by any subsequent values whenever its value changes.default ObservableValue<ObservableList<E>> when(ObservableValue<Boolean> condition) Returns anObservableValuethat holds this value and is updated only whenconditionholdstrue.Methods declared in interface Property
bind, isBound, unbindModifier and TypeMethodDescriptionvoidbind(ObservableValue<? extends ObservableList<E>> observable) Create a unidirection binding for thisProperty.booleanisBound()Can be used to check, if aPropertyis bound.voidunbind()Remove the unidirectional binding for thisProperty.Methods declared in interface ReadOnlyProperty
getBean, getNameMethods declared in interface WritableObjectValue
get, setModifier and TypeMethodDescriptionget()Get the wrapped value.voidset(ObservableList<E> value) Set the wrapped value.Methods declared in interface WritableValue
getValue
-
Constructor Details
-
ListProperty
public ListProperty()Creates a defaultListProperty.
-
-
Method Details
-
setValue
Set the wrapped value.- Specified by:
setValuein interfaceWritableValue<E>- Parameters:
v- The new value
-
bindBidirectional
Create a bidirectional binding between thisPropertyand another one. Bidirectional bindings exists independently of unidirectional bindings. So it is possible to add unidirectional binding to a property with bidirectional binding and vice-versa. However, this practice is discouraged.It is possible to have multiple bidirectional bindings of one Property.
JavaFX bidirectional binding implementation use weak listeners. This means bidirectional binding does not prevent properties from being garbage collected.
- Specified by:
bindBidirectionalin interfaceProperty<E>- Parameters:
other- the otherProperty
-
unbindBidirectional
Removes a bidirectional binding between thisPropertyand another one. If no bidirectional binding between the properties exists, calling this method has no effect. It is possible to unbind by a call on the second property. This code will work:property1.bindBidirectional(property2); property2.unbindBidirectional(property1);- Specified by:
unbindBidirectionalin interfaceProperty<E>- Parameters:
other- the otherProperty
-
toString
Returns a string representation of thisListPropertyobject.- Overrides:
toStringin classReadOnlyListProperty<E>- Returns:
- a string representation of this
ListPropertyobject.
-