Mon, 03 May 2021 00:04:08 +0200SVGHMI: Add analyse_widget stylesheet and python code to execute it, in order to obtain widget signature independently of DnD SVG file generation. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 May 2021 00:04:08 +0200] rev 3235
SVGHMI: Add analyse_widget stylesheet and python code to execute it, in order to obtain widget signature independently of DnD SVG file generation.

Sun, 02 May 2021 23:43:57 +0200SVGHMI: drop useless code from gen_dnd_widget.yslt2, renamed python callback to pass messages svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 02 May 2021 23:43:57 +0200] rev 3234
SVGHMI: drop useless code from gen_dnd_widget.yslt2, renamed python callback to pass messages

Sun, 02 May 2021 23:15:23 +0200SVGHMI: Added widget_desc to declare widget signature and description svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 02 May 2021 23:15:23 +0200] rev 3233
SVGHMI: Added widget_desc to declare widget signature and description

Sun, 02 May 2021 23:01:08 +0200SVGHMI: In order to allow widget signature and description to coexist in same ysl2 file, introduced widget_class, widget_defs to declare widget codegen templates and gen_index_xhtml to mark templates that are only usefull in gen_index_xhtml.xslt. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 02 May 2021 23:01:08 +0200] rev 3232
SVGHMI: In order to allow widget signature and description to coexist in same ysl2 file, introduced widget_class, widget_defs to declare widget codegen templates and gen_index_xhtml to mark templates that are only usefull in gen_index_xhtml.xslt.

Thu, 15 Apr 2021 09:15:23 +0200SVGHMI: keep track of order of selection in HMI tree, so that variable can be passed in same order to DnD widget svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 15 Apr 2021 09:15:23 +0200] rev 3231
SVGHMI: keep track of order of selection in HMI tree, so that variable can be passed in same order to DnD widget

Wed, 14 Apr 2021 09:21:18 +0200SVGHMI: fixed typo svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Apr 2021 09:21:18 +0200] rev 3230
SVGHMI: fixed typo

Tue, 13 Apr 2021 21:04:46 +0200SVGHMI: still quite naive path substitution whn prepearing widget for DnD, but now uses label generation. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Apr 2021 21:04:46 +0200] rev 3229
SVGHMI: still quite naive path substitution whn prepearing widget for DnD, but now uses label generation.

Multiple widget DnD and mutiple variable still make no sense because all path are replaced with same path, but atleast min/max value are preserved...

Tue, 13 Apr 2021 21:00:34 +0200SVGHMI: Added text box for tranformation feedback aside widget mignature svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Apr 2021 21:00:34 +0200] rev 3228
SVGHMI: Added text box for tranformation feedback aside widget mignature

Fri, 09 Apr 2021 09:47:06 +0200Merged default in SVGHMI svghmi
Edouard Tisserant [Fri, 09 Apr 2021 09:47:06 +0200] rev 3227
Merged default in SVGHMI

Tue, 06 Apr 2021 16:07:56 +0200SVGHMI: prototype of widget interface description using SVG's desc field, added to SVGHMI's internal svg widget library. svghmi
Edouard Tisserant [Tue, 06 Apr 2021 16:07:56 +0200] rev 3226
SVGHMI: prototype of widget interface description using SVG's desc field, added to SVGHMI's internal svg widget library.

Tue, 06 Apr 2021 16:05:58 +0200SVGHMI: Naive implementation of widget path substitution in widget DnD: considers widget always have only one variable, and no type checking. svghmi
Edouard Tisserant [Tue, 06 Apr 2021 16:05:58 +0200] rev 3225
SVGHMI: Naive implementation of widget path substitution in widget DnD: considers widget always have only one variable, and no type checking.

Tue, 06 Apr 2021 14:04:08 +0200SVGHMI: Widget transform before DnD now have HMI path as a parameter svghmi
Edouard Tisserant [Tue, 06 Apr 2021 14:04:08 +0200] rev 3224
SVGHMI: Widget transform before DnD now have HMI path as a parameter

Tue, 06 Apr 2021 11:47:07 +0200SVGHMI: Widget transform before DnD now should have HMI path as a parameter, but this path isn't computed for some reason... WIP. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 06 Apr 2021 11:47:07 +0200] rev 3223
SVGHMI: Widget transform before DnD now should have HMI path as a parameter, but this path isn't computed for some reason... WIP.

