- groovy.util.ObservableList
-
- All Implemented Interfaces and Traits:
- List
public class ObservableList
extends Object
implements List
List decorator that will trigger PropertyChangeEvents when a value changes.
An optional Closure may be specified and will work as a filter, if it returns true the property
will trigger an event (if the value indeed changed), otherwise it won't. The Closure may receive
1 or 2 parameters, the single one being the value, the other one both the key and value, for
example:
// skip all properties whose value is a closure
def map = new ObservableList( {!(it instanceof Closure)} )
// skip all properties whose name matches a regex
def map = new ObservableList( { name, value -> !(name =˜ /[A-Z+]/) } )
The current implementation will trigger specialized events in the following scenarios, you need
not register a different listener as those events extend from PropertyChangeEvent
- ObservableList.ElementAddedEvent - a new element is added to the list
- ObservableList.ElementRemovedEvent - an element is removed from the list
- ObservableList.ElementUpdatedEvent - an element changes value (same as regular
PropertyChangeEvent)
- ObservableList.ElementClearedEvent - all elements have been removed from the list
- ObservableList.MultiElementAddedEvent - triggered by calling list.addAll()
- ObservableList.MultiElementRemovedEvent - triggered by calling
list.removeAll()/list.retainAll()
Bound properties
- content - read-only.
- size - read-only.
-
-
Methods Summary
Methods
Type Params |
Return Type |
Name and description |
|
public void |
add(int index, Object element)
|
|
public boolean |
add(Object o)
|
|
public boolean |
addAll(Collection c)
|
|
public boolean |
addAll(int index, Collection c)
|
|
public void |
addPropertyChangeListener(PropertyChangeListener listener)
|
|
public void |
addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
|
|
public void |
clear()
|
|
public boolean |
contains(Object o)
|
|
public boolean |
containsAll(Collection c)
|
|
public boolean |
equals(Object o)
|
|
protected void |
fireElementAddedEvent(int index, Object element)
|
|
protected void |
fireElementClearedEvent(List values)
|
|
protected void |
fireElementEvent(ElementEvent event)
|
|
protected void |
fireElementRemovedEvent(int index, Object element)
|
|
protected void |
fireElementUpdatedEvent(int index, Object oldValue, Object newValue)
|
|
protected void |
fireMultiElementAddedEvent(int index, List values)
|
|
protected void |
fireMultiElementRemovedEvent(List values)
|
|
protected void |
fireSizeChangedEvent(int oldValue, int newValue)
|
|
public Object |
get(int index)
|
|
public List |
getContent()
|
|
protected List |
getDelegateList()
|
|
public PropertyChangeListener[] |
getPropertyChangeListeners()
|
|
public PropertyChangeListener[] |
getPropertyChangeListeners(String propertyName)
|
|
public int |
getSize()
|
|
protected Closure |
getTest()
|
|
public boolean |
hasListeners(String propertyName)
|
|
public int |
hashCode()
|
|
public int |
indexOf(Object o)
|
|
public boolean |
isEmpty()
|
|
public Iterator |
iterator()
|
|
public int |
lastIndexOf(Object o)
|
|
public ListIterator |
listIterator()
|
|
public ListIterator |
listIterator(int index)
|
|
public Object |
remove(int index)
|
|
public boolean |
remove(Object o)
|
|
public boolean |
removeAll(Collection c)
|
|
public void |
removePropertyChangeListener(PropertyChangeListener listener)
|
|
public void |
removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
|
|
public boolean |
retainAll(Collection c)
|
|
public Object |
set(int index, Object element)
|
|
public int |
size()
|
|
public List |
subList(int fromIndex, int toIndex)
|
|
public Object[] |
toArray()
|
|
public Object[] |
toArray(Object[] a)
|
-
Inherited Methods Summary
-
-
Field Detail
-
public static final String CONTENT_PROPERTY
-
public static final String SIZE_PROPERTY
-
Constructor Detail
-
public ObservableList(List delegate)
-
public ObservableList(Closure test)
-
Method Detail
-
protected void fireElementAddedEvent(int index, Object element)
-
protected void fireElementClearedEvent(List values)
-
protected void fireElementRemovedEvent(int index, Object element)
-
protected void fireElementUpdatedEvent(int index, Object oldValue, Object newValue)
-
protected void fireMultiElementAddedEvent(int index, List values)
-
protected void fireMultiElementRemovedEvent(List values)
-
protected void fireSizeChangedEvent(int oldValue, int newValue)
-
protected List getDelegateList()
-
public boolean hasListeners(String propertyName)
Copyright © 2003-2024 The Apache Software Foundation. All rights reserved.