Tue, 14 Apr 2020 17:31:45 +0200SVGHMI: HMI:DropDown now temporarily takes content from widget's arguments, until HMI:List is implemented. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 17:31:45 +0200] rev 2931
SVGHMI: HMI:DropDown now temporarily takes content from widget's arguments, until HMI:List is implemented.

Tue, 14 Apr 2020 17:17:35 +0200SVGHMI: Connect HMI:DropDown to value in HMI Tree, in svghmi test as well. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 17:17:35 +0200] rev 2930
SVGHMI: Connect HMI:DropDown to value in HMI Tree, in svghmi test as well.

Tue, 14 Apr 2020 17:16:25 +0200SVGHMI: fix probable problem in HMI:Input, where value could be applied to wrong index if used in relative page. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 17:16:25 +0200] rev 2929
SVGHMI: fix probable problem in HMI:Input, where value could be applied to wrong index if used in relative page.

Tue, 14 Apr 2020 17:15:02 +0200SVGHMI: HMI:DropDown element is brought in front when opened, so that it isn't occulted by other widgets at the same level. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 17:15:02 +0200] rev 2928
SVGHMI: HMI:DropDown element is brought in front when opened, so that it isn't occulted by other widgets at the same level.

Tue, 14 Apr 2020 17:13:12 +0200SVGHMI: HMI:DropDown now catches all clicks when open svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 17:13:12 +0200] rev 2927
SVGHMI: HMI:DropDown now catches all clicks when open

Tue, 14 Apr 2020 12:07:08 +0200SVGHMI: Add button element to HMI:DropDown, also fix problem with computed box margins. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 12:07:08 +0200] rev 2926
SVGHMI: Add button element to HMI:DropDown, also fix problem with computed box margins.

Tue, 14 Apr 2020 10:56:45 +0200SVGHMI: HMI:DropDown now scrolls forward and backward svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 10:56:45 +0200] rev 2925
SVGHMI: HMI:DropDown now scrolls forward and backward

Mon, 13 Apr 2020 18:28:22 +0200SVGHMI: progress on HMI:DropDown - now selects some value on click, and close svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Apr 2020 18:28:22 +0200] rev 2924
SVGHMI: progress on HMI:DropDown - now selects some value on click, and close

Sun, 12 Apr 2020 21:43:42 +0200SVGHMI: HMI:DropDown work in progress, intermediate commit. Now menu's rectangle grows up to viewport borders. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 12 Apr 2020 21:43:42 +0200] rev 2923
SVGHMI: HMI:DropDown work in progress, intermediate commit. Now menu's rectangle grows up to viewport borders.

Thu, 09 Apr 2020 09:52:34 +0200SVGHMI: intermediate commit while working on dropdown widget. svghmi
Edouard Tisserant [Thu, 09 Apr 2020 09:52:34 +0200] rev 2922
SVGHMI: intermediate commit while working on dropdown widget.

Here is the plan :
HMI:DropDown : svg:g of svg:rect + svg:text
rect is extended to match content size, and if content size exceed page size, user can scroll
HMI:List : either HMI:List:ListName as svg:text, one tspan per list entry
or HMI:List:ListName:Foreach:HMI_CLASS:SUB/PATH/TO/VALUE@/ROOT/PATH as empty svg:g

Tue, 07 Apr 2020 10:01:23 +0200SVGHMI: HMI is not speculating on PLC variable update anymore when sending new variable value. svghmi
Edouard Tisserant [Tue, 07 Apr 2020 10:01:23 +0200] rev 2921
SVGHMI: HMI is not speculating on PLC variable update anymore when sending new variable value.

HMI variable cache in JS was changed in advance for more responsive behaviour when updating a HMI tree variable. This was leading to display value different from hmi tree variable in case the expected update did not happen because PLC program did revert it.

Sat, 04 Apr 2020 22:32:54 +0200SVGHMI: finished shift and capslock support n keypad widget. Added a helper in widgets_common to collect subelements likle active/inactive/disabled... svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 04 Apr 2020 22:32:54 +0200] rev 2920
SVGHMI: finished shift and capslock support n keypad widget. Added a helper in widgets_common to collect subelements likle active/inactive/disabled...