Mon, 05 Apr 2021 18:22:30 +0200SVGHMI: Widget DnD to Inkscape : Added source SVG widget label parsing and pass selecte HMI subtree to XSLT tranform, so that SVG containing multiple widgets can later be matched against hmi tree fragments, in order to DnD complex groups of widgets. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 05 Apr 2021 18:22:30 +0200] rev 3222
SVGHMI: Widget DnD to Inkscape : Added source SVG widget label parsing and pass selecte HMI subtree to XSLT tranform, so that SVG containing multiple widgets can later be matched against hmi tree fragments, in order to DnD complex groups of widgets.

Fri, 02 Apr 2021 21:16:18 +0200SVGHMI: Widget Library Picker now transforms SVG widget before allowing DnD. Transform is just identity forn now, but label parsing have already been included. To be continued. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 02 Apr 2021 21:16:18 +0200] rev 3221
SVGHMI: Widget Library Picker now transforms SVG widget before allowing DnD. Transform is just identity forn now, but label parsing have already been included. To be continued.

Thu, 01 Apr 2021 16:00:58 +0200SVGHMI: Ensure that when widgets are nested in HMI:Switch widget, their sub-elements are taken as switch's choice in case their label match the syntax. svghmi
Edouard Tisserant [Thu, 01 Apr 2021 16:00:58 +0200] rev 3220
SVGHMI: Ensure that when widgets are nested in HMI:Switch widget, their sub-elements are taken as switch's choice in case their label match the syntax.

Thu, 01 Apr 2021 15:57:06 +0200SVGHMI: Code cleanup for ToggleButton. svghmi
Edouard Tisserant [Thu, 01 Apr 2021 15:57:06 +0200] rev 3219
SVGHMI: Code cleanup for ToggleButton.

Thu, 01 Apr 2021 15:56:19 +0200SVGHMI: Fixed last i18n changes meant to allow checking changes in PO files. Was making build exception when no PO files available. svghmi
Edouard Tisserant [Thu, 01 Apr 2021 15:56:19 +0200] rev 3218
SVGHMI: Fixed last i18n changes meant to allow checking changes in PO files. Was making build exception when no PO files available.

Thu, 01 Apr 2021 15:51:24 +0200IDE: Add a shortcut to project "Clean" action : F9 svghmi
Edouard Tisserant [Thu, 01 Apr 2021 15:51:24 +0200] rev 3217
IDE: Add a shortcut to project "Clean" action : F9

Wed, 31 Mar 2021 15:30:07 +0200merge svghmi
Edouard Tisserant [Wed, 31 Mar 2021 15:30:07 +0200] rev 3216
merge

Wed, 31 Mar 2021 15:28:09 +0200SVGHMI: fixed embedded fonts family name not matching when using windows version of inkscape svghmi
Edouard Tisserant [Wed, 31 Mar 2021 15:28:09 +0200] rev 3215
SVGHMI: fixed embedded fonts family name not matching when using windows version of inkscape

Wed, 31 Mar 2021 09:08:15 +0200SVGHMI: force svghmi build if any change in fonts or translation (.PO) files svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 31 Mar 2021 09:08:15 +0200] rev 3214
SVGHMI: force svghmi build if any change in fonts or translation (.PO) files

Wed, 31 Mar 2021 08:25:18 +0200SVGHMI: Add file type drag'n'drop to widget picker, for now drops widget's original SVG. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 31 Mar 2021 08:25:18 +0200] rev 3213
SVGHMI: Add file type drag'n'drop to widget picker, for now drops widget's original SVG.

Tue, 30 Mar 2021 14:56:04 +0200SVGHMI: silence debug output in generated xhtml. svghmi
Edouard Tisserant [Tue, 30 Mar 2021 14:56:04 +0200] rev 3212
SVGHMI: silence debug output in generated xhtml.

Tue, 30 Mar 2021 14:54:43 +0200SVGHMI: Implemented "Add Font" and "Remove Font", add font embedding in CSS at build time, tested ok with some OTF for now. svghmi
Edouard Tisserant [Tue, 30 Mar 2021 14:54:43 +0200] rev 3211
SVGHMI: Implemented "Add Font" and "Remove Font", add font embedding in CSS at build time, tested ok with some OTF for now.

