ItemSelection class
Manages a selection of items.
ItemSelection is an Iterable collection offering all standard iterable operations, such as querying whether it contains specific indexes, easily accessing the first or last index, or iterating all indexes in the selection with iterator.
It is often not necessary to create an ItemSelection instance yourself, because ItemSelectionController will create one internally if necessary. However, creating an ItemSelection instance gives you more control over the selection. First of all, it allows you to specify an initial selection, and secondly, you can listen to selection state changes for individual items.
Example
Widget build(BuildContext context) {
// specify initial selection
final mySelection = ItemSelection(0, 9);
// listen to selection changes
mySelection.addListener((int index, bool selected) {
print('$index: $selected');
});
// pass the selection to the controller
return ItemSelectionController(
selection: mySelection,
// ...
);
}
- Mixed in types
- Available Extensions
Constructors
- ItemSelection([int? start, int? end])
-
Creates a selection, optionally with an initial selection range from
start
toend
. - ItemSelection.copy(ItemSelection other)
-
Creates a copy of the
other
selection.factory
Properties
- first → int
-
Returns the first index in this selection.
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
- isEmpty → bool
-
Returns
true
if this selection is empty.no setteroverride - isNotEmpty → bool
-
Returns
true
if this selection is not empty.no setteroverride -
iterator
→ Iterator<
int?> -
Returns an iterator for iterating the indexes this selection.
no setteroverride
- last → int
-
Returns the last index in this selection.
no setteroverride
- length → int
-
The number of elements in this.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- single → int?
-
Checks that this iterable has only one element, and returns that element.
no setterinherited
Methods
-
add(
int start, [int? end]) → void -
Adds a selection range from
start
toend
. -
addAll(
ItemSelection other) → void -
Adds all selection ranges to this selection,
that are in the
other
selection. -
addIndexListener(
int index, ItemSelectionChangeCallback listener) → void -
Adds a
listener
callback for selection changes at a specificindex
only.inherited -
addListener(
ItemSelectionChangeCallback listener) → void -
Adds a
listener
callback for selection changes at any index.inherited -
any(
bool test(int? element)) → bool -
Checks whether any element of this iterable satisfies
test
.inherited -
cast<
R> () → Iterable< R> -
A view of this iterable as an iterable of
R
instances.inherited -
clear(
) → void - Clears this selection.
-
contains(
covariant int? index) → bool -
Returns
true
if this selection contains the specifiedindex
.override -
dispose(
) → void -
Discards the listener callbacks. After this method is called, the notifier
object is no longer in a usable state and should be discarded (calls to
addListener and removeListener will throw after the object is
disposed).
inherited
-
elementAt(
int index) → int? -
Returns the
index
th element.inherited -
every(
bool test(int? element)) → bool -
Checks whether every element of this iterable satisfies
test
.inherited -
expand<
T> (Iterable< T> toElements(int? element)) → Iterable<T> -
Expands each element of this Iterable into zero or more elements.
inherited
-
firstWhere(
bool test(int? element), {int? orElse()?}) → int? -
The first element that satisfies the given predicate
test
.inherited -
fold<
T> (T initialValue, T combine(T previousValue, int? element)) → T -
Reduces a collection to a single value by iteratively combining each
element of the collection with an existing value
inherited
-
followedBy(
Iterable< int?> other) → Iterable<int?> -
Creates the lazy concatenation of this iterable and
other
.inherited -
forEach(
void action(int? element)) → void -
Invokes
action
on each element of this iterable in iteration order.inherited -
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastWhere(
bool test(int? element), {int? orElse()?}) → int? -
The last element that satisfies the given predicate
test
.inherited -
map<
T> (T toElement(int? e)) → Iterable< T> -
The current elements of this iterable modified by
toElement
.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notifyListeners(
int index, bool selected) → void -
Notifies all the registered listeners.
inherited
-
reduce(
int? combine(int? value, int? element)) → int? -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function.
inherited
-
remove(
int start, [int? end]) → void -
Removes the selection range from
start
toend
. -
removeAll(
ItemSelection other) → void -
Removes all selection ranges from this selection,
that are in the
other
selection. -
removeIndexListener(
int index, ItemSelectionChangeCallback listener) → void -
Removes a
listener
callback for selection changes at a specificindex
only.inherited -
removeListener(
ItemSelectionChangeCallback listener) → void -
Removes a
listener
callback for selection changes at any index.inherited -
replace(
int start, [int? end]) → void -
Replaces the existing selection with a selection range from
start
toend
so that no changes are notified for the overlapping range. -
singleWhere(
bool test(int? element), {int? orElse()?}) → int? -
The single element that satisfies
test
.inherited -
skip(
int count) → Iterable< int?> -
Creates an Iterable that provides all but the first
count
elements.inherited -
skipWhile(
bool test(int? value)) → Iterable< int?> -
Creates an
Iterable
that skips leading elements whiletest
is satisfied.inherited -
take(
int count) → Iterable< int?> -
Creates a lazy iterable of the
count
first elements of this iterable.inherited -
takeWhile(
bool test(int? value)) → Iterable< int?> -
Creates a lazy iterable of the leading elements satisfying
test
.inherited -
toList(
{bool growable = true}) → List< int?> -
Creates a List containing the elements of this Iterable.
inherited
-
toSet(
) → Set< int?> -
Creates a Set containing the same elements as this iterable.
inherited
-
toString(
) → String -
Returns a string representation of (some of) the elements of
this
.inherited -
where(
bool test(int? element)) → Iterable< int?> -
Creates a new lazy Iterable with all elements that satisfy the
predicate
test
.inherited -
whereType<
T> () → Iterable< T> -
Creates a new lazy Iterable with all elements that have type
T
.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited