12345678910111213141516171819202122232425262728293031323334353637383940 |
- import 'package:fis_lib_report/converts/event_type.dart';
- import 'package:fis_lib_report/report/interfaces/element.dart';
- import 'package:fis_lib_report/report/multiSelected.dart';
- import 'package:fis_lib_report/report_info/report_info.dart';
- import 'package:fis_lib_report/report_info/text_element_info.dart';
- class MulitiSelectedInfo extends TextElementInfo {
- ///是否只读
- bool? isReadOnly = false;
- ///所有待选项
- List<String>? items = [];
- ///选中项集合
- List<String> get selectedItems => _selectedItems;
- set selectedItems(List<String> v) {
- _selectedItems = v;
- onSelectedChange.emit(this, v);
- }
- ///选中项改变通知UI变化
- FEventHandler<List<String>> onSelectedChange = FEventHandler<List<String>>();
- List<String> _selectedItems = [];
- MulitiSelectedInfo.fromElement(MultiSelected element)
- : super.fromElement(element) {
- items = element.items;
- isReadOnly = element.isReadOnly;
- }
- @override
- Map<String, dynamic> toJson() {
- final map = <String, dynamic>{};
- map['Key'] = tag!.id;
- map['Value'] = selectedItems;
- ReportInfo.instance.jsonItems.add(map);
- return map;
- }
- }
|