dialogWithOneOption static method
dynamic
dialogWithOneOption({
- required BuildContext buildContext,
- required String dialogMessage,
- required VoidCallback function,
- String? buttonText,
- Color? dialogMessageColor,
- Color? dialogButtonColor,
Implementation
static dialogWithOneOption({
required BuildContext buildContext,
required String dialogMessage,
required VoidCallback function,
String? buttonText,
Color? dialogMessageColor,
Color? dialogButtonColor,
}) {
final config = ImosysAppWrapper.of(buildContext);
final isDarkTheme = _isDark(config, buildContext);
final resolvedMessageColor = dialogMessageColor ??
config.dialogMessageColor ??
(isDarkTheme
? config.semanticColors.onSurface
: config.defaultFontColor);
final resolvedButtonColor =
dialogButtonColor ?? config.dialogButtonColor ?? config.semanticColors.info;
return Platform.isAndroid
? showDialog(
context: buildContext,
barrierDismissible: false,
builder: (BuildContext context) {
return AlertDialog(
content: ImosysTextWidget(
text: dialogMessage,
color: resolvedMessageColor,
),
actions: <Widget>[
TextButton(
child: ImosysTextWidget(
text: buttonText ?? ImosysStrings.ok,
color: resolvedButtonColor,
),
onPressed: () {
function.call();
},
),
],
);
},
)
: showCupertinoDialog(
context: buildContext,
barrierDismissible: false,
builder: (BuildContext context) => CupertinoAlertDialog(
content: ImosysTextWidget(
text: dialogMessage,
color: resolvedMessageColor,
),
actions: <CupertinoDialogAction>[
CupertinoDialogAction(
isDefaultAction: true,
onPressed: () {
function.call();
},
child: ImosysTextWidget(
text: buttonText ?? ImosysStrings.ok,
color: resolvedButtonColor,
),
),
],
),
);
}