EcpTilePicker<T> constructor

EcpTilePicker<T>({
  1. Key? key,
  2. int limitNum = noLimit,
  3. bool allowEmpty = false,
  4. List<T>? selectUserList,
  5. bool appBarVisible = true,
  6. bool? clickWithoutConfirm = false,
  7. String? title,
  8. List<String>? indexList,
  9. OnSelected<T>? onSelected,
  10. bool? showSelectedList,
  11. bool refreshEnable = true,
  12. bool loadMoreEnable = true,
  13. String? searchHint,
  14. bool isAutoLeading = true,
  15. List<T>? frozenList,
  16. bool showSearch = true,
  17. TileItemBuilder<T>? itemBuilder,
  18. SelectedBuilder<T>? selectedBuilder,
  19. TileRepo<T>? repo,
  20. SearchRepo<T, T>? searchRepo,
  21. String onDisplay(
    1. T
    )?,
  22. IconData? icon,
  23. EcpTileIconBuilder<T>? iconBuilder,
})

Implementation

EcpTilePicker({
  super.key,
  super.limitNum,
  super.allowEmpty,
  super.selectUserList,
  super.appBarVisible,
  super.clickWithoutConfirm,
  super.title,
  super.indexList,
  super.onSelected,
  super.showSelectedList,
  super.refreshEnable = true,
  super.loadMoreEnable = true,
  super.searchHint,
  super.isAutoLeading = true,
  super.frozenList,
  bool showSearch = true,
  TileItemBuilder<T>? itemBuilder,
  SelectedBuilder<T>? selectedBuilder,
  TileRepo<T>? repo,
  SearchRepo<T, T>? searchRepo,
  String Function(T)? onDisplay,
  IconData? icon,
  EcpTileIconBuilder<T>? iconBuilder,
}) : super(
        userSelectorBuilder: (ctx, proxy, wrapper) =>
            itemBuilder?.call(ctx, wrapper) ??
            EcpPickerTileItem<T>(
              wrapper: wrapper,
              showCheckBox: !(clickWithoutConfirm ?? limitNum == 1),
              onDisplay: onDisplay,
              icon: icon,
              iconBuilder: iconBuilder,
            ),
        userSelectedBuilder: selectedBuilder ??
            (ctx, wrapper) => EcpPickerTileItem<T>(
                  wrapper: wrapper,
                  onDisplay: onDisplay,
                  icon: icon,
                  iconBuilder: iconBuilder,
                ),
        userRepo: (d, index) async => repo?.call(index),
        searchRepo: showSearch ? searchRepo : null,
        showIndex: false,
      );