Sat, 04 Apr 2020 17:47:16 +0200SVGHMI: fixed keypad JS regarding shift/capslock and other details svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 04 Apr 2020 17:47:16 +0200] rev 2919
SVGHMI: fixed keypad JS regarding shift/capslock and other details

Sat, 04 Apr 2020 09:41:32 +0200Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 04 Apr 2020 09:41:32 +0200] rev 2918
Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04

Fri, 03 Apr 2020 14:37:41 +0200SVGHMI: Keypad working for HMI_STRING, still Shift/CapsLock not finished. svghmi
Edouard Tisserant [Fri, 03 Apr 2020 14:37:41 +0200] rev 2917
SVGHMI: Keypad working for HMI_STRING, still Shift/CapsLock not finished.

Fri, 03 Apr 2020 09:52:57 +0200SVGHMI: fix keyboard not showing svghmi
Edouard Tisserant [Fri, 03 Apr 2020 09:52:57 +0200] rev 2916
SVGHMI: fix keyboard not showing

Fri, 03 Apr 2020 08:30:00 +0200SVGHMI: Added keypads to svghmi test's SVG file svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Apr 2020 08:30:00 +0200] rev 2915
SVGHMI: Added keypads to svghmi test's SVG file

Fri, 03 Apr 2020 08:13:47 +0200merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Apr 2020 08:13:47 +0200] rev 2914
merge

Thu, 02 Apr 2020 15:18:15 +0200SVGHMI: Keypad: added code to re-attach keypad when starting edit. svghmi
Edouard Tisserant [Thu, 02 Apr 2020 15:18:15 +0200] rev 2913
SVGHMI: Keypad: added code to re-attach keypad when starting edit.

Thu, 02 Apr 2020 14:04:21 +0200SVGHMI: removed debug code svghmi
Edouard Tisserant [Thu, 02 Apr 2020 14:04:21 +0200] rev 2912
SVGHMI: removed debug code

Thu, 02 Apr 2020 14:03:38 +0200SVGHMI: More infrastructure for editing values with a keypad. svghmi
Edouard Tisserant [Thu, 02 Apr 2020 14:03:38 +0200] rev 2911
SVGHMI: More infrastructure for editing values with a keypad.

Thu, 02 Apr 2020 09:38:53 +0200SVGHMI: Widget input buttons should be clickable through svg:use (onclick attribute instead of addEventListener) svghmi
Edouard Tisserant [Thu, 02 Apr 2020 09:38:53 +0200] rev 2910
SVGHMI: Widget input buttons should be clickable through svg:use (onclick attribute instead of addEventListener)

Wed, 01 Apr 2020 18:10:45 +0200SVGHMI: moved dead code to where it belongs svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 01 Apr 2020 18:10:45 +0200] rev 2909
SVGHMI: moved dead code to where it belongs

Wed, 01 Apr 2020 14:42:50 +0200SVGHMI: empty widget_keypad.ysl2, WIP svghmi
Edouard Tisserant [Wed, 01 Apr 2020 14:42:50 +0200] rev 2908
SVGHMI: empty widget_keypad.ysl2, WIP

Tue, 31 Mar 2020 13:20:15 +0200SVGHMI: HMI:Switch now accepts boolean values 'true' and 'false' svghmi
Edouard Tisserant [Tue, 31 Mar 2020 13:20:15 +0200] rev 2907
SVGHMI: HMI:Switch now accepts boolean values 'true' and 'false'

Mon, 30 Mar 2020 14:26:42 +0200SVGHMI: Jump widget, if it has a 'disabled' labeled element, reflects value of the pointed HMITree variable by showing this element when value is False, and behaving normaly otherwise. svghmi
Edouard Tisserant [Mon, 30 Mar 2020 14:26:42 +0200] rev 2906
SVGHMI: Jump widget, if it has a 'disabled' labeled element, reflects value of the pointed HMITree variable by showing this element when value is False, and behaving normaly otherwise.

