MultiSelectModel<T> constructor

MultiSelectModel<T>({
  1. required List<T> items,
  2. String title = 'Select options:',
  3. String hint = '(Space to toggle, Enter to confirm)',
  4. bool showTitle = true,
  5. bool showHint = true,
  6. bool showHelp = true,
  7. bool showPagination = true,
  8. int height = 10,
  9. int initialIndex = 0,
  10. Set<int>? initialSelected,
  11. String display(
    1. T
    )?,
  12. MultiSelectKeyMap? keyMap,
  13. MultiSelectStyles? styles,
})

Creates a new multi-select model.

Implementation

MultiSelectModel({
  required List<T> items,
  this.title = 'Select options:',
  this.hint = '(Space to toggle, Enter to confirm)',
  this.showTitle = true,
  this.showHint = true,
  this.showHelp = true,
  this.showPagination = true,
  int height = 10,
  int initialIndex = 0,
  Set<int>? initialSelected,
  this.display,
  MultiSelectKeyMap? keyMap,
  MultiSelectStyles? styles,
}) : _items = items,
     _selected = initialSelected ?? {},
     keyMap = keyMap ?? MultiSelectKeyMap(),
     styles = styles ?? MultiSelectStyles.defaults(),
     _cursor = initialIndex.clamp(0, items.isEmpty ? 0 : items.length - 1),
     _height = height {
  _paginator = PaginatorModel(
    type: PaginationType.dots,
    activeDot: '●',
    inactiveDot: '○',
  );
  _updatePagination();
}