svghmi/gen_index_xhtml.ysl2
branchsvghmi
changeset 2861 84c16ece8e10
parent 2858 39c8d6079f0f
child 2866 59a855c17aa6
equal deleted inserted replaced
2860:b7650c6abeda 2861:84c16ece8e10
   753     template "widget[@type='Input']", mode="widget_defs" {
   753     template "widget[@type='Input']", mode="widget_defs" {
   754         param "hmi_element";
   754         param "hmi_element";
   755         const "value_elt" {
   755         const "value_elt" {
   756             optional_labels("value");
   756             optional_labels("value");
   757         }
   757         }
       
   758         const "have_value","string-length($value_elt)>0";
   758         value "$value_elt";
   759         value "$value_elt";
   759         if "$value_elt"
   760         if "$have_value"
   760         |     frequency: 5,
   761         |     frequency: 5,
   761 
   762 
   762         |     dispatch: function(value) {
   763         |     dispatch: function(value) {
   763 
   764 
   764         if "$value_elt"
   765         if "$have_value"
   765         |         this.value_elt.textContent = String(value);
   766         |         this.value_elt.textContent = String(value);
   766 
   767 
   767         |     },
   768         |     },
   768         const "edit_elt_id","$hmi_element/*[@inkscape:label='edit'][1]/@id";
   769         const "edit_elt_id","$hmi_element/*[@inkscape:label='edit'][1]/@id";
   769         |     init: function() {
   770         |     init: function() {
   774         }
   775         }
   775         foreach "$hmi_element/*[regexp:test(@inkscape:label,'^[=+\-].+')]" {
   776         foreach "$hmi_element/*[regexp:test(@inkscape:label,'^[=+\-].+')]" {
   776         |         id("«@id»").addEventListener(
   777         |         id("«@id»").addEventListener(
   777         |             "click", 
   778         |             "click", 
   778         |             evt => {let new_val = change_hmi_value(this.indexes[0], "«func:escape_quotes(@inkscape:label)»");
   779         |             evt => {let new_val = change_hmi_value(this.indexes[0], "«func:escape_quotes(@inkscape:label)»");
   779         |                     this.value_elt.textContent = String(new_val);});
   780             if "$have_value"{
       
   781         |                     this.value_elt.textContent = String(new_val);
       
   782             }
       
   783         |                    });
   780                               /* TODO gray out value until refreshed */
   784                               /* TODO gray out value until refreshed */
   781         }
   785         }
   782         |     },
   786         |     },
   783     }
   787     }
   784     template "widget[@type='Button']", mode="widget_defs" {
   788     template "widget[@type='Button']", mode="widget_defs" {