ToggleSwitchThemeData.standard constructor
ToggleSwitchThemeData.standard(
- ThemeData style
Implementation
factory ToggleSwitchThemeData.standard(ThemeData style) {
final defaultThumbDecoration = BoxDecoration(shape: BoxShape.circle);
final defaultDecoration = BoxDecoration(
borderRadius: BorderRadius.circular(30),
);
return ToggleSwitchThemeData(
cursor: style.inputMouseCursor,
checkedDecoration: (state) => defaultDecoration.copyWith(
color: ButtonThemeData.checkedInputColor(style, state),
border: Border.all(style: BorderStyle.none),
),
uncheckedDecoration: (state) {
return defaultDecoration.copyWith(
color: ButtonThemeData.uncheckedInputColor(style, state),
border: Border.all(
width: 0.8,
color: state.isNone || state.isFocused
? style.inactiveColor
: ButtonThemeData.uncheckedInputColor(style, state),
),
);
},
padding: EdgeInsets.symmetric(horizontal: 3, vertical: 4),
margin: EdgeInsets.all(4),
animationDuration: style.fastAnimationDuration,
animationCurve: style.animationCurve,
checkedThumbDecoration: (_) => defaultThumbDecoration.copyWith(color: () {
if (style.brightness == Brightness.light)
return style.activeColor;
else
return style.inactiveColor;
}()),
uncheckedThumbDecoration: (_) => defaultThumbDecoration.copyWith(
color: style.inactiveColor,
),
);
}