SVGHMI: add support for "enable expressions" with arbitrary variable name assignment.
HMI tree paths can be prefixed with a variable name "@name=/MY/HMI/VAR"
Widget declarations can end with a "#" followed by a JS expression that refers to name given to variables.
Widget is disabled if expression's result is false.
Commit includes some more-or-less related generated code refactoring, that should simplify extending widget's variables attributes.
<xsd:attribute name="Compiler" type="xsd:string" use="optional" default="gcc"/>
<xsd:attribute name="CFLAGS" type="xsd:string" use="optional" default=""/>
<xsd:attribute name="Linker" type="xsd:string" use="optional" default="gcc"/>
<xsd:attribute name="LDFLAGS" type="xsd:string" use="optional" default=""/>