svghmi/widget_customhtml.ysl2
author Edouard Tisserant
Thu, 18 Mar 2021 14:32:21 +0100
branchsvghmi
changeset 3195 cdd2a032b424
parent 3064 4b44d09c48a7
child 3232 7bdb766c2a4d
permissions -rw-r--r--
SVGHMI: JsonTable: Fixed options not being passed in JSON post when jumping to a page where additional variables are pre-defined by a HMI:VarInit.
Was JS Fetch Promise not executed late enough, and gathering JsonTable variables before the sequence of calls to dispatch() was finished.
// widget_customhtml.ysl2

template "widget[@type='CustomHtml']", mode="widget_class"{
    ||
    class CustomHtmlWidget extends Widget{
        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>';
        }
    }
    ||
}


template "widget[@type='CustomHtml']", mode="widget_defs" {
    param "hmi_element";
    labels("container code");
    |,
}