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
Bound properties
Modifiers | Name | Description |
---|---|---|
enum |
ObservableList.ChangeType |
|
static class |
ObservableList.ElementAddedEvent |
|
static class |
ObservableList.ElementClearedEvent |
|
static class |
ObservableList.ElementEvent |
|
static class |
ObservableList.ElementRemovedEvent |
|
static class |
ObservableList.ElementUpdatedEvent |
|
static class |
ObservableList.MultiElementAddedEvent |
|
static class |
ObservableList.MultiElementRemovedEvent |
|
protected class |
ObservableList.ObservableIterator |
|
protected class |
ObservableList.ObservableListIterator |
Modifiers | Name | Description |
---|---|---|
static String |
CONTENT_PROPERTY |
|
static String |
SIZE_PROPERTY |
Constructor and description |
---|
ObservableList () |
ObservableList (List delegate) |
ObservableList (Closure test) |
ObservableList (List delegate, Closure test) |
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 (ObservableList.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) |
Copyright © 2003-2025 The Apache Software Foundation. All rights reserved.