FMultiSelect<T>.searchBuilder constructor

FMultiSelect<T>.searchBuilder({
  1. required Widget format(
    1. T
    ),
  2. required FutureOr<Iterable<T>> filter(
    1. String query
    ),
  3. required FSelectSearchContentBuilder<T> contentBuilder,
  4. FSelectSearchFieldProperties searchFieldProperties,
  5. Widget contentLoadingBuilder(
    1. BuildContext context,
    2. FSelectSearchStyle style
    ),
  6. Widget contentErrorBuilder(
    1. BuildContext context,
    2. Object? error,
    3. StackTrace stackTrace
    )?,
  7. FMultiSelectController<T>? controller,
  8. FMultiSelectStyle style(
    1. FMultiSelectStyle style
    )?,
  9. bool autofocus,
  10. FocusNode? focusNode,
  11. FFieldIconBuilder<FMultiSelectStyle>? prefixBuilder,
  12. FFieldIconBuilder<FMultiSelectStyle>? suffixBuilder,
  13. Widget? label,
  14. Widget? description,
  15. bool enabled,
  16. ValueChanged<Set<T>>? onChange,
  17. void onSaved(
    1. Set<T> values
    )?,
  18. VoidCallback? onReset,
  19. AutovalidateMode autovalidateMode,
  20. String? forceErrorText,
  21. String? validator(
    1. Set<T> values
    ),
  22. Widget errorBuilder(
    1. BuildContext context,
    2. String message
    ),
  23. Widget? hint,
  24. bool keepHint,
  25. int sort(
    1. T,
    2. T
    )?,
  26. FMultiSelectTagBuilder<T>? tagBuilder,
  27. TextAlign textAlign,
  28. TextDirection? textDirection,
  29. bool clearable,
  30. AlignmentGeometry anchor,
  31. AlignmentGeometry fieldAnchor,
  32. FPortalConstraints popoverConstraints,
  33. FPortalSpacing spacing,
  34. Offset shift(
    1. Size size,
    2. FPortalChildBox childBox,
    3. FPortalBox portalBox
    ),
  35. Offset offset,
  36. FPopoverHideRegion hideRegion,
  37. Widget contentEmptyBuilder(
    1. BuildContext context,
    2. FMultiSelectStyle style
    ),
  38. ScrollController? contentScrollController,
  39. bool contentScrollHandles,
  40. ScrollPhysics contentPhysics,
  41. FItemDivider contentDivider,
  42. int min,
  43. int? max,
  44. Set<T>? initialValue,
  45. Key? key,
})

Creates a searchable select with dynamic content based on search input.

The searchFieldProperties can be used to customize the search field.

The filter callback produces a list of items based on the search query either synchronously or asynchronously. The contentBuilder callback builds the list of items based on search results returned by filter. The contentLoadingBuilder is used to show a loading indicator while the search results is processed asynchronously by filter. The contentErrorBuilder is used to show an error message when filter is asynchronous and fails.

Implementation

factory FMultiSelect.searchBuilder({
  required Widget Function(T) format,
  required FutureOr<Iterable<T>> Function(String query) filter,
  required FSelectSearchContentBuilder<T> contentBuilder,
  FSelectSearchFieldProperties searchFieldProperties,
  Widget Function(BuildContext context, FSelectSearchStyle style) contentLoadingBuilder,
  Widget Function(BuildContext context, Object? error, StackTrace stackTrace)? contentErrorBuilder,
  FMultiSelectController<T>? controller,
  FMultiSelectStyle Function(FMultiSelectStyle style)? style,
  bool autofocus,
  FocusNode? focusNode,
  FFieldIconBuilder<FMultiSelectStyle>? prefixBuilder,
  FFieldIconBuilder<FMultiSelectStyle>? suffixBuilder,
  Widget? label,
  Widget? description,
  bool enabled,
  ValueChanged<Set<T>>? onChange,
  void Function(Set<T> values)? onSaved,
  VoidCallback? onReset,
  AutovalidateMode autovalidateMode,
  String? forceErrorText,
  String? Function(Set<T> values) validator,
  Widget Function(BuildContext context, String message) errorBuilder,
  Widget? hint,
  bool keepHint,
  int Function(T, T)? sort,
  FMultiSelectTagBuilder<T>? tagBuilder,
  TextAlign textAlign,
  TextDirection? textDirection,
  bool clearable,
  AlignmentGeometry anchor,
  AlignmentGeometry fieldAnchor,
  FPortalConstraints popoverConstraints,
  FPortalSpacing spacing,
  Offset Function(Size size, FPortalChildBox childBox, FPortalBox portalBox) shift,
  Offset offset,
  FPopoverHideRegion hideRegion,
  Widget Function(BuildContext context, FMultiSelectStyle style) contentEmptyBuilder,
  ScrollController? contentScrollController,
  bool contentScrollHandles,
  ScrollPhysics contentPhysics,
  FItemDivider contentDivider,
  int min,
  int? max,
  Set<T>? initialValue,
  Key? key,
}) = _SearchSelect<T>;