Wed, 15 Apr 2020 14:29:19 +0200 Edouard Tisserant SVGHMI: Comments in HMI:DropDown source code svghmi
Tue, 14 Apr 2020 23:04:54 +0200 Edouard Tisserant SVGHMI: HMI:DropDown menu aligns to selected when opening svghmi
Tue, 14 Apr 2020 22:08:52 +0200 Edouard Tisserant SVGHMI: When clicking outside of opened HMI:DropDown box, close it. svghmi
Tue, 14 Apr 2020 19:22:18 +0200 Edouard Tisserant SVGHMI: Fix HMI:DropDown flicker on close. svghmi
Tue, 14 Apr 2020 17:31:45 +0200 Edouard Tisserant SVGHMI: HMI:DropDown now temporarily takes content from widget's arguments, until HMI:List is implemented. svghmi
Tue, 14 Apr 2020 17:17:35 +0200 Edouard Tisserant SVGHMI: Connect HMI:DropDown to value in HMI Tree, in svghmi test as well. svghmi
Tue, 14 Apr 2020 17:16:25 +0200 Edouard Tisserant SVGHMI: fix probable problem in HMI:Input, where value could be applied to wrong index if used in relative page. svghmi
Tue, 14 Apr 2020 17:15:02 +0200 Edouard Tisserant SVGHMI: HMI:DropDown element is brought in front when opened, so that it isn't occulted by other widgets at the same level. svghmi
Tue, 14 Apr 2020 17:13:12 +0200 Edouard Tisserant SVGHMI: HMI:DropDown now catches all clicks when open svghmi
Tue, 14 Apr 2020 12:07:08 +0200 Edouard Tisserant SVGHMI: Add button element to HMI:DropDown, also fix problem with computed box margins. svghmi
Tue, 14 Apr 2020 10:56:45 +0200 Edouard Tisserant SVGHMI: HMI:DropDown now scrolls forward and backward svghmi
Mon, 13 Apr 2020 18:28:22 +0200 Edouard Tisserant SVGHMI: progress on HMI:DropDown - now selects some value on click, and close svghmi
Sun, 12 Apr 2020 21:43:42 +0200 Edouard Tisserant SVGHMI: HMI:DropDown work in progress, intermediate commit. Now menu's rectangle grows up to viewport borders. svghmi
Thu, 09 Apr 2020 09:52:34 +0200 Edouard Tisserant SVGHMI: intermediate commit while working on dropdown widget. svghmi
Tue, 07 Apr 2020 10:01:23 +0200 Edouard Tisserant SVGHMI: HMI is not speculating on PLC variable update anymore when sending new variable value. svghmi
Sat, 04 Apr 2020 22:32:54 +0200 Edouard Tisserant SVGHMI: finished shift and capslock support n keypad widget. Added a helper in widgets_common to collect subelements likle active/inactive/disabled... svghmi
Sat, 04 Apr 2020 17:47:16 +0200 Edouard Tisserant SVGHMI: fixed keypad JS regarding shift/capslock and other details svghmi
Sat, 04 Apr 2020 09:41:32 +0200 Edouard Tisserant Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04 svghmi
Fri, 03 Apr 2020 14:37:41 +0200 Edouard Tisserant SVGHMI: Keypad working for HMI_STRING, still Shift/CapsLock not finished. svghmi
Fri, 03 Apr 2020 09:52:57 +0200 Edouard Tisserant SVGHMI: fix keyboard not showing svghmi
Fri, 03 Apr 2020 08:30:00 +0200 Edouard Tisserant SVGHMI: Added keypads to svghmi test's SVG file svghmi
Fri, 03 Apr 2020 08:13:47 +0200 Edouard Tisserant merge svghmi
Thu, 02 Apr 2020 15:18:15 +0200 Edouard Tisserant SVGHMI: Keypad: added code to re-attach keypad when starting edit. svghmi
Thu, 02 Apr 2020 14:04:21 +0200 Edouard Tisserant SVGHMI: removed debug code svghmi
Thu, 02 Apr 2020 14:03:38 +0200 Edouard Tisserant SVGHMI: More infrastructure for editing values with a keypad. svghmi
Thu, 02 Apr 2020 09:38:53 +0200 Edouard Tisserant SVGHMI: Widget input buttons should be clickable through svg:use (onclick attribute instead of addEventListener) svghmi
Wed, 01 Apr 2020 18:10:45 +0200 Edouard Tisserant SVGHMI: moved dead code to where it belongs svghmi
Wed, 01 Apr 2020 14:42:50 +0200 Edouard Tisserant SVGHMI: empty widget_keypad.ysl2, WIP svghmi
Tue, 31 Mar 2020 13:20:15 +0200 Edouard Tisserant SVGHMI: HMI:Switch now accepts boolean values 'true' and 'false' svghmi
Mon, 30 Mar 2020 14:26:42 +0200 Edouard Tisserant 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. svghmi
Mon, 30 Mar 2020 11:06:12 +0200 Edouard Tisserant SVGHMI: prevent man-made memory leak by limiting back button history items count to 42 svghmi
Sun, 29 Mar 2020 16:11:21 +0200 Edouard Tisserant SVGHMI: collect debug data through xslt reflectivity instead of yml2/python trick svghmi
Fri, 27 Mar 2020 14:25:24 +0100 Edouard Tisserant SVGHMI: Jump widget can now display as active or inactive, if corresponfing "active" and "inactive labeled elements are provided. svghmi
Thu, 26 Mar 2020 14:21:52 +0100 Edouard Tisserant SVGHMI: added Back widget. svghmi
Thu, 26 Mar 2020 13:33:20 +0100 Edouard Tisserant SVGHMI: Jump widget now make errors if path given for relative jump doesn't match target page reference path class. svghmi
Thu, 26 Mar 2020 11:17:34 +0100 Edouard Tisserant SVGHMI: Check that explicit relative page jump path is consistant with destination page reference path. svghmi
Wed, 25 Mar 2020 14:09:15 +0100 Edouard Tisserant SVGHMI: ForEach Widget now has a better wrap-around when scrolling : hit the boundary systematically before wrapping svghmi
Wed, 25 Mar 2020 13:56:04 +0100 Edouard Tisserant SVGHMI: Alow relative relative Jump. (i.e, relative jump from a foreach widget) svghmi
Wed, 25 Mar 2020 13:36:04 +0100 Edouard Tisserant SVGHMI: Generalize applying cache to widgets, be it from page or ForEach widgets. Now ForEach widget buttons work as expected. svghmi
Tue, 24 Mar 2020 23:07:54 +0100 Edouard Tisserant SVGHMI: Widget ForEach buttons now call corresponding methods. svghmi
Tue, 24 Mar 2020 14:03:19 +0100 Edouard Tisserant SVGHMI: ForEach now has working (un)subscribe. Fixed PageSwitch that wasn't behaving when jumping to current page with another path. svghmi
Mon, 23 Mar 2020 21:44:28 +0100 Edouard Tisserant 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 svghmi
Mon, 23 Mar 2020 15:13:36 +0100 Edouard Tisserant 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. svghmi
Mon, 23 Mar 2020 10:16:38 +0100 Edouard Tisserant SVGHMI: ForEach knows its own widgets svghmi
Fri, 20 Mar 2020 10:46:15 +0100 Edouard Tisserant SVGHMI: add widget_foreach.ysl2 svghmi
Fri, 20 Mar 2020 10:00:59 +0100 Edouard Tisserant SVGHMI: make root HMI tree node a HMI_NODE, droped HMI_ROOT node type svghmi
Thu, 19 Mar 2020 19:23:56 +0100 Edouard Tisserant SVGHMI: reworked widget (un)subscription now a method of widgect object, allowing special subscription methods svghmi
Thu, 19 Mar 2020 11:32:20 +0100 Edouard Tisserant SVGHMI: Exclude (again) sub-widgets of forEach widget from page-switch managed widget. svghmi
Thu, 19 Mar 2020 09:57:26 +0100 Edouard Tisserant SVGHMI: cosmetic changes svghmi
Thu, 19 Mar 2020 09:31:07 +0100 Edouard Tisserant SVGHMI: Simplification and optimization. func:parselabel becomes a template. svghmi
Wed, 18 Mar 2020 12:06:50 +0100 Edouard Tisserant SVGHMI: intermediate untested state. Excluded ForEach widget from pages handled widgets. svghmi
Wed, 18 Mar 2020 09:37:26 +0100 Edouard Tisserant SVGHMI: update Makefile to pick all changes to any dependency svghmi
Wed, 18 Mar 2020 09:16:14 +0100 Edouard Tisserant SVGHMI: created widget_*.ysl2. Renamed widget_common in widgets_common, so that it doesn't match globing. svghmi
Tue, 17 Mar 2020 14:11:54 +0100 Edouard Tisserant SVGHMI: moving comments svghmi
Tue, 17 Mar 2020 14:01:37 +0100 Edouard Tisserant SVGHMI: added widget_common.ysl2 svghmi
Tue, 17 Mar 2020 13:43:19 +0100 Edouard Tisserant SVGHMI: More readable debug output gen code svghmi
Tue, 17 Mar 2020 13:34:07 +0100 Edouard Tisserant SVGHMI: Cosmetic changes svghmi
Tue, 17 Mar 2020 13:16:01 +0100 Edouard Tisserant SVGHMI: added inline_svg.ysl2 svghmi
Tue, 17 Mar 2020 11:24:07 +0100 Edouard Tisserant SVGHMI: detachable_elements.ysl2 becomes detachable_pages.ysl2, and includes logic to process pages elements. Other minor code moves. svghmi
Tue, 17 Mar 2020 10:34:26 +0100 Edouard Tisserant SVGHMI: moved debug code svghmi
Tue, 17 Mar 2020 09:29:04 +0100 Edouard Tisserant SVGHMI: created detachable_elements.ysl2 svghmi
Tue, 17 Mar 2020 08:00:33 +0100 Edouard Tisserant SVGHMI: more debug code moved to hmi_tree.ysl2 svghmi
Tue, 17 Mar 2020 07:39:50 +0100 Edouard Tisserant SVGHMI : create hmi_tree.ysl2, rename bbox_intersect.ysl2 into geometry.ysl2 and move more code into. Add per included ysl2 file debug output. svghmi
Mon, 16 Mar 2020 18:27:49 +0100 Edouard Tisserant SVGHMI: created bbox_intersect.ysl2 svghmi
Mon, 16 Mar 2020 17:09:23 +0100 Edouard Tisserant 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. svghmi
Fri, 13 Mar 2020 21:42:40 +0100 Edouard Tisserant SVGHMI: relative pages and page jumps svghmi
Fri, 13 Mar 2020 10:36:13 +0100 Edouard Tisserant 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. svghmi
Thu, 12 Mar 2020 13:16:18 +0100 Edouard Tisserant SVGHMI: significant whitespace changes svghmi
Thu, 12 Mar 2020 13:15:54 +0100 Edouard Tisserant SVGHMI: unsignificant changes or changes in generated code svghmi
Thu, 12 Mar 2020 13:14:38 +0100 Edouard Tisserant SVGHMI: Stop ignoring HMI_NODE in HMI tree, and count it as a BOOL. Soon we use those nodes as reference for relative page jump, and as an "enable" bit for features associated to an HMI tree fragment. svghmi
Thu, 12 Mar 2020 09:33:20 +0100 Edouard Tisserant SVGHMI: cosmetic code moving svghmi
Tue, 10 Mar 2020 13:57:29 +0100 Edouard Tisserant SVGHMI: split page switch into switching subscription and switching elements in the DOM, to ensure that subscriptions have been send before changing DOM, and avoid some flicker. svghmi
Mon, 09 Mar 2020 13:43:34 +0100 Edouard Tisserant SVGHMI: fix wrong updates of HMI variables on each change, especially when not subscribed. svghmi
Mon, 09 Mar 2020 13:40:45 +0100 Edouard Tisserant SVGHMI: whitespaces svghmi
Fri, 06 Mar 2020 14:43:03 +0100 Edouard Tisserant SVGHMI: fixed repeated error when Input widget is missing 'value' element svghmi
Fri, 06 Mar 2020 14:42:08 +0100 Edouard Tisserant SVGHMI: more decoupling in between UI related and the rest of JS code, still in the aim of enhancing robustness under heavy load. svghmi
Fri, 06 Mar 2020 09:35:08 +0100 Edouard Tisserant SVGHMI: use requestAnimationFrame to delegate rendering of updates from network. Should help prevent browser collapse leading to watchdog in case of overload. svghmi
Thu, 05 Mar 2020 13:54:29 +0100 Edouard Tisserant SVGHMI: Fix disapearing elements in case of nested detachable elements. svghmi
Thu, 05 Mar 2020 10:23:03 +0100 Edouard Tisserant SVGHMI: Meter widget accepts 2 arguments : min and max, taken in account when min or max text element is missing svghmi
Wed, 04 Mar 2020 20:02:15 +0100 Edouard Tisserant SVGHMI: More precise error message on missing HMI path. Meter widget now defaults 0-100 range when min and max elements arent's present, without error. svghmi
Wed, 04 Mar 2020 16:46:35 +0100 Edouard Tisserant SVGHMI: more whitespace fixes svghmi
Wed, 04 Mar 2020 16:46:03 +0100 Edouard Tisserant SVGHMI: unlink clones (i.e. deep copy elements refered by svg:use) inside widget. svghmi
Wed, 04 Mar 2020 09:31:53 +0100 Edouard Tisserant SVGHMI: whitespaces and comments svghmi
Tue, 03 Mar 2020 16:29:22 +0100 Edouard Tisserant SVGHMI: completely fixed indentation of generated widget description. Lets try to keep it as-is until we can use yslt indentation. svghmi
Tue, 03 Mar 2020 10:58:00 +0100 Edouard Tisserant SVGHMI: re-indent generated JS svghmi
Mon, 02 Mar 2020 16:30:29 +0100 Edouard Tisserant SVGHMI: detach/re-attach elements required by pages on page switch svghmi
Mon, 02 Mar 2020 16:25:35 +0100 Edouard Tisserant SVGHMI: re-indenting svghmi
Mon, 02 Mar 2020 14:43:21 +0100 Edouard Tisserant SVGHMI: declares pages detachable requirements as an object, to find more efficiently common requirements svghmi
Mon, 02 Mar 2020 10:29:41 +0100 Edouard Tisserant SVGHMI: fix some JS + add generation of detachable elements, to be continued svghmi
Fri, 28 Feb 2020 22:54:07 +0100 Edouard Tisserant SVGHMI: now compute discardable elements first so that we can do better grouping of required elements when sumarizing. svghmi
Fri, 28 Feb 2020 17:52:35 +0100 Edouard Tisserant SVGHMI : documentation for new geometry intersection computation code + little fixes... svghmi
Fri, 28 Feb 2020 16:09:21 +0100 Edouard Tisserant SVGHMI: detachable and discardable elements sets, Reworked geometric intersection, toward more accurate page content detection. svghmi
Thu, 27 Feb 2020 13:14:24 +0100 Edouard Tisserant SVGHMI : still trying to optimize. Added xslt code to identitfy minimum set of elements needed by a particular page. Plan is to remove unseen/unused elements from the DOM, and re-appending them later when used, on page switch. Disabled previous optimization. svghmi
Fri, 21 Feb 2020 16:22:44 +0100 Edouard Tisserant SVGHMI: attempt to optimize for webkit, because of really slow style recompute in svg:use : "unlink clones" (as in inkscape) but stop deep-copy when meeting a widget, and create a new clone instead. svghmi
Fri, 21 Feb 2020 16:18:53 +0100 Edouard Tisserant SVGHMI: optimize browser work by hiding (display:none) pages that are not displayed. svghmi
Fri, 21 Feb 2020 16:15:33 +0100 Edouard Tisserant SVGHMI: Better and less verbose SVG namespace handling in XSLT transform svghmi
Mon, 17 Feb 2020 13:57:44 +0100 Edouard Tisserant SVGHMI: Added mostly untested switch widget svghmi
Fri, 14 Feb 2020 21:41:13 +0100 Edouard Tisserant SVGHMI: HMI:Page can now be a svg:g group or a svg:use clone, and included/linked widget are included in page. HMI:Jump was updated to be clickable through svg:use, to be generalized. svghmi
Fri, 14 Feb 2020 10:29:10 +0100 Edouard Tisserant SVGHMI: ensure that coordinate in CSV file generated by inkscape are both matching svg default unit and in default reference frame svghmi
Thu, 13 Feb 2020 09:43:35 +0100 Edouard Tisserant SVGHMI : still behave, even if important things are missing in SVG widget definitions (ex: needle missing for Meter widget) svghmi
Thu, 13 Feb 2020 09:41:43 +0100 Edouard Tisserant SVGHMI : fix watchdog exception when timeout null svghmi
Tue, 11 Feb 2020 13:56:48 +0100 Edouard Tisserant SVGHMI: be a bit more tolerant with missing HMI paths or missing elements in widgets : continue build (with warning) and fail silently at runtime. svghmi
Thu, 30 Jan 2020 14:33:06 +0100 Edouard Tisserant SVGHMI : fixed bug happening when some SVG ids are containing dashes svghmi
Thu, 23 Jan 2020 13:46:05 +0100 Edouard Tisserant SVGHMI : wait for initial timeout after watchdog is triggered, since it generaly induces HMI restart svghmi
Thu, 23 Jan 2020 11:22:09 +0100 Edouard Tisserant SVGHMI : watchdog is now taking an initial and interval duration as CTN fields. svghmi
Tue, 21 Jan 2020 13:55:03 +0100 Edouard Tisserant SVGHMI : avoid caching of xhtml file by forcing cache-control header in http response. svghmi
Fri, 17 Jan 2020 16:25:45 +0100 Edouard Tisserant SVGHMI : HMI_STRING now also supported from HMI to PLC svghmi
Wed, 15 Jan 2020 11:13:39 +0100 Edouard Tisserant SVGHMI : cosmetic svghmi
Wed, 15 Jan 2020 09:35:29 +0100 Edouard Tisserant SVGHMI non significant fixes svghmi
Tue, 14 Jan 2020 11:09:26 +0100 Edouard Tisserant SVGHMI : support for HMI_STRING and HMI_BOOL svghmi
Tue, 14 Jan 2020 11:04:18 +0100 Edouard Tisserant plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes svghmi
Mon, 13 Jan 2020 15:15:01 +0100 Edouard Tisserant SVGHMI : Added python fomating {port} and {name} to commands so that command can build target URL svghmi
Fri, 10 Jan 2020 17:00:01 +0100 Edouard Tisserant SVGHMI : add on Start, Stop and Watchdog command fields to configuration svghmi
Fri, 10 Jan 2020 13:15:07 +0100 Edouard Tisserant SVGHMI: added a watchdog. To ensure that the whole chain is checked, watchdog use a periodic echo of a hearteat variable. JS client code systematically register /HEARTBEAT at 1s update freq, and reacts on updates of /HEARTBEAT by systematically incrementing it. C code catch /HEARTBEAT update and feeds python-implemented watchdog. For now, watchdog does nothing when tiggered svghmi
Wed, 18 Dec 2019 13:31:22 +0100 Edouard Tisserant Add --on-plc-start --on-plc-stop and --status-change to runtime command line, calling given command respectively on start stop or any event. Command line string is python formated (to eventually include status with {}) before being split (supports quoted strings) and passed to Popen for non-blocking execution. svghmi
Mon, 09 Dec 2019 14:53:42 +0100 Edouard Tisserant SVGHMI : had to move the problem of wkaing up python thread from plc thread to platform specific code. svghmi
Mon, 09 Dec 2019 10:43:54 +0100 Edouard Tisserant SVGHMI: change collect/send thread looping condition to fix infinite loop in some cases svghmi
Tue, 03 Dec 2019 09:46:12 +0100 Edouard Tisserant SVGHMI: re-implemented tree view with classic wxTreeCtl svghmi
Tue, 03 Dec 2019 09:44:48 +0100 Edouard Tisserant Non significant changes, whitespaces, etc. svghmi
Fri, 15 Nov 2019 10:34:14 +0100 Edouard Tisserant SVGHMI: Added simple HMI Tree View. svghmi
Thu, 14 Nov 2019 08:46:32 +0100 Edouard Tisserant SVGHMI: add a class attribute to HMI Tree nodes, set when using HMI_NODE svghmi
Wed, 13 Nov 2019 11:22:53 +0100 Edouard Tisserant SVGHMI: HMI_LABEL and HMI_CLASS become HMI_NODE. svghmi
Wed, 13 Nov 2019 11:21:04 +0100 Edouard Tisserant Add FatalError() method to ConfigTreeNode. svghmi
Thu, 07 Nov 2019 16:40:48 +0100 Edouard Tisserant SVGHMI: various fixes to make SVGHMI behave on more versions of twisted and GCC. svghmi
Wed, 30 Oct 2019 15:17:05 +0100 Edouard Tisserant SVGHMI - prepare page with cached data when switching. This prevents values that do not change and that was already subscribed in previous page from keeping undefined. svghmi
Tue, 29 Oct 2019 11:18:58 +0100 Edouard Tisserant SVGHMI: various insignificant code moves, commenting and typos fixes. svghmi
Tue, 29 Oct 2019 09:10:10 +0100 Edouard Tisserant SVGHMI : fancier second page in tests/svghmi svghmi
Mon, 28 Oct 2019 19:52:43 +0100 Edouard Tisserant SVGHMI: SVG viewport now defined so that HMI take scales and fit to the view. Implemented page switch through viewport change, no hiding of widget for now. svghmi
Mon, 28 Oct 2019 10:30:20 +0100 Edouard Tisserant SVGHMI - added simple Meter widget. svghmi
Sun, 27 Oct 2019 22:28:51 +0100 Edouard Tisserant SVGHMI: Quicker update path for input widget when pressing on buttons, do not wait until data comes back, and simply update value text of the pressed widget. Updated PLC prog for more amimated value to display svghmi
Sun, 27 Oct 2019 21:38:10 +0100 Edouard Tisserant SVGHMI: fixed HMI->PLC dataflow : not updates as expected, and not initialized properly after subscribe. svghmi
Thu, 24 Oct 2019 11:20:04 +0200 Edouard Tisserant Fixed one more sequel of 5f79b194fa63 'SVGHMI: filter out temporary variables created while generating ST code out of FBD.' svghmi
Thu, 24 Oct 2019 10:02:07 +0200 Edouard Tisserant SVGHMI: Added relative changes of HMI value from widgets. svghmi
Tue, 22 Oct 2019 22:58:55 +0200 Edouard Tisserant SVGHMI - Fixed svghmi.{c,js} about HMI -> PLC data unpack. svghmi
Tue, 22 Oct 2019 17:06:31 +0200 Edouard Tisserant SVGHMI: Added init call to all widgets at startup to bind events. More features in Input widget : Edit and Change buttons. WIP HMI->PLC value update, incoherent data detected in C part on update. svghmi
Sat, 19 Oct 2019 01:23:30 +0200 Edouard Tisserant SVGHMI: dispatching data to minimalist "Display" text widget. svghmi
Thu, 17 Oct 2019 15:48:09 +0200 Edouard Tisserant SVGHMI: Many fixes. Subscriptions to HMItree seems to be working, and dispatch function is called in JS with good data. Bidirectional communication now really working. svghmi
Tue, 15 Oct 2019 17:14:48 +0200 Edouard Tisserant SVGHMI : many details about communication implemented in JS, with side effects. svghmi
Fri, 11 Oct 2019 12:03:14 +0200 Edouard Tisserant SVGHMI: added a widgets description object, accessed by id. Added frequency to widgets, as separate template to allow future customization. Excluded non svg elements (i.e inkscape Sets) with HMI: labels from widgets. svghmi
Thu, 10 Oct 2019 10:03:47 +0200 Edouard Tisserant SVGHMI fix logic for page membership detection svghmi
Thu, 10 Oct 2019 09:54:44 +0200 Edouard Tisserant SVGHMI compute default page svghmi
Wed, 09 Oct 2019 11:15:14 +0200 Edouard Tisserant SVGHMI: deduce pages content out of geometry (elements contained in page bounding box are in) svghmi
Wed, 09 Oct 2019 09:04:35 +0200 Edouard Tisserant SVGHMI: use func:function for parsing labels so that it can be used in predicates svghmi
Tue, 08 Oct 2019 13:27:00 +0200 Edouard Tisserant SVGHMI: moved/fixed some templates, avoided namespace problems, added parsing of HMI:* inkscape labels svghmi
Mon, 07 Oct 2019 12:02:45 +0200 Edouard Tisserant SVGHMI: now generating JS object describing widgets and pointing to SVG elements svghmi
Sat, 05 Oct 2019 09:45:58 +0200 Edouard Tisserant SVGHI: compute hmitree variables ordered index in xslt svghmi
Wed, 02 Oct 2019 11:31:02 +0200 Edouard Tisserant SVGHMI: now built. svghmi
Mon, 30 Sep 2019 13:26:11 +0200 Edouard Tisserant SVGHMI: Work in progress. C side mostly implemented, neither built nor tested. svghmi
Fri, 27 Sep 2019 06:54:35 +0200 Edouard Tisserant SVGHMI: More strict formating of active HMI labels : @ separator only used for paths svghmi
Thu, 26 Sep 2019 09:33:49 +0200 Edouard Tisserant SVGHMI: new test svg to drive next implementation svghmi
Wed, 25 Sep 2019 08:53:27 +0200 Edouard Tisserant Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2 svghmi
Tue, 24 Sep 2019 11:58:31 +0200 Edouard Tisserant Merge default in SVGHMI branch svghmi
Fri, 20 Sep 2019 13:38:58 +0200 Edouard Tisserant SVGHMI: Starting to define JS side more in details. svghmi
Thu, 19 Sep 2019 15:32:36 +0200 Edouard Tisserant SVGHMI: added transformation of code given in inkscape's description fields into javascript functions svghmi
Thu, 19 Sep 2019 10:41:39 +0200 Edouard Tisserant SVGHMI: gui.svg -> svghmi.svg svghmi
Thu, 19 Sep 2019 09:01:49 +0200 Edouard Tisserant SVGHMI: moved static JS code to a separate file included at xhtml generation time svghmi
Wed, 18 Sep 2019 11:09:35 +0200 Edouard Tisserant SVGHMI: Work In Progress : fixed pointer types in ctypes interface, cleaned up server startup and cleanup code, changed document type to XHTML, cleaner JS script : encapsulated in a function and in CDATA. svghmi
Wed, 18 Sep 2019 11:03:56 +0200 Edouard Tisserant PLCobject: Call "stop" and "cleanup" methods from python runtime files in reverse order compared to "init" and "start". svghmi
Mon, 16 Sep 2019 13:45:04 +0200 Edouard Tisserant SVGHMI: WIP for python<->C data exchange : message from browser hit the C side. svghmi
Mon, 16 Sep 2019 11:44:20 +0200 Edouard Tisserant SVGHMI: WIP for python<->C data exchange svghmi
Mon, 16 Sep 2019 10:54:15 +0200 Edouard Tisserant SVGHMI: WIP for python<->C data exchange svghmi
Thu, 12 Sep 2019 12:56:47 +0200 Edouard Tisserant SVGHMI: WIP for python<->C data exchange svghmi
Thu, 12 Sep 2019 12:55:32 +0200 Edouard Tisserant SVGHMI: single session for now svghmi
Thu, 12 Sep 2019 12:54:36 +0200 Edouard Tisserant SVGHMI: few fixes on serving svghmi
Wed, 11 Sep 2019 12:24:30 +0200 Edouard Tisserant WIP on svghmi, now builds and runs. HTTP serving + WS transport ready, missing actual data to transmit and thread to collect it. svghmi
Wed, 11 Sep 2019 11:20:11 +0200 Edouard Tisserant Non significant changes to mute GCC warnings about unused variables. svghmi
Thu, 05 Sep 2019 08:35:33 +0200 Edouard Tisserant Fixed sequel of 5f79b194fa63 'SVGHMI: filter out temporary variables created while generating ST code out of FBD.'. Some ref to temporary variables are still not using the _TMP_ prefix. They are quite hard to find, so to be continued... svghmi
Tue, 03 Sep 2019 12:17:33 +0200 Edouard Tisserant SVGHMI: Intermediate state while working on svghmi.c svghmi
Mon, 26 Aug 2019 08:54:02 +0200 Edouard Tisserant svghmi.c : deduplicated variable access code borrowed from plc_debug.c. Added targets/var_access.c. svghmi
Fri, 23 Aug 2019 14:01:31 +0200 Edouard Tisserant SVGHMI: Added iterators in svghmi.c copy-pasted form plc_debug.c svghmi
Fri, 23 Aug 2019 13:01:37 +0200 Edouard Tisserant SVGHMI: svghmi.c now has mutex, iterator, and read/write buffer. svghmi
Thu, 22 Aug 2019 14:58:53 +0200 Edouard Tisserant SVGHMI: draft for svghmi.c. It has all PLC variables pointed in HMI tree in an array. svghmi
Tue, 20 Aug 2019 10:32:34 +0200 Edouard Tisserant Pass HMITree to SVG transform. It seems it could really help to reduce JS tree binding logic in the end. svghmi
Tue, 20 Aug 2019 10:30:59 +0200 Edouard Tisserant Add special nodes at HMI Tree root, fix code to handle special node (no path). svghmi
Tue, 20 Aug 2019 10:08:11 +0200 Edouard Tisserant Swap CTN code gen and Libraries code gen, because SVGHMI use both, and need the library part to produce hmitree before CTN part. svghmi
Tue, 20 Aug 2019 10:01:18 +0200 Edouard Tisserant yslt_noindent : Avoid YSLT's indent logic to interfere when using linequote. svghmi
Wed, 14 Aug 2019 13:06:03 +0200 Edouard Tisserant SVGHMI: make a reasonably basic test svghmi
Wed, 14 Aug 2019 11:05:17 +0200 Edouard Tisserant SVGHMI: filter out temporary variables created while generating ST code out of FBD. svghmi
Tue, 13 Aug 2019 14:04:13 +0200 Edouard Tisserant SVGHMI: added deduction of HMI tree from list of HMI_* instances. svghmi
Mon, 12 Aug 2019 13:09:55 +0200 Edouard Tisserant SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable. svghmi
Mon, 12 Aug 2019 13:06:11 +0200 Edouard Tisserant Allow using docutil.get_inkscape_path() on Linux also. svghmi
Fri, 09 Aug 2019 12:12:24 +0200 Edouard Tisserant SVGHMI: little fixes to make the build go through svghmi
Fri, 09 Aug 2019 12:11:31 +0200 Edouard Tisserant SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with. svghmi
Fri, 09 Aug 2019 12:07:33 +0200 Edouard Tisserant Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI) svghmi
Thu, 08 Aug 2019 15:56:17 +0200 Edouard Tisserant Complete SVGUI test minimal skeleton so that it builds. svghmi
Wed, 07 Aug 2019 14:18:22 +0200 Edouard Tisserant intermediate commit, work in progress svghmi
Thu, 18 Jul 2019 14:09:33 +0200 Edouard Tisserant Use a POU Library's Generate_C to collect all variables in SVGHMI. svghmi
Wed, 17 Jul 2019 09:44:44 +0200 Edouard Tisserant merged svghmi
Wed, 17 Jul 2019 09:44:11 +0200 Edouard Tisserant Enable svghmi plugin in features, and small fixes to skeleton. svghmi
Mon, 15 Jul 2019 09:05:00 +0200 Edouard Tisserant Merged default in svghmi svghmi
Fri, 12 Jul 2019 11:58:22 +0200 Edouard Tisserant Skeleton for svghmi extension svghmi
Wed, 30 Jun 2021 15:44:32 +0200 Edouard Tisserant IDE: Allow POU Libraries to inject PLC Configurations globals during build.
Wed, 30 Jun 2021 16:46:14 +0300 Ivan Tyagov WIP: initial setup.
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.
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.
Fri, 11 Jun 2021 11:56:07 +0200 Edouard Tisserant IDE: Log: Prevent crash when display progress on empty log.
Thu, 10 Jun 2021 09:40:05 +0200 Edouard Tisserant Copy description when DnD variables from CodeFile CTN to POUs
Tue, 25 May 2021 15:05:38 +0200 Edouard Tisserant Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.
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.
Wed, 12 May 2021 11:36:56 +0200 Edouard Tisserant Add ThirPartyPath call in util.path module, so that individual extensions don't have to each implement same logic to find dependencies
Thu, 01 Apr 2021 15:51:24 +0200 Edouard Tisserant IDE: Add a shortcut to project "Clean" action : F9
Mon, 29 Mar 2021 15:46:02 +0200 Edouard Tisserant Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows.
Tue, 23 Mar 2021 05:08:51 +0100 Edouard Tisserant Allow using spin() from ProcessLogger even with no logger given.
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.
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.
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.
Tue, 02 Mar 2021 09:28:44 +0100 Edouard Tisserant IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c.
Tue, 02 Mar 2021 09:25:55 +0100 Edouard Tisserant IDE: Log: Cosmetic changes, refactoring
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.
Sun, 28 Feb 2021 21:45:10 +0100 Edouard Tisserant IDE: Fixed log console that was not updating line by line smoothly when building.
Fri, 09 Apr 2021 09:45:28 +0200 Edouard Tisserant merge
Tue, 02 Feb 2021 13:47:48 +0100 Tomaz Orac Merge
Thu, 28 Jan 2021 14:51:16 +0000 Mario de Sousa merge
Thu, 28 Jan 2021 14:50:26 +0000 Mario de Sousa modbus plugin: add (user accessible) transaction bool flags for servers/slaves; FIX BUG in previous commit affecting RTU slaves.
Thu, 28 Jan 2021 14:17:40 +0000 Mario de Sousa modbus plugin: add (user accessible) transaction counters for servers/slaves
Tue, 23 Feb 2021 16:16:12 +0100 Edouard Tisserant PLCObject : Ensure that PreStart is executed before starting PLC. Also, make sure that python thread doesn't enter in a start/stop loop when ordered to stop.
Mon, 18 Jan 2021 10:59:28 +0100 Edouard Tisserant Merge
Fri, 25 Dec 2020 17:12:02 +0000 Mario de Sousa merge
Fri, 25 Dec 2020 17:11:38 +0000 Mario de Sousa modbus plugin: add/fix comments
Mon, 21 Dec 2020 22:35:07 +0000 Mario de Sousa merge
Mon, 21 Dec 2020 22:32:03 +0000 Mario de Sousa Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16)
Mon, 21 Dec 2020 22:26:36 +0000 Mario de Sousa Modbus plugin: map status of MB transaction onto 2 located BYTE vars (instead of a singlw WORD var).
Mon, 21 Dec 2020 21:15:47 +0000 Mario de Sousa Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable
Wed, 13 Jan 2021 10:28:09 +0100 Edouard Tisserant Removed harmful assert in ProcessLogger.
Tue, 22 Dec 2020 18:05:05 +0100 Edouard Tisserant Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1
Tue, 14 Jan 2020 11:04:18 +0100 Edouard Tisserant plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes
Fri, 03 Jul 2020 14:02:04 +0200 Edouard Tisserant Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.
Mon, 11 May 2020 11:10:38 +0200 Edouard Tisserant DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing
Tue, 11 Feb 2020 13:56:48 +0100 Edouard Tisserant XSLTransform.py: added get_error_log()
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.
Thu, 03 Sep 2020 11:16:08 +0200 Edouard Tisserant docsvg.py : Better error message when inkscape is not installed.
Sat, 04 Apr 2020 09:41:32 +0200 Edouard Tisserant Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04
Mon, 13 Jul 2020 13:56:42 +0200 Edouard Tisserant Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree.
Tue, 22 Dec 2020 14:53:15 +0100 Edouard Tisserant Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding
Mon, 21 Dec 2020 11:10:27 +0100 Edouard Tisserant WebInterface: better wording for wiping PLC content: "Repair"
Fri, 18 Dec 2020 11:50:28 +0100 Edouard Tisserant runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.
Thu, 10 Dec 2020 15:48:15 +0100 Edouard Tisserant Add a little test to see OnChange's .count .first .last in action
Thu, 10 Dec 2020 14:54:42 +0100 Edouard Tisserant Fixed "Onchange" object added in previous commit
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.
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
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.
Wed, 18 Nov 2020 10:15:44 +0100 Edouard Tisserant py_ext: better handling of coma separated OnChange attribute for python safe global variables.
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.
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.
Tue, 15 Sep 2020 13:57:06 +0200 Edouard Tisserant Modbus: fixed typo in ctype typing.
Fri, 11 Sep 2020 13:46:41 +0200 Edouard Tisserant MODBUS: Fix saving of websettings.
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.
Thu, 13 Aug 2020 19:00:38 +0100 Mario de Sousa Modbus plugin: reformat code, and add comment.
Thu, 13 Aug 2020 18:42:02 +0100 Mario de Sousa Modbus plugin: fix runtime periodic timer (don't use POSIX timer)
Wed, 01 Jul 2020 10:36:20 +0200 Edouard Tisserant Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions.
Mon, 29 Jun 2020 14:38:04 +0200 Edouard Tisserant Modbus: fix strange side effect of re-use of condition variables or mutex with Xenomai : without bzero of the associated types, mutex keeps locked.
Wed, 24 Jun 2020 14:38:11 +0200 Edouard Tisserant Modbus: fix client timer invalid arguments.
Tue, 23 Jun 2020 13:50:21 +0200 Edouard Tisserant Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions.
Fri, 19 Jun 2020 11:07:25 +0200 Edouard Tisserant Runtime: Fix typo in PLCObject leading to exception when reporting failure.
Thu, 18 Jun 2020 14:18:16 +0200 Edouard Tisserant Py_ext: use non-derived type when generating C code for handling Python PLC globals.
Wed, 17 Jun 2020 14:32:55 +0200 Edouard Tisserant tests/python : add some STRING PLC Python globals with OnChange.