dialogWithTwoOptions static method

dynamic dialogWithTwoOptions({
  1. required BuildContext buildContext,
  2. required String dialogMessage,
  3. required VoidCallback yesFunction,
  4. required VoidCallback noFunction,
  5. String? yesButtonText,
  6. String? noButtonText,
  7. Color? dialogMessageColor,
  8. Color? dialogButtonColor,
})

Implementation

static dialogWithTwoOptions({
  required BuildContext buildContext,
  required String dialogMessage,
  required VoidCallback yesFunction,
  required VoidCallback noFunction,
  String? yesButtonText,
  String? noButtonText,
  Color? dialogMessageColor,
  Color? dialogButtonColor,
}) {
  return Platform.isAndroid
      ? showDialog(
          context: buildContext,
          builder: (BuildContext context) {
            return AlertDialog(
              content: ImosysTextWidget(
                text: dialogMessage,
                color: dialogMessageColor ??
                    ImosysAppWrapper.of(context).dialogMessageColor,
              ),
              actions: <Widget>[
                TextButton(
                  child: ImosysTextWidget(
                    text: yesButtonText ?? ImosysStrings.yes,
                    color: dialogButtonColor ??
                        ImosysAppWrapper.of(context).dialogButtonColor,
                  ),
                  onPressed: () {
                    yesFunction.call();
                  },
                ),
                TextButton(
                  child: ImosysTextWidget(
                    text: noButtonText ?? ImosysStrings.no,
                    color: dialogButtonColor ??
                        ImosysAppWrapper.of(context).dialogButtonColor,
                  ),
                  onPressed: () {
                    noFunction.call();
                  },
                ),
              ],
            );
          },
        )
      : showCupertinoDialog(
          context: buildContext,
          builder: (BuildContext context) => CupertinoAlertDialog(
            content: ImosysTextWidget(
              text: dialogMessage,
              color: dialogMessageColor ??
                  ImosysAppWrapper.of(context).dialogMessageColor,
            ),
            actions: <CupertinoDialogAction>[
              CupertinoDialogAction(
                onPressed: () {
                  noFunction.call();
                },
                child: ImosysTextWidget(
                  text: noButtonText ?? ImosysStrings.no,
                  size: 16,
                  color: dialogButtonColor ??
                      ImosysAppWrapper.of(context).dialogButtonColor,
                ),
              ),
              CupertinoDialogAction(
                isDefaultAction: true,
                onPressed: () {
                  yesFunction.call();
                },
                child: ImosysTextWidget(
                  text: yesButtonText ?? ImosysStrings.yes,
                  size: 16,
                  color: dialogButtonColor ??
                      ImosysAppWrapper.of(context).dialogButtonColor,
                ),
              ),
            ],
          ),
        );
}