tone_bar_carotid.dart 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. part of 'operate_bar.dart';
  2. class _SharpnessCarotidToneBar extends StatefulWidget {
  3. @override
  4. State<StatefulWidget> createState() => _SharpnessCarotidToneBarState();
  5. }
  6. class _SharpnessCarotidToneBarState extends State<_SharpnessCarotidToneBar> {
  7. final measure3DViewController = Get.find<Measure3DViewController>();
  8. double curValue = 0;
  9. @override
  10. void initState() {
  11. WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
  12. if (mounted) {
  13. measure3DViewController.onResetTone.addListener(onResetTone);
  14. }
  15. });
  16. super.initState();
  17. }
  18. @override
  19. Widget build(BuildContext context) {
  20. return _ToneBar(
  21. max: 100,
  22. min: -100,
  23. value: curValue,
  24. icon: const Icon(
  25. Icons.change_history,
  26. color: Colors.white,
  27. ),
  28. onChange: (v) {
  29. utils.throttle(() {
  30. measure3DViewController.sharpness = v.toInt();
  31. measure3DViewController.notifyShellSetTone();
  32. setState(() {
  33. curValue = v;
  34. });
  35. }, 'onChangeSharpness', 50);
  36. },
  37. );
  38. }
  39. @override
  40. void dispose() {
  41. measure3DViewController.onResetTone.removeListener(onResetTone);
  42. super.dispose();
  43. }
  44. void onResetTone(Object sender, e) {
  45. setState(() {
  46. curValue = 0;
  47. });
  48. }
  49. }
  50. class _ContrastCarotidToneBar extends StatefulWidget {
  51. @override
  52. State<StatefulWidget> createState() => _ContrastCarotidToneBarState();
  53. }
  54. class _ContrastCarotidToneBarState extends State<_ContrastCarotidToneBar> {
  55. final measure3DViewController = Get.find<Measure3DViewController>();
  56. double curValue = 0;
  57. @override
  58. void initState() {
  59. WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
  60. if (mounted) {
  61. measure3DViewController.onResetTone.addListener(onResetTone);
  62. }
  63. });
  64. super.initState();
  65. }
  66. @override
  67. Widget build(BuildContext context) {
  68. return _ToneBar(
  69. max: 100,
  70. min: -100,
  71. value: curValue,
  72. icon: const Icon(
  73. Icons.contrast,
  74. color: Colors.white,
  75. ),
  76. onChange: (v) {
  77. utils.throttle(() {
  78. measure3DViewController.contrast = v.toInt();
  79. measure3DViewController.notifyShellSetTone();
  80. setState(() {
  81. curValue = v;
  82. });
  83. }, 'onChangeContrast', 50);
  84. },
  85. );
  86. }
  87. @override
  88. void dispose() {
  89. measure3DViewController.onResetTone.removeListener(onResetTone);
  90. super.dispose();
  91. }
  92. void onResetTone(Object sender, e) {
  93. setState(() {
  94. curValue = 0;
  95. });
  96. }
  97. }
  98. class _BrightnessCarotidToneBar extends StatefulWidget {
  99. @override
  100. State<StatefulWidget> createState() => _BrightnessCarotidToneBarState();
  101. }
  102. class _BrightnessCarotidToneBarState extends State<_BrightnessCarotidToneBar> {
  103. final measure3DViewController = Get.find<Measure3DViewController>();
  104. double curValue = 0;
  105. @override
  106. void initState() {
  107. WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
  108. if (mounted) {
  109. measure3DViewController.onResetTone.addListener(onResetTone);
  110. }
  111. });
  112. super.initState();
  113. }
  114. @override
  115. Widget build(BuildContext context) {
  116. return _ToneBar(
  117. max: 100,
  118. min: -100,
  119. value: curValue,
  120. icon: const Icon(
  121. Icons.wb_sunny_sharp,
  122. color: Colors.white,
  123. ),
  124. onChange: (v) {
  125. utils.throttle(() {
  126. measure3DViewController.brightness = v.toInt();
  127. measure3DViewController.notifyShellSetTone();
  128. setState(() {
  129. curValue = v;
  130. });
  131. }, 'onChangeBrightness', 50);
  132. },
  133. );
  134. }
  135. @override
  136. void dispose() {
  137. measure3DViewController.onResetTone.removeListener(onResetTone);
  138. super.dispose();
  139. }
  140. void onResetTone(Object sender, e) {
  141. setState(() {
  142. curValue = 0;
  143. });
  144. }
  145. }
  146. class _ResetCarotidToneButton extends StatelessWidget {
  147. final measure3DViewController = Get.find<Measure3DViewController>();
  148. @override
  149. Widget build(BuildContext context) {
  150. return ElevatedButton(
  151. onPressed: measure3DViewController.resetTone,
  152. child: Text(
  153. i18nBook.measure.resetTone4Btn.t,
  154. style: const TextStyle(color: Colors.white),
  155. ),
  156. );
  157. }
  158. }