Wed, 16 Jun 2021 12:15:02 +0200 Edouard Tisserant IDE: Fixed variable traces graphs RingBuffers. Removed an apparently useless wxCallAfter in trend graph that was leading to pydeadobject exception on wxGTK when double-clicking. svghmi
Mon, 14 Jun 2021 16:48:39 +0200 Edouard Tisserant IDE: Cleaned up some useless tests in variable trace data handling code, changed from bare numpy arrays to RingBuffers inorder to avoid RAM outage and crash after long tracing session. svghmi
Fri, 11 Jun 2021 11:56:07 +0200 Edouard Tisserant IDE: Log: Prevent crash when display progress on empty log. svghmi
Thu, 10 Jun 2021 14:05:44 +0200 Edouard Tisserant merge svghmi
Thu, 10 Jun 2021 09:40:05 +0200 Edouard Tisserant Copy description when DnD variables from CodeFile CTN to POUs svghmi
Wed, 09 Jun 2021 15:28:00 +0200 Edouard Tisserant SVGHMI: fix exception when stored widget library path does not exist anymore svghmi
Thu, 10 Jun 2021 13:47:58 +0200 Edouard Tisserant SVGHMI: added checking of widget literal argument in DnD UI according to type given in widget description svghmi
Wed, 09 Jun 2021 10:06:23 +0200 Edouard Tisserant SVGHMI: UI Updates validity indicator when DnD HMI tree node in text field, according to node type svghmi
Mon, 31 May 2021 16:06:00 +0200 Edouard Tisserant SVGHMI: Fixed typo in last commit svghmi
Mon, 31 May 2021 10:10:00 +0200 Edouard Tisserant merged svghmi
Tue, 25 May 2021 15:05:38 +0200 Edouard Tisserant Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting. svghmi
Mon, 31 May 2021 10:08:02 +0200 Edouard Tisserant SVGHMI: UI now have multiple HMI tree variables DnD to widget paths. Still no type checking, WIP. svghmi
Mon, 24 May 2021 14:33:54 +0200 Edouard Tisserant Finished fixing Wx IDs abuse. There was still some wasted IDs because of wx.NewId calls in many places where it wasn't needed, and those IDs were not re-used. As a consequence Beremiz was making exception crashing after a few hours of intensive use. svghmi
Thu, 20 May 2021 12:16:51 +0200 Edouard Tisserant SVGHMI: DnD UI : changed layout again, moved description in a vertical splitter, added scrollbar for preview and signature, fixed flickering description svghmi
Wed, 19 May 2021 18:54:35 +0200 Edouard Tisserant SVGHMI: UI: Swap widget selection tree and preview panel svghmi
Wed, 19 May 2021 15:29:18 +0200 Edouard Tisserant SVGHMI: WIP: Widget Library UI: Reworking widget selection and binding. svghmi
Tue, 18 May 2021 09:28:44 +0200 Edouard Tisserant Merged SVGHMI branches svghmi
Tue, 18 May 2021 09:22:17 +0200 Edouard Tisserant SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis svghmi
Mon, 17 May 2021 08:52:38 +0200 Edouard Tisserant SVGHMI: Fix behaviour of Jump widget, that wasn't displaying "disabled" state in some cases. svghmi
Wed, 12 May 2021 11:38:00 +0200 Edouard Tisserant merged default in svghmi svghmi
Mon, 03 May 2021 00:14:38 +0200 Edouard Tisserant SVGHMI: updating generated XSLT svghmi
Mon, 03 May 2021 00:14:11 +0200 Edouard Tisserant SVGHMI: Intermediate state while updating UI, preparing for displaying widget description and multiple variables selections svghmi
Mon, 03 May 2021 00:06:03 +0200 Edouard Tisserant SVGHMI: Extend widget labels parsing to allow expressing widget's accepted types in labels svghmi
Mon, 03 May 2021 00:04:08 +0200 Edouard Tisserant SVGHMI: Add analyse_widget stylesheet and python code to execute it, in order to obtain widget signature independently of DnD SVG file generation. svghmi
Sun, 02 May 2021 23:43:57 +0200 Edouard Tisserant SVGHMI: drop useless code from gen_dnd_widget.yslt2, renamed python callback to pass messages svghmi
Sun, 02 May 2021 23:15:23 +0200 Edouard Tisserant SVGHMI: Added widget_desc to declare widget signature and description svghmi
Sun, 02 May 2021 23:01:08 +0200 Edouard Tisserant 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. svghmi
Thu, 15 Apr 2021 09:15:23 +0200 Edouard Tisserant SVGHMI: keep track of order of selection in HMI tree, so that variable can be passed in same order to DnD widget svghmi
Wed, 14 Apr 2021 09:21:18 +0200 Edouard Tisserant SVGHMI: fixed typo svghmi
Tue, 13 Apr 2021 21:04:46 +0200 Edouard Tisserant SVGHMI: still quite naive path substitution whn prepearing widget for DnD, but now uses label generation. svghmi
Tue, 13 Apr 2021 21:00:34 +0200 Edouard Tisserant SVGHMI: Added text box for tranformation feedback aside widget mignature svghmi
Fri, 09 Apr 2021 09:47:06 +0200 Edouard Tisserant Merged default in SVGHMI svghmi
Tue, 06 Apr 2021 16:07:56 +0200 Edouard Tisserant SVGHMI: prototype of widget interface description using SVG's desc field, added to SVGHMI's internal svg widget library. svghmi
Tue, 06 Apr 2021 16:05:58 +0200 Edouard Tisserant SVGHMI: Naive implementation of widget path substitution in widget DnD: considers widget always have only one variable, and no type checking. svghmi
Tue, 06 Apr 2021 14:04:08 +0200 Edouard Tisserant SVGHMI: Widget transform before DnD now have HMI path as a parameter svghmi
Tue, 06 Apr 2021 11:47:07 +0200 Edouard Tisserant SVGHMI: Widget transform before DnD now should have HMI path as a parameter, but this path isn't computed for some reason... WIP. svghmi
Mon, 05 Apr 2021 18:22:30 +0200 Edouard Tisserant 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. svghmi
Fri, 02 Apr 2021 21:16:18 +0200 Edouard Tisserant 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. svghmi
Thu, 01 Apr 2021 16:00:58 +0200 Edouard Tisserant 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. svghmi
Thu, 01 Apr 2021 15:57:06 +0200 Edouard Tisserant SVGHMI: Code cleanup for ToggleButton. svghmi
Thu, 01 Apr 2021 15:56:19 +0200 Edouard Tisserant SVGHMI: Fixed last i18n changes meant to allow checking changes in PO files. Was making build exception when no PO files available. svghmi
Thu, 01 Apr 2021 15:51:24 +0200 Edouard Tisserant IDE: Add a shortcut to project "Clean" action : F9 svghmi
Wed, 31 Mar 2021 15:30:07 +0200 Edouard Tisserant merge svghmi
Wed, 31 Mar 2021 15:28:09 +0200 Edouard Tisserant SVGHMI: fixed embedded fonts family name not matching when using windows version of inkscape svghmi
Wed, 31 Mar 2021 09:08:15 +0200 Edouard Tisserant SVGHMI: force svghmi build if any change in fonts or translation (.PO) files svghmi
Wed, 31 Mar 2021 08:25:18 +0200 Edouard Tisserant SVGHMI: Add file type drag'n'drop to widget picker, for now drops widget's original SVG. svghmi
Tue, 30 Mar 2021 14:56:04 +0200 Edouard Tisserant SVGHMI: silence debug output in generated xhtml. svghmi
Tue, 30 Mar 2021 14:54:43 +0200 Edouard Tisserant SVGHMI: Implemented "Add Font" and "Remove Font", add font embedding in CSS at build time, tested ok with some OTF for now. svghmi
Tue, 30 Mar 2021 10:05:55 +0200 Edouard Tisserant SVGHMI: Add font management buttons and icons, doing nothing for now svghmi
Mon, 29 Mar 2021 15:46:02 +0200 Edouard Tisserant Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows. svghmi
Mon, 29 Mar 2021 14:35:45 +0200 Edouard Tisserant 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. svghmi
Mon, 29 Mar 2021 10:26:42 +0200 Edouard Tisserant merge svghmi
Mon, 29 Mar 2021 10:26:21 +0200 Edouard Tisserant SVGHMI: added "page_node" variable that reflects the HMI tree path of current relative page svghmi
Fri, 26 Mar 2021 14:53:35 +0100 Edouard Tisserant SVGHMI: Add list of HMI tree path in a JS array, so that we can use it for multiple purpose : svghmi
Fri, 26 Mar 2021 14:46:38 +0100 Edouard Tisserant SVGHMI: Fixed wierd CDATA mess in output xhtml, because of backticks copy pasted in some yml ||text block|| svghmi
Mon, 29 Mar 2021 07:11:45 +0200 Edouard Tisserant SVGHMI: Added fonts.py with functions to convert ttf, otf and woff fonts into data_uri based CSS font-face svghmi
Thu, 25 Mar 2021 13:08:19 +0100 Edouard Tisserant merge svghmi
Thu, 25 Mar 2021 13:07:52 +0100 Edouard Tisserant SVGHMI: split svghmi.py into svghmi.py (Config Tree Node + code gen) and ui.py (UI for HMI tree and Widget picking) svghmi
Thu, 25 Mar 2021 10:48:24 +0100 Edouard Tisserant 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. svghmi
Thu, 25 Mar 2021 10:13:12 +0100 Edouard Tisserant SVGHMI: Filter unseen geometry from inkscape CSV output. svghmi
Tue, 23 Mar 2021 14:09:55 +0100 Edouard Tisserant SVGHMI: Fix typo in error message formating in i18n. svghmi
Wed, 24 Mar 2021 05:34:46 +0100 Edouard Tisserant SVGHMI: split svghmi.py into hmi_tree.py + svghmi.py svghmi
Tue, 23 Mar 2021 05:15:19 +0100 Edouard Tisserant Merged svghmi
Thu, 18 Mar 2021 14:32:21 +0100 Edouard Tisserant 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. svghmi
Tue, 23 Mar 2021 05:13:18 +0100 Edouard Tisserant SVGHMI: Added small widget library for library browser testing. svghmi
Tue, 23 Mar 2021 05:11:23 +0100 Edouard Tisserant SVGHMI: Added SVG widget library browser. Supports browsing and previewing widgets. Widget validation and drag'n'drop are still to be implemented. svghmi
Tue, 23 Mar 2021 05:08:51 +0100 Edouard Tisserant Allow using spin() from ProcessLogger even with no logger given. svghmi
Wed, 17 Mar 2021 11:07:29 +0100 Edouard Tisserant merged svghmi
Tue, 16 Mar 2021 14:19:22 +0100 Edouard Tisserant SVGHMI: cosmetic change, missing semicolon svghmi
Tue, 16 Mar 2021 14:18:39 +0100 Edouard Tisserant SVGHMI: JsonTable should refresh when re-subscibing, because data might have changed while not on the page we are switching to. svghmi
Mon, 15 Mar 2021 11:25:24 +0100 Edouard Tisserant 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. svghmi
Fri, 12 Mar 2021 15:12:38 +0100 Edouard Tisserant SVGHMI: change default values for JsonTable, leading to scrollbar initialized at annoying non-zero position svghmi
Thu, 11 Mar 2021 20:46:05 +0100 Edouard Tisserant SVGHMI: Ensure that when a HMI:List is refered, none of its refered elements are discarded. svghmi
Thu, 11 Mar 2021 10:35:23 +0100 Edouard Tisserant Backed out changeset b2ba6eeb61ec. Users reported text styling being messed in some cases. svghmi
Thu, 11 Mar 2021 09:13:51 +0100 Edouard Tisserant merge svghmi
Wed, 10 Mar 2021 10:01:05 +0100 Edouard Tisserant merge svghmi
Wed, 10 Mar 2021 09:59:18 +0100 Edouard Tisserant 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. svghmi
Wed, 10 Mar 2021 19:29:49 +0100 Edouard Tisserant SVGHMI: Add generic action buttons to JSON table, with an example in tests/svghmi: wipe alar list. svghmi
Wed, 10 Mar 2021 19:27:41 +0100 Edouard Tisserant SVGHMI: do not do XSLT transform if both SVGHMI and HMI Tree didn't change since last build svghmi
Fri, 05 Mar 2021 09:36:22 +0100 Edouard Tisserant Merged svghmi
Wed, 03 Mar 2021 11:45:13 +0100 Edouard Tisserant SVGHMI: Make ScrollBar's variables order match JsonTable's variables order to avoid confusion svghmi
Fri, 05 Mar 2021 09:24:45 +0100 Edouard Tisserant 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). svghmi
Fri, 05 Mar 2021 00:02:52 +0100 Edouard Tisserant 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 svghmi
Tue, 02 Mar 2021 17:30:13 +0100 Edouard Tisserant SVGHMI: attempt to prevent crazy styling with HMI:TextStyleList when inkscape store style in tspan instead of text element. svghmi
Tue, 02 Mar 2021 10:11:45 +0100 Edouard Tisserant IDE: Fix logging of external process execution time so that it is visible on windows as well. svghmi
Tue, 02 Mar 2021 09:42:50 +0100 Edouard Tisserant IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes. svghmi
Tue, 02 Mar 2021 09:28:44 +0100 Edouard Tisserant IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c. svghmi
Tue, 02 Mar 2021 09:25:55 +0100 Edouard Tisserant IDE: Log: Cosmetic changes, refactoring svghmi
Mon, 01 Mar 2021 15:46:23 +0100 Edouard Tisserant SVGHMI: Make build log less redundant, and refactor progress information code a bit, to make it also a bit less redundant. svghmi
Mon, 01 Mar 2021 15:45:13 +0100 Edouard Tisserant IDE: Make ST code generation more verbose, since it can be really long in case of big programs, and it is better to let the user know build is still in progress. svghmi
Mon, 01 Mar 2021 10:03:50 +0100 Edouard Tisserant merged svghmi
Fri, 26 Feb 2021 11:08:51 +0100 Edouard Tisserant SVGHMI: Fixed progress time computation svghmi
Sun, 28 Feb 2021 21:45:10 +0100 Edouard Tisserant IDE: Fixed log console that was not updating line by line smoothly when building. svghmi
Fri, 26 Feb 2021 10:00:14 +0100 Edouard Tisserant SVGHMI: Optimized overlapping geometry (widget ot page belonging) computation. Added human readable messages for progress. Includes updated XSLT. svghmi
Thu, 25 Feb 2021 11:22:10 +0100 Edouard Tisserant merged svghmi
Wed, 24 Feb 2021 09:37:00 +0100 Edouard Tisserant Merge changes from default into svghmi branch svghmi
Wed, 24 Feb 2021 15:36:37 +0100 Edouard Tisserant SVGHMI: More build time optimization : def_by_label now takes far less time. svghmi
Tue, 23 Feb 2021 10:07:21 +0100 Edouard Tisserant SVGHMI: Optimize sumarized_elements xslt function, taking most of SVGHMI build time. svghmi
Mon, 22 Feb 2021 10:09:57 +0100 Edouard Tisserant Merge svghmi
Fri, 19 Feb 2021 14:56:14 +0100 Edouard Tisserant SVGHMI: Add icons svghmi
Fri, 19 Feb 2021 12:03:42 +0100 Edouard Tisserant SVGHMI: Fixed/extended error message when failing to launch POEdit. svghmi
Fri, 19 Feb 2021 12:02:49 +0100 Edouard Tisserant SVGHMI: Fix launch of POEdit on widows. Parsing oommand in registry based on heuristic was bad, now using regex should be safer. TODO : replicate for Inkscape launch. svghmi
Mon, 22 Feb 2021 10:08:36 +0100 Edouard Tisserant SVGHMI: display progress in IDE console while building svghmi
Sun, 21 Feb 2021 21:38:44 +0100 Edouard Tisserant SVGHMI: finally found why HMI:Input wasnt't initializing properly: vsprintf takes a list. Also, removed intermediate variable last_val, since edit_value() works on strings anyhow, and in case of formated floats, it is better to workl on already formated value. svghmi
Fri, 19 Feb 2021 10:04:36 +0100 Edouard Tisserant SVGHMI: update generated XSLT svghmi
Fri, 19 Feb 2021 10:04:17 +0100 Edouard Tisserant Allow printf-like formating in HMI:Input, usefull for example when dealing with floating point numbers. svghmi
Fri, 19 Feb 2021 10:03:00 +0100 Edouard Tisserant SVGHMI: Switch from {object} to Map for "updates" global, for performance but also preventing wierd behaviour when iterating svghmi
Thu, 18 Feb 2021 12:02:28 +0100 Edouard Tisserant SVGHMI: Fixed HMI:ScrollBar to exclude cursor size from accessible range ( position is now 0->range-size instead of 0->range ). Fixed and extended tests/svghmi to have working ScrollBar on two alarm pages. Includes generated XSLT update. svghmi
Thu, 18 Feb 2021 10:43:10 +0100 Edouard Tisserant SVGHMI: JsonTable removed useless promise since fetch() already does one. Updated generated XSLT. svghmi
Thu, 18 Feb 2021 05:39:46 +0100 Edouard Tisserant SVGHMI: Optimization for JsonTable : reload JSON only when necessary, and avoid concurrent http requests. svghmi
Tue, 16 Feb 2021 11:47:52 +0100 Edouard Tisserant merge svghmi
Tue, 16 Feb 2021 11:35:56 +0100 Edouard Tisserant SVGHMI: update generated XSLT svghmi
Tue, 16 Feb 2021 11:32:37 +0100 Edouard Tisserant SVGHMI: little fix ihn i18n example. svghmi
Tue, 16 Feb 2021 11:32:00 +0100 Edouard Tisserant SVGHMI: Fixed sending HMI_REAL to PLC. Added a svghmi_real test that illustrates using printf style formating in HMI:Display to control precision of Float number display. svghmi
Tue, 16 Feb 2021 09:38:28 +0100 Edouard Tisserant SVGHMI: i18n: ensure langs always appea in same order, and add two variables that are updated automatically when selecting a new language : lang_name and lang_code. Also fixed i18n startup, prevent wrong lang numer to crash loading. svghmi
Mon, 15 Feb 2021 15:46:47 +0100 Edouard Tisserant SVGHMI: more straightforward implementation of dragging position computation in Scrollbar + some little fix about boundaries. svghmi
Sun, 14 Feb 2021 19:15:20 +0100 Edouard Tisserant SVGHMI: allow i18n of formated strings of HMI:Messages. This was by construction impossible since formating was given as an argument. Now added optional "format" labelled element in HMI:Display, so that it can be translated, when labelled "_format". svghmi
Sun, 14 Feb 2021 05:30:29 +0100 Edouard Tisserant SVGHMI: update generated XSLT svghmi
Sun, 14 Feb 2021 05:29:51 +0100 Edouard Tisserant SVGHMI: i18n: prevent creating messages.pot if no translation svghmi
Sun, 14 Feb 2021 05:22:30 +0100 Edouard Tisserant SVGHMI: Add inhibition to widget's apply_hmi_value() so that it does not change variable more frquently than given widget's frequency. This prevents flooding network with many update if browser is producing events at high rate, as for exemple when dragging ScrollBar's cursor. svghmi
Sun, 14 Feb 2021 05:17:25 +0100 Edouard Tisserant SVGHMI: fix scrollbar not behaving when rotated. svghmi
Sun, 14 Feb 2021 05:15:13 +0100 Edouard Tisserant SVGHMI: remove forgotten debug code svghmi
Fri, 12 Feb 2021 22:00:07 +0100 Edouard Tisserant SVGHMI: Add a robust ScrollBar widget. HMI:ScrollBar@positionrange@size svghmi
Fri, 12 Feb 2021 21:58:03 +0100 Edouard Tisserant SVGHMI: propagate default local variables (HMI_LOCAL, PAGE_LOCAL) to widgets at startup svghmi
Tue, 09 Feb 2021 17:10:08 +0100 Edouard Tisserant SVGHMI: Update generated XSLT svghmi
Tue, 09 Feb 2021 17:09:08 +0100 Edouard Tisserant SVGHMI: HMI:DropDown:#langs@lang now automatically shows human readable list of languages. tests/svghmi_i18n updated accordingly. svghmi
Tue, 09 Feb 2021 08:11:22 +0100 Edouard Tisserant SVGHMI: Add a simple i18n test svghmi
Tue, 09 Feb 2021 07:57:14 +0100 Edouard Tisserant SVGHMI: Prevent Dropdown widget to mak exception whe value out of range svghmi
Tue, 09 Feb 2021 07:56:25 +0100 Edouard Tisserant SVGHMI: removed dead code svghmi
Tue, 09 Feb 2021 07:55:16 +0100 Edouard Tisserant SVGHMI: Add "lang" permament persistent HMI_LOCAL variable to reflect selected language, apply stored language choice at startup and make it always subscribed to a pseudo widget (as for hearbeat) that apply language choice when it changes. svghmi
Tue, 09 Feb 2021 07:46:02 +0100 Edouard Tisserant SVGHMI: Added HMI:VarInitPersistent to initialize persistent HMI_LOCAL and PAGE_LOCAL variables, stored as cookies in browser. svghmi
Tue, 09 Feb 2021 07:41:24 +0100 Edouard Tisserant SVGHMI: Enforce formating HMI_LOCAL and PAGE_LOCAL variables until the end of variable name svghmi
Thu, 04 Feb 2021 21:23:58 +0100 Edouard Tisserant SVGHMI: generate JS translation literals so that it is possible to also translate uses of texts, and added JS code that apply translations to tspans svghmi
Thu, 04 Feb 2021 21:20:01 +0100 Edouard Tisserant SVGHMI: widget activable elements : moved code to wher it belongs, rewrote cleaner svghmi
Tue, 02 Feb 2021 16:39:02 +0100 Edouard Tisserant SVGHMI: update generated XSLT svghmi
Tue, 02 Feb 2021 11:20:54 +0100 Edouard Tisserant Merged svghmi
Tue, 02 Feb 2021 11:17:03 +0100 Edouard Tisserant SVGHMI: make a copy of tests/svghmi as test/svghmi_widget because too crowded since having pages for widget documentation. Strip those pages from tests/svghmi, so that it svghmi
Tue, 02 Feb 2021 10:59:00 +0100 Edouard Tisserant SVGHMI: Prevent excluded widget to appear in generated pages' widget list. svghmi
Tue, 02 Feb 2021 10:43:43 +0100 Edouard Tisserant SVGHMI: Remove recursive walk in parsed widget to find unique type and use xsl:key instead. svghmi
Tue, 26 Jan 2021 11:17:08 +0100 Edouard Tisserant SVGHMI: Fix browser side exception when some widget are not used, and are then discarded and not present in final SVG. In that case JS code was still making reference to discarded widget elements and was raising exception at init. svghmi
Tue, 26 Jan 2021 11:14:22 +0100 Edouard Tisserant SVGHMI : removed support for changing keyboard position and showing at user defined location. Feature was problematic in many respect. svghmi
Mon, 25 Jan 2021 14:02:08 +0100 Edouard Tisserant SVGHMI: Make an error when pages are nested svghmi
Fri, 22 Jan 2021 11:30:37 +0100 Edouard Tisserant SVGHMI: i18n: finished passing back translated messaged to xslt proc, finished template to generate corresponding javascript literals. svghmi
Fri, 22 Jan 2021 08:43:24 +0100 Edouard Tisserant SVGHMI: i18n: various fixes about unicode encoding and converting translation result back to XML to feed xslt processor svghmi
Thu, 21 Jan 2021 11:08:04 +0100 Edouard Tisserant SVGHMI: i18n: better warning messages, more explicit. svghmi
Thu, 21 Jan 2021 05:04:23 +0100 Edouard Tisserant SVGHMI: i18n: now loads PO filesand match translation against catalog. Refactored a bit to move i18n related code in i18n.py svghmi
Tue, 19 Jan 2021 11:57:13 +0100 Edouard Tisserant SVGHMI: still WIP, now POT file is properly generated with utf-8 encoding and POEdit is launched when pressing button. svghmi
Mon, 18 Jan 2021 10:32:13 +0100 Edouard Tisserant Docutil : reworked Inkscape launching and path resolution in docsvg.py svghmi
Fri, 15 Jan 2021 10:15:41 +0100 Edouard Tisserant merge svghmi
Wed, 13 Jan 2021 10:28:09 +0100 Edouard Tisserant Removed harmful assert in ProcessLogger. svghmi
Fri, 15 Jan 2021 10:11:05 +0100 Edouard Tisserant SVGHMI: Intermediate commit while implementing i18n. WIP. svghmi
Tue, 05 Jan 2021 01:23:45 +0100 Edouard Tisserant SVGHMI: Jump widget: switch to class based declaraion, and add some TODO comments to prepare for jump to relative page being selected through a DropDown widget. svghmi
Mon, 04 Jan 2021 13:57:11 +0100 Edouard Tisserant SVGHMI: intermediate state of test/svghmi's SVG for backup... WIP svghmi
Mon, 04 Jan 2021 12:34:56 +0100 Edouard Tisserant SVGHMI: CircularBar: use animate() + cormetic changes svghmi
Tue, 29 Dec 2020 16:54:32 +0100 Edouard Tisserant SVGHMI: Meter widget: use animate() + cosmetic changes svghmi
Tue, 29 Dec 2020 15:53:30 +0100 Edouard Tisserant SVGHMI: Update generated xslt svghmi
Tue, 29 Dec 2020 15:39:48 +0100 Edouard Tisserant SVGHMI: Fix bug in keypad leading to error messages in browser console when keypas has no Shift or CapsLock keys svghmi
Tue, 29 Dec 2020 15:38:31 +0100 Edouard Tisserant SVGHMI: cosmetic changes svghmi
Tue, 29 Dec 2020 15:37:41 +0100 Edouard Tisserant SVGHMI: Input widget overrides undershot() and overshot() methods to display "min: xxx" or "max: xxx" when user input goes out of given range. svghmi
Tue, 29 Dec 2020 15:35:39 +0100 Edouard Tisserant SVGHMI: Added clipping to min and max value for all widget using @path,min,max syntax. Added overshot() and undershot() methods to widget base class, called when value is limited to max or min respectively. svghmi
Thu, 24 Dec 2020 17:00:43 +0100 Edouard Tisserant SVGHMI: decoupled operation string evaluation from HMI variable uptdate in change_hmi_variable(), paving the way for min/max boundaries enforcement svghmi
Thu, 24 Dec 2020 16:56:19 +0100 Edouard Tisserant SVGHMI: Added parsing of min and max value that can be given as @path,min,max in widget description svghmi
Tue, 22 Dec 2020 14:57:59 +0100 Edouard Tisserant Merged default in svghmi branch svghmi
Mon, 21 Dec 2020 11:10:27 +0100 Edouard Tisserant WebInterface: better wording for wiping PLC content: "Repair" svghmi
Fri, 18 Dec 2020 15:52:58 +0100 Edouard Tisserant SVGHMI: almost rewrote Input widget to make it new class based style. svghmi
Fri, 18 Dec 2020 11:50:28 +0100 Edouard Tisserant runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature. svghmi
Thu, 17 Dec 2020 19:31:00 +0100 Edouard Tisserant SVGHMI: added dropdown selection highlighting and fixed scrolling so that it doesn't miss any entry while jumping from one page to the other. svghmi
Wed, 16 Dec 2020 15:44:24 +0100 Edouard Tisserant SVGHMI: change scroll buttons into single unicode triangle and center them. Use highlight rectangle duplicated and hidden to catch selection clicks so that the whole row is clickable. svghmi
Tue, 15 Dec 2020 13:43:21 +0100 Edouard Tisserant SVGHMI: DropDown widget now using new class based style svghmi
Thu, 10 Dec 2020 15:48:15 +0100 Edouard Tisserant Add a little test to see OnChange's .count .first .last in action svghmi
Thu, 10 Dec 2020 14:54:42 +0100 Edouard Tisserant Fixed "Onchange" object added in previous commit svghmi
Thu, 10 Dec 2020 11:37:27 +0100 Edouard Tisserant Python Safe Globals now have more reliable triggering of OnChange call. Added "Onchange" object to accessible runtime variables that let user python code see count of changes and first and last values. svghmi
Mon, 07 Dec 2020 09:49:34 +0100 Edouard Tisserant SVGHMI: cosmetic fixes in button widget svghmi
Sat, 05 Dec 2020 16:59:27 +0100 Edouard Tisserant SVGHMI: Rewrote button widget. svghmi
Wed, 02 Dec 2020 14:33:24 +0100 Edouard Tisserant SVGHMI: update generated XSLT svghmi
Wed, 02 Dec 2020 14:32:56 +0100 Edouard Tisserant SVGHMI: stuff test so that it moves all the time, to have better chance to spot memory leaks... svghmi
Wed, 02 Dec 2020 14:31:57 +0100 Edouard Tisserant SVGHMI: prevent unwnted context menu and pinch zoom svghmi
Wed, 02 Dec 2020 14:30:58 +0100 Edouard Tisserant SVGHMI: more attempts to prevent losing memory in JS closure svghmi
Fri, 27 Nov 2020 18:06:34 +0100 Edouard Tisserant SVGHMI: WIP trying to reduce memory usage : use .onclick onstead of SetAttribute, avoid useless closure and object creation when possible, etc. svghmi
Wed, 25 Nov 2020 14:47:47 +0100 Edouard Tisserant SVGHMI: update generated xslt file svghmi
Wed, 25 Nov 2020 14:47:23 +0100 Edouard Tisserant SVGHMI: use const when applicable svghmi
Wed, 25 Nov 2020 14:46:25 +0100 Edouard Tisserant SVGHMI: prevents text and svg elements selection on the whole page when dragging. svghmi
Wed, 25 Nov 2020 14:45:01 +0100 Edouard Tisserant SVGHMI: Update default test to check that Input widget is indeed updated when variable changes. svghmi
Wed, 25 Nov 2020 14:43:03 +0100 Edouard Tisserant SVGHMI: Fix: on screen keyboard wasn't showing up when editing local variables through Input widget. svghmi
Fri, 20 Nov 2020 11:17:40 +0100 Edouard Tisserant Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode svghmi
Wed, 18 Nov 2020 23:08:17 +0100 Edouard Tisserant merge svghmi
Wed, 18 Nov 2020 10:15:44 +0100 Edouard Tisserant py_ext: better handling of coma separated OnChange attribute for python safe global variables. svghmi
Wed, 18 Nov 2020 23:06:16 +0100 Edouard Tisserant Project tree: Clicking on ConfigTreeNode should have same behaviour as for POUS and other IEC types : simple click to select and double click to open. svghmi
Mon, 02 Nov 2020 10:56:09 +0100 Edouard Tisserant Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched. svghmi
Wed, 28 Oct 2020 18:21:12 +0200 Edouard Tisserant Arbitrary variables added to JsonTable subscription are now passed as 'extra' field in json query. As an example added JsonTable filtering in tests/svghmi svghmi
Thu, 22 Oct 2020 22:44:29 +0200 Edouard Tisserant SVGHMI: Fix HMI_REAL support, and add a HMI_REAL use case in tests/svghmi. svghmi
Tue, 20 Oct 2020 00:24:49 +0200 Edouard Tisserant merge svghmi
Mon, 19 Oct 2020 10:17:18 +0200 Edouard Tisserant SVGHMI: JsonTable now outputs "visible" value as well. svghmi
Mon, 19 Oct 2020 10:15:26 +0200 Edouard Tisserant SVGHMI: non significant cosmetic changes svghmi
Mon, 19 Oct 2020 09:29:11 +0200 usveticic - New widget customHtml which allows to insert block of html code svghmi
Tue, 20 Oct 2020 00:23:52 +0200 Edouard Tisserant PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly. svghmi
Thu, 01 Oct 2020 14:23:27 +0200 usveticic Button fix if no active or inactive state, svghmi
Wed, 30 Sep 2020 12:31:59 +0200 usveticic Merge two different heads svghmi
Thu, 24 Sep 2020 15:42:40 +0200 Edouard Tisserant SVGHMI: Documentation fix svghmi
Thu, 24 Sep 2020 11:52:40 +0200 usveticic Button and toggle reworked to use animate and dispatch svghmi
Thu, 17 Sep 2020 11:30:22 +0200 Edouard Tisserant Merge + fix side effects of making warning instead of errors in case of missing HMI variable svghmi
Wed, 16 Sep 2020 09:42:26 +0200 usveticic Updated svg and xml for testing program svghmi
Wed, 16 Sep 2020 09:41:52 +0200 usveticic Button, ToggleButton and slider updated. Error to warning when building svghmi
Tue, 15 Sep 2020 13:57:06 +0200 Edouard Tisserant Modbus: fixed typo in ctype typing. svghmi
Fri, 11 Sep 2020 13:46:41 +0200 Edouard Tisserant MODBUS: Fix saving of websettings. svghmi
Thu, 10 Sep 2020 16:08:26 +0200 Edouard Tisserant Runtime/PLCObject : move call to PreStartPLC right after call to the "start" method of all python extensions, and then just before the start of the python loop executing python_* blocks. svghmi
Thu, 03 Sep 2020 11:16:08 +0200 Edouard Tisserant SVGHMI: Better error message when inkscape is not installed. svghmi
Wed, 02 Sep 2020 11:45:41 +0200 Edouard Tisserant SVGHMI: nicer error message svghmi
Tue, 01 Sep 2020 11:15:48 +0200 Edouard Tisserant Merge svghmi
Mon, 31 Aug 2020 13:54:08 +0200 Edouard Tisserant Attempt to workaround problem reported about empty plc.xml after unrelated crash. Now, if etree model is corrupted in a way tostring() would generate an empty string, exception prevents saving. svghmi
Fri, 28 Aug 2020 15:29:35 +0200 Edouard Tisserant SVGHMI: JsonTable can now have clickable elements, that trigger a request with extra argument whose content is taken from Json data. svghmi
Fri, 28 Aug 2020 11:31:18 +0200 Edouard Tisserant Merged svghmi
Fri, 28 Aug 2020 11:27:07 +0200 Edouard Tisserant SVGHMI: cosmetic fix in test svghmi
Tue, 18 Aug 2020 11:42:28 +0200 usveticic All widgets reworked to use widget class and animate function if needed svghmi
Thu, 27 Aug 2020 14:34:48 +0200 Edouard Tisserant SVGHMI: Moved JsonTable/Alarm related test in a separate page. svghmi
Thu, 27 Aug 2020 14:34:00 +0200 Edouard Tisserant SVGHMI: JsonTable now ignores elements and groups starting with # svghmi
Thu, 27 Aug 2020 09:59:35 +0200 Edouard Tisserant SVGHMI: Fix keypad : non-number input was always considered invalid because of missing type checking. svghmi
Wed, 26 Aug 2020 14:27:54 +0200 Edouard Tisserant SVGHMI: JsonTable now updates range and position variables so that slider widget can update. svghmi
Wed, 26 Aug 2020 14:24:43 +0200 Edouard Tisserant SVGHMI: Fix multiple variable support in widget svghmi
Wed, 26 Aug 2020 11:34:06 +0200 Edouard Tisserant SVGHMI: Add TODOs in Button widgets. svghmi
Wed, 26 Aug 2020 11:26:45 +0200 Edouard Tisserant SVGHMI: Alarm test not using Button widget anymore, too many problems. Use Input widget instead to increment value on each click and execute python code on change. svghmi
Tue, 25 Aug 2020 14:34:49 +0200 Edouard Tisserant SVGHMI: little fix in HMI:Button svghmi
Tue, 25 Aug 2020 14:32:39 +0200 Edouard Tisserant SVGHMI: JsonTable now use intermediate variables again to address JSON data without duplicating code or referencing. Using intermediate variables also alows to check for availability of data and stop evaluating early if data is missing. Finally added complete roundtrip example to illustrate use of JSonTable to display "alarms" collected in python from changes on PLC boolean variables. svghmi
Mon, 24 Aug 2020 09:48:35 +0200 Edouard Tisserant SVGHMI: removed debug code forgotten here and there. svghmi
Fri, 21 Aug 2020 14:29:03 +0200 Edouard Tisserant SVGHMI: JsonTable now makes meaningfull JSON request : all arguments and variables are passed in. svghmi
Fri, 21 Aug 2020 13:22:54 +0200 Edouard Tisserant SVGHMI: Keypad is now keeping Javascript type constency. In other words, if a number was given as initial value, input value will have to convert to number in order to be valid. In case invalid value is entered, initial value is restored. svghmi
Thu, 20 Aug 2020 14:12:49 +0200 Edouard Tisserant SVGHMI: Behave when project path include spaces, and make more understandable error in case of problem extracting geometry with inkscape. svghmi
Thu, 20 Aug 2020 13:56:21 +0200 Edouard Tisserant SVGHMI: Refactor the way JsonTable generate javascript code to access json data. Now support multiple assignments, used in the case of text to change both content and style on the same element. svghmi
Thu, 20 Aug 2020 13:52:00 +0200 Edouard Tisserant SVGHMI: Fix again clone unlinking, and this time add an "original" attribute to track the id of the original object before unlinking. svghmi
Mon, 17 Aug 2020 10:00:25 +0200 Edouard Tisserant SVGHMI: Fix svg test file while testing latest JsonTableChanges svghmi
Sat, 15 Aug 2020 18:50:25 +0200 Edouard Tisserant SVGHMI: HMI:JsonTable also recognize TextStyleList, but parsing of textContent is still not implemented and style is still not updated. svghmi
Sat, 15 Aug 2020 18:46:35 +0200 Edouard Tisserant SVGHMI: Deeper clone unlinking. Was actually not recursive, and clones in clones where not unlinked. Stack successive ids to avoid collisions. svghmi
Thu, 13 Aug 2020 11:37:39 +0200 Edouard Tisserant SVGHMI: factorize dispatch calling logic. svghmi
Thu, 13 Aug 2020 11:30:18 +0200 Edouard Tisserant SVGHMI: HMI:VarInit:"a string"@a_value : empty widget (i.e. empty svg:group) that initialize content of local variables to value given as first argument. svghmi
Wed, 12 Aug 2020 15:24:02 +0200 Edouard Tisserant Merge svghmi
Wed, 12 Aug 2020 13:36:18 +0200 Edouard Tisserant SVGHMI: Add more local HMI variable tests in tests/svghmi. svghmi
Tue, 11 Aug 2020 14:37:33 +0200 Edouard Tisserant SVGHMI: finished initial implementation of PAGE_LOCAL and HMI_LOCAL variables. svghmi
Mon, 10 Aug 2020 15:25:57 +0200 Edouard Tisserant SVGHMI: add a SetPoint to Slider Widget, visible only when operating the slider. svghmi
Mon, 10 Aug 2020 14:00:20 +0200 Edouard Tisserant SVGHMI: Update Slider widget so that it doesn't display future value but actual value only. svghmi
Mon, 10 Aug 2020 13:58:55 +0200 Edouard Tisserant SVGHMI: provide request_animate() to Widget authors so that they can register redraw code when events lead to redraw. Widget member animate() is called when it is time to update DOM. svghmi