Mon, 30 Mar 2020 11:06:12 +0200SVGHMI: prevent man-made memory leak by limiting back button history items count to 42 svghmi
Edouard Tisserant [Mon, 30 Mar 2020 11:06:12 +0200] rev 2905
SVGHMI: prevent man-made memory leak by limiting back button history items count to 42

Sun, 29 Mar 2020 16:11:21 +0200SVGHMI: collect debug data through xslt reflectivity instead of yml2/python trick svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 29 Mar 2020 16:11:21 +0200] rev 2904
SVGHMI: collect debug data through xslt reflectivity instead of yml2/python trick

Fri, 27 Mar 2020 14:25:24 +0100SVGHMI: Jump widget can now display as active or inactive, if corresponfing "active" and "inactive labeled elements are provided. svghmi
Edouard Tisserant [Fri, 27 Mar 2020 14:25:24 +0100] rev 2903
SVGHMI: Jump widget can now display as active or inactive, if corresponfing "active" and "inactive labeled elements are provided.

Thu, 26 Mar 2020 14:21:52 +0100SVGHMI: added Back widget. svghmi
Edouard Tisserant [Thu, 26 Mar 2020 14:21:52 +0100] rev 2902
SVGHMI: added Back widget.

Thu, 26 Mar 2020 13:33:20 +0100SVGHMI: Jump widget now make errors if path given for relative jump doesn't match target page reference path class. svghmi
Edouard Tisserant [Thu, 26 Mar 2020 13:33:20 +0100] rev 2901
SVGHMI: Jump widget now make errors if path given for relative jump doesn't match target page reference path class.

Thu, 26 Mar 2020 11:17:34 +0100SVGHMI: Check that explicit relative page jump path is consistant with destination page reference path. svghmi
Edouard Tisserant [Thu, 26 Mar 2020 11:17:34 +0100] rev 2900
SVGHMI: Check that explicit relative page jump path is consistant with destination page reference path.

Wed, 25 Mar 2020 14:09:15 +0100SVGHMI: ForEach Widget now has a better wrap-around when scrolling : hit the boundary systematically before wrapping svghmi
Edouard Tisserant [Wed, 25 Mar 2020 14:09:15 +0100] rev 2899
SVGHMI: ForEach Widget now has a better wrap-around when scrolling : hit the boundary systematically before wrapping

Wed, 25 Mar 2020 13:56:04 +0100SVGHMI: Alow relative relative Jump. (i.e, relative jump from a foreach widget) svghmi
Edouard Tisserant [Wed, 25 Mar 2020 13:56:04 +0100] rev 2898
SVGHMI: Alow relative relative Jump. (i.e, relative jump from a foreach widget)

Wed, 25 Mar 2020 13:36:04 +0100SVGHMI: Generalize applying cache to widgets, be it from page or ForEach widgets. Now ForEach widget buttons work as expected. svghmi
Edouard Tisserant [Wed, 25 Mar 2020 13:36:04 +0100] rev 2897
SVGHMI: Generalize applying cache to widgets, be it from page or ForEach widgets. Now ForEach widget buttons work as expected.

Tue, 24 Mar 2020 23:07:54 +0100SVGHMI: Widget ForEach buttons now call corresponding methods. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 24 Mar 2020 23:07:54 +0100] rev 2896
SVGHMI: Widget ForEach buttons now call corresponding methods.

Tue, 24 Mar 2020 14:03:19 +0100SVGHMI: ForEach now has working (un)subscribe. Fixed PageSwitch that wasn't behaving when jumping to current page with another path. svghmi
Edouard Tisserant [Tue, 24 Mar 2020 14:03:19 +0100] rev 2895
SVGHMI: ForEach now has working (un)subscribe. Fixed PageSwitch that wasn't behaving when jumping to current page with another path.

Mon, 23 Mar 2020 21:44:28 +0100SVGHMI: Easier way to match HMI tree elements to paths. ForEach widget now looks for paths and indexes of all items, and enforce path to be consistent with ForEach items sub widgets svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 Mar 2020 21:44:28 +0100] rev 2894
SVGHMI: Easier way to match HMI tree elements to paths. ForEach widget now looks for paths and indexes of all items, and enforce path to be consistent with ForEach items sub widgets

