- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- javafx.collections.ObservableListBase<E>
-
- javafx.collections.ModifiableObservableListBase<E>
-
- Type Parameters:
E
- the type of the elements contained in the List
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,List<E>
,Observable
,ObservableList<E>
public abstract class ModifiableObservableListBase<E> extends ObservableListBase<E>
Abstract class that serves as a base class forObservableList
implementations that are modifiable. To implement a modifiableObservableList
class, you just need to implement the following set of methods: and the notifications and built and fired automatically for you.Example of a simple
ObservableList
delegating to anotherList
would look like this:public class ArrayObservableList<E> extends ModifiableObservableList<E> { private final List<E> delegate = new ArrayList<>(); public E get(int index) { return delegate.get(index); } public int size() { return delegate.size(); } protected void doAdd(int index, E element) { delegate.add(index, element); } protected E doSet(int index, E element) { return delegate.set(index, element); } protected E doRemove(int index) { return delegate.remove(index); }
- Since:
- JavaFX 8.0
- See Also:
ObservableListBase
-
-
Field Summary
-
Fields inherited from class java.util.AbstractList
modCount
-
-
Constructor Summary
Constructors Constructor Description ModifiableObservableListBase()
-
Method Summary
Modifier and Type Method Description void
add(int index, E element)
boolean
addAll(int index, Collection<? extends E> c)
boolean
addAll(Collection<? extends E> c)
protected abstract void
doAdd(int index, E element)
Adds theelement
to the List at the position ofindex
.protected abstract E
doRemove(int index)
Removes the element at position ofindex
.protected abstract E
doSet(int index, E element)
Sets theelement
in the List at the position ofindex
.abstract E
get(int index)
E
remove(int index)
boolean
remove(Object o)
boolean
removeAll(Collection<?> c)
protected void
removeRange(int fromIndex, int toIndex)
boolean
retainAll(Collection<?> c)
E
set(int index, E element)
boolean
setAll(Collection<? extends E> col)
Clears the ObservableList and adds all elements from the collection.abstract int
size()
List<E>
subList(int fromIndex, int toIndex)
-
Methods inherited from class javafx.collections.ObservableListBase
addAll, addListener, addListener, beginChange, endChange, fireChange, hasListeners, nextAdd, nextPermutation, nextRemove, nextRemove, nextReplace, nextSet, nextUpdate, remove, removeAll, removeListener, removeListener, retainAll, setAll
-
Methods inherited from class java.util.AbstractList
add, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator
-
Methods inherited from class java.util.AbstractCollection
contains, containsAll, isEmpty, toArray, toArray, toString
-
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.util.List
add, clear, contains, containsAll, equals, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, replaceAll, sort, spliterator, toArray, toArray
-
Methods inherited from interface javafx.collections.ObservableList
filtered, sorted, sorted
-
-
-
-
Method Detail
-
setAll
public boolean setAll(Collection<? extends E> col)
Description copied from interface:ObservableList
Clears the ObservableList and adds all elements from the collection.- Specified by:
setAll
in interfaceObservableList<E>
- Overrides:
setAll
in classObservableListBase<E>
- Parameters:
col
- the collection with elements that will be added to this observableArrayList- Returns:
- true (as specified by Collection.add(E))
-
addAll
public boolean addAll(Collection<? extends E> c)
- Specified by:
addAll
in interfaceCollection<E>
- Specified by:
addAll
in interfaceList<E>
- Overrides:
addAll
in classAbstractCollection<E>
-
addAll
public boolean addAll(int index, Collection<? extends E> c)
-
removeRange
protected void removeRange(int fromIndex, int toIndex)
- Overrides:
removeRange
in classAbstractList<E>
-
removeAll
public boolean removeAll(Collection<?> c)
- Specified by:
removeAll
in interfaceCollection<E>
- Specified by:
removeAll
in interfaceList<E>
- Overrides:
removeAll
in classAbstractCollection<E>
-
retainAll
public boolean retainAll(Collection<?> c)
- Specified by:
retainAll
in interfaceCollection<E>
- Specified by:
retainAll
in interfaceList<E>
- Overrides:
retainAll
in classAbstractCollection<E>
-
add
public void add(int index, E element)
-
remove
public boolean remove(Object o)
- Specified by:
remove
in interfaceCollection<E>
- Specified by:
remove
in interfaceList<E>
- Overrides:
remove
in classAbstractCollection<E>
-
remove
public E remove(int index)
-
get
public abstract E get(int index)
-
size
public abstract int size()
- Specified by:
size
in interfaceCollection<E>
- Specified by:
size
in interfaceList<E>
- Specified by:
size
in classAbstractCollection<E>
-
doAdd
protected abstract void doAdd(int index, E element)
Adds theelement
to the List at the position ofindex
.For the description of possible exceptions, please refer to the documentation of
AbstractList.add(java.lang.Object)
method.- Parameters:
index
- the position where to add the elementelement
- the element that will be added- Throws:
ClassCastException
- if the type of the specified element is incompatible with this listNullPointerException
- if the specified arguments contain one or more null elementsIllegalArgumentException
- if some property of this element prevents it from being added to this listIndexOutOfBoundsException
- if the index is out of range(index < 0 || index > size())
-
doSet
protected abstract E doSet(int index, E element)
Sets theelement
in the List at the position ofindex
.For the description of possible exceptions, please refer to the documentation of
set(int, java.lang.Object)
method.- Parameters:
index
- the position where to set the elementelement
- the element that will be set at the specified position- Returns:
- the old element at the specified position
- Throws:
ClassCastException
- if the type of the specified element is incompatible with this listNullPointerException
- if the specified arguments contain one or more null elementsIllegalArgumentException
- if some property of this element prevents it from being added to this listIndexOutOfBoundsException
- if the index is out of range(index < 0 || index >= size())
-
doRemove
protected abstract E doRemove(int index)
Removes the element at position ofindex
.- Parameters:
index
- the index of the removed element- Returns:
- the removed element
- Throws:
IndexOutOfBoundsException
- if the index is out of range(index < 0 || index >= size())
-
-