Files
Tanami_App/lib/shared/components/checkbox_widget.dart

43 lines
1.3 KiB
Dart
Raw Normal View History

2024-05-31 17:01:48 +05:30
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:tanami_app/core/styles/app_color.dart';
import 'bloc/checkbox/checkbox_bloc.dart';
import 'bloc/checkbox/checkbox_event.dart';
import 'bloc/checkbox/checkbox_state.dart';
class CheckBoxWidget extends StatelessWidget {
const CheckBoxWidget({super.key});
@override
Widget build(BuildContext context) {
return BlocBuilder<CheckboxBloc, CheckBoxState>(
builder: (context, state) {
return Checkbox(
activeColor: AppColor.checkBoxActiveColor,
checkColor: Colors.white,
2024-07-03 18:46:18 +05:30
side: WidgetStateBorderSide.resolveWith(
2024-05-31 17:01:48 +05:30
(states) {
2024-07-03 18:46:18 +05:30
if (states.contains(WidgetState.selected)) {
2024-05-31 17:01:48 +05:30
return const BorderSide(
color: AppColor.checkBoxActiveColor, width: 2);
}
return const BorderSide(
color: AppColor.strokeColor,
width: 2,
);
},
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(6),
2024-05-31 17:01:48 +05:30
),
value: state is CheckboxChecked,
onChanged: (value) {
context.read<CheckboxBloc>().add(ToggleCheckbox());
},
);
},
);
}
}