Mon, 23 Mar 2020 15:13:36 +0100SVGHMI: added func:get_hmi_tree_elt to match HMI tree node from path. Continue implementing ForEach widget : force order and completeness of items list. Now also collecting ForEach buttons. svghmi
Edouard Tisserant [Mon, 23 Mar 2020 15:13:36 +0100] rev 2893
SVGHMI: added func:get_hmi_tree_elt to match HMI tree node from path. Continue implementing ForEach widget : force order and completeness of items list. Now also collecting ForEach buttons.

Mon, 23 Mar 2020 10:16:38 +0100SVGHMI: ForEach knows its own widgets svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 Mar 2020 10:16:38 +0100] rev 2892
SVGHMI: ForEach knows its own widgets

Fri, 20 Mar 2020 10:46:15 +0100SVGHMI: add widget_foreach.ysl2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 20 Mar 2020 10:46:15 +0100] rev 2891
SVGHMI: add widget_foreach.ysl2

Fri, 20 Mar 2020 10:00:59 +0100SVGHMI: make root HMI tree node a HMI_NODE, droped HMI_ROOT node type svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 20 Mar 2020 10:00:59 +0100] rev 2890
SVGHMI: make root HMI tree node a HMI_NODE, droped HMI_ROOT node type

Thu, 19 Mar 2020 19:23:56 +0100SVGHMI: reworked widget (un)subscription now a method of widgect object, allowing special subscription methods svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 19 Mar 2020 19:23:56 +0100] rev 2889
SVGHMI: reworked widget (un)subscription now a method of widgect object, allowing special subscription methods

Thu, 19 Mar 2020 11:32:20 +0100SVGHMI: Exclude (again) sub-widgets of forEach widget from page-switch managed widget. svghmi
Edouard Tisserant [Thu, 19 Mar 2020 11:32:20 +0100] rev 2888
SVGHMI: Exclude (again) sub-widgets of forEach widget from page-switch managed widget.

Thu, 19 Mar 2020 09:57:26 +0100SVGHMI: cosmetic changes svghmi
Edouard Tisserant [Thu, 19 Mar 2020 09:57:26 +0100] rev 2887
SVGHMI: cosmetic changes

Thu, 19 Mar 2020 09:31:07 +0100SVGHMI: Simplification and optimization. func:parselabel becomes a template. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 19 Mar 2020 09:31:07 +0100] rev 2886
SVGHMI: Simplification and optimization. func:parselabel becomes a template.

All labels are parsed into a global variable containing resulting widget
description as a node-set. func:widget(id) was added for random access to
widget description.

Wed, 18 Mar 2020 12:06:50 +0100SVGHMI: intermediate untested state. Excluded ForEach widget from pages handled widgets. svghmi
Edouard Tisserant [Wed, 18 Mar 2020 12:06:50 +0100] rev 2885
SVGHMI: intermediate untested state. Excluded ForEach widget from pages handled widgets.

Wed, 18 Mar 2020 09:37:26 +0100SVGHMI: update Makefile to pick all changes to any dependency svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Mar 2020 09:37:26 +0100] rev 2884
SVGHMI: update Makefile to pick all changes to any dependency

Wed, 18 Mar 2020 09:16:14 +0100SVGHMI: created widget_*.ysl2. Renamed widget_common in widgets_common, so that it doesn't match globing. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Mar 2020 09:16:14 +0100] rev 2883
SVGHMI: created widget_*.ysl2. Renamed widget_common in widgets_common, so that it doesn't match globing.

Tue, 17 Mar 2020 14:11:54 +0100SVGHMI: moving comments svghmi
Edouard Tisserant [Tue, 17 Mar 2020 14:11:54 +0100] rev 2882
SVGHMI: moving comments

Tue, 17 Mar 2020 14:01:37 +0100SVGHMI: added widget_common.ysl2 svghmi
Edouard Tisserant [Tue, 17 Mar 2020 14:01:37 +0100] rev 2881
SVGHMI: added widget_common.ysl2

