deserialize method
Deserializes the FML template elements, attributes and children
Implementation
@override
void deserialize(XmlElement xml)
{
// deserialize
super.deserialize(xml);
// properties
label = Xml.get(node: xml, tag: 'value') ?? Xml.get(node: xml, tag: 'label') ?? Xml.getText(xml);
onclick = Xml.get(node: xml, tag: 'onclick');
onenter = Xml.get(node: xml, tag: 'onenter');
onexit = Xml.get(node: xml, tag: 'onexit');
buttontype = Xml.get(node: xml, tag: 'type');
radius = Xml.get(node: xml, tag: 'radius');
// create text model bound to this label as default
if (viewableChildren.isEmpty && label != null)
{
children ??= [];
children!.add(TextModel(this, null, value: "{$id.label}"));
}
}