customDialog function
dynamic
customDialog(
- BuildContext context, {
- required Widget content,
- Widget? title,
- Widget? titleIcon,
- String? positiveButtonText,
- Function? positiveButtonAction,
- String? negativeButtonText,
- Function? negativeButtonAction,
- String? neutralButtonText,
- Function? neutralButtonAction,
- bool hideNeutralButton = false,
- bool hideTitleDivider = false,
- bool closeOnBackPress = false,
customDialog function with title
and content
widgets
positiveButtonText
for positive button text
negativeButtonText
for negative button text
neutralButtonText
for negative button text
hideNeutralButton
to hide the Neutral Button default is false
closeOnBackPress
to close dialog on back button default is false
confirmationDialog to make the confirmation dialog default is false
confirmationMessage
confirmation message default is 'Please check this box for Confirmation!'
Implementation
customDialog(
BuildContext context, {
required Widget content,
Widget? title,
Widget? titleIcon,
String? positiveButtonText,
Function? positiveButtonAction,
String? negativeButtonText,
Function? negativeButtonAction,
String? neutralButtonText,
Function? neutralButtonAction,
bool hideNeutralButton = false,
bool hideTitleDivider = false,
bool closeOnBackPress = false,
}) {
return showGeneralDialog(
context: context,
barrierDismissible: closeOnBackPress,
barrierLabel: "",
barrierColor: getBarrierColor(),
transitionDuration: getDialogPopUpAnimationDuration(),
transitionBuilder: (c2, a1, a2, widget) {
return getDialogAnimation(a1, a2, widget);
},
pageBuilder: (c1, a1, a2) => WillPopScope(
child: CustomDialog(
titleWidget: title,
contentWidget: content,
icon: titleIcon,
negativeButtonText: negativeButtonText,
negativeButtonAction: negativeButtonAction,
positiveButtonText: positiveButtonText,
positiveButtonAction: positiveButtonAction,
neutralButtonText: neutralButtonText,
neutralButtonAction: neutralButtonAction,
hideNeutralButton: hideNeutralButton,
hideTitleDivider: hideTitleDivider,
),
onWillPop: () async => closeOnBackPress,
),
);
}