CustomDropdown<T> class

Inheritance
Available extensions

Constructors

CustomDropdown({Key? key, required List<T>? items, required dynamic onChanged(T?)?, SingleSelectController<T?>? controller, ScrollController? itemsScrollController, T? initialItem, String? hintText, CustomDropdownDecoration? decoration, String? validator(T?)?, bool validateOnChange = true, dynamic visibility(bool)?, OverlayPortalController? overlayController, _ListItemBuilder<T>? listItemBuilder, _HeaderBuilder<T>? headerBuilder, _HintBuilder? hintBuilder, int maxlines = 1, double? overlayHeight, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, bool excludeSelected = true, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration})
CustomDropdown.multiSelect({Key? key, required List<T>? items, required dynamic onListChanged(List<T>)?, MultiSelectController<T>? multiSelectController, SingleSelectController<T?>? controller, List<T>? initialItems, OverlayPortalController? overlayController, ScrollController? itemsScrollController, String? listValidator(List<T>)?, dynamic visibility(bool)?, _HeaderListBuilder<T>? headerListBuilder, String? hintText, CustomDropdownDecoration? decoration, bool validateOnChange = true, _ListItemBuilder<T>? listItemBuilder, _HintBuilder? hintBuilder, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, int maxlines = 1, double? overlayHeight, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration})
CustomDropdown.multiSelectSearch({Key? key, required List<T>? items, required dynamic onListChanged(List<T>)?, MultiSelectController<T>? multiSelectController, List<T>? initialItems, SingleSelectController<T?>? controller, dynamic visibility(bool)?, ScrollController? itemsScrollController, OverlayPortalController? overlayController, String? listValidator(List<T>)?, _ListItemBuilder<T>? listItemBuilder, _HintBuilder? hintBuilder, CustomDropdownDecoration? decoration, _HeaderListBuilder<T>? headerListBuilder, String? noResultFoundText, _NoResultFoundBuilder? noResultFoundBuilder, String? hintText, String? searchHintText, bool validateOnChange = true, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, int maxlines = 1, double? overlayHeight, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration, bool closeDropDownOnClearFilterSearch = false})
CustomDropdown.multiSelectSearchRequest({Key? key, required Future<List<T>> futureRequest(String)?, required dynamic onListChanged(List<T>)?, MultiSelectController<T>? multiSelectController, Duration? futureRequestDelay, List<T>? initialItems, List<T>? items, SingleSelectController<T?>? controller, ScrollController? itemsScrollController, OverlayPortalController? overlayController, dynamic visibility(bool)?, String? hintText, CustomDropdownDecoration? decoration, String? searchHintText, String? noResultFoundText, _HeaderListBuilder<T>? headerListBuilder, _ListItemBuilder<T>? listItemBuilder, _HintBuilder? hintBuilder, _NoResultFoundBuilder? noResultFoundBuilder, String? listValidator(List<T>)?, bool validateOnChange = true, int maxlines = 1, double? overlayHeight, Widget? searchRequestLoadingIndicator, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration, bool closeDropDownOnClearFilterSearch = false})
const
CustomDropdown.search({Key? key, required List<T>? items, required dynamic onChanged(T?)?, SingleSelectController<T?>? controller, ScrollController? itemsScrollController, T? initialItem, String? hintText, CustomDropdownDecoration? decoration, dynamic visibility(bool)?, OverlayPortalController? overlayController, String? searchHintText, String? noResultFoundText, _ListItemBuilder<T>? listItemBuilder, _HeaderBuilder<T>? headerBuilder, _HintBuilder? hintBuilder, _NoResultFoundBuilder? noResultFoundBuilder, String? validator(T?)?, bool validateOnChange = true, int maxlines = 1, double? overlayHeight, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, bool excludeSelected = true, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration, bool closeDropDownOnClearFilterSearch = false})
CustomDropdown.searchRequest({Key? key, required Future<List<T>> futureRequest(String)?, required dynamic onChanged(T?)?, Duration? futureRequestDelay, T? initialItem, List<T>? items, SingleSelectController<T?>? controller, ScrollController? itemsScrollController, String? hintText, CustomDropdownDecoration? decoration, dynamic visibility(bool)?, OverlayPortalController? overlayController, String? searchHintText, String? noResultFoundText, _ListItemBuilder<T>? listItemBuilder, _HeaderBuilder<T>? headerBuilder, _HintBuilder? hintBuilder, _NoResultFoundBuilder? noResultFoundBuilder, String? validator(T?)?, bool validateOnChange = true, int maxlines = 1, double? overlayHeight, EdgeInsets? closedHeaderPadding, EdgeInsets? expandedHeaderPadding, EdgeInsets? itemsListPadding, EdgeInsets? listItemPadding, Widget? searchRequestLoadingIndicator, bool excludeSelected = true, bool canCloseOutsideBounds = true, bool hideSelectedFieldWhenExpanded = false, bool enabled = true, CustomDropdownDisabledDecoration? disabledDecoration, bool closeDropDownOnClearFilterSearch = false})
const

