import 'package:fis_common/event/event_type.dart'; import 'package:fis_measure/interfaces/date_types/rect_region.dart'; import 'package:fis_measure/interfaces/process/visuals/visual.dart'; import 'package:flutter/foundation.dart'; import 'package:vid/us/vid_us_visual_area_type.dart'; import '../modes/mode.dart'; import '../viewports/viewport.dart'; /// 图像幅区域 abstract class IVisualArea { /// 所在幅 IVisual get visual; /// 视口 IViewPort? get viewport; @protected set viewport(IViewPort? value); /// 区域类型 VidUsVisualAreaType get visualAreaType; /// 布局区域 RectRegion? get layoutRegion; set layoutRegion(RectRegion? value); /// 整体显示区域 RectRegion get displayRegion; /// 模式 IMode get mode; /// 是否活动 bool get isActive; set isActive(bool value); /// 是否活动变化事件 late final FEventHandler isActiveChanged; }