MultiSearchField constructor

const MultiSearchField({
  1. required String labelText,
  2. required List<String> dropDownList,
  3. required void removeEvent(
    1. String value
    )?,
  4. required List<String>? values,
  5. required void onSelected(
    1. String text
    )?,
  6. double selectListSpacing = 8,
  7. double selectListItemSpacing = 8,
  8. double selectListItemRunSpacing = 8,
  9. double menuMaxHeight = 400,
  10. EdgeInsets menuMargin = const EdgeInsets.only(top: 4, bottom: 8),
  11. EdgeInsets listPadding = const EdgeInsets.symmetric(vertical: 16),
  12. Clip listClipBehavior = Clip.hardEdge,
  13. Icon fieldActiveIcon = const Icon(Icons.close),
  14. Icon fieldInactiveIcon = const Icon(Icons.arrow_drop_down),
  15. bool usePrototype = true,
  16. Key? textFieldKey,
  17. Key? key,
  18. bool? showErrorText,
  19. String? errorText,
  20. int? errorMaxLines,
  21. String? description,
  22. String? allElements,
  23. bool? isRequired,
  24. TextStyle? itemTextStyle,
  25. BoxDecoration? menuDecoration,
  26. double? itemsSpace,
  27. ButtonStyle? itemStyle,
  28. InputDecoration? fieldDecoration,
  29. Widget? fieldSuffixIcon,
  30. int? selectedItemMaxLines,
  31. ButtonStyle? selectedItemStyle,
  32. TextStyle? selectedItemTextStyle,
  33. Clip? selectedItemClipBehavior,
  34. Widget? selectedItemIcon,
  35. double? selectedItemSpacing,
  36. TextAlign? selectedItemTextAlign,
  37. TextOverflow? selectedItemTextOverflow,
  38. Widget customTextField({
    1. required TextEditingController controller,
    2. required FocusNode focusNode,
    3. required GlobalKey<State<StatefulWidget>> key,
    4. required void onChanged(
      1. String
      )?,
    5. required void onSubmitted(
      1. String
      )?,
    6. required Widget suffixIcon,
    7. required Key? textFieldKey,
    })?,
  39. List<TextInputFormatter>? fieldInputFormatters,
  40. TextEditingController? controller,
  41. FocusNode? focusNode,
  42. TextStyle? labelTextStyle,
  43. OptionsViewOpenDirection optionsViewOpenDirection = OptionsViewOpenDirection.down,
  44. Widget listButtonItem({
    1. required int index,
    2. required bool isEnabled,
    3. required Key? key,
    4. required void onPressed(),
    5. required String value,
    })?,
  45. double? listCacheExtent,
  46. bool listAddSemanticIndexes = true,
  47. ScrollController? listController,
  48. String? listRestorationId,
  49. int? listSemanticChildCount,
  50. DragStartBehavior listDragStartBehavior = DragStartBehavior.start,
  51. ScrollPhysics? listPhysics,
  52. bool? listPrimary,
  53. Widget menuList({
    1. required Widget item(
      1. int index
      ),
    2. required int length,
    })?,
  54. Key? fieldIconKey,
  55. Key? listKey,
  56. Key? listItemKey,
  57. Key? selectedListKey,
  58. Key? selectedListItemKey,
  59. Widget selectedWidget(
    1. String value
    )?,
  60. bool useFindChildIndexCallback = true,
})

Implementation

const MultiSearchField({
  required this.labelText,
  required this.dropDownList,
  required this.removeEvent,
  required this.values,
  required this.onSelected,
  this.selectListSpacing = 8,
  this.selectListItemSpacing = 8,
  this.selectListItemRunSpacing = 8,
  this.menuMaxHeight = 400,
  this.menuMargin = const EdgeInsets.only(top: 4, bottom: 8),
  this.listPadding = const EdgeInsets.symmetric(vertical: 16),
  this.listClipBehavior = Clip.hardEdge,
  this.fieldActiveIcon = const Icon(Icons.close),
  this.fieldInactiveIcon = const Icon(Icons.arrow_drop_down),
  this.usePrototype = true,
  this.textFieldKey,
  super.key,
  this.showErrorText,
  this.errorText,
  this.errorMaxLines,
  this.description,
  this.allElements,
  this.isRequired,
  this.itemTextStyle,
  this.menuDecoration,
  this.itemsSpace,
  this.itemStyle,
  this.fieldDecoration,
  this.fieldSuffixIcon,
  this.selectedItemMaxLines,
  this.selectedItemStyle,
  this.selectedItemTextStyle,
  this.selectedItemClipBehavior,
  this.selectedItemIcon,
  this.selectedItemSpacing,
  this.selectedItemTextAlign,
  this.selectedItemTextOverflow,
  this.customTextField,
  this.fieldInputFormatters,
  this.controller,
  this.focusNode,
  this.labelTextStyle,
  this.optionsViewOpenDirection = OptionsViewOpenDirection.down,
  this.listButtonItem,
  this.listCacheExtent,
  this.listAddSemanticIndexes = true,
  this.listController,
  this.listRestorationId,
  this.listSemanticChildCount,
  this.listDragStartBehavior = DragStartBehavior.start,
  this.listPhysics,
  this.listPrimary,
  this.menuList,
  this.fieldIconKey,
  this.listKey,
  this.listItemKey,
  this.selectedListKey,
  this.selectedListItemKey,
  this.selectedWidget,
  this.useFindChildIndexCallback = true,
});