showDialog static method
Displays a confirmation dialog with customizable content and actions
duration Optional auto-dismiss duration
params Dialog configuration including:
- Title/description text and styles
- Button labels and styles
- Callback actions for buttons and dismiss events
- Custom widget content
isClosableWhether the dialog can be closed by tapping outside (default: true)
Implementation
static Future<void> showDialog({
Duration? duration,
SmartDialogParams? params,
bool isClosable = true,
}) {
final dialogWidget = SmartDialogWidget(
dialogParams:
_instance._smartDialogParams?.copyWith(
backgroundColor: params?.backgroundColor,
foregroundColor: params?.foregroundColor,
borderColor: params?.borderColor,
title: params?.title,
titleTextStyle: params?.titleTextStyle,
closeIconColor: params?.closeIconColor,
descriptionTextStyle: params?.descriptionTextStyle,
positiveButtonTextStyle: params?.positiveButtonTextStyle,
positiveButtonStyle: params?.positiveButtonStyle,
negativeButtonTextStyle: params?.negativeButtonTextStyle,
negativeButtonStyle: params?.negativeButtonStyle,
description: params?.description,
customWidget: params?.customWidget,
positiveButtonText: params?.positiveButtonText,
negativeButtonText: params?.negativeButtonText,
onPositiveButtonPressed: params?.onPositiveButtonPressed ?? dismiss,
onNegativeButtonPressed: params?.onNegativeButtonPressed ?? dismiss,
onOutClick: isClosable ? dismiss : (){},
onOnClose: params?.onOnClose,
) ??
params?.copyWith( onOutClick: isClosable ? dismiss : (){}),
);
return _instance._show(widget: dialogWidget, duration: duration);
}