convert_ppt_options_widget.dart 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import 'package:ConversionFlutterDemo/states/convert_options_provider.dart';
  2. import 'package:flutter/material.dart';
  3. import 'package:provider/provider.dart';
  4. /// convert_ppt_options_widget.dart
  5. ///
  6. /// Copyright © 2014-2023 PDF Technologies, Inc. All Rights Reserved.
  7. ///
  8. /// THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
  9. /// AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
  10. /// UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
  11. /// This notice may not be removed from this file.
  12. class ConvertPPTOptionsWidget extends StatefulWidget {
  13. const ConvertPPTOptionsWidget({Key? key}) : super(key: key);
  14. @override
  15. State<ConvertPPTOptionsWidget> createState() =>
  16. _ConvertPPTOptionsWidgetState();
  17. }
  18. class _ConvertPPTOptionsWidgetState extends State<ConvertPPTOptionsWidget> {
  19. @override
  20. Widget build(BuildContext context) {
  21. bool containImages = context.select<ConvertOptionsProvider, bool>(
  22. (value) => value.pptOptions.containImages);
  23. bool containAnnotations = context.select<ConvertOptionsProvider, bool>(
  24. (value) => value.pptOptions.containAnnotations);
  25. return Padding(
  26. padding: EdgeInsets.all(8),
  27. child: Column(
  28. mainAxisSize: MainAxisSize.min,
  29. children: [
  30. Row(
  31. mainAxisAlignment: MainAxisAlignment.spaceBetween,
  32. children: [
  33. const Text('ContainImages'),
  34. Switch(
  35. value: containImages,
  36. onChanged: (value) {
  37. context
  38. .read<ConvertOptionsProvider>()
  39. .changePPTOptions(containImages: value);
  40. })
  41. ],
  42. ),
  43. Row(
  44. mainAxisAlignment: MainAxisAlignment.spaceBetween,
  45. children: [
  46. const Text('ContainAnnotations'),
  47. Switch(
  48. value: containAnnotations,
  49. onChanged: (value) {
  50. context
  51. .read<ConvertOptionsProvider>()
  52. .changePPTOptions(containAnnotations: value);
  53. })
  54. ],
  55. )
  56. ],
  57. ));
  58. }
  59. }