MultipleSearchSelection<T>.creatable constructor
MultipleSearchSelection<T>.creatable ({
- required TextField searchField,
- required List<
T> items, - required Widget pickedItemBuilder(
- T
- required String fieldToCheck(
- T
- required Widget itemBuilder(
- T,
- int
- required CreateOptions<
T> createOptions, - Widget pickedItemsContainerBuilder()?,
- void onItemRemoved(
- T
- void onItemAdded(
- T
- dynamic onPickedChange(
- List<
T>
- List<
- Key? key,
- FuzzySearch? fuzzySearch,
- double? maximumShowItemsHeight,
- ShowedItemsVisibility? itemsVisibility,
- List<
T> ? initialPickedItems, - Widget? title,
- Color? showedItemsScrollbarColor,
- double? showedItemsScrollbarMinThumbLength,
- double? showedItemsScrollbarMinOverscrollLength,
- Radius? showedItemsScrollbarRadius,
- double? showedItemContainerHeight,
- EdgeInsets? showedItemContainerPadding,
- bool? showShowedItemsScrollbar,
- bool? showSelectAllButton,
- bool? showClearAllButton,
- double? pickedItemSpacing,
- double? pickedItemsContainerMaxHeight,
- double? pickedItemsContainerMinHeight,
- Color? pickedItemsScrollbarColor,
- double? pickedItemsScrollbarThickness,
- double? pickedItemsScrollbarMinOverscrollLength,
- Radius? pickedItemsScrollbarRadius,
- double? pickedItemsScrollbarMinThumbLength,
- BoxDecoration? pickedItemsBoxDecoration,
- bool? showPickedItemScrollbar,
- VoidCallback? onTapShowedItem,
- ScrollController? pickedItemsScrollController,
- ScrollController? showedItemsScrollController,
- ScrollPhysics? pickedItemsScrollPhysics,
- ScrollPhysics? showedItemsScrollPhysics,
- BoxDecoration? showedItemsBoxDecoration,
- bool? sortPickedItems,
- bool? sortShowedItems,
- bool? clearSearchFieldOnSelect,
- Widget? showItemsButton,
- VoidCallback? onTapShowItems,
- Widget? selectAllButton,
- VoidCallback? onTapSelectAll,
- Widget? clearAllButton,
- VoidCallback? onTapClearAll,
- bool? caseSensitiveSearch,
- String hintText = 'Type here to search',
- double? showedItemExtent,
- int? maxSelectedItems,
- bool? placePickedItemContainerBelow,
- MultipleSearchController? controller,
- dynamic onSearchChanged()?,
MultipleSearchSelection.creatable constructor provides a way to add a new item in your list,
after search doesn't return any results. You can pass
Implementation
factory MultipleSearchSelection.creatable({
required TextField searchField,
required List<T> items,
required Widget Function(T) pickedItemBuilder,
required String Function(T) fieldToCheck,
required Widget Function(T, int) itemBuilder,
required CreateOptions<T> createOptions,
Widget Function(List<Widget> pickedItems)? pickedItemsContainerBuilder,
void Function(T)? onItemRemoved,
void Function(T)? onItemAdded,
Function(List<T>)? onPickedChange,
Key? key,
FuzzySearch? fuzzySearch,
double? maximumShowItemsHeight,
ShowedItemsVisibility? itemsVisibility,
List<T>? initialPickedItems,
Widget? title,
Color? showedItemsScrollbarColor,
double? showedItemsScrollbarMinThumbLength,
double? showedItemsScrollbarMinOverscrollLength,
Radius? showedItemsScrollbarRadius,
double? showedItemContainerHeight,
EdgeInsets? showedItemContainerPadding,
bool? showShowedItemsScrollbar,
bool? showSelectAllButton,
bool? showClearAllButton,
double? pickedItemSpacing,
double? pickedItemsContainerMaxHeight,
double? pickedItemsContainerMinHeight,
Color? pickedItemsScrollbarColor,
double? pickedItemsScrollbarThickness,
double? pickedItemsScrollbarMinOverscrollLength,
Radius? pickedItemsScrollbarRadius,
double? pickedItemsScrollbarMinThumbLength,
BoxDecoration? pickedItemsBoxDecoration,
bool? showPickedItemScrollbar,
VoidCallback? onTapShowedItem,
ScrollController? pickedItemsScrollController,
ScrollController? showedItemsScrollController,
ScrollPhysics? pickedItemsScrollPhysics,
ScrollPhysics? showedItemsScrollPhysics,
BoxDecoration? showedItemsBoxDecoration,
bool? sortPickedItems,
bool? sortShowedItems,
bool? clearSearchFieldOnSelect,
Widget? showItemsButton,
VoidCallback? onTapShowItems,
Widget? selectAllButton,
VoidCallback? onTapSelectAll,
Widget? clearAllButton,
VoidCallback? onTapClearAll,
bool? caseSensitiveSearch,
String hintText = 'Type here to search',
double? showedItemExtent,
int? maxSelectedItems,
bool? placePickedItemContainerBelow,
MultipleSearchController? controller,
Function(String)? onSearchChanged,
}) =>
MultipleSearchSelection._(
searchField: searchField,
items: items,
title: title,
maxSelectedItems: maxSelectedItems,
isCreatable: true,
createOptions: createOptions,
isOverlay: false,
key: key ?? ValueKey(items.hashCode),
clearSearchFieldOnSelect: clearSearchFieldOnSelect ?? false,
fieldToCheck: fieldToCheck,
itemBuilder: itemBuilder,
onPickedChange: onPickedChange,
pickedItemBuilder: pickedItemBuilder,
clearAllButton: clearAllButton,
fuzzySearch: fuzzySearch ?? FuzzySearch.none,
initialPickedItems: initialPickedItems,
itemsVisibility: itemsVisibility ?? ShowedItemsVisibility.alwaysOn,
maximumShowItemsHeight: maximumShowItemsHeight ?? 150,
onItemAdded: onItemAdded,
onItemRemoved: onItemRemoved,
onTapClearAll: onTapClearAll,
onTapSelectAll: onTapSelectAll,
onTapShowItems: onTapShowItems,
onTapShowedItem: onTapShowedItem,
pickedItemSpacing: pickedItemSpacing,
pickedItemsBoxDecoration: pickedItemsBoxDecoration,
pickedItemsContainerMaxHeight: pickedItemsContainerMaxHeight,
pickedItemsContainerMinHeight: pickedItemsContainerMinHeight,
pickedItemsScrollController:
pickedItemsScrollController ?? ScrollController(),
pickedItemsScrollPhysics: pickedItemsScrollPhysics,
pickedItemsScrollbarColor: pickedItemsScrollbarColor,
pickedItemsScrollbarMinOverscrollLength:
pickedItemsScrollbarMinOverscrollLength,
pickedItemsScrollbarMinThumbLength: pickedItemsScrollbarMinThumbLength,
pickedItemsScrollbarRadius: pickedItemsScrollbarRadius,
pickedItemsScrollbarThickness: pickedItemsScrollbarThickness,
selectAllButton: selectAllButton,
showClearAllButton: showClearAllButton,
showItemsButton: showItemsButton,
showPickedItemScrollbar: showPickedItemScrollbar,
showSelectAllButton: showSelectAllButton,
showShowedItemsScrollbar: showShowedItemsScrollbar,
showedItemContainerHeight: showedItemContainerHeight,
showedItemContainerPadding: showedItemContainerPadding,
showedItemsBoxDecoration: showedItemsBoxDecoration,
showedItemsScrollController: showedItemsScrollController,
showedItemsScrollPhysics: showedItemsScrollPhysics,
showedItemsScrollbarColor: showedItemsScrollbarColor,
showedItemsScrollbarMinOverscrollLength:
showedItemsScrollbarMinOverscrollLength,
showedItemsScrollbarMinThumbLength: showedItemsScrollbarMinThumbLength,
showedItemsScrollbarRadius: showedItemsScrollbarRadius,
sortPickedItems: sortPickedItems ?? false,
sortShowedItems: sortShowedItems ?? false,
caseSensitiveSearch: caseSensitiveSearch ?? false,
pickedItemsContainerBuilder: pickedItemsContainerBuilder,
hintText: hintText,
showedItemExtent: showedItemExtent,
placePickedItemContainerBelow: placePickedItemContainerBelow ?? false,
controller: controller ?? MultipleSearchController(),
onSearchChanged: onSearchChanged,
);