Tue, 17 Mar 2020 13:43:19 +0100SVGHMI: More readable debug output gen code svghmi
Edouard Tisserant [Tue, 17 Mar 2020 13:43:19 +0100] rev 2880
SVGHMI: More readable debug output gen code

Tue, 17 Mar 2020 13:34:07 +0100SVGHMI: Cosmetic changes svghmi
Edouard Tisserant [Tue, 17 Mar 2020 13:34:07 +0100] rev 2879
SVGHMI: Cosmetic changes

Tue, 17 Mar 2020 13:16:01 +0100SVGHMI: added inline_svg.ysl2 svghmi
Edouard Tisserant [Tue, 17 Mar 2020 13:16:01 +0100] rev 2878
SVGHMI: added inline_svg.ysl2

Tue, 17 Mar 2020 11:24:07 +0100SVGHMI: detachable_elements.ysl2 becomes detachable_pages.ysl2, and includes logic to process pages elements. Other minor code moves. svghmi
Edouard Tisserant [Tue, 17 Mar 2020 11:24:07 +0100] rev 2877
SVGHMI: detachable_elements.ysl2 becomes detachable_pages.ysl2, and includes logic to process pages elements. Other minor code moves.

Tue, 17 Mar 2020 10:34:26 +0100SVGHMI: moved debug code svghmi
Edouard Tisserant [Tue, 17 Mar 2020 10:34:26 +0100] rev 2876
SVGHMI: moved debug code

Tue, 17 Mar 2020 09:29:04 +0100SVGHMI: created detachable_elements.ysl2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 Mar 2020 09:29:04 +0100] rev 2875
SVGHMI: created detachable_elements.ysl2

Tue, 17 Mar 2020 08:00:33 +0100SVGHMI: more debug code moved to hmi_tree.ysl2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 Mar 2020 08:00:33 +0100] rev 2874
SVGHMI: more debug code moved to hmi_tree.ysl2

Tue, 17 Mar 2020 07:39:50 +0100SVGHMI : create hmi_tree.ysl2, rename bbox_intersect.ysl2 into geometry.ysl2 and move more code into. Add per included ysl2 file debug output. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 Mar 2020 07:39:50 +0100] rev 2873
SVGHMI : create hmi_tree.ysl2, rename bbox_intersect.ysl2 into geometry.ysl2 and move more code into. Add per included ysl2 file debug output.

Mon, 16 Mar 2020 18:27:49 +0100SVGHMI: created bbox_intersect.ysl2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 16 Mar 2020 18:27:49 +0100] rev 2872
SVGHMI: created bbox_intersect.ysl2

Mon, 16 Mar 2020 17:09:23 +0100SVGHMI: Re-enable dispatch to arrays of functions in case of multiple suscription per widget. Still unused, but disabled for reasons not any more true. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 16 Mar 2020 17:09:23 +0100] rev 2871
SVGHMI: Re-enable dispatch to arrays of functions in case of multiple suscription per widget. Still unused, but disabled for reasons not any more true.

Fri, 13 Mar 2020 21:42:40 +0100SVGHMI: relative pages and page jumps svghmi
Edouard Tisserant [Fri, 13 Mar 2020 21:42:40 +0100] rev 2870
SVGHMI: relative pages and page jumps

Fri, 13 Mar 2020 10:36:13 +0100SVGHMI: take care of path given in HMI:Page and HMI:Jump, but do not apply subscription offset for now. Intermediate commit in a "working" state. svghmi
Edouard Tisserant [Fri, 13 Mar 2020 10:36:13 +0100] rev 2869
SVGHMI: take care of path given in HMI:Page and HMI:Jump, but do not apply subscription offset for now. Intermediate commit in a "working" state.

Thu, 12 Mar 2020 13:16:18 +0100SVGHMI: significant whitespace changes svghmi
Edouard Tisserant [Thu, 12 Mar 2020 13:16:18 +0100] rev 2868
SVGHMI: significant whitespace changes