SelectModel<T> class
A single-select component following the Model architecture.
Displays a list of items and allows the user to select one.
Example
final select = SelectModel<String>(
title: 'Choose a color:',
items: ['Red', 'Green', 'Blue'],
);
// In your update function:
switch (msg) {
case SelectionMadeMsg<String>(:final item):
print('Selected: $item');
return (this, Cmd.quit());
case SelectionCancelledMsg():
return (this, Cmd.quit());
}
- Inheritance
-
- Object
- Model
- ViewComponent
- SelectModel
Constructors
-
SelectModel({required List<
T> items, String title = 'Select an option:', bool showTitle = true, bool showHelp = true, bool showPagination = true, int height = 10, int initialIndex = 0, String display(T)?, SelectKeyMap? keyMap, SelectStyles? styles}) - Creates a new select model.
Properties
- cursor → int
-
Gets the current cursor position.
no setter
- display → String Function(T)?
-
Custom display function for items.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
-
items
→ List<
T> -
Gets the items.
no setter
- keyMap → SelectKeyMap
-
Key bindings.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selectedItem → T?
-
Gets the currently highlighted item.
no setter
- showHelp → bool
-
Whether to show help text.
final
- showPagination → bool
-
Whether to show pagination.
final
- showTitle → bool
-
Whether to show the title.
final
- styles → SelectStyles
-
Styles.
final
- title → String
-
The title/prompt displayed above the list.
final
Methods
-
init(
) → Cmd? -
Returns an optional command to execute on program startup.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
Msg msg) → (SelectModel< T> , Cmd?) -
Updates the component state in response to a message.
override
-
view(
) → String -
Renders the current model state for display.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited