createCupertinoWidget method

  1. @override
Widget createCupertinoWidget(
  1. BuildContext context
)
override

Implementation

@override
Widget createCupertinoWidget(BuildContext context) {
  final data = cupertino?.call(context, platform(context));
  if (data?.originalStyle ?? false) {
    return CupertinoButton(
      key: data?.widgetKey ?? widgetKey,
      child: data?.child ?? child!,
      onPressed: data?.onPressed ?? onPressed,
      borderRadius: data?.borderRadius ??
          const BorderRadius.all(const Radius.circular(8.0)),
      minSize: data?.minSize ?? _kMinInteractiveDimensionCupertino,
      padding: data?.padding ?? padding,
      pressedOpacity: data?.pressedOpacity ?? 0.4,
      disabledColor:
          data?.disabledColor ?? CupertinoColors.quaternarySystemFill,
      alignment: data?.alignment ?? alignment ?? Alignment.center,
      color: data?.color ?? color,
    );
  } else {
    final button = CupertinoButton.filled(
      key: data?.widgetKey ?? widgetKey,
      child: data?.child ?? child!,
      onPressed: data?.onPressed ?? onPressed,
      borderRadius: data?.borderRadius ??
          const BorderRadius.all(const Radius.circular(8.0)),
      minSize: data?.minSize ?? _kMinInteractiveDimensionCupertino,
      padding: data?.padding ?? padding,
      pressedOpacity: data?.pressedOpacity ?? 0.4,
      disabledColor:
          data?.disabledColor ?? CupertinoColors.quaternarySystemFill,
      alignment: data?.alignment ?? alignment ?? Alignment.center,
    );

    if (color != null) {
      final themeData = CupertinoTheme.of(context);
      return CupertinoTheme(
        data: themeData.copyWith(primaryColor: color),
        child: button,
      );
    }
    return button;
  }
}