ObservableList<T> class

List that sends ListChangeEvents to the listener if this list changes Supported methods: Add, insert, update ([]), remove, clear, removeAll

@Component
class MyComponent extends MdlTemplateComponent {

    final ObservableList<RecordsPerDay> records = new ObservableList<RecordsPerDay>(
        updateCallback: _updateListItem);

    void _init() {

        render().then((_) {
            _bindStoreActions();
        });
    }

    void _bindStoreActions() {
        if(_store == null) { return;}

        _store.onChange.listen((final DataStoreChangedEvent event) {
            _updateView();
        });
    }

    void _updateView() {

        if(records.length != _store.records.length) {
            records.clear();
            records.addAll(_store.records);

        } else {
            final List<RecordsPerDay> _storeRecords = _store.records;
            for (int index = 0; index < _storeRecords.length; index++) {

                // Triggers _updateListItem!!! in MaterialRepeat
                records[index] = _storeRecords[index];
            }
        }
    }

    static bool _updateListItem(final dom.HtmlElement element, final RecordsPerDay item, final RecordsPerDay prevItem) {
        if(element == null) {
            return false;
        }
        final dom.SpanElement date = element.querySelector(".date");
        final dom.SpanElement records = element.querySelector(".records");
        date.text = item.date.toString();
        records.text = item.records.toString();
        return true;
    }

    @override
    final String template = "...";
}

Constructors

ObservableList({UpdateItem updateCallback })
If updateCallback is given it will be called from MaterialRepeat if the list updates

Properties

length ↔ int
Returns the number of objects in this list. [...]
read / write
onChange → Stream<ListChangedEvent<T>>
Propagated Event-Listener
read-only
first ↔ T
Returns the first element.
read / write, inherited
hashCode → int
The hash code for this object.
read-only, inherited
isEmpty → bool
Returns true if there are no elements in this collection.
read-only, inherited
isNotEmpty → bool
Returns true if there is at least one element in this collection.
read-only, inherited
iterator → Iterator<T>
Returns a new Iterator that allows iterating the elements of this Iterable.
read-only, inherited
last ↔ T
Returns the last element.
read / write, inherited
reversed → Iterable<T>
Returns an Iterable of the objects in this list in reverse order.
read-only, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited
single → T
Checks that this iterable has only one element, and returns that element.
read-only, inherited

Methods

add(T value) → void
Adds value to the end of this list, extending the length by one. [...]
addAll(Iterable<T> all) → void
Appends all objects of iterable to the end of this list. [...]
addIfAbsent(T value) → void
clear() → void
Removes all objects from this list; the length of the list becomes zero. [...]
filter(bool test(T element)) → void
Filter items in list [...]
insert(int index, T element) → void
Inserts the object at position index in this list. [...]
remove(Object element) → bool
Removes the first occurrence of value from this list. [...]
removeRange(int start, int end) → void
Removes the objects in the range start inclusive to end exclusive. [...]
removeWhere(bool test(T element)) → void
Removes all objects from this list that satisfy test. [...]
resetFilter() → void
Resets the item-List to it's original stand
retainWhere(bool test(T element)) → void
Removes all objects from this list that fail to satisfy test. [...]
update(HtmlElement element, T item) → bool
Called by MaterialRepeat do make fast updates
where(bool test(T element)) ObservableList<T>
ADD, INSERT, UPDATE, REMOVE, CLEAR
any(bool test(E element)) → bool
Checks whether any element of this iterable satisfies test.
inherited
asMap() → Map<int, T>
Returns an unmodifiable Map view of this.
inherited
cast<R>() → List<R>
Returns a view of this list as a list of R instances.
inherited
contains(Object element) → bool
Returns true if the collection contains an element equal to element.
inherited
elementAt(int index) → T
Returns the indexth element.
inherited
every(bool test(E element)) → bool
Checks whether every element of this iterable satisfies test.
inherited
expand<T>(Iterable<T> f(E element)) → Iterable<T>
Expands each element of this Iterable into zero or more elements.
inherited
fillRange(int start, int end, [ T fill ]) → void
Sets the objects in the range start inclusive to end exclusive to the given fillValue.
inherited
firstWhere(bool test(E element), { T orElse() }) → T
Returns the first element that satisfies the given predicate test.
inherited
fold<T>(T initialValue, T combine(T previousValue, E element)) → T
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
inherited
followedBy(Iterable<T> other) → Iterable<T>
Returns the lazy concatentation of this iterable and other.
inherited
forEach(void action(E element)) → void
Applies the function f to each element of this collection in iteration order.
inherited
getRange(int start, int end) → Iterable<T>
Returns an Iterable that iterates over the objects in the range start inclusive to end exclusive.
inherited
indexOf(Object element, [ int start = 0 ]) → int
Returns the first index of element in this list.
inherited
indexWhere(bool test(E element), [ int start = 0 ]) → int
Returns the first index in the list that satisfies the provided test.
inherited
insertAll(int index, Iterable<T> iterable) → void
Inserts all objects of iterable at position index in this list.
inherited
join([String separator = "" ]) → String
Converts each element to a String and concatenates the strings.
inherited
lastIndexOf(Object element, [ int start ]) → int
Returns the last index of element in this list.
inherited
lastIndexWhere(bool test(E element), [ int start ]) → int
Returns the last index in the list that satisfies the provided test.
inherited
lastWhere(bool test(E element), { T orElse() }) → T
Returns the last element that satisfies the given predicate test.
inherited
map<T>(T f(E element)) → Iterable<T>
Returns a new lazy Iterable with elements that are created by calling f on each element of this Iterable in iteration order.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
reduce(T combine(E previousValue, E element)) → T
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
inherited
removeAt(int index) → T
Removes the object at position index from this list.
inherited
removeLast() → T
Pops and returns the last object in this list.
inherited
replaceRange(int start, int end, Iterable<T> newContents) → void
Removes the objects in the range start inclusive to end exclusive and inserts the contents of replacement in its place.
inherited
setAll(int index, Iterable<T> iterable) → void
Overwrites objects of this with the objects of iterable, starting at position index in this list.
inherited
setRange(int start, int end, Iterable<T> iterable, [ int skipCount = 0 ]) → void
Copies the objects of iterable, skipping skipCount objects first, into the range start, inclusive, to end, exclusive, of the list.
inherited
shuffle([Random random ]) → void
Shuffles the elements of this list randomly.
inherited
singleWhere(bool test(E element), { T orElse() }) → T
Returns the single element that satisfies test.
inherited
skip(int count) → Iterable<T>
Returns an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(E element)) → Iterable<T>
Returns an Iterable that skips leading elements while test is satisfied.
inherited
sort([int compare(E a, E b) ]) → void
Sorts this list according to the order specified by the compare function.
inherited
sublist(int start, [ int end ]) → List<T>
Returns a new list containing the elements between start and end.
inherited
take(int count) → Iterable<T>
Returns a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(E element)) → Iterable<T>
Returns a lazy iterable of the leading elements satisfying test.
inherited
toList({bool growable: true }) → List<T>
Creates a List containing the elements of this Iterable.
inherited
toSet() → Set<T>
Creates a Set containing the same elements as this iterable.
inherited
toString() → String
Returns a string representation of this object.
inherited
whereType<T>() → Iterable<T>
Returns a new lazy Iterable with all elements that have type T.
inherited

Operators

operator [](int index) → T
Returns the object at the given index in the list or throws a RangeError if index is out of bounds.
operator []=(int index, T value) → void
Updates the internal List.
operator +(List<T> other) → List<T>
Returns the concatenation of this list and other.
inherited
operator ==(dynamic other) → bool
The equality operator.
inherited