import 'package:fis_lib_report/pages/components/input_imageList.dart'; import 'package:fis_lib_report/pages/helpler.dart'; import 'package:fis_lib_report/pages/paragraph_page.dart'; import 'package:fis_lib_report/pages/rt_table.dart'; import 'package:fis_lib_report/report/element_type.dart'; import 'package:fis_lib_report/report/inputImageList.dart'; import 'package:fis_lib_report/report/interfaces/block_element.dart'; import 'package:fis_lib_report/report/paragraph.dart'; import 'package:fis_lib_report/report/rt_table.dart'; import 'package:flutter/material.dart'; class BlockElementPage extends StatefulWidget { const BlockElementPage({required this.element, Key? key}) : super(key: key); final IBlockElement element; @override State createState() { return _BlockElementState(); } } class _BlockElementState extends State { ElementType? _type; @override initState() { super.initState(); } @override Widget build(BuildContext context) { _type = widget.element.elementType!; if (_type != null && _type!.name == ElementType.rtTable.name) { RTTable t = widget.element as RTTable; return RTTablePage(element: t); } else if (_type != null && _type!.name == ElementType.paragraph.name) { final paragraph = widget.element as Paragraph; return ParagraphPage(paragraph: paragraph); } else if (_type != null && _type!.name == ElementType.imageList.name) { final inputImageList = widget.element as InputImageList; return Center( child: RInputImageList(inputImageList), ); } return Container( height: 20, decoration: TestBoxDecoration.buildDecoration(), ); } }