Tue, 30 Mar 2021 10:05:55 +0200SVGHMI: Add font management buttons and icons, doing nothing for now svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 30 Mar 2021 10:05:55 +0200] rev 3210
SVGHMI: Add font management buttons and icons, doing nothing for now

Mon, 29 Mar 2021 15:46:02 +0200Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows. svghmi
Edouard Tisserant [Mon, 29 Mar 2021 15:46:02 +0200] rev 3209
Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows.

Mon, 29 Mar 2021 14:35:45 +0200SVGHMI: Fix update of HMI tree in UI when loading from XML at start. Removed some dead code left after split of svghmi.py into svghmi.py+ui.py. svghmi
Edouard Tisserant [Mon, 29 Mar 2021 14:35:45 +0200] rev 3208
SVGHMI: Fix update of HMI tree in UI when loading from XML at start. Removed some dead code left after split of svghmi.py into svghmi.py+ui.py.

Mon, 29 Mar 2021 10:26:42 +0200merge svghmi
Edouard Tisserant [Mon, 29 Mar 2021 10:26:42 +0200] rev 3207
merge

Mon, 29 Mar 2021 10:26:21 +0200SVGHMI: added "page_node" variable that reflects the HMI tree path of current relative page svghmi
Edouard Tisserant [Mon, 29 Mar 2021 10:26:21 +0200] rev 3206
SVGHMI: added "page_node" variable that reflects the HMI tree path of current relative page

Fri, 26 Mar 2021 14:53:35 +0100SVGHMI: Add list of HMI tree path in a JS array, so that we can use it for multiple purpose : svghmi
Edouard Tisserant [Fri, 26 Mar 2021 14:53:35 +0100] rev 3205
SVGHMI: Add list of HMI tree path in a JS array, so that we can use it for multiple purpose :
- display name of edited variable in keypads (currently wrong in relative pages)
- have some variable that hold basename of current relative page HMI_NODE's path
- propose some list of names in DropDown when selecting a relative page to jump to, without having to instancite many jump widgets.

Fri, 26 Mar 2021 14:46:38 +0100SVGHMI: Fixed wierd CDATA mess in output xhtml, because of backticks copy pasted in some yml ||text block|| svghmi
Edouard Tisserant [Fri, 26 Mar 2021 14:46:38 +0100] rev 3204
SVGHMI: Fixed wierd CDATA mess in output xhtml, because of backticks copy pasted in some yml ||text block||

Mon, 29 Mar 2021 07:11:45 +0200SVGHMI: Added fonts.py with functions to convert ttf, otf and woff fonts into data_uri based CSS font-face svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 29 Mar 2021 07:11:45 +0200] rev 3203
SVGHMI: Added fonts.py with functions to convert ttf, otf and woff fonts into data_uri based CSS font-face

Thu, 25 Mar 2021 13:08:19 +0100merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 25 Mar 2021 13:08:19 +0100] rev 3202
merge

Thu, 25 Mar 2021 13:07:52 +0100SVGHMI: split svghmi.py into svghmi.py (Config Tree Node + code gen) and ui.py (UI for HMI tree and Widget picking) svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 25 Mar 2021 13:07:52 +0100] rev 3201
SVGHMI: split svghmi.py into svghmi.py (Config Tree Node + code gen) and ui.py (UI for HMI tree and Widget picking)

Thu, 25 Mar 2021 10:48:24 +0100SVGHMI: stop serving HMI open wide on all interfaces. That was a security hole. It is user/developer responsibity to forward connection with for exemple stunnel and make it securely accessible from LAN. svghmi
Edouard Tisserant [Thu, 25 Mar 2021 10:48:24 +0100] rev 3200
SVGHMI: stop serving HMI open wide on all interfaces. That was a security hole. It is user/developer responsibity to forward connection with for exemple stunnel and make it securely accessible from LAN.

Thu, 25 Mar 2021 10:13:12 +0100SVGHMI: Filter unseen geometry from inkscape CSV output. svghmi
Edouard Tisserant [Thu, 25 Mar 2021 10:13:12 +0100] rev 3199
SVGHMI: Filter unseen geometry from inkscape CSV output.

