Files
apidash/lib/widgets/checkbox.dart
2024-03-16 16:29:35 +05:30

42 lines
1.1 KiB
Dart

import 'package:flutter/material.dart';
class CheckBox extends StatelessWidget {
final String keyId;
final bool value;
final ValueChanged<bool?>? onChanged;
final ColorScheme? colorScheme;
const CheckBox({
super.key,
required this.keyId,
required this.value,
required this.onChanged,
this.colorScheme,
});
@override
Widget build(BuildContext context) {
var colorScheme = this.colorScheme ?? Theme.of(context).colorScheme;
return Checkbox(
key: Key(keyId),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(3),
),
side: BorderSide(
color: colorScheme.surfaceVariant,
width: 1.5,
),
splashRadius: 0,
value: value,
onChanged: onChanged,
checkColor: colorScheme.onPrimary,
fillColor: MaterialStateProperty.resolveWith<Color?>(
(Set<MaterialState> states) {
if (states.contains(MaterialState.selected)) {
return colorScheme.primary;
}
return null;
},
));
}
}