block_element_info.dart 1.2 KB

12345678910111213141516171819202122232425262728
  1. import 'package:fis_lib_report/report/element_type.dart';
  2. import 'package:fis_lib_report/report/inputImageList.dart';
  3. import 'package:fis_lib_report/report/interfaces/block_element.dart';
  4. import 'package:fis_lib_report/report/interfaces/element.dart';
  5. import 'package:fis_lib_report/report/paragraph.dart';
  6. import 'package:fis_lib_report/report/rt_table.dart';
  7. import 'package:fis_lib_report/report_info/element_info.dart';
  8. import 'package:fis_lib_report/report_info/input_image_list_info.dart';
  9. import 'package:fis_lib_report/report_info/paragraph_info.dart';
  10. import 'package:fis_lib_report/report_info/rt_table_info.dart';
  11. class BlockElementInfo {
  12. List<ElementInfo>? elementInfos = [];
  13. BlockElementInfo.fromElement(IElement element) {
  14. final _type = element.elementType!;
  15. if (_type.name == ElementType.rtTable!.name) {
  16. final table = element as RTTable;
  17. elementInfos!.add(RTTableInfo.fromElement(table));
  18. } else if (_type.name == ElementType.paragraph!.name) {
  19. final paragraph = element as Paragraph;
  20. elementInfos!.add(ParagraphInfo.fromElement(paragraph));
  21. } else {
  22. final inputImageList = element as InputImageList;
  23. elementInfos!.add(InputImageListInfo.fromElement(inputImageList));
  24. }
  25. }
  26. }