--- a/svghmi/widget_button.ysl2 Tue Aug 04 11:53:39 2020 +0200
+++ b/svghmi/widget_button.ysl2 Wed Aug 05 15:04:53 2020 +0200
@@ -1,33 +1,47 @@
+template "widget[@type='Button']", mode="widget_class" + class ButtonWidget extends Widget{ + active_style = undefined; + inactive_style = undefined; + if (this.active_style && this.inactive_style) { + this.active_elt.setAttribute("style", this.active_style); + this.inactive_elt.setAttribute("style", "display:none"); + change_hmi_value(this.indexes[0], "=1"); + if (this.active_style && this.inactive_style) { + this.active_elt.setAttribute("style", "display:none"); + this.inactive_elt.setAttribute("style", this.inactive_style); + change_hmi_value(this.indexes[0], "=0"); + this.active_style = this.active_elt ? this.active_elt.style.cssText : undefined; + this.inactive_style = this.inactive_elt ? this.inactive_elt.style.cssText : undefined; + if (this.active_style && this.inactive_style) { + this.active_elt.setAttribute("style", "display:none"); + this.inactive_elt.setAttribute("style", this.inactive_style); + this.element.setAttribute("onmousedown", "hmi_widgets['«$hmi_element/@id»'].on_mouse_down(evt)"); + this.element.setAttribute("onmouseup", "hmi_widgets['«$hmi_element/@id»'].on_mouse_up(evt)"); template "widget[@type='Button']", mode="widget_defs" {
optional_labels("active inactive");
- | on_mouse_down: function(evt) {
- | if (this.active_style && this.inactive_style) {
- | this.active_elt.setAttribute("style", this.active_style);
- | this.inactive_elt.setAttribute("style", "display:none");
- | this.apply_hmi_value(0, 1);
- | on_mouse_up: function(evt) {
- | if (this.active_style && this.inactive_style) {
- | this.active_elt.setAttribute("style", "display:none");
- | this.inactive_elt.setAttribute("style", this.inactive_style);
- | this.apply_hmi_value(0, 0);
- | active_style: undefined,
- | inactive_style: undefined,
- | this.active_style = this.active_elt ? this.active_elt.style.cssText : undefined;
- | this.inactive_style = this.inactive_elt ? this.inactive_elt.style.cssText : undefined;
- | if (this.active_style && this.inactive_style) {
- | this.active_elt.setAttribute("style", "display:none");
- | this.inactive_elt.setAttribute("style", this.inactive_style);
- | this.element.setAttribute("onmousedown", "hmi_widgets['«$hmi_element/@id»'].on_mouse_down(evt)");
- | this.element.setAttribute("onmouseup", "hmi_widgets['«$hmi_element/@id»'].on_mouse_up(evt)");