svghmi/lists.ysl2
author Edouard Tisserant <edouard@beremiz.fr>
Thu, 09 Jan 2025 09:45:21 +0100 (2 months ago)
changeset 4079 4ce63b8647d7
parent 3322 67069f4634b7
permissions -rw-r--r--
SVGHMI: add static file serving feature.

Added two buttons to add and remove files.
Files are stored in project inside a directory named "static",
itself located in svghmi CTN instance files. Exemple :
exemples/svghmi_csv_json_img_table/svghmi_0@svghmi/static/
Files are transfered as "extra_files", but with a prefix
added to their name to avoid conflics.
// lists.ysl2
//
// compute list widget related constants
// for details, refer to :
//    widget_list.ysl2
//    widget_textlist.ysl2
//    widget_textstulelist.ysl2


// List widgets

const "hmi_lists_descs", "$parsed_widgets/widget[@type = 'List']";
const "hmi_lists", "$hmi_elements[@id = $hmi_lists_descs/@id]";


// TextList widget

const "hmi_textlists_descs", "$parsed_widgets/widget[@type = 'TextList']";
const "hmi_textlists", "$hmi_elements[@id = $hmi_textlists_descs/@id]";

// TextStyleList widgets

const "hmi_textstylelists_descs", "$parsed_widgets/widget[@type = 'TextStyleList']";
const "hmi_textstylelists", "$hmi_elements[@id = $hmi_textstylelists_descs/@id]";

const "textstylelist_related" foreach "$hmi_textstylelists" list {
    attrib "listid" value "@id";
    foreach "func:refered_elements(.)" elt {
        attrib "eltid" value "@id";
    }
}
const "textstylelist_related_ns", "exsl:node-set($textstylelist_related)";