MultiSelectField<T> constructor

const MultiSelectField<T>({
  1. Key? key,
  2. String? label,
  3. TextStyle? labelStyle,
  4. bool enabled = true,
  5. String? unselectedString,
  6. Duration duration = const Duration(milliseconds: 300),
  7. List<T>? initialValue,
  8. ScrollController? scrollController,
  9. required List<SelectFieldOption<T>> options,
  10. ValueChanged<List<T>>? onSelected,
  11. bool closeOnSelect = false,
  12. String? errorText,
  13. SelectTrailingBuilder? trailingBuilder,
  14. BorderRadius? borderRadius,
  15. bool? filled,
  16. bool enableSearch = false,
  17. Color? fillColor,
  18. bool overrideColor = false,
  19. List<InputFeedbackText>? feedback,
  20. double? maxWidth = 343,
  21. TextStyle? titleStyle,
  22. TextStyle? optionTileStyle,
  23. Widget titleBuilder(
    1. BuildContext context,
    2. List<SelectFieldOption<T>> selected
    )?,
  24. bool initialValueComparison(
    1. List<T> initialValue,
    2. T valueCompared
    )?,
  25. EdgeInsets fieldPadding = const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
  26. bool autoFocusOnExpanded = true,
  27. bool closeOnUnfocus = true,
  28. bool collapsed = true,
  29. bool ensureVisibleOnNewOptions = true,
  30. Widget iconBuilder(
    1. BuildContext context,
    2. Widget defaultChild,
    3. bool expanded
    )?,
  31. void onSearchChange(
    1. String searchText
    )?,
  32. void onTransitionEnds(
    1. SelectFieldCollapseState state
    )?,
  33. Widget optionsFooterBuilder(
    1. BuildContext context
    )?,
  34. AnimatedStateListItemBuilder<SelectFieldOption<T>>? optionsSeparatorBuilder,
  35. bool searchAutocorrect = true,
  36. String? searchHintText,
  37. TextInputType? searchKeyboardType,
  38. TextCapitalization searchTextCapitalization = TextCapitalization.none,
  39. bool makeOverlay = false,
  40. double collapsibleHeight = 350,
  41. Widget listMenuWrapperBuilder(
    1. Widget child
    )?,
})

Implementation

const MultiSelectField({
  super.key,
  super.label,
  super.labelStyle,
  super.enabled = true,
  super.unselectedString,
  super.duration = const Duration(milliseconds: 300),
  this.initialValue,
  super.scrollController,
  required super.options,
  this.onSelected,
  super.closeOnSelect = false,
  super.errorText,
  super.trailingBuilder,
  super.borderRadius,
  super.filled,
  super.enableSearch = false,
  super.fillColor,
  super.overrideColor = false,
  super.feedback,
  super.maxWidth = 343,
  super.titleStyle,
  super.optionTileStyle,
  this.titleBuilder,
  this.initialValueComparison,
  super.fieldPadding,
  super.autoFocusOnExpanded,
  super.closeOnUnfocus,
  super.collapsed,
  super.ensureVisibleOnNewOptions,
  super.iconBuilder,
  super.onSearchChange,
  super.onTransitionEnds,
  super.optionsFooterBuilder,
  super.optionsSeparatorBuilder,
  super.searchAutocorrect,
  super.searchHintText,
  super.searchKeyboardType,
  super.searchTextCapitalization,
  super.makeOverlay,
  super.collapsibleHeight,
  super.listMenuWrapperBuilder,
}) : assert(
        overrideColor && fillColor != null || !overrideColor,
        "You must provide a color in order to set 'overrideColor' as true",
      );