OpenCustomDialog.success constructor
OpenCustomDialog.success(
- BuildContext context, {
- required String title,
- String? subtitle,
- String? confirmButtonText,
- dynamic onClose(
- dynamic
- Widget? noticeIcon,
- CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.center,
- bool compact = false,
- Color? accentColor,
- Color? backgroundColor,
- double? minHeight,
- double? maxWidth,
Displays a success dialog.
Does not have a footer button by default. Provide confirmButtonText to add one.
Implementation
factory OpenCustomDialog.success(
BuildContext context, {
required String title,
String? subtitle,
String? confirmButtonText, // Nullable to allow no button
Function(dynamic)? onClose,
// --- RistoNoticeCard Pass-through Properties ---
Widget? noticeIcon,
RistoFooterBuilder? footerBuilder,
CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.center,
bool compact = false,
Color? accentColor,
Color? backgroundColor,
double? minHeight,
double? maxWidth,
}) {
return OpenCustomDialog._internal(
bodyBuilder: (ctx) {
return RistoNoticeCard.success(
title: title,
subtitle: subtitle,
showClose: true,
onClose: () => Navigator.pop(ctx, null),
noticeIcon: noticeIcon,
crossAxisAlignment: crossAxisAlignment,
compact: compact,
accentColor: accentColor,
backgroundColor: backgroundColor,
minHeight: minHeight,
maxWidth: maxWidth,
footerBuilder:
footerBuilder ??
(confirmButtonText != null
? (context, accentColor) => CustomActionButton.rounded(
minHeight: 0,
padding: const EdgeInsets.symmetric(
vertical: 10,
horizontal: 24,
),
backgroundColor: accentColor,
onPressed: () => Navigator.pop(ctx, true),
child: Text(confirmButtonText),
)
: null),
);
},
onClose: onClose,
);
}