AssetPickerBuilderDelegate<Asset, Path> constructor
AssetPickerBuilderDelegate<Asset, Path> ({
- required AssetPickerProvider<
Asset, Path> provider, - required PermissionState initialPermission,
- int gridCount = 4,
- Color? themeColor,
- AssetsPickerTextDelegate? textDelegate,
- ThemeData? pickerTheme,
- SpecialItemPosition specialItemPosition = SpecialItemPosition.none,
- WidgetBuilder? specialItemBuilder,
- IndicatorBuilder? loadingIndicatorBuilder,
- bool allowSpecialItemWhenEmpty = false,
- bool keepScrollOffset = false,
- AssetSelectPredicate<
Asset> ? selectPredicate, - bool? shouldRevertGrid,
Implementation
AssetPickerBuilderDelegate({
required this.provider,
required this.initialPermission,
this.gridCount = 4,
Color? themeColor,
AssetsPickerTextDelegate? textDelegate,
this.pickerTheme,
this.specialItemPosition = SpecialItemPosition.none,
this.specialItemBuilder,
this.loadingIndicatorBuilder,
this.allowSpecialItemWhenEmpty = false,
this.keepScrollOffset = false,
this.selectPredicate,
this.shouldRevertGrid,
}) : assert(
pickerTheme == null || themeColor == null,
'Theme and theme color cannot be set at the same time.',
),
themeColor =
pickerTheme?.colorScheme.secondary ?? themeColor ?? C.themeColor {
Constants.textDelegate = textDelegate ?? AssetsPickerTextDelegate();
// Add the listener if [keepScrollOffset] is true.
if (keepScrollOffset) {
gridScrollController.addListener(keepScrollOffsetListener);
}
}