Browse Source

1、测量配置项切换事件bug更改

bakamaka.guan 2 years ago
parent
commit
bf2986a9c8

+ 1 - 0
lib/process/workspace/measure_controller.dart

@@ -149,5 +149,6 @@ class MeasureController implements IMeasureController {
       app = Application(dataHost.probe);
     }
     _application = Get.put<IApplication>(app);
+    print("Add New" + _application.hashCode.toString());
   }
 }

+ 10 - 3
lib/view/measure/measure_tools_title.dart

@@ -1,6 +1,7 @@
 import 'package:fis_measure/interfaces/process/items/item_metas.dart';
 import 'package:fis_measure/interfaces/process/visuals/visual_area.dart';
 import 'package:fis_measure/interfaces/process/workspace/application.dart';
+import 'package:fis_measure/process/workspace/measure_controller.dart';
 import 'package:fis_measure/process/workspace/measure_data_controller.dart';
 import 'package:fis_measure/process/workspace/measure_handler.dart';
 import 'package:fis_measure/view/measure/measure_view_controller.dart';
@@ -19,11 +20,12 @@ class LeftMeasureTools extends StatefulWidget implements FWidget {
 }
 
 class _LeftMeasureToolsState extends State<LeftMeasureTools> {
-  late final application = Get.find<IApplication>();
+  late IApplication application = Get.find<IApplication>();
   late final measureHandler = Get.find<MeasureHandler>();
 
   /// 数据
   late final measureData = Get.find<MeasureDataController>();
+  late final measureController = Get.find<MeasureController>();
 
   /// 测量项控制器
   final measureMetaController = Get.find<MeasureMetaController>();
@@ -43,10 +45,10 @@ class _LeftMeasureToolsState extends State<LeftMeasureTools> {
 
   void visualAreaChanged(sender, IVisualArea e) {
     if (mounted) {
-      measureMetaController
-          .setAvailableModes(e.mode.modeType.toString().split('.')[1]);
       setState(() {});
     }
+    measureMetaController
+        .setAvailableModes(e.mode.modeType.toString().split('.')[1]);
   }
 
   @override
@@ -54,6 +56,11 @@ class _LeftMeasureToolsState extends State<LeftMeasureTools> {
     super.initState();
     measureData.applicationModesChanged.addListener(applicationModesChanged);
     application.visualAreaChanged.addListener(visualAreaChanged);
+    measureController.imageLoaded.addListener((sender, e) {
+      application.visualAreaChanged.removeListener(visualAreaChanged);
+      application = Get.find<IApplication>();
+      application.visualAreaChanged.addListener(visualAreaChanged);
+    });
   }
 
   @override

+ 0 - 31
lib/view/measure/measure_view_controller.dart

@@ -86,36 +86,6 @@ class MeasureMetaController extends GetxController {
     }
   }
 
-  // /// 获取当前图像的测量项,从第一帧取
-  // void currentFrameHandler(Object sender, VidUsImage e) async {
-  //   List<String> getModes = [];
-  //   for (var element in e.visuals[0].modes) {
-  //     getModes.add(element.type.toString().split('.')[1]);
-  //   }
-  //   measureData.applicationModes = e.visuals[0].modes;
-  //   measureData.currentMode = e.visuals[0].modes.first.type.name;
-  //   var measureModeSelection = MeasureModeSelection(
-  //     application.applicationName,
-  //     application.categoryName,
-  //     application.isThirdPart ? ['TPPTissue'] : getModes,
-  //   );
-  //   measureHandler.measureModeChanged = measureModeSelection;
-  //   var measureApplicationDTO =
-  //       await measureData.getMeasureApplication.call(measureModeSelection);
-  //   if (measureApplicationDTO != null) {
-  //     /// 模式版本
-  //     measureData.measureApplicationVersion =
-  //         measureApplicationDTO.version ?? '';
-  //     measureData.availableModes = measureApplicationDTO.availableModes ?? [];
-
-  //     setAvailableModes(measureData.currentMode);
-
-  //     activeName = measureData.getItemMetaList[0].name;
-  //     measureConfig();
-  //   }
-  //   getNoteCommentsList();
-  // }
-
   /// 测量项配置组
   void measureConfig() {
     List<ItemMetaGroup> _itemMetaConfigurationList = [];
@@ -123,7 +93,6 @@ class MeasureMetaController extends GetxController {
     getMeasureConfigurationGroupName().forEach(
       ((element) {
         List<ItemMetaDTO> itemMetaListGroupItem = [];
-        print(measureData.currentMode);
         var groups = measureData.availableModes
             .firstWhereOrNull(
                 (element) => element.modeName == measureData.currentMode)