equal
deleted
inserted
replaced
237 tobinary(value)]); |
237 tobinary(value)]); |
238 |
238 |
239 cache[index] = value; |
239 cache[index] = value; |
240 }; |
240 }; |
241 |
241 |
|
242 function apply_hmi_value(index, new_val) { |
|
243 let old_val = cache[index] |
|
244 if(new_val != undefined && old_val != new_val) |
|
245 send_hmi_value(index, new_val); |
|
246 return new_val; |
|
247 } |
|
248 |
242 function change_hmi_value(index, opstr) { |
249 function change_hmi_value(index, opstr) { |
243 let op = opstr[0]; |
250 let op = opstr[0]; |
244 let given_val = opstr.slice(1); |
251 let given_val = opstr.slice(1); |
245 let old_val = cache[index] |
252 let old_val = cache[index] |
246 let new_val; |
253 let new_val; |
402 foreach_subscribe.call(this,off); |
409 foreach_subscribe.call(this,off); |
403 update_subscriptions(); |
410 update_subscriptions(); |
404 need_cache_apply.push(this); |
411 need_cache_apply.push(this); |
405 jumps_need_update = true; |
412 jumps_need_update = true; |
406 requestHMIAnimation(); |
413 requestHMIAnimation(); |
407 console.log(opstr, new_item_offset); |
|
408 } |
414 } |
409 |
415 |
410 |
416 |
411 function switch_visible_page(page_name) { |
417 function switch_visible_page(page_name) { |
412 |
418 |
458 // TODO : re-enable auto reload when not in debug |
464 // TODO : re-enable auto reload when not in debug |
459 //window.setTimeout(() => location.reload(true), 10000); |
465 //window.setTimeout(() => location.reload(true), 10000); |
460 alert("Connection closed. code:"+evt.code+" reason:"+evt.reason+" wasClean:"+evt.wasClean+"."); |
466 alert("Connection closed. code:"+evt.code+" reason:"+evt.reason+" wasClean:"+evt.wasClean+"."); |
461 |
467 |
462 }; |
468 }; |
|
469 |
|
470 var edit_callback; |
|
471 function edit_value(path, valuetype, callback, initial) { |
|
472 |
|
473 let [keypadid, xcoord, ycoord] = keypads[valuetype]; |
|
474 console.log('XXX TODO : Edit value', path, valuetype, callback, initial, keypadid); |
|
475 edit_callback = callback; |
|
476 |
|
477 let [element, parent] = detachable_elements[keypadid]; |
|
478 tmpgrp = document.createElement("g"); |
|
479 tmpgrpattr = document.createAttribute("transform"); |
|
480 |
|
481 let [xdest,ydest] = page_desc[current_visible_page].bbox; |
|
482 tmpgrpattr.value = "translate("+String(xdest-xcoord)+","+String(ydest-ycoord)+")"; |
|
483 tmpgrp.setAttributeNode(tmpgrpattr); |
|
484 |
|
485 tmpgrp.appendChild(element); |
|
486 parent.appendChild(tmpgrp); |
|
487 |
|
488 }; |
|
489 |