FSelect<T>.searchBuilder constructor

const FSelect<T>.searchBuilder({
  1. required String format(
    1. T value
    ),
  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. FSelectControl<T>? control,
  8. FPopoverControl popoverControl,
  9. FTextFieldSizeVariant size,
  10. FSelectStyleDelta style,
  11. bool autofocus,
  12. FocusNode? focusNode,
  13. FFieldBuilder<FSelectStyle> builder,
  14. FFieldIconBuilder<FTextFieldStyle>? prefixBuilder,
  15. FFieldIconBuilder<FTextFieldStyle>? suffixBuilder,
  16. Widget? label,
  17. Widget? description,
  18. bool enabled,
  19. FormFieldSetter<T>? onSaved,
  20. VoidCallback? onReset,
  21. AutovalidateMode autovalidateMode,
  22. String? forceErrorText,
  23. FormFieldValidator<T> validator,
  24. Widget errorBuilder(
    1. BuildContext context,
    2. String message
    ),
  25. String? hint,
  26. TextAlign textAlign,
  27. TextAlignVertical? textAlignVertical,
  28. TextDirection? textDirection,
  29. bool expands,
  30. MouseCursor mouseCursor,
  31. bool canRequestFocus,
  32. bool clearable,
  33. FSelectPopoverBuilder<T> popoverBuilder,
  34. AlignmentGeometry contentAnchor,
  35. AlignmentGeometry fieldAnchor,
  36. FPortalConstraints contentConstraints,
  37. FPortalSpacing contentSpacing,
  38. FPortalOverflow contentOverflow,
  39. bool contentUseViewPadding,
  40. bool contentUseViewInsets,
  41. Offset contentOffset,
  42. FPopoverHideRegion contentHideRegion,
  43. Object? contentGroupId,
  44. bool contentCutout,
  45. void contentCutoutBuilder(
    1. Path path,
    2. Rect bounds
    ),
  46. bool autoHide,
  47. Widget contentEmptyBuilder(
    1. BuildContext context,
    2. FSelectStyle style
    ),
  48. ScrollController? contentScrollController,
  49. bool contentScrollHandles,
  50. ScrollPhysics contentPhysics,
  51. FItemDivider contentDivider,
  52. Key? formFieldKey,
  53. 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

const factory FSelect.searchBuilder({
  required String Function(T value) 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,
  FSelectControl<T>? control,
  FPopoverControl popoverControl,
  FTextFieldSizeVariant size,
  FSelectStyleDelta style,
  bool autofocus,
  FocusNode? focusNode,
  FFieldBuilder<FSelectStyle> builder,
  FFieldIconBuilder<FTextFieldStyle>? prefixBuilder,
  FFieldIconBuilder<FTextFieldStyle>? suffixBuilder,
  Widget? label,
  Widget? description,
  bool enabled,
  FormFieldSetter<T>? onSaved,
  VoidCallback? onReset,
  AutovalidateMode autovalidateMode,
  String? forceErrorText,
  FormFieldValidator<T> validator,
  Widget Function(BuildContext context, String message) errorBuilder,
  String? hint,
  TextAlign textAlign,
  TextAlignVertical? textAlignVertical,
  TextDirection? textDirection,
  bool expands,
  MouseCursor mouseCursor,
  bool canRequestFocus,
  bool clearable,
  FSelectPopoverBuilder<T> popoverBuilder,
  AlignmentGeometry contentAnchor,
  AlignmentGeometry fieldAnchor,
  FPortalConstraints contentConstraints,
  FPortalSpacing contentSpacing,
  FPortalOverflow contentOverflow,
  bool contentUseViewPadding,
  bool contentUseViewInsets,
  Offset contentOffset,
  FPopoverHideRegion contentHideRegion,
  Object? contentGroupId,
  bool contentCutout,
  void Function(Path path, Rect bounds) contentCutoutBuilder,
  bool autoHide,
  Widget Function(BuildContext context, FSelectStyle style) contentEmptyBuilder,
  ScrollController? contentScrollController,
  bool contentScrollHandles,
  ScrollPhysics contentPhysics,
  FItemDivider contentDivider,
  Key? formFieldKey,
  Key? key,
}) = _SearchSelect<T>;