SVGHMI: In order to allow widget signature and description to coexist in same ysl2 file, introduced widget_class, widget_defs to declare widget codegen templates and gen_index_xhtml to mark templates that are only usefull in gen_index_xhtml.xslt.
// widget_list.ysl2
widget_defs("List") {
param "hmi_element";
| items: {
foreach "$hmi_element/*[@inkscape:label]" {
| «@inkscape:label»: "«@id»",
}
| },
}
widget_defs("TextStyleList") {
param "hmi_element";
| styles: {
foreach "$hmi_element/*[@inkscape:label]" {
const "style", "func:refered_elements(.)[self::svg:text]/@style";
| «@inkscape:label»: "«$style»",
}
| },
}