|
@@ -1,8 +1,11 @@
|
|
|
+import 'package:fis_measure/interfaces/process/items/item_metas.dart';
|
|
|
+import 'package:fis_measure/interfaces/process/items/types.dart';
|
|
|
import 'package:fis_measure/process/workspace/measure_3d_view_controller.dart';
|
|
|
import 'package:fis_measure/view/measure/measure_tool.dart';
|
|
|
import 'package:fis_ui/index.dart';
|
|
|
import 'package:flutter/material.dart';
|
|
|
import 'package:get/get.dart';
|
|
|
+import 'package:vid/us/vid_us_unit.dart';
|
|
|
|
|
|
/// 颈动脉测量项页面(继承自 测量项页面)
|
|
|
class CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasure {
|
|
@@ -17,15 +20,66 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
late final measure3DViewController = Get.find<Measure3DViewController>();
|
|
|
|
|
|
///写死的颈动脉测量项
|
|
|
- List<String> carotidMeasureApplicationList = [
|
|
|
- 'Distance',
|
|
|
- 'Area',
|
|
|
- '%Stenosis',
|
|
|
- 'Ant.CCA IMT',
|
|
|
- 'Post.CCA IMT',
|
|
|
- 'Both.CCA IMT',
|
|
|
- 'Plaque Detection',
|
|
|
- 'Intima Detection',
|
|
|
+ List<ItemMeta> carotidMeasureApplicationList = [
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.Distance,
|
|
|
+ measureType: MeasureTypes.Distance,
|
|
|
+ description: MeasureTypes.Distance,
|
|
|
+ briefAnnotation: "D",
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.Distance, "Distance", VidUsUnit.cm),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.Area,
|
|
|
+ measureType: MeasureTypes.Area,
|
|
|
+ description: MeasureTypes.Area,
|
|
|
+ briefAnnotation: MeasureTypes.Area,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.Area, "Area", VidUsUnit.cm2),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ // '%Stenosis',
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.AntCCA_IMT,
|
|
|
+ description: MeasureTypes.AntCCA_IMT,
|
|
|
+ measureType: MeasureTypes.AntCCA_IMT,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.AntCCA_IMT, "", VidUsUnit.cm),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.PostCCA_IMT,
|
|
|
+ description: MeasureTypes.PostCCA_IMT,
|
|
|
+ measureType: MeasureTypes.PostCCA_IMT,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.PostCCA_IMT, "", VidUsUnit.cm),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.BothCCA_IMT,
|
|
|
+ description: MeasureTypes.BothCCA_IMT,
|
|
|
+ measureType: MeasureTypes.BothCCA_IMT,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.BothCCA_IMT, "", VidUsUnit.cm),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.PlaqueDetection,
|
|
|
+ description: MeasureTypes.PlaqueDetection,
|
|
|
+ measureType: MeasureTypes.PlaqueDetection,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.PlaqueDetection, "", VidUsUnit.cm2),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
+ ItemMeta(
|
|
|
+ MeasureTypes.IntimaDetection,
|
|
|
+ description: MeasureTypes.IntimaDetection,
|
|
|
+ measureType: MeasureTypes.IntimaDetection,
|
|
|
+ outputs: [
|
|
|
+ ItemOutputMeta(MeasureTypes.IntimaDetection, "", VidUsUnit.cm2),
|
|
|
+ ],
|
|
|
+ ),
|
|
|
];
|
|
|
|
|
|
@override
|
|
@@ -39,7 +93,7 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
controller: ScrollController(),
|
|
|
children: [
|
|
|
...carotidMeasureApplicationList.map((e) {
|
|
|
- if (e == activeName) {
|
|
|
+ if (e.name == activeName) {
|
|
|
return _buildActivedMeasure(
|
|
|
e,
|
|
|
);
|
|
@@ -51,7 +105,7 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- FWidget _buildActivedMeasure(String name) {
|
|
|
+ FWidget _buildActivedMeasure(ItemMeta itemMeta) {
|
|
|
return FRow(
|
|
|
children: [
|
|
|
const FSizedBox(
|
|
@@ -59,8 +113,8 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
),
|
|
|
FExpanded(
|
|
|
child: FElevatedButton(
|
|
|
- onPressed: () => changeItem(name),
|
|
|
- child: FText(name),
|
|
|
+ onPressed: () => changeItem(itemMeta),
|
|
|
+ child: FText(itemMeta.name),
|
|
|
style: ElevatedButton.styleFrom(
|
|
|
fixedSize: const Size.fromHeight(
|
|
|
40,
|
|
@@ -75,7 +129,7 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- FWidget _buildNoActivedMeasure(String name) {
|
|
|
+ FWidget _buildNoActivedMeasure(ItemMeta itemMeta) {
|
|
|
return FRow(
|
|
|
children: [
|
|
|
const FSizedBox(
|
|
@@ -83,9 +137,9 @@ class _CarotidLeftSiderSelectMeasure extends LeftSiderSelectMeasureState {
|
|
|
),
|
|
|
FExpanded(
|
|
|
child: FOutlinedButton(
|
|
|
- onPressed: () => changeItem(name),
|
|
|
+ onPressed: () => changeItem(itemMeta),
|
|
|
child: FText(
|
|
|
- name,
|
|
|
+ itemMeta.name,
|
|
|
style: const TextStyle(
|
|
|
color: Colors.white,
|
|
|
),
|