showConfirmDeleteDialog function

Future<bool> showConfirmDeleteDialog(
  1. BuildContext context, {
  2. String? label,
  3. String? fullLabel,
  4. String? title,
})

Implementation

Future<bool> showConfirmDeleteDialog(
  BuildContext context, {
  String? label,
  String? fullLabel,
  String? title,
}) async {
  final didConfirm = await showPlatformDialog<bool>(
      context: context,
      builder: (context) {
        var intl = SunnyIntl.of(context)!;
        return PlatformAlertDialog(
          title: title == null ? null : Text(title),
          content: Text(fullLabel ?? intl.deleteConfirmTitle(label!)),
          material: (context, platform) => MaterialAlertDialogData(
            buttonPadding: const EdgeInsets.all(8),
            actionsPadding: const EdgeInsets.all(8),
          ),
          actions: [
            PlatformDialogAction(
              child: Text(intl.deleteLabel),
              cupertino: (context, _) =>
                  CupertinoDialogActionData(isDestructiveAction: true),
              onPressed: () async => Navigator.of(context).pop(true),
            ),
            PlatformDialogAction(
              child: Text(intl.cancelLabel),
              cupertino: (context, _) =>
                  CupertinoDialogActionData(isDefaultAction: true),
              onPressed: () async => Navigator.of(context).pop(false),
            ),
          ],
        );
      });
  return didConfirm == true;
}