deserialize method
Deserializes the FML template elements, attributes and children
Implementation
@override
void deserialize(XmlElement xml) {
// deserialize
super.deserialize(xml);
// checkboxes can have multiple values
var values = Xml.getChildElements(node: xml, tag: 'value');
values?.forEach((element) {
String? v = Xml.getText(element);
if (!isNullOrEmpty(v)) {
if (_value == null) value = v;
if (_value is List && !_value!.contains(v)) _value!.add(v);
}
});
// properties
layout = Xml.get(node: xml, tag: 'layout');
center = Xml.get(node: xml, tag: 'center');
wrap = Xml.get(node: xml, tag: 'wrap');
size = Xml.get(node: xml, tag: 'size');
// build radio options
_buildOptions();
// set the default selected options
if (datasource == null) _setSelectedOptions();
}