- SVGHMI: add a SetPoint to Slider Widget, visible only when operating the slider. svghmi 2020-08-10, by Edouard Tisserant
- SVGHMI: Update Slider widget so that it doesn't display future value but actual value only. svghmi 2020-08-10, by 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 2020-08-10, by Edouard Tisserant
- Merge svghmi 2020-08-10, by Edouard Tisserant
- SVGHMI: Intermediate state while implementing local HMI variables. Now write to cache only (no send), still need to implement dispatch on change. svghmi 2020-08-08, by Edouard Tisserant
- Beremiz test project with newly created widgets. svghmi 2020-08-05, by usveticic
- Rebuilded gen_index_html.xslt after all new widgets were commited svghmi 2020-08-05, by usveticic
- Create new multistate widget which extand class widget svghmi 2020-08-05, by usveticic
- Create new CircularSlider widget which extand class widget svghmi 2020-08-05, by usveticic
- Create new slider widget which extand class widget svghmi 2020-08-05, by usveticic
- Reworked togglebutton widget to extand class widget svghmi 2020-08-05, by usveticic
- Changed keyboard to show on defined position. svghmi 2020-08-05, by usveticic
- Reworked button widget so it uses classes. svghmi 2020-08-05, by usveticic
- SVGHMI: allow multiple variables and formatting in Display widget. Formatting is printf style and given as first argument. If no formating is given as widget argument, space separated. svghmi 2020-08-06, by Edouard Tisserant
- SVGHMI : have to move some JS declarations from "preamble" to "declarations" and others from "declarations" to "definitions" section to make room for JS libraries that would be used by widget classes. svghmi 2020-08-06, by Edouard Tisserant
- SVGHMI: JS refactoring continued : "dispatch_value_to_widget" becomes widget class member "new_hmi_value" (was also broken by previous relativeness commit) svghmi 2020-08-05, by Edouard Tisserant
- SVGHMI: widgets are not anymore binary relative or absolute, but have a "relativeness". svghmi 2020-08-05, by Edouard Tisserant
- SVGHMI: More JS code refactoring : change_hmi_value and apply_hmi_value now methods of widget class. svghmi 2020-08-04, by Edouard Tisserant
- SVGHMI: Better JS code semantic in ForEach widget class. Update lagging generated xslt. svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: Add ForEach Widget is svghmi test svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: add get_idx(index) to widget objects to factorize a bit code repeated accross widgets. To be continued. svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: prefer apply_hmi_value() to change_hmi_value() when possible svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: Add RelativePages to tests svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: Update Widget Display templates to generate Class based declaration. svghmi 2020-08-03, by Edouard Tisserant
- SVGHMI: JsonTable now picks items from HMI:List, and update texts, all according to Json data. Still miss scrolling. svghmi 2020-07-22, by Edouard Tisserant
- SVGHMI: JsonTable now generate working data access code for data/* elements. svghmi 2020-07-17, by Edouard Tisserant
- SVGHMI: Minimal support for HMI:List : clones pointing to elements of any HMI:List are never unlinked, widgets using HMI:List will rely on this. svghmi 2020-07-17, by Edouard Tisserant
- SVGHMI: minimal JSON Table Widget communication infra + corresponding python code as py_ext code in svghmi test. To be continued. svghmi 2020-07-14, by Edouard Tisserant
- Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree. svghmi 2020-07-13, by Edouard Tisserant
- Python Runtime : stil untested optimization of Python Safe Globals. svghmi 2020-07-10, by Edouard Tisserant
- Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column. svghmi 2020-07-03, by Edouard Tisserant
- Merge from default svghmi 2020-07-03, by 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. svghmi 2020-06-29, by Edouard Tisserant
- Modbus: fix client timer invalid arguments. svghmi 2020-06-24, by Edouard Tisserant
- Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions. svghmi 2020-06-23, by Edouard Tisserant
- Runtime: Fix typo in PLCObject leading to exception when reporting failure. svghmi 2020-06-19, by Edouard Tisserant
- merged svghmi 2020-06-18, by Edouard Tisserant
- SVGHMI: Fix bug introduced when merging default svghmi 2020-06-18, by Edouard Tisserant
- SVGHMI: Add use of Python PLC Globals it test svghmi 2020-06-18, by Edouard Tisserant
- Merge default changes in SVGHMI svghmi 2020-06-18, by Edouard Tisserant
- Merge default changes in SVGHMI svghmi 2020-06-18, by Edouard Tisserant
- SVGHMI: add "unsubscribable" property to widgets in order to generalize what already happens for jump buttons. svghmi 2020-06-04, by Edouard Tisserant
- merge svghmi 2020-06-03, by Edouard Tisserant
- Merge svghmi 2020-05-29, by dgaberscek
- SVGHMI: Added widget toggleButton. svghmi 2020-05-26, by dgaberscek
- SVGHMI: Changed widget button handler to element attribute. svghmi 2020-05-26, by dgaberscek
- Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer. svghmi 2020-06-02, by Edouard Tisserant
- IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button. svghmi 2020-06-02, by Edouard Tisserant
- Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect. svghmi 2020-06-01, by Edouard Tisserant
- PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions. svghmi 2020-05-28, by Edouard Tisserant
- Solve import order problem when POULibrary imports ConfigTreeNode because of UserAddressedException. Now UserAddressedException is declared in POULibrary.py, as a quick and dirty fix, but some independant module should be created for beremiz exceptions in general. svghmi 2020-05-26, by Edouard Tisserant
- SVGHMI: stop using eval in change_hmi_value, apparently slowly leaking memory. svghmi 2020-05-21, by Edouard Tisserant
- SVGHMI: Switch widget was picking sub-elements from original SVG, not the result SVG ehwe clones are unlinked, thus making problems with svg:use based widgets. svghmi 2020-05-14, by Edouard Tisserant
- SVGHMI: When unlinking a clone of a group, do not create additional group, but merge transformation and styles, and replace label. This allows svg:use based widgets to directly access elements of svg:use targeted element. svghmi 2020-05-14, by Edouard Tisserant
- SVGHMI: Applies clone unlinking to widget themselves, not only to clones inside widgets. svghmi 2020-05-14, by Edouard Tisserant
- merge svghmi 2020-05-14, by Edouard Tisserant
- SVGHMI: Makes error when HMI tree is not well formed. Prevents multiple and non-first HMI_NODE, and ensure that all paths in HMI tree are unique. svghmi 2020-05-13, by Edouard Tisserant
- Added FatalError call to Libraries code gen, so that they can emit messages addressed like config tree nodes do. svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: more Widget properties declared ES6 style. svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: Switch widget now use class declaration svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: Update Button widget to class declaration, and add a button widget in tests/svghmi. svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: explicit handling of undefined maximum widget update frequency svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: removed dead code svghmi 2020-05-13, by Edouard Tisserant
- SVGHMI: Back button updated to class style svghmi 2020-05-13, by Edouard Tisserant
- merge svghmi 2020-05-11, by Edouard Tisserant
- DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing svghmi 2020-05-11, by Edouard Tisserant
- SVGHMI: Exclude non-widget HMI:* labeled elements from hmi_widget. Namely : HMI:Page HMI:Lang and HMI:List have been excluded. svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: clean up dead code, update generated xslt. svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: apply per class overloading of sub/unsub to Jump widget svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: apply per class overloading of sub/unsub to ForEach widget svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: Widget's specific sub/unsub traits are now wxpressed in widget's class. svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: Parameters common to all widget constructors now passed as ordered parameters. svghmi 2020-05-10, by Edouard Tisserant
- SVGHMI: One class per widget type, widget objects are instances of these classes, and members are passed through constructor. This allows to keep compatible with previous widget_defs template used in most widgets. svghmi 2020-05-08, by Edouard Tisserant
- SVGHMI: Add an exslt function to collect used widget types, in order to only include necessary JS definitions in furure changes. svghmi 2020-05-08, by Edouard Tisserant
- SVGHMI: Systematically output local name as /* comment */ when emiting content. svghmi 2020-05-08, by Edouard Tisserant
- Merge svghmi 2020-04-24, by Edouard Tisserant
- SVGHMI: Fix flawed logic to place nodes in the HMI tree, leading to wrecked tree in some cases. svghmi 2020-04-24, by Edouard Tisserant
- Added button and circular bar widgets. svghmi 2020-04-22, by dgaberscek
- SVGHMI: added more meaningful namespaces to emit javascript code from. svghmi 2020-04-20, by Edouard Tisserant
- SVGHMI: moved JS code of foreach and jump widget in corresponding widget_*.ysl2. To be continued. svghmi 2020-04-19, by Edouard Tisserant
- SVGHMI: spread JS code from svghmi/scripts.ysl2 in other .ysl2 files, using dedicated preamble and epilogue namespaces svghmi 2020-04-19, by Edouard Tisserant
- SVGHMI: Introduced "emit" to simplify producing per-topic code and content from anywhere in code. Applied to debug output, next to JS. svghmi 2020-04-19, by Edouard Tisserant
- SVGHMI: Move reflective debug tags from "reflect" to "debug" namespace, preparing for per-purpose namespaces. svghmi 2020-04-18, by Edouard Tisserant
- SVGHMI: Added scripts.ysl2 svghmi 2020-04-18, by Edouard Tisserant
- SVGHMI: moving code wher it belongs, and reformulate some declarations for better readability. svghmi 2020-04-18, by Edouard Tisserant
- SVGHMI: HMI:DropDown: more documentation. svghmi 2020-04-16, by Edouard Tisserant
- SVGHMI: Comments in HMI:DropDown source code svghmi 2020-04-15, by Edouard Tisserant
- SVGHMI: HMI:DropDown menu aligns to selected when opening svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: When clicking outside of opened HMI:DropDown box, close it. svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: Fix HMI:DropDown flicker on close. svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: HMI:DropDown now temporarily takes content from widget's arguments, until HMI:List is implemented. svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: Connect HMI:DropDown to value in HMI Tree, in svghmi test as well. svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: fix probable problem in HMI:Input, where value could be applied to wrong index if used in relative page. svghmi 2020-04-14, by 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 2020-04-14, by Edouard Tisserant
- SVGHMI: HMI:DropDown now catches all clicks when open svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: Add button element to HMI:DropDown, also fix problem with computed box margins. svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: HMI:DropDown now scrolls forward and backward svghmi 2020-04-14, by Edouard Tisserant
- SVGHMI: progress on HMI:DropDown - now selects some value on click, and close svghmi 2020-04-13, by Edouard Tisserant
- SVGHMI: HMI:DropDown work in progress, intermediate commit. Now menu's rectangle grows up to viewport borders. svghmi 2020-04-12, by Edouard Tisserant
- SVGHMI: intermediate commit while working on dropdown widget. svghmi 2020-04-09, by Edouard Tisserant
- SVGHMI: HMI is not speculating on PLC variable update anymore when sending new variable value. svghmi 2020-04-07, by 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 2020-04-04, by Edouard Tisserant
- SVGHMI: fixed keypad JS regarding shift/capslock and other details svghmi 2020-04-04, by Edouard Tisserant
- Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04 svghmi 2020-04-04, by Edouard Tisserant
- SVGHMI: Keypad working for HMI_STRING, still Shift/CapsLock not finished. svghmi 2020-04-03, by Edouard Tisserant
- SVGHMI: fix keyboard not showing svghmi 2020-04-03, by Edouard Tisserant
- SVGHMI: Added keypads to svghmi test's SVG file svghmi 2020-04-03, by Edouard Tisserant
- merge svghmi 2020-04-03, by Edouard Tisserant
- SVGHMI: Keypad: added code to re-attach keypad when starting edit. svghmi 2020-04-02, by Edouard Tisserant
- SVGHMI: removed debug code svghmi 2020-04-02, by Edouard Tisserant
- SVGHMI: More infrastructure for editing values with a keypad. svghmi 2020-04-02, by Edouard Tisserant
- SVGHMI: Widget input buttons should be clickable through svg:use (onclick attribute instead of addEventListener) svghmi 2020-04-02, by Edouard Tisserant
- SVGHMI: moved dead code to where it belongs svghmi 2020-04-01, by Edouard Tisserant
- SVGHMI: empty widget_keypad.ysl2, WIP svghmi 2020-04-01, by Edouard Tisserant
- SVGHMI: HMI:Switch now accepts boolean values 'true' and 'false' svghmi 2020-03-31, by 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 2020-03-30, by Edouard Tisserant
- SVGHMI: prevent man-made memory leak by limiting back button history items count to 42 svghmi 2020-03-30, by Edouard Tisserant
- SVGHMI: collect debug data through xslt reflectivity instead of yml2/python trick svghmi 2020-03-29, by Edouard Tisserant
- SVGHMI: Jump widget can now display as active or inactive, if corresponfing "active" and "inactive labeled elements are provided. svghmi 2020-03-27, by Edouard Tisserant
- SVGHMI: added Back widget. svghmi 2020-03-26, by Edouard Tisserant
- SVGHMI: Jump widget now make errors if path given for relative jump doesn't match target page reference path class. svghmi 2020-03-26, by Edouard Tisserant
- SVGHMI: Check that explicit relative page jump path is consistant with destination page reference path. svghmi 2020-03-26, by Edouard Tisserant
- SVGHMI: ForEach Widget now has a better wrap-around when scrolling : hit the boundary systematically before wrapping svghmi 2020-03-25, by Edouard Tisserant
- SVGHMI: Alow relative relative Jump. (i.e, relative jump from a foreach widget) svghmi 2020-03-25, by Edouard Tisserant
- SVGHMI: Generalize applying cache to widgets, be it from page or ForEach widgets. Now ForEach widget buttons work as expected. svghmi 2020-03-25, by Edouard Tisserant
- SVGHMI: Widget ForEach buttons now call corresponding methods. svghmi 2020-03-24, by Edouard Tisserant
- SVGHMI: ForEach now has working (un)subscribe. Fixed PageSwitch that wasn't behaving when jumping to current page with another path. svghmi 2020-03-24, by 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 2020-03-23, by 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 2020-03-23, by Edouard Tisserant
- SVGHMI: ForEach knows its own widgets svghmi 2020-03-23, by Edouard Tisserant
- SVGHMI: add widget_foreach.ysl2 svghmi 2020-03-20, by Edouard Tisserant
- SVGHMI: make root HMI tree node a HMI_NODE, droped HMI_ROOT node type svghmi 2020-03-20, by Edouard Tisserant
- SVGHMI: reworked widget (un)subscription now a method of widgect object, allowing special subscription methods svghmi 2020-03-19, by Edouard Tisserant
- SVGHMI: Exclude (again) sub-widgets of forEach widget from page-switch managed widget. svghmi 2020-03-19, by Edouard Tisserant
- SVGHMI: cosmetic changes svghmi 2020-03-19, by Edouard Tisserant
- SVGHMI: Simplification and optimization. func:parselabel becomes a template. svghmi 2020-03-19, by Edouard Tisserant
- SVGHMI: intermediate untested state. Excluded ForEach widget from pages handled widgets. svghmi 2020-03-18, by Edouard Tisserant
- SVGHMI: update Makefile to pick all changes to any dependency svghmi 2020-03-18, by Edouard Tisserant
- SVGHMI: created widget_*.ysl2. Renamed widget_common in widgets_common, so that it doesn't match globing. svghmi 2020-03-18, by Edouard Tisserant
- SVGHMI: moving comments svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: added widget_common.ysl2 svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: More readable debug output gen code svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: Cosmetic changes svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: added inline_svg.ysl2 svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: detachable_elements.ysl2 becomes detachable_pages.ysl2, and includes logic to process pages elements. Other minor code moves. svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: moved debug code svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: created detachable_elements.ysl2 svghmi 2020-03-17, by Edouard Tisserant
- SVGHMI: more debug code moved to hmi_tree.ysl2 svghmi 2020-03-17, by 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 2020-03-17, by Edouard Tisserant
- SVGHMI: created bbox_intersect.ysl2 svghmi 2020-03-16, by 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 2020-03-16, by Edouard Tisserant
- SVGHMI: relative pages and page jumps svghmi 2020-03-13, by 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 2020-03-13, by Edouard Tisserant
- SVGHMI: significant whitespace changes svghmi 2020-03-12, by Edouard Tisserant
- SVGHMI: unsignificant changes or changes in generated code svghmi 2020-03-12, by 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 2020-03-12, by Edouard Tisserant
- SVGHMI: cosmetic code moving svghmi 2020-03-12, by 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 2020-03-10, by Edouard Tisserant
- SVGHMI: fix wrong updates of HMI variables on each change, especially when not subscribed. svghmi 2020-03-09, by Edouard Tisserant
- SVGHMI: whitespaces svghmi 2020-03-09, by Edouard Tisserant
- SVGHMI: fixed repeated error when Input widget is missing 'value' element svghmi 2020-03-06, by 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 2020-03-06, by 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 2020-03-06, by Edouard Tisserant
- SVGHMI: Fix disapearing elements in case of nested detachable elements. svghmi 2020-03-05, by Edouard Tisserant
- SVGHMI: Meter widget accepts 2 arguments : min and max, taken in account when min or max text element is missing svghmi 2020-03-05, by 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 2020-03-04, by Edouard Tisserant
- SVGHMI: more whitespace fixes svghmi 2020-03-04, by Edouard Tisserant
- SVGHMI: unlink clones (i.e. deep copy elements refered by svg:use) inside widget. svghmi 2020-03-04, by Edouard Tisserant
- SVGHMI: whitespaces and comments svghmi 2020-03-04, by Edouard Tisserant
- SVGHMI: completely fixed indentation of generated widget description. Lets try to keep it as-is until we can use yslt indentation. svghmi 2020-03-03, by Edouard Tisserant
- SVGHMI: re-indent generated JS svghmi 2020-03-03, by Edouard Tisserant
- SVGHMI: detach/re-attach elements required by pages on page switch svghmi 2020-03-02, by Edouard Tisserant
- SVGHMI: re-indenting svghmi 2020-03-02, by Edouard Tisserant
- SVGHMI: declares pages detachable requirements as an object, to find more efficiently common requirements svghmi 2020-03-02, by Edouard Tisserant
- SVGHMI: fix some JS + add generation of detachable elements, to be continued svghmi 2020-03-02, by Edouard Tisserant
- SVGHMI: now compute discardable elements first so that we can do better grouping of required elements when sumarizing. svghmi 2020-02-28, by Edouard Tisserant
- SVGHMI : documentation for new geometry intersection computation code + little fixes... svghmi 2020-02-28, by Edouard Tisserant
- SVGHMI: detachable and discardable elements sets, Reworked geometric intersection, toward more accurate page content detection. svghmi 2020-02-28, by 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 2020-02-27, by 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 2020-02-21, by Edouard Tisserant
- SVGHMI: optimize browser work by hiding (display:none) pages that are not displayed. svghmi 2020-02-21, by Edouard Tisserant
- SVGHMI: Better and less verbose SVG namespace handling in XSLT transform svghmi 2020-02-21, by Edouard Tisserant
- SVGHMI: Added mostly untested switch widget svghmi 2020-02-17, by 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 2020-02-14, by Edouard Tisserant
- SVGHMI: ensure that coordinate in CSV file generated by inkscape are both matching svg default unit and in default reference frame svghmi 2020-02-14, by Edouard Tisserant
- SVGHMI : still behave, even if important things are missing in SVG widget definitions (ex: needle missing for Meter widget) svghmi 2020-02-13, by Edouard Tisserant
- SVGHMI : fix watchdog exception when timeout null svghmi 2020-02-13, by 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 2020-02-11, by Edouard Tisserant
- SVGHMI : fixed bug happening when some SVG ids are containing dashes svghmi 2020-01-30, by Edouard Tisserant
- SVGHMI : wait for initial timeout after watchdog is triggered, since it generaly induces HMI restart svghmi 2020-01-23, by Edouard Tisserant
- SVGHMI : watchdog is now taking an initial and interval duration as CTN fields. svghmi 2020-01-23, by Edouard Tisserant
- SVGHMI : avoid caching of xhtml file by forcing cache-control header in http response. svghmi 2020-01-21, by Edouard Tisserant
- SVGHMI : HMI_STRING now also supported from HMI to PLC svghmi 2020-01-17, by Edouard Tisserant
- SVGHMI : cosmetic svghmi 2020-01-15, by Edouard Tisserant
- SVGHMI non significant fixes svghmi 2020-01-15, by Edouard Tisserant
- SVGHMI : support for HMI_STRING and HMI_BOOL svghmi 2020-01-14, by Edouard Tisserant
- plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes svghmi 2020-01-14, by Edouard Tisserant
- SVGHMI : Added python fomating {port} and {name} to commands so that command can build target URL svghmi 2020-01-13, by Edouard Tisserant
- SVGHMI : add on Start, Stop and Watchdog command fields to configuration svghmi 2020-01-10, by 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 2020-01-10, by 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 2019-12-18, by Edouard Tisserant
- SVGHMI : had to move the problem of wkaing up python thread from plc thread to platform specific code. svghmi 2019-12-09, by Edouard Tisserant
- SVGHMI: change collect/send thread looping condition to fix infinite loop in some cases svghmi 2019-12-09, by Edouard Tisserant
- SVGHMI: re-implemented tree view with classic wxTreeCtl svghmi 2019-12-03, by Edouard Tisserant
- Non significant changes, whitespaces, etc. svghmi 2019-12-03, by Edouard Tisserant
- SVGHMI: Added simple HMI Tree View. svghmi 2019-11-15, by Edouard Tisserant
- SVGHMI: add a class attribute to HMI Tree nodes, set when using HMI_NODE svghmi 2019-11-14, by Edouard Tisserant
- SVGHMI: HMI_LABEL and HMI_CLASS become HMI_NODE. svghmi 2019-11-13, by Edouard Tisserant
- Add FatalError() method to ConfigTreeNode. svghmi 2019-11-13, by Edouard Tisserant
- SVGHMI: various fixes to make SVGHMI behave on more versions of twisted and GCC. svghmi 2019-11-07, by 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 2019-10-30, by Edouard Tisserant
- SVGHMI: various insignificant code moves, commenting and typos fixes. svghmi 2019-10-29, by Edouard Tisserant
- SVGHMI : fancier second page in tests/svghmi svghmi 2019-10-29, by 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 2019-10-28, by Edouard Tisserant
- SVGHMI - added simple Meter widget. svghmi 2019-10-28, by 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 2019-10-27, by Edouard Tisserant
- SVGHMI: fixed HMI->PLC dataflow : not updates as expected, and not initialized properly after subscribe. svghmi 2019-10-27, by Edouard Tisserant
- Fixed one more sequel of 5f79b194fa63 'SVGHMI: filter out temporary variables created while generating ST code out of FBD.' svghmi 2019-10-24, by Edouard Tisserant
- SVGHMI: Added relative changes of HMI value from widgets. svghmi 2019-10-24, by Edouard Tisserant
- SVGHMI - Fixed svghmi.{c,js} about HMI -> PLC data unpack. svghmi 2019-10-22, by 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 2019-10-22, by Edouard Tisserant
- SVGHMI: dispatching data to minimalist "Display" text widget. svghmi 2019-10-19, by 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 2019-10-17, by Edouard Tisserant
- SVGHMI : many details about communication implemented in JS, with side effects. svghmi 2019-10-15, by 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 2019-10-11, by Edouard Tisserant
- SVGHMI fix logic for page membership detection svghmi 2019-10-10, by Edouard Tisserant
- SVGHMI compute default page svghmi 2019-10-10, by Edouard Tisserant
- SVGHMI: deduce pages content out of geometry (elements contained in page bounding box are in) svghmi 2019-10-09, by Edouard Tisserant
- SVGHMI: use func:function for parsing labels so that it can be used in predicates svghmi 2019-10-09, by Edouard Tisserant
- SVGHMI: moved/fixed some templates, avoided namespace problems, added parsing of HMI:* inkscape labels svghmi 2019-10-08, by Edouard Tisserant
- SVGHMI: now generating JS object describing widgets and pointing to SVG elements svghmi 2019-10-07, by Edouard Tisserant
- SVGHI: compute hmitree variables ordered index in xslt svghmi 2019-10-05, by Edouard Tisserant
- SVGHMI: now built. svghmi 2019-10-02, by Edouard Tisserant
- SVGHMI: Work in progress. C side mostly implemented, neither built nor tested. svghmi 2019-09-30, by Edouard Tisserant
- SVGHMI: More strict formating of active HMI labels : @ separator only used for paths svghmi 2019-09-27, by Edouard Tisserant
- SVGHMI: new test svg to drive next implementation svghmi 2019-09-26, by Edouard Tisserant
- Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2 svghmi 2019-09-25, by Edouard Tisserant
- Merge default in SVGHMI branch svghmi 2019-09-24, by Edouard Tisserant
- SVGHMI: Starting to define JS side more in details. svghmi 2019-09-20, by Edouard Tisserant
- SVGHMI: added transformation of code given in inkscape's description fields into javascript functions svghmi 2019-09-19, by Edouard Tisserant
- SVGHMI: gui.svg -> svghmi.svg svghmi 2019-09-19, by Edouard Tisserant
- SVGHMI: moved static JS code to a separate file included at xhtml generation time svghmi 2019-09-19, by 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 2019-09-18, by Edouard Tisserant
- PLCobject: Call "stop" and "cleanup" methods from python runtime files in reverse order compared to "init" and "start". svghmi 2019-09-18, by Edouard Tisserant
- SVGHMI: WIP for python<->C data exchange : message from browser hit the C side. svghmi 2019-09-16, by Edouard Tisserant
- SVGHMI: WIP for python<->C data exchange svghmi 2019-09-16, by Edouard Tisserant
- SVGHMI: WIP for python<->C data exchange svghmi 2019-09-16, by Edouard Tisserant
- SVGHMI: WIP for python<->C data exchange svghmi 2019-09-12, by Edouard Tisserant
- SVGHMI: single session for now svghmi 2019-09-12, by Edouard Tisserant
- SVGHMI: few fixes on serving svghmi 2019-09-12, by 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 2019-09-11, by Edouard Tisserant
- Non significant changes to mute GCC warnings about unused variables. svghmi 2019-09-11, by 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 2019-09-05, by Edouard Tisserant
- SVGHMI: Intermediate state while working on svghmi.c svghmi 2019-09-03, by Edouard Tisserant
- svghmi.c : deduplicated variable access code borrowed from plc_debug.c. Added targets/var_access.c. svghmi 2019-08-26, by Edouard Tisserant
- SVGHMI: Added iterators in svghmi.c copy-pasted form plc_debug.c svghmi 2019-08-23, by Edouard Tisserant
- SVGHMI: svghmi.c now has mutex, iterator, and read/write buffer. svghmi 2019-08-23, by Edouard Tisserant
- SVGHMI: draft for svghmi.c. It has all PLC variables pointed in HMI tree in an array. svghmi 2019-08-22, by Edouard Tisserant
- Pass HMITree to SVG transform. It seems it could really help to reduce JS tree binding logic in the end. svghmi 2019-08-20, by Edouard Tisserant
- Add special nodes at HMI Tree root, fix code to handle special node (no path). svghmi 2019-08-20, by 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 2019-08-20, by Edouard Tisserant
- yslt_noindent : Avoid YSLT's indent logic to interfere when using linequote. svghmi 2019-08-20, by Edouard Tisserant
- SVGHMI: make a reasonably basic test svghmi 2019-08-14, by Edouard Tisserant
- SVGHMI: filter out temporary variables created while generating ST code out of FBD. svghmi 2019-08-14, by Edouard Tisserant
- SVGHMI: added deduction of HMI tree from list of HMI_* instances. svghmi 2019-08-13, by Edouard Tisserant
- SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable. svghmi 2019-08-12, by Edouard Tisserant
- Allow using docutil.get_inkscape_path() on Linux also. svghmi 2019-08-12, by Edouard Tisserant
- SVGHMI: little fixes to make the build go through svghmi 2019-08-09, by Edouard Tisserant
- SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with. svghmi 2019-08-09, by Edouard Tisserant
- Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI) svghmi 2019-08-09, by Edouard Tisserant
- Complete SVGUI test minimal skeleton so that it builds. svghmi 2019-08-08, by Edouard Tisserant
- intermediate commit, work in progress svghmi 2019-08-07, by Edouard Tisserant
- Use a POU Library's Generate_C to collect all variables in SVGHMI. svghmi 2019-07-18, by Edouard Tisserant
- merged svghmi 2019-07-17, by Edouard Tisserant
- Enable svghmi plugin in features, and small fixes to skeleton. svghmi 2019-07-17, by Edouard Tisserant
- Merged default in svghmi svghmi 2019-07-15, by Edouard Tisserant
- Skeleton for svghmi extension svghmi 2019-07-12, by Edouard Tisserant
- IDE: Allow POU Libraries to inject PLC Configurations globals during build. 2021-06-30, by Edouard Tisserant
- WIP: initial setup. 2021-06-30, by Ivan Tyagov
- 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. 2021-06-16, by 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. 2021-06-14, by Edouard Tisserant
- IDE: Log: Prevent crash when display progress on empty log. 2021-06-11, by Edouard Tisserant
- Copy description when DnD variables from CodeFile CTN to POUs 2021-06-10, by Edouard Tisserant
- Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting. 2021-05-25, by 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. 2021-05-24, by Edouard Tisserant
- Add ThirPartyPath call in util.path module, so that individual extensions don't have to each implement same logic to find dependencies 2021-05-12, by Edouard Tisserant
- IDE: Add a shortcut to project "Clean" action : F9 2021-04-01, by Edouard Tisserant
- Fixed misuse of GridCellEditor in DurationCellEditor, potentially leading to crash on windows. 2021-03-29, by Edouard Tisserant
- Allow using spin() from ProcessLogger even with no logger given. 2021-03-23, by 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. 2021-03-10, by Edouard Tisserant
- IDE: Fix logging of external process execution time so that it is visible on windows as well. 2021-03-02, by Edouard Tisserant
- IDE: Process Logging : Add annotation in log so that user can see build is still alive and how long external process takes. 2021-03-02, by Edouard Tisserant
- IDE: Iec2CSettings: Log wasn't available in case of exception when launching iec2c. 2021-03-02, by Edouard Tisserant
- IDE: Log: Cosmetic changes, refactoring 2021-03-02, by 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. 2021-03-01, by Edouard Tisserant
- IDE: Fixed log console that was not updating line by line smoothly when building. 2021-02-28, by Edouard Tisserant
- merge 2021-04-09, by Edouard Tisserant
- Merge 2021-02-02, by Tomaz Orac
- merge 2021-01-28, by Mario de Sousa
- modbus plugin: add (user accessible) transaction bool flags for servers/slaves; FIX BUG in previous commit affecting RTU slaves. 2021-01-28, by Mario de Sousa
- modbus plugin: add (user accessible) transaction counters for servers/slaves 2021-01-28, by Mario de Sousa
- 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. 2021-02-23, by Edouard Tisserant
- Merge 2021-01-18, by Edouard Tisserant
- merge 2020-12-25, by Mario de Sousa
- modbus plugin: add/fix comments 2020-12-25, by Mario de Sousa
- merge 2020-12-21, by Mario de Sousa
- Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16) 2020-12-21, by Mario de Sousa
- Modbus plugin: map status of MB transaction onto 2 located BYTE vars (instead of a singlw WORD var). 2020-12-21, by Mario de Sousa
- Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable 2020-12-21, by Mario de Sousa
- Removed harmful assert in ProcessLogger. 2021-01-13, by Edouard Tisserant
- Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1 2020-12-22, by Edouard Tisserant
- plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes 2020-01-14, by Edouard Tisserant
- Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column. 2020-07-03, by Edouard Tisserant
- DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing 2020-05-11, by Edouard Tisserant
- XSLTransform.py: added get_error_log() 2020-02-11, by 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. 2020-08-31, by Edouard Tisserant
- docsvg.py : Better error message when inkscape is not installed. 2020-09-03, by Edouard Tisserant
- Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04 2020-04-04, by Edouard Tisserant
- Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree. 2020-07-13, by Edouard Tisserant
- Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding 2020-12-22, by Edouard Tisserant
- WebInterface: better wording for wiping PLC content: "Repair" 2020-12-21, by Edouard Tisserant
- runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature. 2020-12-18, by Edouard Tisserant
- Add a little test to see OnChange's .count .first .last in action 2020-12-10, by Edouard Tisserant
- Fixed "Onchange" object added in previous commit 2020-12-10, by 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. 2020-12-10, by Edouard Tisserant
- Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode 2020-11-20, by 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. 2020-11-18, by Edouard Tisserant
- py_ext: better handling of coma separated OnChange attribute for python safe global variables. 2020-11-18, by Edouard Tisserant
- Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched. 2020-11-02, by Edouard Tisserant
- PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly. 2020-10-20, by Edouard Tisserant
- Modbus: fixed typo in ctype typing. 2020-09-15, by Edouard Tisserant
- MODBUS: Fix saving of websettings. 2020-09-11, by 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. 2020-09-10, by Edouard Tisserant
- Modbus plugin: reformat code, and add comment. 2020-08-13, by Mario de Sousa
- Modbus plugin: fix runtime periodic timer (don't use POSIX timer) 2020-08-13, by Mario de Sousa
- Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions. 2020-07-01, by 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. 2020-06-29, by Edouard Tisserant
- Modbus: fix client timer invalid arguments. 2020-06-24, by Edouard Tisserant
- Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions. 2020-06-23, by Edouard Tisserant
- Runtime: Fix typo in PLCObject leading to exception when reporting failure. 2020-06-19, by Edouard Tisserant
- Py_ext: use non-derived type when generating C code for handling Python PLC globals. 2020-06-18, by Edouard Tisserant
- tests/python : add some STRING PLC Python globals with OnChange. 2020-06-17, by Edouard Tisserant
- Runtime: STRING type for Python PLC Globals was making problem with strings, since generated code wasn't doing comparison properly. 2020-06-17, by Edouard Tisserant
- Merge 2020-06-16, by Tomaz Orac
- Modbus: more comments to remember some necessary changes. 2020-06-16, by Edouard Tisserant
- Modbus/BACnet : add some comments so that we don't forget some pending optimization. 2020-06-16, by Edouard Tisserant
- Modbus: Delete stored configuration when identical to default configuration. 2020-06-16, by Edouard Tisserant
- BACnet: prevent saving configuration that is same as default, delete it if so. 2020-06-15, by Edouard Tisserant
- BACnet and Modbus : fix configuration storage directory 2020-06-15, by Edouard Tisserant
- Runtime extrension web settings: distinguish display string and token when calling NS.newExtensionSetting, thus allowing meaningful name to be displayed instead of an id. 2020-06-15, by Edouard Tisserant
- Debug : when BEREMIZ_DEBUG file exist, display all commands issued in console. 2020-06-12, by Edouard Tisserant
- BACnet and Modbus : Simpler configuration management. NevowServer.py now allows each extension to create and delete multiple configuration forms in the setting page, deprecating delSettings and addAfter. 2020-06-12, by Edouard Tisserant
- BACnet and Modbus: Remove additional loading and unloading, use the one already in place for extensions. 2020-06-12, by Edouard Tisserant
- merge 2020-06-07, by Mario de Sousa
- Bacnet plugin web configuration: strip leading and trailing spaces for net. interface and port numb. 2020-06-07, by Mario de Sousa
- Modbus plugin, web interface: strip leading and trailing spaces from string parameters 2020-06-07, by Mario de Sousa
- Modbus plugin web interface: show the keyword "#ANY#" on TCP servers 2020-06-07, by Mario de Sousa
- Modbus plugin: fix bug: was checking user configuration against wrong limits 2020-06-07, by Mario de Sousa
- Modbus plugin: fix algorithm detecting Modbus TCP servers using the same IP port on the same network interface 2020-06-07, by Mario de Sousa
- Modbus plugin: check for duplicate "Configuration_Name" 2020-06-07, by Mario de Sousa
- add comment 2020-06-06, by Mario de Sousa
- add comment 2020-06-06, by Mario de Sousa
- merge 2020-06-06, by Mario de Sousa
- Modbus plugin web configuration: fix comments, and delete un-used code 2020-06-06, by Mario de Sousa
- Modbus plugin web configuration: use drop down choices for baud, parity and stop bits. 2020-06-06, by Mario de Sousa
- Modbus plugin web configuration: save node type and addr type to persistant storage 2020-06-05, by Mario de Sousa
- Add web extension: configure Modbus Server plugin parameters 2020-06-01, by Mario de Sousa
- Add web extension: configure Modbus plugin parameters (currently only supports Modbus clients) 2020-06-01, by Mario de Sousa
- Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer. 2020-06-02, by Edouard Tisserant
- IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button. 2020-06-02, by Edouard Tisserant
- Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect. 2020-06-01, by Edouard Tisserant
- merge 2020-05-28, by Mario de Sousa
- BACnet plugin: Add web interface for online parameter configuration 2020-05-28, by Mario de Sousa
- modbus_plugin: generate nicer error message, instead of a traceback 2020-05-28, by Mario de Sousa
- Modbus plugin: Add "exec. req. flag" and "write on change" features 2020-05-28, by Mario de Sousa
- PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions. 2020-05-28, by Edouard Tisserant
- Solve import order problem when POULibrary imports ConfigTreeNode because of UserAddressedException. Now UserAddressedException is declared in POULibrary.py, as a quick and dirty fix, but some independant module should be created for beremiz exceptions in general. 2020-05-26, by 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. 2019-12-18, by Edouard Tisserant
- Etherlab : Merged 2014-2018 changes from jblee and others 2019-11-25, by Edouard Tisserant
- Close branch ethercat_from_kosmos ethercat_from_kosmos 2019-11-25, by Edouard Tisserant
- EtherCat master plugin : commit changes recovered from KOSMOS 2018 installer, unkown author(s). ethercat_from_kosmos 2019-11-20, by Edouard Tisserant
- Add FatalError() method to ConfigTreeNode. 2019-11-13, by Edouard Tisserant
- Fixed one more sequel of marking temporary variables created while generating ST code out of FBD 2019-10-24, by Edouard Tisserant
- Changed yslt_noindent.yml2 again 2019-10-09, by Edouard Tisserant
- Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2 2019-09-25, by Edouard Tisserant
- More customizations to yslt 2019-09-19, by Edouard Tisserant
- PLCobject: Call "stop" and "cleanup" methods from python runtime files in reverse order compared to "init" and "start". 2019-09-18, by Edouard Tisserant
- Non significant changes to mute GCC warnings about unused variables. 2019-09-11, by Edouard Tisserant
- Fixed sequel of earlier commit in PLCGenerator.py. Some ref to temporary variables are still not using the _TMP_ prefix. They are quite hard to find, so to be continued... 2019-09-05, by Edouard Tisserant
- variable access code moved from plc_debug.c to targets/var_access.c for easiewr re-use in ext. 2019-08-26, by Edouard Tisserant
- Swap CTN code gen and Libraries code generation order. In general library part of an extension needs to be computed before CTN part. 2019-08-20, by Edouard Tisserant
- yslt_noindent : Avoid YSLT's indent logic to interfere when using linequote. 2019-08-20, by Edouard Tisserant
- Add marker to temporary variables created while generating ST code out of FBD, so that they can be recognized as such. 2019-08-14, by Edouard Tisserant
- Allow using docutil.get_inkscape_path() on Linux also. 2019-08-12, by Edouard Tisserant
- Moved XSLT model query python code so that XSLT part can be reused for other transformations 2019-08-09, by Edouard Tisserant
- Fixed unitialized parameter in instances_path stylesheet, leading to 2019-09-24, by Edouard Tisserant
- Fixed code quality according to pep8 and pylint. 2019-07-14, by Edouard Tisserant
- Fix exception on exit in some case, sequel of an earlier cleanup commit I couldn't find back. Disconnecting the event is apparently the way to go. https://wiki.wxpython.org/Surviving%20with%20wxEVT%20KILL%20FOCUS%20under%20Microsoft%20Windows 2019-07-13, by Edouard Tisserant
- PurgeBlobs was faulty, but it was never having anything to purge. Fixed. 2019-07-12, by Edouard Tisserant
- Fixed repetitive freezing of IDE when connection drops. 2019-07-12, by Edouard Tisserant
- Better error handling when blob transfer fail 2019-07-10, by Edouard Tisserant
- Removed dead code. 2019-07-10, by Edouard Tisserant
- Now expects 1 more columns in VARIABLE.CSV file generated by MatIEC. Pair with MatIEC commit 9cb7c8bf7dbc : 2019-07-09, by Edouard Tisserant
- Merged workaround for loading bug happening after automatic resize of function blocks. It appears that some code in GraphicCommons.py loop endlessly when wires coordinate do not align with x or y axis. Those erroneous coordinate are now filtered out when loaded in the view. 2019-06-18, by Edouard Tisserant
- Removed debug code and closed branch fix_fb_resize_wire_bug 2019-06-18, by Edouard Tisserant
- GraphicCommons.py : Wire.SetPoints() move filtering before computation of Start and End points to avoid setting them with arbitrary directions. fix_fb_resize_wire_bug 2019-06-18, by Edouard Tisserant
- GraphicCommons.py : rewrote Wire.Setpoints. fix_fb_resize_wire_bug 2019-06-18, by Edouard Tisserant
- 'Change POU Type To' becomes 'Duplicate as...', avoiding side effects of type change when POU is already instanciated. Also remove leftover returType tag in ex-function POUs, triggering exceptions at build time. 2019-06-13, by Edouard Tisserant
- Fix PLCObject's purge failing silently with extra_files. 2019-06-06, by Edouard Tisserant
- LogMessage shouldn't be serialized (can lead to blocking in case of exception in main thread), and do not require it. 2019-05-30, by Edouard Tisserant
- Fixed typo leading to some exception in some rare corner cases in worker.py 2019-05-30, by Edouard Tisserant
- Added missing 'path' field to WAMP addresses in URI editor. 2019-04-23, by Edouard Tisserant
- Fixed exception when using URI editor for PYRO addresses 2019-04-23, by Edouard Tisserant
- Avoid loading PLC at startup when autostart is not set in command line. As a side effect PLC status is artificially set to Stopped, and StartPLC eventually loads PLC if it is not already loaded. 2019-04-19, by Edouard Tisserant
- Add Repair() to WAMP interface 2019-04-19, by Edouard Tisserant
- Merged fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- Close fix_PLC_runtime_shutdown fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- Runtime worker : unblock the last waiting job and prevent any new job to wait when Main Worker is being shut down. fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- Add some "pipe to self" trick in Pyro server to accelerate runtime shutdown instead of waiting for arbitrary pyro timeout. fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- If call to GetPLCstatus can't be executed in PLC, then obtained status is disconnected. Status on "None" is not relevant anymore, and is replaced by Disconnected. fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- Enure that all threads are joined before trying to exit fix_PLC_runtime_shutdown 2019-04-18, by Edouard Tisserant
- Named runtime's threads to ease debugging 2019-04-17, by Edouard Tisserant
- Added Repair() png icon 2019-04-17, by Edouard Tisserant
- pep8 again... 2019-04-16, by Edouard Tisserant
- PEP8 fix : ./connectors/PYRO/PSK_Adapter.py:49:1: E302 expected 2 blank lines, found 1 2019-04-16, by Edouard Tisserant
- Added RepairPLC() to PLCObject. For now just calling PurgePLC and quit PLC runtime. 2019-04-16, by Edouard Tisserant
- Ensure Beremiz_service.py quits properly when Main Worker stops and wa are using Wx and/or Twisted. 2019-04-16, by Edouard Tisserant
- Added PurgePLC() method to PLCObject, to be invoked when PLC Status is broken. It clears PLC shared object an extra files and force status to Empty. Added correponding Repair button to toolbar, visible only when PLC status is broken. 2019-04-15, by Edouard Tisserant
- Background erase of debug variable panel was disabled for some reason, and it not anymore compatible with EVT_PAINT based refresh. It was leaving traces behind when removing traced variable. Fixed. 2019-04-11, by Edouard Tisserant
- force redraw only through EVT_PAINT event and use wxPaintDC, as described in wx documentation 2019-04-11, by Edouard Tisserant
- Fixed refresh problem following 9c5f835b031e, 9622418ac28c, c67488bd8134 : force redraw only through EVT_PAINT event and use wxPaintDC, as described in wx documentation 2019-04-11, by Edouard Tisserant
- merged 2019-04-11, by Edouard Tisserant
- Nicer name than 'var_name' for variable auto-renaming in Modbus 2019-04-10, by Edouard Tisserant
- Allow starting IDE without sslpsk module installed. Fail when connecting to PYROS if sslpsk unavailable. 2019-04-10, by Edouard Tisserant
- Fixed preview drawing/refresh problem in sfc/ld/fbd graphical element creation dialogs on windows (introduced in 9c5f835b031e, continuation of 9622418ac28c) 2019-04-09, by Edouard Tisserant
- pep8 white spaces 2019-04-09, by Edouard Tisserant
- Now default_evaluator is provided by runtime package 2019-04-09, by Edouard Tisserant
- merge 2019-04-09, by Edouard Tisserant
- Continue fixing deadlock of previous commit, this time occuring when waiting for 'cleanup' python runtime call to finish. Now 'init' and 'cleanup' python runtime calls are called directly from main thread, and aren't anymore invoked in the context of wxMainloop and/or twisted reactor. 2019-04-09, by Edouard Tisserant
- Fix deadlock when indirectly calling PLCObject's evaluator() from twisted of wx event loops. Was freezing while transfer/start/stop through Wamp. Serialize all PLCObject's call to self.PythonRuntimeCall into the same PythonThread thread. 2019-04-09, by Edouard Tisserant
- Fixed Wamp assertion because of unexpected type 2019-04-08, by Edouard Tisserant
- Enhanced statistics display code, used it and saw no more noticable leak while editing. Closing branch. wx.NewID_abuse_fix 2019-03-28, by Edouard Tisserant
- Conform to pep8 and pylint : 2019-04-07, by Edouard Tisserant
- Merged 2019-04-07, by Edouard Tisserant
- Fix typo in README.md 2019-04-03, by Andrey Skvortsov
- merged rename_on_location_change branch 2019-04-04, by Edouard Tisserant
- Rename checkbox and immediately apply. rename_on_location_change 2019-04-04, by Edouard Tisserant
- LocationCellEditor use better source for variable name replacement, and validate variable name before applying it or complains otherwise. rename_on_location_change 2019-04-03, by Edouard Tisserant
- LocationCellEditor now systematically change variable name according to name given by CTN, calls VariablePanel' OnVariableNameChange to update POU accordingly. rename_on_location_change 2019-04-02, by Edouard Tisserant
- Fix problem introduced in 9c5f835b031e : Exception in LDPowerRailDialog.py because of change in OnPaint/RefreshView/DrawPreview. 2019-03-28, by Edouard Tisserant
- Fixed RecentProjectMenu in BeremizIDE.py broken by untested changes in wx.NewID_abuse_fix. 2019-03-28, by Edouard Tisserant
- Merged wx.NewID_abuse_fix branch 2019-03-28, by Edouard Tisserant
- More wx.NewID abuse removal. This time BeremizIDE.py was cleaned. wx.NewID_abuse_fix 2019-03-28, by Edouard Tisserant
- Merged more of wx.NewID_abuse_fix branch 2019-03-28, by Edouard Tisserant
- More wx.NewID abuse removal. All Viewer.py got cured. wx.NewID_abuse_fix 2019-03-27, by Edouard Tisserant
- More wx.NewID abuse removal. This one was apparently silently unbinding toolbar butons when running out of mew wx IDs. wx.NewID_abuse_fix 2019-03-27, by Edouard Tisserant
- Dyslectic typos 2019-03-26, by Edouard Tisserant
- Close branch py3-fix. py3-fix 2019-01-07, by Andrey Skvortsov
- Close branch 1.1 Korean release. 1.1 Korean release 2017-07-27, by Andrey Skvortsov
- Close branch generate-button. generate-button 2019-03-18, by Andrey Skvortsov
- close #2486 head #2486 2019-01-07, by Andrey Skvortsov
- Close branch nevow_service_rework. nevow_service_rework 2019-01-07, by Andrey Skvortsov
- Close branch wx3-fix. wx3-fix 2019-01-07, by Andrey Skvortsov
- Intermediate merge of wx.NewID_abuse_fix branch but kept debug code in the branch. This is still work in progress, banch is NOT closed. 2019-03-26, by Edouard Tisserant
- Continued wx.NewID abuse removal in Viewer.py : Added AppendItem to use instead of AppendMenu, made examples with AddBlockPinMenuItems and AddAlignmentMenuItems wx.NewID_abuse_fix 2019-03-26, by Edouard Tisserant
- Continued wx.NewID abuse removal in Viewer.py : get rid of one call to AppendMenu method, having no real purpose apparently. To be continued. wx.NewID_abuse_fix 2019-03-26, by Edouard Tisserant
- Start fixing wx.NewId abuse in viewer.py. This shows how to avoid using AppendMenu() function, definitely useless. wx.NewID_abuse_fix 2019-03-26, by Edouard Tisserant
- VariablePanel's menu do not waste Wx IDs anymore (directly binds wx objects rather than crating new ID wit wx.NewId) wx.NewID_abuse_fix 2019-03-25, by Edouard Tisserant
- Instrument IDE code to find code abusing wx.NewId. wx.NewID_abuse_fix 2019-03-26, by Edouard Tisserant
- Fix error when searching accross project. Collection of result wasn't initialized and was failing in case some CTN was returning no result. 2019-03-22, by Edouard Tisserant
- Make spaghetti-code-quality great again. 2019-03-22, by Edouard Tisserant
- Merged 2019-03-22, by Edouard Tisserant
- Add Docker files to build containers to run automated tests 2019-03-18, by Andrey Skvortsov
- merge 2019-03-18, by Andrey Skvortsov
- check_source.sh: fix sed error: -e expression #1, char 25: Invalid range end 2019-03-18, by Andrey Skvortsov
- Fix pylint warning [C0325(superfluous-parens), ] Unnecessary parens after u'if' keyword 2019-03-18, by Andrey Skvortsov
- Update Beremiz dependencies because of added PYROS:// support 2019-03-13, by Andrey Skvortsov
- Fix header and convert comments to docstrings in PSK_Adapter 2019-03-13, by Andrey Skvortsov
- Fix Pyro work with SSL wrapper (sslpsk) 2019-03-13, by Andrey Skvortsov
- Fix crash in runtime if PSK secret is missing 2019-03-13, by Andrey Skvortsov