CheckboxThemeData.standard constructor

CheckboxThemeData.standard(
  1. ThemeData style
)

Implementation

factory CheckboxThemeData.standard(ThemeData style) {
  final BorderRadiusGeometry radius = BorderRadius.circular(3);
  return CheckboxThemeData(
    cursor: style.inputMouseCursor,
    checkedDecoration: ButtonState.resolveWith(
      (states) => BoxDecoration(
        borderRadius: radius,
        color: ButtonThemeData.checkedInputColor(style, states),
      ),
    ),
    uncheckedDecoration: ButtonState.resolveWith(
      (states) => BoxDecoration(
        border: Border.all(
          width: 0.6,
          color:
              states.isDisabled ? style.disabledColor : style.inactiveColor,
        ),
        color:
            ButtonThemeData.checkedInputColor(style, states).withOpacity(0),
        borderRadius: radius,
      ),
    ),
    thirdstateDecoration: ButtonState.resolveWith(
      (states) => BoxDecoration(
        borderRadius: radius,
        color: Colors.white,
        border: Border.all(
          width: 6.5,
          color: ButtonThemeData.checkedInputColor(style, states),
        ),
      ),
    ),
    checkedIconColor: ButtonState.resolveWith((states) {
      return states.isDisabled
          ? ButtonThemeData.checkedInputColor(
              style,
              states,
            ).basedOnLuminance()
          : style.activeColor;
    }),
    uncheckedIconColor: ButtonState.resolveWith(
      (states) => states.isHovering || states.isPressing
          ? style.inactiveColor.withOpacity(0.8)
          : Colors.transparent,
    ),
    thirdstateIconColor: ButtonState.all(Colors.transparent),
    icon: FluentIcons.check_mark,
    margin: const EdgeInsets.all(4.0),
  );
}