When inkscape exports geometry form all objects, then it also includes objects from svg:defs. This makes problems when deciding if an object is part of a page, since coordinate of objects in svg:defs can eventualy be contained in a page. In the end, those objects where getting detached when leaving pages where they where found, leading for exemple to non working text on clipping when the clipped text was cloned in multiple page.

Tue, 23 Mar 2021 14:09:55 +0100SVGHMI: Fix typo in error message formating in i18n. svghmi
Edouard Tisserant [Tue, 23 Mar 2021 14:09:55 +0100] rev 3198
SVGHMI: Fix typo in error message formating in i18n.

Wed, 24 Mar 2021 05:34:46 +0100SVGHMI: split svghmi.py into hmi_tree.py + svghmi.py svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 24 Mar 2021 05:34:46 +0100] rev 3197
SVGHMI: split svghmi.py into hmi_tree.py + svghmi.py

Tue, 23 Mar 2021 05:15:19 +0100Merged svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Mar 2021 05:15:19 +0100] rev 3196
Merged

Thu, 18 Mar 2021 14:32:21 +0100SVGHMI: JsonTable: Fixed options not being passed in JSON post when jumping to a page where additional variables are pre-defined by a HMI:VarInit. svghmi
Edouard Tisserant [Thu, 18 Mar 2021 14:32:21 +0100] rev 3195
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.

Tue, 23 Mar 2021 05:13:18 +0100SVGHMI: Added small widget library for library browser testing. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Mar 2021 05:13:18 +0100] rev 3194
SVGHMI: Added small widget library for library browser testing.

Tue, 23 Mar 2021 05:11:23 +0100SVGHMI: Added SVG widget library browser. Supports browsing and previewing widgets. Widget validation and drag'n'drop are still to be implemented. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Mar 2021 05:11:23 +0100] rev 3193
SVGHMI: Added SVG widget library browser. Supports browsing and previewing widgets. Widget validation and drag'n'drop are still to be implemented.

Tue, 23 Mar 2021 05:08:51 +0100Allow using spin() from ProcessLogger even with no logger given. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Mar 2021 05:08:51 +0100] rev 3192
Allow using spin() from ProcessLogger even with no logger given.

Wed, 17 Mar 2021 11:07:29 +0100merged svghmi
Edouard Tisserant [Wed, 17 Mar 2021 11:07:29 +0100] rev 3191
merged

Tue, 16 Mar 2021 14:19:22 +0100SVGHMI: cosmetic change, missing semicolon svghmi
Edouard Tisserant [Tue, 16 Mar 2021 14:19:22 +0100] rev 3190
SVGHMI: cosmetic change, missing semicolon

Tue, 16 Mar 2021 14:18:39 +0100SVGHMI: JsonTable should refresh when re-subscibing, because data might have changed while not on the page we are switching to. svghmi
Edouard Tisserant [Tue, 16 Mar 2021 14:18:39 +0100] rev 3189
SVGHMI: JsonTable should refresh when re-subscibing, because data might have changed while not on the page we are switching to.

Mon, 15 Mar 2021 11:25:24 +0100SVGHMI: Fixed problems happening when value is higher than maximum or lower than minimum in Input widget. "max" and "min" string was getting into keypad text field, was not diplayed systematically, and was staying forever sometime. svghmi
Edouard Tisserant [Mon, 15 Mar 2021 11:25:24 +0100] rev 3188
SVGHMI: Fixed problems happening when value is higher than maximum or lower than minimum in Input widget. "max" and "min" string was getting into keypad text field, was not diplayed systematically, and was staying forever sometime.

Fri, 12 Mar 2021 15:12:38 +0100SVGHMI: change default values for JsonTable, leading to scrollbar initialized at annoying non-zero position svghmi
Edouard Tisserant [Fri, 12 Mar 2021 15:12:38 +0100] rev 3187
SVGHMI: change default values for JsonTable, leading to scrollbar initialized at annoying non-zero position

Thu, 11 Mar 2021 20:46:05 +0100SVGHMI: Ensure that when a HMI:List is refered, none of its refered elements are discarded. svghmi
Edouard Tisserant [Thu, 11 Mar 2021 20:46:05 +0100] rev 3186
SVGHMI: Ensure that when a HMI:List is refered, none of its refered elements are discarded.

