beremiz

SVGHMI: add static file serving feature.

17 months ago, Edouard Tisserant
4ce63b8647d7
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.
// widget_customhtml.ysl2
widget_desc("CustomHtml") {
longdesc
||
CustomHtml widget allows insertion of HTML code in a svg:foreignObject.
Widget content is replaced by foreignObject. HTML code is obtained from
"code" labeled text content. HTML insert position and size is given with
"container" labeled element.
||
shortdesc > Custom HTML insert
// TODO: support reload and POST based on variable content
}
widget_class("CustomHtml"){
||
frequency = 5;
widget_size = undefined;
dispatch(value) {
this.request_animate();
}
animate(){
}
init() {
this.widget_size = this.container_elt.getBBox();
this.element.innerHTML ='<foreignObject x="'+
this.widget_size.x+'" y="'+this.widget_size.y+
'" width="'+this.widget_size.width+'" height="'+this.widget_size.height+'"> '+
this.code_elt.textContent+
' </foreignObject>';
}
||
}
widget_defs("CustomHtml") {
labels("container code");
}