12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- import 'package:fis_measure/interfaces/process/player/play_controller.dart';
- import 'package:fis_measure/interfaces/process/workspace/mobile_measure_view_state_controller.dart';
- import 'package:fis_measure/view/measure/measure_left_annotation.dart';
- import 'package:fis_measure/view/mobile_view/controller/mobile_measure_view_state_controller.dart';
- import 'package:fis_measure/view/mobile_view/mobile_right_panel/mobile_annotation_tool.dart';
- import 'package:fis_measure/view/mobile_view/mobile_right_panel/mobile_measure_tool.dart';
- import 'package:fis_measure/view/paint/ai_patint_result.dart';
- import 'package:fis_measure/view/player/controller.dart';
- import 'package:flutter/material.dart';
- import 'package:get/get.dart';
- /// 手机端右侧面板
- class MobileRightPanel extends StatefulWidget {
- const MobileRightPanel({
- Key? key,
- }) : super(key: key);
- @override
- State<StatefulWidget> createState() => _MobileRightPanelState();
- }
- class _MobileRightPanelState extends State<MobileRightPanel> {
- late final playerController = Get.find<IPlayerController>();
- final mobileMeasureStateController =
- Get.find<MobileMeasureViewStateController>();
- @override
- void initState() {
- mobileMeasureStateController.onModeChanged.addListener(_onViewModeChanged);
- super.initState();
- }
- @override
- void dispose() {
- mobileMeasureStateController.onModeChanged
- .removeListener(_onViewModeChanged);
- super.dispose();
- }
- MobileMeasureMode curMode = MobileMeasureMode.playerMode;
- void _onViewModeChanged(Object s, MobileMeasureMode mode) {
- setState(() {
- curMode = mode;
- });
- }
- @override
- Widget build(BuildContext context) {
- return Column(
- mainAxisAlignment: MainAxisAlignment.start,
- children: [
- Expanded(
- child: Row(
- mainAxisAlignment: MainAxisAlignment.end,
- children: [_rightPanel()],
- ),
- ),
- ],
- );
- }
- Widget _rightPanel() {
- switch (curMode) {
- case MobileMeasureMode.playerMode:
- return Column(
- children: [
- SizedBox(
- width: 150,
- height: 220,
- child: FittedBox(
- child: SizedBox(
- width: 200,
- child: AIPaintInfoReslut(
- playerController as VidPlayerController,
- ),
- ),
- ),
- ),
- ],
- );
- case MobileMeasureMode.measureMode:
- return const MobileMeasureSelector();
- case MobileMeasureMode.annotationMode:
- return const MobileAnnotationSelector();
- default:
- return Container();
- }
- }
- }
|