Properties

canCloseOutsideBounds → bool
Can close CustomDropdown overlay by tapping outside. Here "outside" covers the entire screen.
final
closedHeaderPadding → EdgeInsets?
Padding for CustomDropdown header (closed state).
final
closeDropDownOnClearFilterSearch → bool
CustomDropdown will close on tap Clear filter for all search and searchRequest constructors
final
controller → SingleSelectController<T?>?
The controller that can be used to control CustomDropdown selected item.
final
decoration → CustomDropdownDecoration?
CustomDropdown decoration. Contain sub-decorations SearchFieldDecoration, ListItemDecoration and ScrollbarThemeData.
final
disabledDecoration → CustomDropdownDisabledDecoration?
CustomDropdown disabled decoration.
final
enabled → bool
CustomDropdown enabled/disabled state. If disabled, you can not open the dropdown.
final
excludeSelected → bool
Hide the selected item from the items list.
final
expandedHeaderPadding → EdgeInsets?
Padding for CustomDropdown header (opened/expanded state).
final
futureRequest → Future<List<T>> Function(String)?
The asynchronous computation from which the items list returns.
final
futureRequestDelay → Duration?
Duration after which the futureRequest is to be executed.
final
hashCode → int
The hash code for this object.
no setterinherited
headerBuilder → _HeaderBuilder<T>?
The headerBuilder that will be used to build CustomDropdown header field.
final
headerListBuilder → _HeaderListBuilder<T>?
The headerListBuilder that will be used to build CustomDropdown header field.
final
hideSelectedFieldWhenExpanded → bool
Hide the header field when CustomDropdown overlay opened/expanded.
final
hintBuilder → _HintBuilder?
The hintBuilder that will be used to build CustomDropdown hint of header field.
final
hintText → String?
Text that suggests what sort of data the dropdown represents.
final
initialItem → T?
Initial selected item from the list of items.
final
initialItems → List<T>?
Initial selected items from the list of items.
final
items → List<T>?
The list of items user can select.
final
itemsListPadding → EdgeInsets?
Padding for CustomDropdown items list.
final
itemsScrollController → ScrollController?
Scroll controller to access items list scroll behavior.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
listItemBuilder → _ListItemBuilder<T>?
The listItemBuilder that will be used to build item on demand.
final
listItemPadding → EdgeInsets?
Padding for CustomDropdown each list item.
final
listValidator → String? Function(List<T>)?
A method that validates the selected items. Returns an error string to display as per the validation, or null otherwise.
final
maxlines → int
Text maxlines for header and list item text.
final
multiSelectController → MultiSelectController<T>?
The multiSelectController that can be used to control CustomDropdown.multiSelect selected items.
final
noResultFoundBuilder → _NoResultFoundBuilder?
The noResultFoundBuilder that will be used to build area when there's no search results match.
final
noResultFoundText → String?
Text that notify there's no search results match.
final
onChanged → dynamic Function(T?)?
Called when the item of the CustomDropdown should change.
final
onListChanged → dynamic Function(List<T>)?
Called when the list of items of the CustomDropdown should change.
final
overlayController → OverlayPortalController?
The overlayController allows you to explicitly handle the CustomDropdown overlay states (show/hide).
final
overlayHeight → double?
CustomDropdown opened/expanded area height. Only applicable if items are greater than 4 otherwise adjust automatically.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
searchHintText → String?
Text that suggests what to search in the search field.
final
searchRequestLoadingIndicator → Widget?
Widget to display while search request loading.
final
validateOnChange → bool
Enable the validation listener on item change. This implies to validator everytime when the item change.
final
validator → String? Function(T?)?
A method that validates the selected item. Returns an error string to display as per the validation, or null otherwise.
final
visibility → dynamic Function(bool)?
Callback for dropdown visibility.
final

Methods

animate({Key? key, List<Effect>? effects, AnimateCallback? onInit, AnimateCallback? onPlay, AnimateCallback? onComplete, bool? autoPlay, Duration? delay, AnimationController? controller, Adapter? adapter, double? target, double? value}) → Animate

Available on Widget, provided by the AnimateWidgetExtensions extension

Wraps the target Widget in an Animate instance, and returns the instance for chaining calls. Ex. myWidget.animate() is equivalent to Animate(child: myWidget).
createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<CustomDropdown<T>>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited