selectionList<T> method

void selectionList<T>(
  1. List<T> items, {
  2. required int selectedIndex,
  3. int startIndex = 0,
  4. String itemBuilder(
    1. T item
    )?,
})

Writes a list of items with selection indicator.

items is the list of items to display. selectedIndex is the currently selected index. startIndex is the offset for viewport scrolling (default 0). itemBuilder converts an item to its display string.

Implementation

void selectionList<T>(
  List<T> items, {
  required int selectedIndex,
  int startIndex = 0,
  String Function(T item)? itemBuilder,
}) {
  for (var i = 0; i < items.length; i++) {
    final absoluteIndex = startIndex + i;
    final isSelected = absoluteIndex == selectedIndex;
    final text = itemBuilder?.call(items[i]) ?? items[i].toString();
    selectableItem(text, focused: isSelected);
  }
}