Thu, 11 Mar 2021 10:35:23 +0100Backed out changeset b2ba6eeb61ec. Users reported text styling being messed in some cases. svghmi
Edouard Tisserant [Thu, 11 Mar 2021 10:35:23 +0100] rev 3185
Backed out changeset b2ba6eeb61ec. Users reported text styling being messed in some cases.

Thu, 11 Mar 2021 09:13:51 +0100merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 11 Mar 2021 09:13:51 +0100] rev 3184
merge

Wed, 10 Mar 2021 10:01:05 +0100merge svghmi
Edouard Tisserant [Wed, 10 Mar 2021 10:01:05 +0100] rev 3183
merge

Wed, 10 Mar 2021 09:59:18 +0100Runtime: Added PostStart methot to PLCObject, called after PLC is started, with all libraries and python object already created, and python extensions "Start" methods being called. svghmi
Edouard Tisserant [Wed, 10 Mar 2021 09:59:18 +0100] rev 3182
Runtime: Added PostStart methot to PLCObject, called after PLC is started, with all libraries and python object already created, and python extensions "Start" methods being called.
This is called before python thread processing py_eval blocks starts. Example purpose: attach additional ressource to web services

Wed, 10 Mar 2021 19:29:49 +0100SVGHMI: Add generic action buttons to JSON table, with an example in tests/svghmi: wipe alar list. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 10 Mar 2021 19:29:49 +0100] rev 3181
SVGHMI: Add generic action buttons to JSON table, with an example in tests/svghmi: wipe alar list.

Wed, 10 Mar 2021 19:27:41 +0100SVGHMI: do not do XSLT transform if both SVGHMI and HMI Tree didn't change since last build svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 10 Mar 2021 19:27:41 +0100] rev 3180
SVGHMI: do not do XSLT transform if both SVGHMI and HMI Tree didn't change since last build

Fri, 05 Mar 2021 09:36:22 +0100Merged svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 05 Mar 2021 09:36:22 +0100] rev 3179
Merged

Wed, 03 Mar 2021 11:45:13 +0100SVGHMI: Make ScrollBar's variables order match JsonTable's variables order to avoid confusion svghmi
Edouard Tisserant [Wed, 03 Mar 2021 11:45:13 +0100] rev 3178
SVGHMI: Make ScrollBar's variables order match JsonTable's variables order to avoid confusion

Fri, 05 Mar 2021 09:24:45 +0100SVGHMI: Lighter display of HMI Tree, no more icons and use buttons. Auto expand root. Fix loading of HMI tree XML backup (hmiclass attribute wasn't kept). svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 05 Mar 2021 09:24:45 +0100] rev 3177
SVGHMI: Lighter display of HMI Tree, no more icons and use buttons. Auto expand root. Fix loading of HMI tree XML backup (hmiclass attribute wasn't kept).

Fri, 05 Mar 2021 00:02:52 +0100SVGHMI: Systematically save HMI Tree in build directory as hmitree.xml when building, so that HMI Tree can be displayed when re-opening project, without having to build svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 05 Mar 2021 00:02:52 +0100] rev 3176
SVGHMI: Systematically save HMI Tree in build directory as hmitree.xml when building, so that HMI Tree can be displayed when re-opening project, without having to build

Tue, 02 Mar 2021 17:30:13 +0100SVGHMI: attempt to prevent crazy styling with HMI:TextStyleList when inkscape store style in tspan instead of text element. svghmi
Edouard Tisserant [Tue, 02 Mar 2021 17:30:13 +0100] rev 3175
SVGHMI: attempt to prevent crazy styling with HMI:TextStyleList when inkscape store style in tspan instead of text element.

Tue, 02 Mar 2021 10:11:45 +0100IDE: Fix logging of external process execution time so that it is visible on windows as well. svghmi
Edouard Tisserant [Tue, 02 Mar 2021 10:11:45 +0100] rev 3174
IDE: Fix logging of external process execution time so that it is visible on windows as well.

Tue, 02 Mar 2021 09:42:50 +0100IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:42:50 +0100] rev 3173
IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes.

Tue, 02 Mar 2021 09:28:44 +0100IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:28:44 +0100] rev 3172
IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c.