convert_csv_options_widget.dart 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import 'package:ConversionFlutterDemo/models/convert_contain_options_bean.dart';
  2. import 'package:ConversionFlutterDemo/states/convert_options_provider.dart';
  3. import 'package:flutter/material.dart';
  4. import 'package:provider/provider.dart';
  5. class ConvertCSVOptionsWidget extends StatefulWidget {
  6. const ConvertCSVOptionsWidget({Key? key}) : super(key: key);
  7. @override
  8. State<ConvertCSVOptionsWidget> createState() =>
  9. _ConvertCSVOptionsWidgetState();
  10. }
  11. class _ConvertCSVOptionsWidgetState extends State<ConvertCSVOptionsWidget> {
  12. @override
  13. Widget build(BuildContext context) {
  14. bool mergeCSV = context.select<ConvertOptionsProvider, bool>(
  15. (value) => value.csvOptions.mergeCSV);
  16. return Padding(
  17. padding: EdgeInsets.all(8),
  18. child: Column(
  19. mainAxisSize: MainAxisSize.min,
  20. children: [
  21. Row(
  22. mainAxisAlignment: MainAxisAlignment.spaceBetween,
  23. children: [
  24. const Text('MergeCSV'),
  25. Switch(
  26. value: mergeCSV,
  27. onChanged: (value) {
  28. context
  29. .read<ConvertOptionsProvider>()
  30. .changeCSVOptions(value);
  31. })
  32. ],
  33. ),
  34. ],
  35. ));
  36. }
  37. }