Mon, 12 Sep 2022 11:56:52 +0200SVGHMI: re-arrange Animate and data Dispath code paths.
Edouard Tisserant [Mon, 12 Sep 2022 11:56:52 +0200] rev 3602
SVGHMI: re-arrange Animate and data Dispath code paths.

Fri, 09 Sep 2022 10:34:23 +0200SVGHMI: add an exemple that demonstrate use of Jump widget in different use cases.
Edouard Tisserant [Fri, 09 Sep 2022 10:34:23 +0200] rev 3601
SVGHMI: add an exemple that demonstrate use of Jump widget in different use cases.

Fri, 09 Sep 2022 10:06:02 +0200SVGHMI: refactor an factorize widget dispatch() method calling
Edouard Tisserant [Fri, 09 Sep 2022 10:06:02 +0200] rev 3600
SVGHMI: refactor an factorize widget dispatch() method calling

Fri, 09 Sep 2022 09:45:27 +0200SVGHMI: fix ToggleButton not always reflecting current state
Edouard Tisserant [Fri, 09 Sep 2022 09:45:27 +0200] rev 3599
SVGHMI: fix ToggleButton not always reflecting current state

Fri, 09 Sep 2022 09:44:03 +0200IDE: fix exception transfering or reconnecting after tracing variables
Edouard Tisserant [Fri, 09 Sep 2022 09:44:03 +0200] rev 3598
IDE: fix exception transfering or reconnecting after tracing variables

Fri, 02 Sep 2022 12:02:43 +0200SVGHMI: Add predefined assignments to jump widget to notify PLC or other widgets about jump.
Edouard Tisserant [Fri, 02 Sep 2022 12:02:43 +0200] rev 3597
SVGHMI: Add predefined assignments to jump widget to notify PLC or other widgets about jump.

Fri, 02 Sep 2022 10:46:05 +0200SVGHMI: continue rework of Jump widget to cope with Enable Expressions.
Edouard Tisserant [Fri, 02 Sep 2022 10:46:05 +0200] rev 3596
SVGHMI: continue rework of Jump widget to cope with Enable Expressions.

Questioning widget's activity and disability all together.
Now active/inactive/disable masquarade is all managed in widgets_common.
Propagated changes to widget already using activity (buttons)

Wed, 31 Aug 2022 12:16:09 +0200SVGHMI: rework Jump widget to cope with Enable Expressions.
Edouard Tisserant [Wed, 31 Aug 2022 12:16:09 +0200] rev 3595
SVGHMI: rework Jump widget to cope with Enable Expressions.

Relative jumps are not disabled implicitely anymore when pointed HMI_NODE is 0.
Also, "activable()" implementation was enhanced to make it optional.

Tue, 23 Aug 2022 12:19:44 +0200SVGHMI: add support for "enable expressions" with arbitrary variable name assignment.
Edouard Tisserant [Tue, 23 Aug 2022 12:19:44 +0200] rev 3594
SVGHMI: add support for "enable expressions" with arbitrary variable name assignment.

HMI tree paths can be prefixed with a variable name "@name=/MY/HMI/VAR"
Widget declarations can end with a "#" followed by a JS expression that refers to name given to variables.
Widget is disabled if expression's result is false.

Commit includes some more-or-less related generated code refactoring, that should simplify extending widget's variables attributes.

Fri, 19 Aug 2022 10:22:16 +0200SVGHMI: preliminary implementation of a general enable bit for all widgets, using "#" at the end of widget declaration, and a "disabled" element that becomes visible instead of widget when disabled.
Edouard Tisserant [Fri, 19 Aug 2022 10:22:16 +0200] rev 3593
SVGHMI: preliminary implementation of a general enable bit for all widgets, using "#" at the end of widget declaration, and a "disabled" element that becomes visible instead of widget when disabled.

Fri, 12 Aug 2022 09:34:24 +0200SVGHMI: rename veriables in parse_labels.ysl2 for better readability
Edouard Tisserant [Fri, 12 Aug 2022 09:34:24 +0200] rev 3592
SVGHMI: rename veriables in parse_labels.ysl2 for better readability

Tue, 13 Sep 2022 16:22:09 +0200OPC-US client: add support for x509 and user+password authentication. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 16:22:09 +0200] rev 3591
OPC-US client: add support for x509 and user+password authentication.

Commit for backup not including tests since encrypted OPC-UA test are still not valid.

Tue, 13 Sep 2022 10:11:25 +0200IDE: fix wxPython 3->4 API change leading to exception in type selection menu in CodeFileEditor wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 10:11:25 +0200] rev 3590
IDE: fix wxPython 3->4 API change leading to exception in type selection menu in CodeFileEditor

Tue, 06 Sep 2022 21:06:36 +0200OPC-UA, IDE: add CTN parameters to support OPC-UA encryption and authentication. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 06 Sep 2022 21:06:36 +0200] rev 3589
OPC-UA, IDE: add CTN parameters to support OPC-UA encryption and authentication.

xmlclass had to be enhanced to support elements with no content in xsd:choice

Tue, 23 Aug 2022 08:39:08 +0200IDE: Fix tooltip not being shown anymore on any toolbars since switch to wxPython4. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Aug 2022 08:39:08 +0200] rev 3588
IDE: Fix tooltip not being shown anymore on any toolbars since switch to wxPython4.

Sun, 21 Aug 2022 17:44:03 +0200Cleanup and update version.py wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 21 Aug 2022 17:44:03 +0200] rev 3587
Cleanup and update version.py

Wed, 17 Aug 2022 15:55:56 +0200IDE: Fixed About dialog exception on Windows, and typo in about dialog's content. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 17 Aug 2022 15:55:56 +0200] rev 3586
IDE: Fixed About dialog exception on Windows, and typo in about dialog's content.

Tue, 16 Aug 2022 23:42:42 +0200runtime: fix bugs introduced in previous commit, and refactor some code wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 16 Aug 2022 23:42:42 +0200] rev 3585
runtime: fix bugs introduced in previous commit, and refactor some code

Tue, 16 Aug 2022 19:52:49 +0200Runtime: wx.app.mainLoop and twisted reactor now share main thread with runtime.Worker. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 16 Aug 2022 19:52:49 +0200] rev 3584
Runtime: wx.app.mainLoop and twisted reactor now share main thread with runtime.Worker.

This fixes exception when invoking python interactive shell from Runtime's tray
icon right-click menu.

Probably a consequence of wxPython upgrade, together with initial bad idea to
move wx.app.mainloop in non-main thread.

Sat, 13 Aug 2022 16:12:39 +0200Remove useless assignment wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 13 Aug 2022 16:12:39 +0200] rev 3583
Remove useless assignment

Fri, 12 Aug 2022 16:52:15 +0200SVGHMI: update generated XSLT wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 12 Aug 2022 16:52:15 +0200] rev 3582
SVGHMI: update generated XSLT

Fri, 12 Aug 2022 13:35:59 +0200tests: fix load_and_build_tests.pytest wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 12 Aug 2022 13:35:59 +0200] rev 3581
tests: fix load_and_build_tests.pytest

Leftover import from previously commented-out tests. Commented out as well.

Thu, 11 Aug 2022 17:39:12 +0200Merge changes from default in wxPython4 wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 11 Aug 2022 17:39:12 +0200] rev 3580
Merge changes from default in wxPython4

Thu, 11 Aug 2022 12:11:35 +0200SVGHMI: add support for multiline widget declaration using svg:desc.
Edouard Tisserant [Thu, 11 Aug 2022 12:11:35 +0200] rev 3579
SVGHMI: add support for multiline widget declaration using svg:desc.

Declaration started in inkscape:label and interupted by a '\' can be continued in the description field.
After an empty line, the rest of the description field is left for description text.

Tue, 02 Aug 2022 11:53:37 +0200Runtime: Fix PLC python thread crash in case of exception in PostStart customization hook.
Edouard Tisserant [Tue, 02 Aug 2022 11:53:37 +0200] rev 3578
Runtime: Fix PLC python thread crash in case of exception in PostStart customization hook.

Tue, 02 Aug 2022 11:50:54 +0200IDE+Runtime: fix exception when reconnecting with non-empty trace/force list.
Edouard Tisserant [Tue, 02 Aug 2022 11:50:54 +0200] rev 3577
IDE+Runtime: fix exception when reconnecting with non-empty trace/force list.

Sometimes, remote call to SetTraceVariableList returned None just after reconnecting:
- changed caller to accept None (in case of connection problem)
- changer SetTraceVariable list to return 4 (DEBUG_SUSPENDED) if debug is suspended

Fri, 22 Jul 2022 12:14:52 +0200Runtime: Retain: fix missuse of static classifier leading to ever increasing offset.
Edouard Tisserant [Fri, 22 Jul 2022 12:14:52 +0200] rev 3576
Runtime: Retain: fix missuse of static classifier leading to ever increasing offset.

Wed, 10 Aug 2022 16:44:58 +0200IDE: one more consequence of wxPython's 3 to 4 version bump wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 10 Aug 2022 16:44:58 +0200] rev 3575
IDE: one more consequence of wxPython's 3 to 4 version bump

Tue, 09 Aug 2022 09:33:26 +0200IDE+runtime: Fix .ico generation wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Aug 2022 09:33:26 +0200] rev 3574
IDE+runtime: Fix .ico generation

Mon, 08 Aug 2022 18:09:26 +0200IDE, SVGHMI: Workaround Snap package not launching Inskape, POEdit or Chromium directly, producing lot of output in Incskape CLI, and messing with TMPDIR wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 08 Aug 2022 18:09:26 +0200] rev 3573
IDE, SVGHMI: Workaround Snap package not launching Inskape, POEdit or Chromium directly, producing lot of output in Incskape CLI, and messing with TMPDIR

Mon, 08 Aug 2022 18:07:23 +0200IDE: wxPython4 consequences : wx.OPEN -> wx.FD_OPEN wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 08 Aug 2022 18:07:23 +0200] rev 3572
IDE: wxPython4 consequences : wx.OPEN -> wx.FD_OPEN

Sun, 31 Jul 2022 12:27:47 +0200toolchain: GCC: use CFLAGS, LDFLAGS and SYSROOT given in environment wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 31 Jul 2022 12:27:47 +0200] rev 3571
toolchain: GCC: use CFLAGS, LDFLAGS and SYSROOT given in environment

Sat, 30 Jul 2022 01:31:17 +0200IDE: fix About dialog not showing (wxPython4 sequel), update copyright section. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 30 Jul 2022 01:31:17 +0200] rev 3570
IDE: fix About dialog not showing (wxPython4 sequel), update copyright section.

Sat, 30 Jul 2022 10:11:59 +0200IDE: fix image generation from svg script that was deleting to many files on cleanup wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 30 Jul 2022 10:11:59 +0200] rev 3569
IDE: fix image generation from svg script that was deleting to many files on cleanup

Sat, 30 Jul 2022 10:08:51 +0200IDE: images: regenerate png according to latest changes in SVG wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 30 Jul 2022 10:08:51 +0200] rev 3568
IDE: images: regenerate png according to latest changes in SVG

Sat, 30 Jul 2022 00:05:51 +0200IDE: images/icons.svg: Update logo, icon, build, clean, transfer, connect and disconnect. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 30 Jul 2022 00:05:51 +0200] rev 3567
IDE: images/icons.svg: Update logo, icon, build, clean, transfer, connect and disconnect.

Thu, 28 Jul 2022 13:24:49 +0200LocalRuntime: Allow overriding local runtime python binary path using BEREMIZPYTHONPATH environment variable. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 28 Jul 2022 13:24:49 +0200] rev 3566
LocalRuntime: Allow overriding local runtime python binary path using BEREMIZPYTHONPATH environment variable.

Wed, 27 Jul 2022 21:34:23 +0200tests: debug_project IDE test: give up with unreliable OCR for "Force value" menu entry. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 27 Jul 2022 21:34:23 +0200] rev 3565
tests: debug_project IDE test: give up with unreliable OCR for "Force value" menu entry.

Wed, 27 Jul 2022 10:44:54 +0200IDE: fix primary buffer selection being reset on each write to console on X11. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 27 Jul 2022 10:44:54 +0200] rev 3564
IDE: fix primary buffer selection being reset on each write to console on X11.

This problem was making debug_project IDE test randomly failing

Mon, 25 Jul 2022 11:55:43 +0200test: IDE: Fix non repeatable select-all-delete in debug_project. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 25 Jul 2022 11:55:43 +0200] rev 3563
test: IDE: Fix non repeatable select-all-delete in debug_project.

Mon, 25 Jul 2022 11:51:41 +0200tests: Change OCR options to be more reliable on small fonts. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 25 Jul 2022 11:51:41 +0200] rev 3562
tests: Change OCR options to be more reliable on small fonts.

Mon, 18 Jul 2022 00:38:14 +0200tests: add Beremiz project used in opcua_test CLI test wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Jul 2022 00:38:14 +0200] rev 3561
tests: add Beremiz project used in opcua_test CLI test

Sun, 17 Jul 2022 23:30:02 +0200GitHub CI: my bad. m( Was just wrong version wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 23:30:02 +0200] rev 3560
GitHub CI: my bad. m( Was just wrong version

Sun, 17 Jul 2022 23:23:30 +0200GitHub CI: actions/checkout@v3 submodules=recursive fails. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 23:23:30 +0200] rev 3559
GitHub CI: actions/checkout@v3 submodules=recursive fails.

Sun, 17 Jul 2022 22:53:35 +0200Merge from default branch + fix traffic light example SVG missing background + update generated XSLT
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 22:53:35 +0200] rev 3558
Merge from default branch + fix traffic light example SVG missing background + update generated XSLT

Thu, 14 Jul 2022 11:40:27 +0200SVGHMI: update generated xslt file
Edouard Tisserant [Thu, 14 Jul 2022 11:40:27 +0200] rev 3557
SVGHMI: update generated xslt file

Thu, 14 Jul 2022 11:39:19 +0200SVGHMI: Warn at build time when SVG refers to non-existing widget types.
Edouard Tisserant [Thu, 14 Jul 2022 11:39:19 +0200] rev 3556
SVGHMI: Warn at build time when SVG refers to non-existing widget types.

Thu, 14 Jul 2022 11:35:22 +0200SVGHMI: add support for user JS script added in inkscape's document properties / scripting / embedded scripts.
Edouard Tisserant [Thu, 14 Jul 2022 11:35:22 +0200] rev 3555
SVGHMI: add support for user JS script added in inkscape's document properties / scripting / embedded scripts.

Wed, 13 Jul 2022 14:40:42 +0200SVGHMI: update generated XSLT file
Edouard Tisserant [Wed, 13 Jul 2022 14:40:42 +0200] rev 3554
SVGHMI: update generated XSLT file

Tue, 12 Jul 2022 12:12:52 +0200SVGHMI: re-organize animate() to ensure that page fade-out is always visible, also make fade-out curve more aggressive to enhance visual feedback.
Edouard Tisserant [Tue, 12 Jul 2022 12:12:52 +0200] rev 3553
SVGHMI: re-organize animate() to ensure that page fade-out is always visible, also make fade-out curve more aggressive to enhance visual feedback.

Sun, 17 Jul 2022 22:46:26 +0200tests: recommanded build options for open62541 leads to infinite linking time when building PLC
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 22:46:26 +0200] rev 3552
tests: recommanded build options for open62541 leads to infinite linking time when building PLC

Sun, 17 Jul 2022 22:42:56 +0200tests: one more stability related fix for debug_project IDE test
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 22:42:56 +0200] rev 3551
tests: one more stability related fix for debug_project IDE test

Sun, 17 Jul 2022 22:35:45 +0200tests: fix tests being systematically re-executed
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 22:35:45 +0200] rev 3550
tests: fix tests being systematically re-executed

Sun, 17 Jul 2022 18:17:43 +0200CLI: fix fake_wx for OPC-UA in CLI, match with test and requirements
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 18:17:43 +0200] rev 3549
CLI: fix fake_wx for OPC-UA in CLI, match with test and requirements

Sun, 17 Jul 2022 18:07:46 +0200CLI: Explicitely wait for user interrupt (-k) and flush stdout each line.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 18:07:46 +0200] rev 3548
CLI: Explicitely wait for user interrupt (-k) and flush stdout each line.

Sun, 17 Jul 2022 17:49:34 +0200tests: IDE: fix again debug_project, making it hopefully more stable
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 17:49:34 +0200] rev 3547
tests: IDE: fix again debug_project, making it hopefully more stable

Sun, 17 Jul 2022 17:47:11 +0200wxPython4 sequels: fix Wx exceptions ignored because no traceback
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 17 Jul 2022 17:47:11 +0200] rev 3546
wxPython4 sequels: fix Wx exceptions ignored because no traceback

Some exception triggered on wxPython side have None as traceback,
and exception hanlder was discarding them.

Fri, 15 Jul 2022 14:50:07 +0200tests: IDE: prevent edit_project to save modifed example so that it doesn't influence following tests
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:50:07 +0200] rev 3545
tests: IDE: prevent edit_project to save modifed example so that it doesn't influence following tests

Fri, 15 Jul 2022 14:48:29 +0200tests: IDE: force reporting screenshot even after failing command
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:48:29 +0200] rev 3544
tests: IDE: force reporting screenshot even after failing command

Fri, 15 Jul 2022 14:47:23 +0200tests: CLI: add simple test running python example
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:47:23 +0200] rev 3543
tests: CLI: add simple test running python example

Fri, 15 Jul 2022 14:46:27 +0200tests: docker: add dependencies for CLI testing
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:46:27 +0200] rev 3542
tests: docker: add dependencies for CLI testing

Fri, 15 Jul 2022 14:42:08 +0200tests: add support for CLI tests
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:42:08 +0200] rev 3541
tests: add support for CLI tests

Fri, 15 Jul 2022 14:40:55 +0200tests: fix debug_project.sikuli again.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:40:55 +0200] rev 3540
tests: fix debug_project.sikuli again.
- tooltip and context menu overlap
- text not being replaced in forcing dialog

Fri, 15 Jul 2022 14:38:33 +0200CLI: prevent LOCAL:// runtime to use GUI (tray icon) when launch from CLI.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jul 2022 14:38:33 +0200] rev 3539
CLI: prevent LOCAL:// runtime to use GUI (tray icon) when launch from CLI.

Mon, 11 Jul 2022 23:18:14 +0200Merge latest changes from default
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 11 Jul 2022 23:18:14 +0200] rev 3538
Merge latest changes from default

Mon, 11 Jul 2022 22:21:20 +0200wxPython4 sequels: fix exception in connection dialog, force black text in FBD.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 11 Jul 2022 22:21:20 +0200] rev 3537
wxPython4 sequels: fix exception in connection dialog, force black text in FBD.

- wxPython4 does not have RemoveSizer in API anymore.
- On GTK3 with dark theme default text colour is white, making it unreadable.

Fri, 08 Jul 2022 11:58:10 +0200SVGHMI: fix js exception because of trying to find already detached elements by id.
Edouard Tisserant [Fri, 08 Jul 2022 11:58:10 +0200] rev 3536
SVGHMI: fix js exception because of trying to find already detached elements by id.

Wed, 06 Jul 2022 10:39:11 +0200SVGHMI: better handling of page switch fade-out.
Edouard Tisserant [Wed, 06 Jul 2022 10:39:11 +0200] rev 3535
SVGHMI: better handling of page switch fade-out.

- In cases or relative jump to current page, page was keeping black after switch.
- Now keep track of undergoing page switch without comparing subscribed page to visible page.

Thu, 07 Jul 2022 21:41:35 +0200tests: nore details, please
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 07 Jul 2022 21:41:35 +0200] rev 3534
tests: nore details, please

Wed, 06 Jul 2022 17:04:11 +0200Github CI: upload artifact (reports) when failing
etisserant <edouard.tisserant@gmail.com> [Wed, 06 Jul 2022 17:04:11 +0200] rev 3533
Github CI: upload artifact (reports) when failing

Wed, 06 Jul 2022 14:39:36 +0200tests: add one more ignored pic to debug_project test
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 06 Jul 2022 14:39:36 +0200] rev 3532
tests: add one more ignored pic to debug_project test

Tue, 05 Jul 2022 10:16:11 +0200tests: add missing pic for debug_project sikuli test and remove depricated picture in edit_project
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 05 Jul 2022 10:16:11 +0200] rev 3531
tests: add missing pic for debug_project sikuli test and remove depricated picture in edit_project

Tue, 05 Jul 2022 08:35:40 +0200Github CI: use new name for test launching script
etisserant <edouard.tisserant@gmail.com> [Tue, 05 Jul 2022 08:35:40 +0200] rev 3530
Github CI: use new name for test launching script

Mon, 04 Jul 2022 09:30:20 +0200test: Fix context menu problems in debug view. This should fix debug_test as well. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Jul 2022 09:30:20 +0200] rev 3529
test: Fix context menu problems in debug view. This should fix debug_test as well.

- exception on right click on a wire
- tooltip hiding context menu in some case

Mon, 04 Jul 2022 08:44:23 +0200tests: add (broken) debug_project test, fix edit_project wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Jul 2022 08:44:23 +0200] rev 3528
tests: add (broken) debug_project test, fix edit_project

Mon, 04 Jul 2022 08:35:47 +0200tests: rename build_in_docker.sh to do_test_in_docker.sh wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Jul 2022 08:35:47 +0200] rev 3527
tests: rename build_in_docker.sh to do_test_in_docker.sh

Mon, 27 Jun 2022 10:26:04 +0200Merge default in wxPython4 branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 27 Jun 2022 10:26:04 +0200] rev 3526
Merge default in wxPython4 branch

Fri, 24 Jun 2022 14:56:44 +0200SVGHMI: update generated XSLT files
Edouard Tisserant [Fri, 24 Jun 2022 14:56:44 +0200] rev 3525
SVGHMI: update generated XSLT files

Fri, 24 Jun 2022 10:46:26 +0200SVGHMI: force initial state of Display widget to empty string.
Edouard Tisserant [Fri, 24 Jun 2022 10:46:26 +0200] rev 3524
SVGHMI: force initial state of Display widget to empty string.

Fri, 24 Jun 2022 09:24:19 +0200SVGHMI: set initial displayed value of input widget to empty string.
Edouard Tisserant [Fri, 24 Jun 2022 09:24:19 +0200] rev 3523
SVGHMI: set initial displayed value of input widget to empty string.

Fri, 24 Jun 2022 09:21:24 +0200SVGHMI: add warning_labels, same as optional_labels but emits warnings at build time if element is missing.
Edouard Tisserant [Fri, 24 Jun 2022 09:21:24 +0200] rev 3522
SVGHMI: add warning_labels, same as optional_labels but emits warnings at build time if element is missing.

Wed, 22 Jun 2022 11:55:38 +0200SVGHMI: update generated XSLT files
Edouard Tisserant [Wed, 22 Jun 2022 11:55:38 +0200] rev 3521
SVGHMI: update generated XSLT files

Wed, 22 Jun 2022 11:48:40 +0200SVGHMI: generalize detach/re-attach of binary choices for ToggleButton, PushButton, Button and Keypad's Shit and CapsLock.
Edouard Tisserant [Wed, 22 Jun 2022 11:48:40 +0200] rev 3520
SVGHMI: generalize detach/re-attach of binary choices for ToggleButton, PushButton, Button and Keypad's Shit and CapsLock.

Mon, 20 Jun 2022 09:30:11 +0200SVGHMI: also use order-preserving detach re-attach for hiding and showing active and inactive state.
Edouard Tisserant [Mon, 20 Jun 2022 09:30:11 +0200] rev 3519
SVGHMI: also use order-preserving detach re-attach for hiding and showing active and inactive state.

Mon, 20 Jun 2022 09:19:56 +0200SVGHMI: fix Switch widget so that order of choices elements is preserved across detaching and re-attaching.
Edouard Tisserant [Mon, 20 Jun 2022 09:19:56 +0200] rev 3518
SVGHMI: fix Switch widget so that order of choices elements is preserved across detaching and re-attaching.

Wed, 15 Jun 2022 11:46:48 +0200SVGHMI: update generated xslt files
Edouard Tisserant [Wed, 15 Jun 2022 11:46:48 +0200] rev 3517
SVGHMI: update generated xslt files

Wed, 15 Jun 2022 11:43:51 +0200SVGHMI: nasty scope shadowing bug... was making funny recursion, leading to really slow interaction.
Edouard Tisserant [Wed, 15 Jun 2022 11:43:51 +0200] rev 3516
SVGHMI: nasty scope shadowing bug... was making funny recursion, leading to really slow interaction.

Wed, 15 Jun 2022 11:41:59 +0200SVGHMI: fading page switch : to avoid blinking, page stays black once fading finished and next page is still not ready.
Edouard Tisserant [Wed, 15 Jun 2022 11:41:59 +0200] rev 3515
SVGHMI: fading page switch : to avoid blinking, page stays black once fading finished and next page is still not ready.

Wed, 15 Jun 2022 11:39:14 +0200SVGHMI: fading page switch : defer update of classList to next animate() call when finishing transition.
Edouard Tisserant [Wed, 15 Jun 2022 11:39:14 +0200] rev 3514
SVGHMI: fading page switch : defer update of classList to next animate() call when finishing transition.

classList update was happening in the same call as switch_page(), but this call is not meant to do any change in the DOM. This was triggering unwanted style and layout recomputation.

Tue, 14 Jun 2022 11:56:05 +0200SVGHMI: rework Switch widget : detach/attach elements instead of hiding with style.display, detach all possible choices at init.
Edouard Tisserant [Tue, 14 Jun 2022 11:56:05 +0200] rev 3513
SVGHMI: rework Switch widget : detach/attach elements instead of hiding with style.display, detach all possible choices at init.

Mon, 13 Jun 2022 12:03:58 +0200SVGHMI: add fading transition to make page switch feel more responsive on slow machines.
Edouard Tisserant [Mon, 13 Jun 2022 12:03:58 +0200] rev 3512
SVGHMI: add fading transition to make page switch feel more responsive on slow machines.

Mon, 13 Jun 2022 11:57:37 +0200SVGHMI: add a way for widgets and other yslt2 files to add css definitions to resultng page.
Edouard Tisserant [Mon, 13 Jun 2022 11:57:37 +0200] rev 3511
SVGHMI: add a way for widgets and other yslt2 files to add css definitions to resultng page.

Fri, 10 Jun 2022 09:39:10 +0200SVGHMI: update generated XSLT filesw
Edouard Tisserant [Fri, 10 Jun 2022 09:39:10 +0200] rev 3510
SVGHMI: update generated XSLT filesw

Fri, 03 Jun 2022 11:49:13 +0200SVGHMI: XY graph build produces error message if provided curve_N are not consistent.
Edouard Tisserant [Fri, 03 Jun 2022 11:49:13 +0200] rev 3509
SVGHMI: XY graph build produces error message if provided curve_N are not consistent.

Wed, 01 Jun 2022 11:12:26 +0200SVHMI: Keyboard: Replace untouched value when typing directly after open. Make info string (HMI variable name) optional.
Edouard Tisserant [Wed, 01 Jun 2022 11:12:26 +0200] rev 3508
SVHMI: Keyboard: Replace untouched value when typing directly after open. Make info string (HMI variable name) optional.

Wed, 01 Jun 2022 09:22:07 +0200merged
Edouard Tisserant [Wed, 01 Jun 2022 09:22:07 +0200] rev 3507
merged

Wed, 01 Jun 2022 09:15:26 +0200SVGHMI: update generated xslt.
Edouard Tisserant [Wed, 01 Jun 2022 09:15:26 +0200] rev 3506
SVGHMI: update generated xslt.

Wed, 01 Jun 2022 09:14:19 +0200SVGHMI: Add support for fixed X range (duration) on XY garph.
Edouard Tisserant [Wed, 01 Jun 2022 09:14:19 +0200] rev 3505
SVGHMI: Add support for fixed X range (duration) on XY garph.

Wed, 01 Jun 2022 09:12:59 +0200SVGHMI: add widget update rate limit on variable change.
Edouard Tisserant [Wed, 01 Jun 2022 09:12:59 +0200] rev 3504
SVGHMI: add widget update rate limit on variable change.

Wed, 01 Jun 2022 09:09:13 +0200SVGHMI: fix parsing of floating point and negative min and max limits in widget label syntax.
Edouard Tisserant [Wed, 01 Jun 2022 09:09:13 +0200] rev 3503
SVGHMI: fix parsing of floating point and negative min and max limits in widget label syntax.

Mon, 13 Jun 2022 19:22:31 +0200Fix typos breaking IDE wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Jun 2022 19:22:31 +0200] rev 3502
Fix typos breaking IDE

Mon, 13 Jun 2022 18:05:12 +0200Added preliminary CLI. Supports building a project, transfering and running on PLC. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Jun 2022 18:05:12 +0200] rev 3501
Added preliminary CLI. Supports building a project, transfering and running on PLC.

Thu, 26 May 2022 23:41:10 +0200IDE: fix exception happening in debug mode when logging process termination.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 26 May 2022 23:41:10 +0200] rev 3500
IDE: fix exception happening in debug mode when logging process termination.

Thu, 26 May 2022 23:39:30 +0200SVGHMI: Adapt to Inkscape 0.92 "-e" replaced by "-o" in 1.2, and workaround access right problem when generating thumbnails.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 26 May 2022 23:39:30 +0200] rev 3499
SVGHMI: Adapt to Inkscape 0.92 "-e" replaced by "-o" in 1.2, and workaround access right problem when generating thumbnails.

Wed, 25 May 2022 20:00:31 +0200Various fixes to make svghmi_traffic_light example bahave on windows.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 20:00:31 +0200] rev 3498
Various fixes to make svghmi_traffic_light example bahave on windows.

Wed, 25 May 2022 09:18:37 +0200IDE: fix saveAs dialog
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 09:18:37 +0200] rev 3497
IDE: fix saveAs dialog

Wed, 25 May 2022 09:12:58 +0200IDE: fix permission checking on windows for IDE project directory.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 09:12:58 +0200] rev 3496
IDE: fix permission checking on windows for IDE project directory.

Mon, 23 May 2022 18:12:30 +0200SVGHMI: fix active/inactive being swapped in ToggleButton
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:12:30 +0200] rev 3495
SVGHMI: fix active/inactive being swapped in ToggleButton

Mon, 23 May 2022 18:11:31 +0200IDE/Windows: Find Inkscape binary even if Inkscape was installed for current user only.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:11:31 +0200] rev 3494
IDE/Windows: Find Inkscape binary even if Inkscape was installed for current user only.

Mon, 23 May 2022 18:10:13 +0200IDE: Workaround exception caused by dead C/C++ swig-wrapped object when debug still try to update view after close.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:10:13 +0200] rev 3493
IDE: Workaround exception caused by dead C/C++ swig-wrapped object when debug still try to update view after close.

Mon, 23 May 2022 16:27:56 +0200IDE: better permission checking when opening a project.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 16:27:56 +0200] rev 3492
IDE: better permission checking when opening a project.

Mon, 30 May 2022 15:30:51 +0200Merge changes from default to wxPython4 branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 30 May 2022 15:30:51 +0200] rev 3491
Merge changes from default to wxPython4 branch

Mon, 30 May 2022 12:44:04 +0200SVGHMI: more fixes for XY graph + add XY graph test.
Edouard Tisserant [Mon, 30 May 2022 12:44:04 +0200] rev 3490
SVGHMI: more fixes for XY graph + add XY graph test.

Thu, 26 May 2022 12:11:42 +0200SVGHMI: Seems inkscape doesn't necessarily use tspan inside of text anymore.
Edouard Tisserant [Thu, 26 May 2022 12:11:42 +0200] rev 3489
SVGHMI: Seems inkscape doesn't necessarily use tspan inside of text anymore.

Wed, 25 May 2022 10:00:24 +0200SVGHMI: multiple fixes in XY graph widget. WIP.
Edouard Tisserant [Wed, 25 May 2022 10:00:24 +0200] rev 3488
SVGHMI: multiple fixes in XY graph widget. WIP.

Wed, 25 May 2022 09:55:36 +0200SVGHMI: fix dropdown widget in case it is used as language selection widget
Edouard Tisserant [Wed, 25 May 2022 09:55:36 +0200] rev 3487
SVGHMI: fix dropdown widget in case it is used as language selection widget

global i18n definitions changed but widget wasn't updated accordingly.

Wed, 25 May 2022 09:52:50 +0200SVGHMI: prevent exception with date/time formating in sprintf.js if lang wasn't already set.
Edouard Tisserant [Wed, 25 May 2022 09:52:50 +0200] rev 3486
SVGHMI: prevent exception with date/time formating in sprintf.js if lang wasn't already set.

Wed, 25 May 2022 09:51:22 +0200SVGHMI: Add forEach to local copy of pythonic.js
Edouard Tisserant [Wed, 25 May 2022 09:51:22 +0200] rev 3485
SVGHMI: Add forEach to local copy of pythonic.js

Wed, 11 May 2022 12:12:16 +0200SVGHMI: many fixes on xy trend graph. WIP.
Edouard Tisserant [Wed, 11 May 2022 12:12:16 +0200] rev 3484
SVGHMI: many fixes on xy trend graph. WIP.

Thu, 26 May 2022 23:41:10 +0200IDE: fix exception happening in debug mode when logging process termination.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 26 May 2022 23:41:10 +0200] rev 3483
IDE: fix exception happening in debug mode when logging process termination.

Thu, 26 May 2022 23:39:30 +0200SVGHMI: Adapt to Inkscape 0.92 "-e" replaced by "-o" in 1.2, and workaround access right problem when generating thumbnails.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 26 May 2022 23:39:30 +0200] rev 3482
SVGHMI: Adapt to Inkscape 0.92 "-e" replaced by "-o" in 1.2, and workaround access right problem when generating thumbnails.

Wed, 25 May 2022 20:00:31 +0200Various fixes to make svghmi_traffic_light example bahave on windows.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 20:00:31 +0200] rev 3481
Various fixes to make svghmi_traffic_light example bahave on windows.

Wed, 25 May 2022 09:18:37 +0200IDE: fix saveAs dialog
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 09:18:37 +0200] rev 3480
IDE: fix saveAs dialog

Wed, 25 May 2022 09:12:58 +0200IDE: fix permission checking on windows for IDE project directory.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 25 May 2022 09:12:58 +0200] rev 3479
IDE: fix permission checking on windows for IDE project directory.

Mon, 23 May 2022 18:12:30 +0200SVGHMI: fix active/inactive being swapped in ToggleButton
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:12:30 +0200] rev 3478
SVGHMI: fix active/inactive being swapped in ToggleButton

Mon, 23 May 2022 18:11:31 +0200IDE/Windows: Find Inkscape binary even if Inkscape was installed for current user only.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:11:31 +0200] rev 3477
IDE/Windows: Find Inkscape binary even if Inkscape was installed for current user only.

Mon, 23 May 2022 18:10:13 +0200IDE: Workaround exception caused by dead C/C++ swig-wrapped object when debug still try to update view after close.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 18:10:13 +0200] rev 3476
IDE: Workaround exception caused by dead C/C++ swig-wrapped object when debug still try to update view after close.

Mon, 23 May 2022 16:27:56 +0200IDE: better permission checking when opening a project.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 23 May 2022 16:27:56 +0200] rev 3475
IDE: better permission checking when opening a project.

Fri, 06 May 2022 11:04:54 +0200SVGHMI: fix syntax problems in xygraph
Edouard Tisserant [Fri, 06 May 2022 11:04:54 +0200] rev 3474
SVGHMI: fix syntax problems in xygraph

Fri, 06 May 2022 11:04:17 +0200SVGHMI: fix widget's update frequency forcing : syntax checking was enforcing unit and js code was using undefined variables
Edouard Tisserant [Fri, 06 May 2022 11:04:17 +0200] rev 3473
SVGHMI: fix widget's update frequency forcing : syntax checking was enforcing unit and js code was using undefined variables

Fri, 06 May 2022 11:02:03 +0200SVGHMI: fix syntax error in sprintf.js and force makefile to regen xslt files when sprintf.js changes
Edouard Tisserant [Fri, 06 May 2022 11:02:03 +0200] rev 3472
SVGHMI: fix syntax error in sprintf.js and force makefile to regen xslt files when sprintf.js changes

Fri, 06 May 2022 11:01:07 +0200SVGHMI: fix test/projects/svghmi "unspecified" frequency that was actualy specified...
Edouard Tisserant [Fri, 06 May 2022 11:01:07 +0200] rev 3471
SVGHMI: fix test/projects/svghmi "unspecified" frequency that was actualy specified...

Thu, 05 May 2022 11:52:24 +0200SVGHMI: Add premature implementation of XY chart.
Edouard Tisserant [Thu, 05 May 2022 11:52:24 +0200] rev 3470
SVGHMI: Add premature implementation of XY chart.

Fri, 06 May 2022 11:04:17 +0200SVGHMI: fix widget's update frequency forcing : syntax checking was enforcing unit and js code was using undefined variables
Edouard Tisserant [Fri, 06 May 2022 11:04:17 +0200] rev 3469
SVGHMI: fix widget's update frequency forcing : syntax checking was enforcing unit and js code was using undefined variables

Fri, 06 May 2022 11:02:03 +0200SVGHMI: fix syntax error in sprintf.js and force makefile to regen xslt files when sprintf.js changes
Edouard Tisserant [Fri, 06 May 2022 11:02:03 +0200] rev 3468
SVGHMI: fix syntax error in sprintf.js and force makefile to regen xslt files when sprintf.js changes

Fri, 06 May 2022 11:01:07 +0200SVGHMI: fix test/projects/svghmi "unspecified" frequency that was actualy specified...
Edouard Tisserant [Fri, 06 May 2022 11:01:07 +0200] rev 3467
SVGHMI: fix test/projects/svghmi "unspecified" frequency that was actualy specified...

Tue, 17 May 2022 14:49:23 +0200merge default
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 14:49:23 +0200] rev 3466
merge default

Tue, 17 May 2022 13:22:20 +0200Tests: No need to archive test results before uploading them as action artifacts.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 13:22:20 +0200] rev 3465
Tests: No need to archive test results before uploading them as action artifacts.

Tue, 17 May 2022 12:34:39 +0200Tests: ...
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 12:34:39 +0200] rev 3464
Tests: ...

Tue, 17 May 2022 12:24:59 +0200Tests: re-enable running test in github action, now that docker image should be cached.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 12:24:59 +0200] rev 3463
Tests: re-enable running test in github action, now that docker image should be cached.

Tue, 17 May 2022 09:22:16 +0200Tests: temporary disable problematic part, to force action to succeed so caching can happen.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 09:22:16 +0200] rev 3462
Tests: temporary disable problematic part, to force action to succeed so caching can happen.

Tue, 17 May 2022 08:25:09 +0200Tests: give test directory when creating container, not when running test.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 08:25:09 +0200] rev 3461
Tests: give test directory when creating container, not when running test.

Tue, 17 May 2022 07:27:24 +0200Tests: fix docker image export for GitHub Action caching.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 May 2022 07:27:24 +0200] rev 3460
Tests: fix docker image export for GitHub Action caching.

Mon, 16 May 2022 21:40:44 +0200Tests: More fixes amd enhancments to run tests on Github Actions
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 16 May 2022 21:40:44 +0200] rev 3459
Tests: More fixes amd enhancments to run tests on Github Actions

Mon, 16 May 2022 13:01:54 +0200Tests: use script rather than alias so that bash doesn't need to be interactive shell with a TTY
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 16 May 2022 13:01:54 +0200] rev 3458
Tests: use script rather than alias so that bash doesn't need to be interactive shell with a TTY

Mon, 16 May 2022 07:00:21 +0200Tests: remove -it from docker invocation
etisserant <edouard.tisserant@gmail.com> [Mon, 16 May 2022 07:00:21 +0200] rev 3457
Tests: remove -it from docker invocation

Workaround "The input device is not a TTY" error on Github Action.

Mon, 16 May 2022 00:10:30 +0200Create run_tests_in_docker.yml
etisserant <edouard.tisserant@gmail.com> [Mon, 16 May 2022 00:10:30 +0200] rev 3456
Create run_tests_in_docker.yml

Thu, 05 May 2022 11:48:43 +0200SVGHMI: Add support for forcing widget update frequency with period longer than a second. As an example, "HMI:Display|10s@/myvar" updates variable every 10 seconds.
Edouard Tisserant [Thu, 05 May 2022 11:48:43 +0200] rev 3455
SVGHMI: Add support for forcing widget update frequency with period longer than a second. As an example, "HMI:Display|10s@/myvar" updates variable every 10 seconds.

Thu, 05 May 2022 10:37:36 +0200SVGHMI: cosmetic fixes + removed dead code
Edouard Tisserant [Thu, 05 May 2022 10:37:36 +0200] rev 3454
SVGHMI: cosmetic fixes + removed dead code

Thu, 05 May 2022 10:35:29 +0200SVGHMI: allow widgets to disable clipping on variables given with min and max. Setting this.clip = false disables clipping.
Edouard Tisserant [Thu, 05 May 2022 10:35:29 +0200] rev 3453
SVGHMI: allow widgets to disable clipping on variables given with min and max. Setting this.clip = false disables clipping.

Thu, 05 May 2022 10:31:16 +0200SVGHMI: allow designating widget's sub-elements as main element child rather than descendant. Names staring with "/" in yslt call to labels() only match direct widget childs.
Edouard Tisserant [Thu, 05 May 2022 10:31:16 +0200] rev 3452
SVGHMI: allow designating widget's sub-elements as main element child rather than descendant. Names staring with "/" in yslt call to labels() only match direct widget childs.

Thu, 05 May 2022 10:24:56 +0200SVGHMI: add localized Date and Time support to sprintf.js. Use with "%D" or "%2.1D" format style.
Edouard Tisserant [Thu, 05 May 2022 10:24:56 +0200] rev 3451
SVGHMI: add localized Date and Time support to sprintf.js. Use with "%D" or "%2.1D" format style.

Fri, 06 May 2022 14:44:32 +0200Minor changes to README.md wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 06 May 2022 14:44:32 +0200] rev 3450
Minor changes to README.md

Fri, 06 May 2022 14:40:33 +0200wxPython4 sequels: usual naming problem in grid cell change events, non kw-args to menu.Append and event not being skipped. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 06 May 2022 14:40:33 +0200] rev 3449
wxPython4 sequels: usual naming problem in grid cell change events, non kw-args to menu.Append and event not being skipped.

Thu, 07 Apr 2022 15:28:24 +0200Tests: Fix missing <br/> in generated html report. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 07 Apr 2022 15:28:24 +0200] rev 3448
Tests: Fix missing <br/> in generated html report.

Thu, 07 Apr 2022 07:40:32 +0200Tests: add HTML report generation and a workaround to bad exception handling in sikuli. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 07 Apr 2022 07:40:32 +0200] rev 3447
Tests: add HTML report generation and a workaround to bad exception handling in sikuli.

In case of exception in python code, and since a thread is running
to observe stdout, sikuli was never terminated after an exception.
Unfortunately sys.exepthook doesn't work in that version of jython/sikuli.
Test are now written inside functions witch are passed to run_test to deal
with exception.

Tue, 29 Mar 2022 08:50:01 +0200Tests: refactored sikuli based test wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Mar 2022 08:50:01 +0200] rev 3446
Tests: refactored sikuli based test

Tue, 29 Mar 2022 08:30:03 +0200IDE: Postpone execution of keyboard shortcut commands when given while previous command is still being executed, to prevent CTR/builder jamming. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Mar 2022 08:30:03 +0200] rev 3445
IDE: Postpone execution of keyboard shortcut commands when given while previous command is still being executed, to prevent CTR/builder jamming.

Tue, 29 Mar 2022 08:19:46 +0200IDE: in case of unhandled exception, write bug report to given log file, so that test report can have it. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Mar 2022 08:19:46 +0200] rev 3444
IDE: in case of unhandled exception, write bug report to given log file, so that test report can have it.

Tue, 22 Mar 2022 14:51:30 +0100Merged default's changes in wxPython4 branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 22 Mar 2022 14:51:30 +0100] rev 3443
Merged default's changes in wxPython4 branch

Tue, 22 Mar 2022 14:50:46 +0100Tests: fix project edit test sikuli IDE test. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 22 Mar 2022 14:50:46 +0100] rev 3442
Tests: fix project edit test sikuli IDE test.

Background click based on bitmap matching doesn't work.
Grid dots are not good match candidates.
Rendering probably affected by virtual display's bpp or rasterizer approximations.

Wed, 02 Mar 2022 11:23:50 +0100runtime, retain: remove forgotten debug code.
Edouard Tisserant [Wed, 02 Mar 2022 11:23:50 +0100] rev 3441
runtime, retain: remove forgotten debug code.

Wed, 02 Mar 2022 11:22:55 +0100Runtime: removing dead code
Edouard Tisserant [Wed, 02 Mar 2022 11:22:55 +0100] rev 3440
Runtime: removing dead code

Tue, 15 Feb 2022 11:09:39 +0100IDE: removed one (last ?) wx.NewId() that was called on each opening of project tree popup menu
Edouard Tisserant [Tue, 15 Feb 2022 11:09:39 +0100] rev 3439
IDE: removed one (last ?) wx.NewId() that was called on each opening of project tree popup menu

Fri, 11 Mar 2022 14:43:37 +0100Tests: Re-introduced pytest based tests. Fixed them a bit, commented-out otherwise. Application tests only runs with logging test, and PLCOpenEditor tests seem broken. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 11 Mar 2022 14:43:37 +0100] rev 3438
Tests: Re-introduced pytest based tests. Fixed them a bit, commented-out otherwise. Application tests only runs with logging test, and PLCOpenEditor tests seem broken.

Sat, 05 Mar 2022 11:14:00 +0100Tests: Enhance robustness of stdout driven waiting state in Sikuli based tests. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 05 Mar 2022 11:14:00 +0100] rev 3437
Tests: Enhance robustness of stdout driven waiting state in Sikuli based tests.

Some tests were randomly passing, because from time to time waiting for idle was skiped. It was combination of multiple problems :
- buffering on stdout (now use readline + flush for each write to log)
- it is sometime required to wait for activity before waiting for timeout added "WaitForChangeAndIdle" to "stdoutIdleObserver"

Mon, 28 Feb 2022 21:53:14 +0100Tests: add an IDE test that relies on image matching. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 28 Feb 2022 21:53:14 +0100] rev 3436
Tests: add an IDE test that relies on image matching.

Mon, 28 Feb 2022 21:46:37 +0100Tests: re-introduce xvfb+x11vnc target in Makefile : xvfb_sikuli wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 28 Feb 2022 21:46:37 +0100] rev 3435
Tests: re-introduce xvfb+x11vnc target in Makefile : xvfb_sikuli

Mon, 28 Feb 2022 21:29:46 +0100Fix sequel of wxPython 4 port : double click on tab wasn't maximizing and was showing exception. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 28 Feb 2022 21:29:46 +0100] rev 3434
Fix sequel of wxPython 4 port : double click on tab wasn't maximizing and was showing exception.

Fri, 25 Feb 2022 14:04:09 +0100Tests: Makefile's PIPESTATUS turned into small letters (wrong vim shortcut ?) leading to always passing tests. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 25 Feb 2022 14:04:09 +0100] rev 3433
Tests: Makefile's PIPESTATUS turned into small letters (wrong vim shortcut ?) leading to always passing tests.

Fri, 18 Feb 2022 15:12:06 +0100Tests: Various enhancements in Makefile and sikuli common python code. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Feb 2022 15:12:06 +0100] rev 3432
Tests: Various enhancements in Makefile and sikuli common python code.

Fri, 18 Feb 2022 15:00:04 +0100Tests: Added BEREMIZPYTHONPATH to point to Python interpreter to use for tests. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Feb 2022 15:00:04 +0100] rev 3431
Tests: Added BEREMIZPYTHONPATH to point to Python interpreter to use for tests.

Fri, 18 Feb 2022 14:56:54 +0100Documentation/comment fix. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Feb 2022 14:56:54 +0100] rev 3430
Documentation/comment fix.

Fri, 18 Feb 2022 14:51:58 +0100IDE: Fix one more sequel of wxPython4 port : typo in editors/TextViewer.py wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Feb 2022 14:51:58 +0100] rev 3429
IDE: Fix one more sequel of wxPython4 port : typo in editors/TextViewer.py

Tue, 15 Feb 2022 16:10:19 +0100Tests: Add a Makefile variable to allow changing standalone headless X server command (Xvfb by default) wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 15 Feb 2022 16:10:19 +0100] rev 3428
Tests: Add a Makefile variable to allow changing standalone headless X server command (Xvfb by default)

Sun, 13 Feb 2022 21:21:14 +0100Merge default head that was only merged in wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 13 Feb 2022 21:21:14 +0100] rev 3427
Merge default head that was only merged in wxPython4

Sun, 13 Feb 2022 21:05:19 +0100merged default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 13 Feb 2022 21:05:19 +0100] rev 3426
merged default

Sun, 13 Feb 2022 21:01:27 +0100Add Docker image definition as reference platform to run IDE tests. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 13 Feb 2022 21:01:27 +0100] rev 3425
Add Docker image definition as reference platform to run IDE tests.

Sun, 13 Feb 2022 20:59:42 +0100Tests: added tests/Makefile and a first test in tests/ide_tests. Test requires sikuli and Xvfb or Xnest. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 13 Feb 2022 20:59:42 +0100] rev 3424
Tests: added tests/Makefile and a first test in tests/ide_tests. Test requires sikuli and Xvfb or Xnest.

Sun, 13 Feb 2022 20:53:00 +0100IDE: Add -l or --log command line parameter to give a file where all content witten to console window will be appended. File can be /dev/stdout. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 13 Feb 2022 20:53:00 +0100] rev 3423
IDE: Add -l or --log command line parameter to give a file where all content witten to console window will be appended. File can be /dev/stdout.

Wed, 02 Feb 2022 20:27:17 +0100Merge default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 02 Feb 2022 20:27:17 +0100] rev 3422
Merge default

Mon, 24 Jan 2022 11:14:56 +0100IDE: follow-up on change in 83ed4ea362db - added workaround when matiec generated files contain unexpected characters.
Edouard Tisserant [Mon, 24 Jan 2022 11:14:56 +0100] rev 3421
IDE: follow-up on change in 83ed4ea362db - added workaround when matiec generated files contain unexpected characters.

Thu, 20 Jan 2022 11:39:05 +0100Runtime : force using monotonic time in Timer (threading). Prevent watchdog to trigger when changing system time.
Edouard Tisserant [Thu, 20 Jan 2022 11:39:05 +0100] rev 3420
Runtime : force using monotonic time in Timer (threading). Prevent watchdog to trigger when changing system time.

Thu, 20 Jan 2022 11:16:52 +0100SVGHMI: remove debug code
Edouard Tisserant [Thu, 20 Jan 2022 11:16:52 +0100] rev 3419
SVGHMI: remove debug code

Wed, 19 Jan 2022 11:41:37 +0100SVGHMI: update generated XSLT
Edouard Tisserant [Wed, 19 Jan 2022 11:41:37 +0100] rev 3418
SVGHMI: update generated XSLT

Wed, 19 Jan 2022 11:41:04 +0100SVGHMI: fix again appication of frequency value when given in label. Use it on PushButton instance in svghmi test.
Edouard Tisserant [Wed, 19 Jan 2022 11:41:04 +0100] rev 3417
SVGHMI: fix again appication of frequency value when given in label. Use it on PushButton instance in svghmi test.

Tue, 25 Jan 2022 17:05:14 +0100TESTS: moved non-automated tests Beremiz projects stored as directories in /tests to new directory /tests/projects
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 25 Jan 2022 17:05:14 +0100] rev 3416
TESTS: moved non-automated tests Beremiz projects stored as directories in /tests to new directory /tests/projects

Tue, 25 Jan 2022 16:37:16 +0100Create README.md in tests
etisserant <edouard.tisserant@gmail.com> [Tue, 25 Jan 2022 16:37:16 +0100] rev 3415
Create README.md in tests

Wed, 19 Jan 2022 08:56:16 +0100SVGHMI: update generated xslt, and svghmi test project files
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 Jan 2022 08:56:16 +0100] rev 3414
SVGHMI: update generated xslt, and svghmi test project files

Wed, 19 Jan 2022 08:53:49 +0100SVGHMI: Add pushbutton widget, that can take reflect short press in variable, but has no garantee on consistency.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 Jan 2022 08:53:49 +0100] rev 3413
SVGHMI: Add pushbutton widget, that can take reflect short press in variable, but has no garantee on consistency.

Wed, 19 Jan 2022 08:51:45 +0100SVGHMI: Fixed support for frequency parsing in widget label
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 Jan 2022 08:51:45 +0100] rev 3412
SVGHMI: Fixed support for frequency parsing in widget label

Tue, 18 Jan 2022 11:35:05 +0100Merge
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 18 Jan 2022 11:35:05 +0100] rev 3411
Merge

Tue, 18 Jan 2022 10:57:43 +0100SVGHMI: update generated xslt
Edouard Tisserant [Tue, 18 Jan 2022 10:57:43 +0100] rev 3410
SVGHMI: update generated xslt

Tue, 18 Jan 2022 10:57:11 +0100SVGHMI test: add special commandline to launch chromium as new intependent window, without GPU acceleration.
Edouard Tisserant [Tue, 18 Jan 2022 10:57:11 +0100] rev 3409
SVGHMI test: add special commandline to launch chromium as new intependent window, without GPU acceleration.

Tue, 18 Jan 2022 10:55:14 +0100SVGHMI: add syntax for widget update frequency in widget label: HMI:WidgetType|freq:arg0:arg1@path
Edouard Tisserant [Tue, 18 Jan 2022 10:55:14 +0100] rev 3408
SVGHMI: add syntax for widget update frequency in widget label: HMI:WidgetType|freq:arg0:arg1@path

Mon, 17 Jan 2022 15:17:47 +0100OPC-UA client: "static" class was forgotten for open62541 client structure preventing multiple client.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 17 Jan 2022 15:17:47 +0100] rev 3407
OPC-UA client: "static" class was forgotten for open62541 client structure preventing multiple client.

Mon, 17 Jan 2022 15:15:00 +0100OPC-UA: cosmetic fix and armless typo
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 17 Jan 2022 15:15:00 +0100] rev 3406
OPC-UA: cosmetic fix and armless typo

Sun, 16 Jan 2022 17:00:58 +0100Merged default in wxPython4, include runtimeLists wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 16 Jan 2022 17:00:58 +0100] rev 3405
Merged default in wxPython4, include runtimeLists

Sun, 16 Jan 2022 16:59:40 +0100Merge
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 16 Jan 2022 16:59:40 +0100] rev 3404
Merge

Fri, 14 Jan 2022 11:40:22 +0100SVGHMI: added ListSwitch widget
Edouard Tisserant [Fri, 14 Jan 2022 11:40:22 +0100] rev 3403
SVGHMI: added ListSwitch widget

Sun, 16 Jan 2022 16:57:56 +0100Merged RuntimeLists branch
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 16 Jan 2022 16:57:56 +0100] rev 3402
Merged RuntimeLists branch

Sun, 16 Jan 2022 16:55:27 +0100Close RuntimeLists branch RuntimeLists
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 16 Jan 2022 16:55:27 +0100] rev 3401
Close RuntimeLists branch

Mon, 27 Dec 2021 19:21:59 +0100Fix bug introduced in previous commit : dual link list wasn't append and remove wasn't implemented correctly. Removed debug code, enhanced variable names and comments. RuntimeLists
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 27 Dec 2021 19:21:59 +0100] rev 3400
Fix bug introduced in previous commit : dual link list wasn't append and remove wasn't implemented correctly. Removed debug code, enhanced variable names and comments.

Thu, 23 Dec 2021 11:36:37 +0100SVGHMI: optimization of C part : stop traversing the whole HMI tree, use dual linked list for subscriptions and single linked list for changes from HMI. Intermediate commit, still crashing in some cases. RuntimeLists
Edouard Tisserant [Thu, 23 Dec 2021 11:36:37 +0100] rev 3399
SVGHMI: optimization of C part : stop traversing the whole HMI tree, use dual linked list for subscriptions and single linked list for changes from HMI. Intermediate commit, still crashing in some cases.

Thu, 16 Dec 2021 08:32:58 +0100Xenomai runtime: ensure that __DEBUG global variable is set when resuming debug. RuntimeLists
Edouard Tisserant [Thu, 16 Dec 2021 08:32:58 +0100] rev 3398
Xenomai runtime: ensure that __DEBUG global variable is set when resuming debug.

Thu, 16 Dec 2021 08:15:34 +0100SVGHMI: Adapt svghmi.c to changes in UnpackVar RuntimeLists
Edouard Tisserant [Thu, 16 Dec 2021 08:15:34 +0100] rev 3397
SVGHMI: Adapt svghmi.c to changes in UnpackVar

Wed, 15 Dec 2021 11:56:34 +0100Runtime: Now retain uses a list based on data available in VARIABLES.csv instead of traversing the whole instance tree looking for RETAIN flag. RuntimeLists
Edouard Tisserant [Wed, 15 Dec 2021 11:56:34 +0100] rev 3396
Runtime: Now retain uses a list based on data available in VARIABLES.csv instead of traversing the whole instance tree looking for RETAIN flag.

Thu, 09 Dec 2021 10:21:45 +0100RUNTIME: Variable forcing now uses limited list and buffer instead of systematical instance tree traversal and in-tree "fvalue" to keep track of forced value for pointed variables (external, located). Pointer swapping is performed when forcing externals and located, with backup being restored when forcing is reset. Retain still uses tree traversal. RuntimeLists
Edouard Tisserant [Thu, 09 Dec 2021 10:21:45 +0100] rev 3395
RUNTIME: Variable forcing now uses limited list and buffer instead of systematical instance tree traversal and in-tree "fvalue" to keep track of forced value for pointed variables (external, located). Pointer swapping is performed when forcing externals and located, with backup being restored when forcing is reset. Retain still uses tree traversal.

Wed, 01 Dec 2021 09:54:02 +0100RUNTIME: Variable trace now uses limited list and buffer instead of flags in instance tree that was requiring systematical instance tree traversal, and worst size buffer. Forcing and retain still use tree traversal. RuntimeLists
Edouard Tisserant [Wed, 01 Dec 2021 09:54:02 +0100] rev 3394
RUNTIME: Variable trace now uses limited list and buffer instead of flags in instance tree that was requiring systematical instance tree traversal, and worst size buffer. Forcing and retain still use tree traversal.

Tue, 30 Nov 2021 09:52:42 +0100SVGHMI: more accurate filtering of elements to unlink or not
Edouard Tisserant [Tue, 30 Nov 2021 09:52:42 +0100] rev 3393
SVGHMI: more accurate filtering of elements to unlink or not

Tue, 30 Nov 2021 18:43:10 +0100OPC-UA client: generated code now take UA_Variants on the stack directly, avoid useless allocation on write, and unalloc implicitely allocated data on read
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 30 Nov 2021 18:43:10 +0100] rev 3392
OPC-UA client: generated code now take UA_Variants on the stack directly, avoid useless allocation on write, and unalloc implicitely allocated data on read

Tue, 30 Nov 2021 18:43:10 +0100OPC-UA client: generated code now take UA_Variants on the stack directly, avoid useless allocation on write, and unalloc implicitely allocated data on read wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 30 Nov 2021 18:43:10 +0100] rev 3391
OPC-UA client: generated code now take UA_Variants on the stack directly, avoid useless allocation on write, and unalloc implicitely allocated data on read

Tue, 16 Nov 2021 20:31:11 +0100IDE: Tutorial/Example menu was broken : path of project being open was the same for all menu entries.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 16 Nov 2021 20:31:11 +0100] rev 3390
IDE: Tutorial/Example menu was broken : path of project being open was the same for all menu entries.

Wed, 17 Nov 2021 09:20:16 +0100IDE: Tutorial/Example menu was broken, probably after a merge. Menu (and corresponding code) was duplicated. Also, path of project beeing open was the same for all menu entries. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 17 Nov 2021 09:20:16 +0100] rev 3389
IDE: Tutorial/Example menu was broken, probably after a merge. Menu (and corresponding code) was duplicated. Also, path of project beeing open was the same for all menu entries.

Tue, 16 Nov 2021 20:10:50 +0100Fix bug when updating data in variable panel. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 16 Nov 2021 20:10:50 +0100] rev 3388
Fix bug when updating data in variable panel.

Grid event naming CHANGE->CHANGING was wrong. CHANGE->CHANGED is the way to go.

Mon, 08 Nov 2021 14:10:36 +0100SVGHMI: update tests/evghmi to reflect/test latest changes. update generated XSLT.
Edouard Tisserant [Mon, 08 Nov 2021 14:10:36 +0100] rev 3387
SVGHMI: update tests/evghmi to reflect/test latest changes. update generated XSLT.

Mon, 08 Nov 2021 14:09:44 +0100SVGHMI: multiple non significant changes: doc fixes, modern style access to attributes, enforce double quotes around member name in object literals.
Edouard Tisserant [Mon, 08 Nov 2021 14:09:44 +0100] rev 3386
SVGHMI: multiple non significant changes: doc fixes, modern style access to attributes, enforce double quotes around member name in object literals.

Mon, 08 Nov 2021 14:06:29 +0100SVGHMI: Changes /CURRENT_PAGE_* behaviour to prevent problem whith multiclient : all clients were switching page when one was jumping.
Edouard Tisserant [Mon, 08 Nov 2021 14:06:29 +0100] rev 3385
SVGHMI: Changes /CURRENT_PAGE_* behaviour to prevent problem whith multiclient : all clients were switching page when one was jumping.
- now PLC have to prefix page name with "!" to order page switch.
- HMI do not prefix with "!" when jumping, this avoiding looping incidently
- In case of multiple client:
CURRENT_PAGE reflects current page of last client hwo did jump
Setting CURRENT_PAGE with "!" affects all clients simultaneously

Mon, 08 Nov 2021 14:03:21 +0100SVGHMI: changes that should fix some corner cases about unlinking and discardable element that still didn't show until now.
Edouard Tisserant [Mon, 08 Nov 2021 14:03:21 +0100] rev 3384
SVGHMI: changes that should fix some corner cases about unlinking and discardable element that still didn't show until now.
- list that would have been declared in some groups could have been discarded.
- elements to be unlinked were comuted based on filtering $hmi_elements, whereas $hmi_widget already filtered list

Thu, 04 Nov 2021 12:03:43 +0100SVGHMI: update generated XSLT
Edouard Tisserant [Thu, 04 Nov 2021 12:03:43 +0100] rev 3383
SVGHMI: update generated XSLT

Thu, 04 Nov 2021 12:02:08 +0100merged
Edouard Tisserant [Thu, 04 Nov 2021 12:02:08 +0100] rev 3382
merged

Thu, 04 Nov 2021 12:00:50 +0100SVGHMI: add CURRENT_PAGE_{location} global variable to reflect currently visible page. If PLC wites some valid page reference in that variable, it triggers page switch. Additionally, fixed /HEARTBEAT being subscribed systematically by JS code even when wtchdog is not enabled.
Edouard Tisserant [Thu, 04 Nov 2021 12:00:50 +0100] rev 3381
SVGHMI: add CURRENT_PAGE_{location} global variable to reflect currently visible page. If PLC wites some valid page reference in that variable, it triggers page switch. Additionally, fixed /HEARTBEAT being subscribed systematically by JS code even when wtchdog is not enabled.

Tue, 02 Nov 2021 08:36:06 +0100Follow-up on 83ed4ea362db 'IDE: prevent invoking matiec when IEC code did not change since last build' : build unconditionally after clean
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Nov 2021 08:36:06 +0100] rev 3380
Follow-up on 83ed4ea362db 'IDE: prevent invoking matiec when IEC code did not change since last build' : build unconditionally after clean

Fri, 29 Oct 2021 18:20:03 +0200merged wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 29 Oct 2021 18:20:03 +0200] rev 3379
merged

Fri, 29 Oct 2021 18:07:28 +0200OPC-UA: fix types in model not being preserved after reload of CSV file, leading to exception when changing selection lists content.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 29 Oct 2021 18:07:28 +0200] rev 3378
OPC-UA: fix types in model not being preserved after reload of CSV file, leading to exception when changing selection lists content.

Fri, 29 Oct 2021 18:00:54 +0200OPC-UA: Removed more "LocalizedText()", this time in selected variable list
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 29 Oct 2021 18:00:54 +0200] rev 3377
OPC-UA: Removed more "LocalizedText()", this time in selected variable list

Fri, 29 Oct 2021 11:49:22 +0200IDE: prevent invoking matiec when IEC code did not change since last build.
Edouard Tisserant [Fri, 29 Oct 2021 11:49:22 +0200] rev 3376
IDE: prevent invoking matiec when IEC code did not change since last build.

Fri, 29 Oct 2021 10:27:31 +0200SVGHMI: prevent systematic rebuild when there are multiple instances of SVGHMI CTN.
Edouard Tisserant [Fri, 29 Oct 2021 10:27:31 +0200] rev 3375
SVGHMI: prevent systematic rebuild when there are multiple instances of SVGHMI CTN.

Fri, 29 Oct 2021 09:45:39 +0200SVGHMI: optimize HMI tree handling C code to lower CPU usage when traversing large trees
Edouard Tisserant [Fri, 29 Oct 2021 09:45:39 +0200] rev 3374
SVGHMI: optimize HMI tree handling C code to lower CPU usage when traversing large trees

Tue, 26 Oct 2021 11:41:03 +0200merged
Edouard Tisserant [Tue, 26 Oct 2021 11:41:03 +0200] rev 3373
merged

Thu, 21 Oct 2021 09:45:21 +0200SVGHMI: prevents watchdog being triggered when SVGHMI is empty.
Edouard Tisserant [Thu, 21 Oct 2021 09:45:21 +0200] rev 3372
SVGHMI: prevents watchdog being triggered when SVGHMI is empty.

Fri, 22 Oct 2021 12:48:22 +0200Backed out changeset c646a1f0fb0b - was on wrong branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 22 Oct 2021 12:48:22 +0200] rev 3371
Backed out changeset c646a1f0fb0b - was on wrong branch

Thu, 21 Oct 2021 20:56:05 +0200Make OPC-UA client compatible with wxPython3, util wxPython4 branch deserve to be merged
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 21 Oct 2021 20:56:05 +0200] rev 3370
Make OPC-UA client compatible with wxPython3, util wxPython4 branch deserve to be merged

Thu, 21 Oct 2021 20:56:05 +0200Make OPC-UA client compatible with wxPython3, util wxPython4 branch deserve to be merged wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 21 Oct 2021 20:56:05 +0200] rev 3369
Make OPC-UA client compatible with wxPython3, util wxPython4 branch deserve to be merged

Thu, 21 Oct 2021 13:18:18 +0200IDE: Enforce wxPython3 menu appending syntax in default branch... (Fixes exception at startup)
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 21 Oct 2021 13:18:18 +0200] rev 3368
IDE: Enforce wxPython3 menu appending syntax in default branch... (Fixes exception at startup)

Tue, 19 Oct 2021 13:09:45 +0200OPCUA: fix display names appearing with a "LocalizedText(" prefix when browsing localized server.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 19 Oct 2021 13:09:45 +0200] rev 3367
OPCUA: fix display names appearing with a "LocalizedText(" prefix when browsing localized server.

Tue, 19 Oct 2021 12:58:22 +0200OPCUA: Add browsing of variables exposed by client when selecting location from variable panel.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 19 Oct 2021 12:58:22 +0200] rev 3366
OPCUA: Add browsing of variables exposed by client when selecting location from variable panel.

Mon, 18 Oct 2021 20:41:31 +0200OPCUA client: fix handling of string type Node Identifier
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Oct 2021 20:41:31 +0200] rev 3365
OPCUA client: fix handling of string type Node Identifier

Mon, 18 Oct 2021 12:40:53 +0200Add OPC-UA simple synchronous client extension.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Oct 2021 12:40:53 +0200] rev 3364
Add OPC-UA simple synchronous client extension.

This extension uses python-opcua to growse server nodes, and generates runtime C code that use open62541.
- python-opcua must be available in python path (i.e. "import opcua" must succeed). Can be installed from pypi with "python2 -m pip install opcua --user" .
- at build time, open62541 is expected to be build in "open62541" directory, aside "beremiz" directory.

Mon, 04 Oct 2021 07:55:57 +0200SVGHMI: update test/svghmi to reflect latest changes
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:55:57 +0200] rev 3363
SVGHMI: update test/svghmi to reflect latest changes

Mon, 04 Oct 2021 07:52:54 +0200SVGHMI: Update generated xslt
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:52:54 +0200] rev 3362
SVGHMI: Update generated xslt

Mon, 04 Oct 2021 07:41:18 +0200SVGHMI: remove "value" element in meter and circularbar widget. Adding support for printf like formating make widget label too heavy. It is better to use Display widget instead.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:41:18 +0200] rev 3361
SVGHMI: remove "value" element in meter and circularbar widget. Adding support for printf like formating make widget label too heavy. It is better to use Display widget instead.

Mon, 04 Oct 2021 07:38:46 +0200SVGHMI: Move sprintf.js out of widget_display.ysl2 since it is used in other widgets as well
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:38:46 +0200] rev 3360
SVGHMI: Move sprintf.js out of widget_display.ysl2 since it is used in other widgets as well

Fri, 01 Oct 2021 23:19:04 +0200Dropped SVGUI, deprecated and replaced by SVGHMI. Transformed traffic_lights exemple so that it uses SVGHMI instead.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 23:19:04 +0200] rev 3359
Dropped SVGUI, deprecated and replaced by SVGHMI. Transformed traffic_lights exemple so that it uses SVGHMI instead.

Fri, 01 Oct 2021 15:36:09 +0200SVGHMI: Update generated XSLT (PathSlider widget)
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:36:09 +0200] rev 3358
SVGHMI: Update generated XSLT (PathSlider widget)

Fri, 01 Oct 2021 15:34:04 +0200SVGHMI: simplication in ScrollBar widget JS code
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:34:04 +0200] rev 3357
SVGHMI: simplication in ScrollBar widget JS code

Fri, 01 Oct 2021 15:32:38 +0200SVGHMI: Added PathSlider widget
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:32:38 +0200] rev 3356
SVGHMI: Added PathSlider widget

Fri, 01 Oct 2021 02:54:35 +0200SVGHMI: update generated xslt (List related changes)
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 02:54:35 +0200] rev 3355
SVGHMI: update generated xslt (List related changes)

Fri, 01 Oct 2021 02:52:25 +0200SVGHMI: add files missing in ee9e98c856a : Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 02:52:25 +0200] rev 3354
SVGHMI: add files missing in ee9e98c856a : Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.

Mon, 20 Sep 2021 15:43:10 +0200SVGHMI: add test for Dropdown using TextList
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 20 Sep 2021 15:43:10 +0200] rev 3353
SVGHMI: add test for Dropdown using TextList

Mon, 20 Sep 2021 15:42:17 +0200SVGHMI: Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 20 Sep 2021 15:42:17 +0200] rev 3352
SVGHMI: Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.

Mon, 13 Sep 2021 22:23:14 +0200IDE: Add a "Tutorials and Examples" sub menu to "File" menu to directly open projects in /exemples directory. Move 'python' and 'first_steps' projecvts from /tests to /exemple
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Sep 2021 22:23:14 +0200] rev 3351
IDE: Add a "Tutorials and Examples" sub menu to "File" menu to directly open projects in /exemples directory. Move 'python' and 'first_steps' projecvts from /tests to /exemple

Mon, 13 Sep 2021 17:57:47 +0200WxPython 3.x -> 4.x : removed exception on stdout when closing at IDE frame
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Sep 2021 17:57:47 +0200] rev 3350
WxPython 3.x -> 4.x : removed exception on stdout when closing at IDE frame

Fri, 10 Sep 2021 14:48:07 +0200Tests/svghmi_scrollbar: Fix variables names and remove useless "OnStart OnStop OnWatchdog" to use defaults.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:48:07 +0200] rev 3349
Tests/svghmi_scrollbar: Fix variables names and remove useless "OnStart OnStop OnWatchdog" to use defaults.

Fri, 10 Sep 2021 14:44:20 +0200IDE/windows: Avoid exception on quit caused by runtime being killed without disconnecting.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:44:20 +0200] rev 3348
IDE/windows: Avoid exception on quit caused by runtime being killed without disconnecting.

Fri, 10 Sep 2021 14:42:46 +0200Runtime/unix: Fix typo preventing start of Pyro server
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:42:46 +0200] rev 3347
Runtime/unix: Fix typo preventing start of Pyro server

Thu, 09 Sep 2021 21:52:27 +0200Fix SVGHMI exception when running on Windows, missing ENODATA in errno.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 09 Sep 2021 21:52:27 +0200] rev 3346
Fix SVGHMI exception when running on Windows, missing ENODATA in errno.

Tue, 07 Sep 2021 09:08:40 +0200Runtime: avoids using "pipe to self" bailout unblocking trick on windows, since select() only takes sockets.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 07 Sep 2021 09:08:40 +0200] rev 3345
Runtime: avoids using "pipe to self" bailout unblocking trick on windows, since select() only takes sockets.

Wed, 20 Oct 2021 08:57:07 +0200Merge deafult in wxPython4 wxPython4
Edouard Tisserant [Wed, 20 Oct 2021 08:57:07 +0200] rev 3344
Merge deafult in wxPython4

Tue, 19 Oct 2021 15:15:03 +0200Merge changes about wamp reconnecting options, and added missing parts so that these changes make sense.
Edouard Tisserant [Tue, 19 Oct 2021 15:15:03 +0200] rev 3343
Merge changes about wamp reconnecting options, and added missing parts so that these changes make sense.

Mon, 11 Oct 2021 09:04:53 +0200Fixed Wamp reconnect on lost connection.
dgaberscek [Mon, 11 Oct 2021 09:04:53 +0200] rev 3342
Fixed Wamp reconnect on lost connection.

Tue, 19 Oct 2021 09:41:48 +0200SVGHMI: force MaxConnections sum back to zero, preventing it to grow indefinitely on each build.
Edouard Tisserant [Tue, 19 Oct 2021 09:41:48 +0200] rev 3341
SVGHMI: force MaxConnections sum back to zero, preventing it to grow indefinitely on each build.

Tue, 19 Oct 2021 13:09:45 +0200OPCUA: fix display names appearing with a "LocalizedText(" prefix when browsing localized server. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 19 Oct 2021 13:09:45 +0200] rev 3340
OPCUA: fix display names appearing with a "LocalizedText(" prefix when browsing localized server.

Tue, 19 Oct 2021 12:58:22 +0200OPCUA: Add browsing of variables exposed by client when selecting location from variable panel. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 19 Oct 2021 12:58:22 +0200] rev 3339
OPCUA: Add browsing of variables exposed by client when selecting location from variable panel.

Mon, 18 Oct 2021 20:41:31 +0200OPCUS client: fix handling of string type Node Identifier wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Oct 2021 20:41:31 +0200] rev 3338
OPCUS client: fix handling of string type Node Identifier

Mon, 18 Oct 2021 12:40:53 +0200Add OPC-UA simple synchronous client extension. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Oct 2021 12:40:53 +0200] rev 3337
Add OPC-UA simple synchronous client extension.

This extension uses python-opcua to growse server nodes, and generates runtime C code that use open62541.
- python-opcua must be available in python path (i.e. "import opcua" must succeed). Can be installed from pypi with "python2 -m pip install opcua --user" .
- at build time, open62541 is expected to be build in "open62541" directory, aside "beremiz" directory.

Mon, 18 Oct 2021 12:34:30 +0200IDE: fix wxpython4 sequel : project "add" menu was having no extension entry visible. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Oct 2021 12:34:30 +0200] rev 3336
IDE: fix wxpython4 sequel : project "add" menu was having no extension entry visible.

Fri, 08 Oct 2021 09:13:02 +0200Prevent exception when asking for CSV dump while variable traces are still empty
Edouard Tisserant [Fri, 08 Oct 2021 09:13:02 +0200] rev 3335
Prevent exception when asking for CSV dump while variable traces are still empty

Fri, 08 Oct 2021 09:11:55 +0200Fix wrong comment
Edouard Tisserant [Fri, 08 Oct 2021 09:11:55 +0200] rev 3334
Fix wrong comment

Wed, 06 Oct 2021 10:45:06 +0200Fixed two exceptions happening when interacting with viewer(s) in debug mode, when debug data is still not initialized.
Edouard Tisserant [Wed, 06 Oct 2021 10:45:06 +0200] rev 3333
Fixed two exceptions happening when interacting with viewer(s) in debug mode, when debug data is still not initialized.

Mon, 04 Oct 2021 07:55:57 +0200SVGHMI: update test/svghmi to reflect latest changes wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:55:57 +0200] rev 3332
SVGHMI: update test/svghmi to reflect latest changes

Mon, 04 Oct 2021 07:52:54 +0200SVGHMI: Update generated xslt wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:52:54 +0200] rev 3331
SVGHMI: Update generated xslt

Mon, 04 Oct 2021 07:41:18 +0200SVGHMI: remove "value" element in meter and circularbar widget. Adding support for printf like formating make widget label too heavy. It is better to use Display widget instead. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:41:18 +0200] rev 3330
SVGHMI: remove "value" element in meter and circularbar widget. Adding support for printf like formating make widget label too heavy. It is better to use Display widget instead.

Mon, 04 Oct 2021 07:38:46 +0200SVGHMI: Move sprintf.js out of widget_display.ysl2 since it is used in other widgets as well wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Oct 2021 07:38:46 +0200] rev 3329
SVGHMI: Move sprintf.js out of widget_display.ysl2 since it is used in other widgets as well

Fri, 01 Oct 2021 23:19:04 +0200Dropped SVGUI, deprecated and replaced by SVGHMI. Transformed traffic_lights exemple so that it uses SVGHMI instead. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 23:19:04 +0200] rev 3328
Dropped SVGUI, deprecated and replaced by SVGHMI. Transformed traffic_lights exemple so that it uses SVGHMI instead.

Fri, 01 Oct 2021 17:44:52 +0200Merge from default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 17:44:52 +0200] rev 3327
Merge from default

Fri, 01 Oct 2021 15:36:09 +0200SVGHMI: Update generated XSLT (PathSlider widget) wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:36:09 +0200] rev 3326
SVGHMI: Update generated XSLT (PathSlider widget)

Fri, 01 Oct 2021 15:34:04 +0200SVGHMI: simplication in ScrollBar widget JS code wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:34:04 +0200] rev 3325
SVGHMI: simplication in ScrollBar widget JS code

Fri, 01 Oct 2021 15:32:38 +0200SVGHMI: Added PathSlider widget wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 15:32:38 +0200] rev 3324
SVGHMI: Added PathSlider widget

Fri, 01 Oct 2021 02:54:35 +0200SVGHMI: update generated xslt (List related changes) wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 02:54:35 +0200] rev 3323
SVGHMI: update generated xslt (List related changes)

Fri, 01 Oct 2021 02:52:25 +0200SVGHMI: add files missing in ee9e98c856a : Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 01 Oct 2021 02:52:25 +0200] rev 3322
SVGHMI: add files missing in ee9e98c856a : Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.

Mon, 20 Sep 2021 15:43:10 +0200SVGHMI: add test for Dropdown using TextList wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 20 Sep 2021 15:43:10 +0200] rev 3321
SVGHMI: add test for Dropdown using TextList

Mon, 20 Sep 2021 15:42:17 +0200SVGHMI: Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 20 Sep 2021 15:42:17 +0200] rev 3320
SVGHMI: Add TextList widget, add support for TextList in DropDown widget, move List, TextStyleList and TextList widget code in dedicated file with documentation.

Thu, 16 Sep 2021 09:40:36 +0200Sequel to 95fe62bfe920 : Copy description when DnD variables from Globals in resources and configuration variable panels to POUs, now including ST/IL POUs.
Edouard Tisserant [Thu, 16 Sep 2021 09:40:36 +0200] rev 3319
Sequel to 95fe62bfe920 : Copy description when DnD variables from Globals in resources and configuration variable panels to POUs, now including ST/IL POUs.

Mon, 13 Sep 2021 22:23:14 +0200IDE: Add a "Tutorials and Examples" sub menu to "File" menu to directly open projects in /exemples directory. Move 'python' and 'first_steps' projecvts from /tests to /exemple wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Sep 2021 22:23:14 +0200] rev 3318
IDE: Add a "Tutorials and Examples" sub menu to "File" menu to directly open projects in /exemples directory. Move 'python' and 'first_steps' projecvts from /tests to /exemple

Mon, 13 Sep 2021 17:57:47 +0200WxPython 3.x -> 4.x : removed exception on stdout when closing at IDE frame wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Sep 2021 17:57:47 +0200] rev 3317
WxPython 3.x -> 4.x : removed exception on stdout when closing at IDE frame

Mon, 13 Sep 2021 13:02:52 +0200Merged default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Sep 2021 13:02:52 +0200] rev 3316
Merged default

Mon, 13 Sep 2021 12:19:17 +0200Xenomai runtime: more verbose error message when problem with RT-Pipes.
Edouard Tisserant [Mon, 13 Sep 2021 12:19:17 +0200] rev 3315
Xenomai runtime: more verbose error message when problem with RT-Pipes.

Mon, 13 Sep 2021 12:18:08 +0200Re-introduce sertup.py from Ivan Tyagov, accidentally deleted during SVGHMI branch merge
Edouard Tisserant [Mon, 13 Sep 2021 12:18:08 +0200] rev 3314
Re-introduce sertup.py from Ivan Tyagov, accidentally deleted during SVGHMI branch merge

Fri, 10 Sep 2021 14:48:07 +0200Tests/svghmi_scrollbar: Fix variables names and remove useless "OnStart OnStop OnWatchdog" to use defaults. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:48:07 +0200] rev 3313
Tests/svghmi_scrollbar: Fix variables names and remove useless "OnStart OnStop OnWatchdog" to use defaults.

Fri, 10 Sep 2021 14:44:20 +0200IDE/windows: Avoid exception on quit caused by runtime being killed without disconnecting. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:44:20 +0200] rev 3312
IDE/windows: Avoid exception on quit caused by runtime being killed without disconnecting.

Fri, 10 Sep 2021 14:42:46 +0200Runtime/unix: Fix typo preventing start of Pyro server wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Sep 2021 14:42:46 +0200] rev 3311
Runtime/unix: Fix typo preventing start of Pyro server

Thu, 09 Sep 2021 21:52:27 +0200Fix SVGHMI exception when running on Windows, missing ENODATA in errno. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 09 Sep 2021 21:52:27 +0200] rev 3310
Fix SVGHMI exception when running on Windows, missing ENODATA in errno.

Thu, 09 Sep 2021 09:37:03 +0200Workaround missing "IsMaximized" attribute for AuiPaneInfo in wxPython 4.1.0 wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 09 Sep 2021 09:37:03 +0200] rev 3309
Workaround missing "IsMaximized" attribute for AuiPaneInfo in wxPython 4.1.0

Tue, 07 Sep 2021 09:08:40 +0200Runtime: avoids using "pipe to self" bailout unblocking trick on windows, since select() only takes sockets. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 07 Sep 2021 09:08:40 +0200] rev 3308
Runtime: avoids using "pipe to self" bailout unblocking trick on windows, since select() only takes sockets.

Sun, 05 Sep 2021 15:24:14 +0200More WxPython 3.x->4.x API update wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 05 Sep 2021 15:24:14 +0200] rev 3307
More WxPython 3.x->4.x API update

Sun, 05 Sep 2021 05:43:17 +0200Workaround RubberBand drawing problem on GTK3 wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 05 Sep 2021 05:43:17 +0200] rev 3306
Workaround RubberBand drawing problem on GTK3

Sun, 05 Sep 2021 05:03:36 +0200Depricated PyGridCellEditor becomes GridCellEditor wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 05 Sep 2021 05:03:36 +0200] rev 3305
Depricated PyGridCellEditor becomes GridCellEditor

Sun, 05 Sep 2021 05:01:34 +0200Fix exception when canvas becomes null because of window resize, and avoid useless parameter+condition in GetLogicalDC wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 05 Sep 2021 05:01:34 +0200] rev 3304
Fix exception when canvas becomes null because of window resize, and avoid useless parameter+condition in GetLogicalDC

Thu, 02 Sep 2021 22:18:14 +0200Preliminary support for WxPython 4.1.0. Needs more testing. Grid selection/focus seems broken, and probably many other bugs hidden in dialogs and editors. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 02 Sep 2021 22:18:14 +0200] rev 3303
Preliminary support for WxPython 4.1.0. Needs more testing. Grid selection/focus seems broken, and probably many other bugs hidden in dialogs and editors.

Thu, 02 Sep 2021 21:36:29 +0200Merge SVGHMI in default
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 02 Sep 2021 21:36:29 +0200] rev 3302
Merge SVGHMI in default

Thu, 02 Sep 2021 21:37:10 +0200Close SVGHMI branch svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 02 Sep 2021 21:37:10 +0200] rev 3301
Close SVGHMI branch

Mon, 30 Aug 2021 09:39:23 +0200Copy description when DnD variables from Globals in resources and configuration variable panels to POUs. Also prevent making exception in case some other DropSource wouldn't provide description. svghmi
Edouard Tisserant [Mon, 30 Aug 2021 09:39:23 +0200] rev 3300
Copy description when DnD variables from Globals in resources and configuration variable panels to POUs. Also prevent making exception in case some other DropSource wouldn't provide description.

Fri, 27 Aug 2021 11:31:32 +0200SVGHMI: Allow toggling fulscreen mode my right click or long press. svghmi
Edouard Tisserant [Fri, 27 Aug 2021 11:31:32 +0200] rev 3299
SVGHMI: Allow toggling fulscreen mode my right click or long press.

Tue, 24 Aug 2021 11:12:41 +0200Xenomai runtime: fixed bugs introduced in e3db472b0dfb (RT->nRT wakeup) + other small typos svghmi
Edouard Tisserant [Tue, 24 Aug 2021 11:12:41 +0200] rev 3298
Xenomai runtime: fixed bugs introduced in e3db472b0dfb (RT->nRT wakeup) + other small typos

Sat, 21 Aug 2021 11:02:09 +0200IDE: systematically log command when launching process (was not showing in case of LOCAL:// runtime being launched) svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 21 Aug 2021 11:02:09 +0200] rev 3297
IDE: systematically log command when launching process (was not showing in case of LOCAL:// runtime being launched)

Sat, 21 Aug 2021 10:54:13 +0200Win32 runtime: fix build with gcc 9.3.0 from msys2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 21 Aug 2021 10:54:13 +0200] rev 3296
Win32 runtime: fix build with gcc 9.3.0 from msys2

Tue, 17 Aug 2021 12:29:36 +0200Runtime+SVGHMI: Add generic wakeup of threads from PLC thread to windows implementation of plc_main.c. Also added nRT_reschedule to abstract sched_yield. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 17 Aug 2021 12:29:36 +0200] rev 3295
Runtime+SVGHMI: Add generic wakeup of threads from PLC thread to windows implementation of plc_main.c. Also added nRT_reschedule to abstract sched_yield.

Mon, 16 Aug 2021 22:49:08 +0200Runtime+SVGHMI: Added a generic way to wakeup non-real-time threads from real-time PLC thread. Replace SVGHMI specific calls in Linux and Xenomai implementations of plc_main.c. Fixed xenomai build, xeno-config making problems with --no-auto-init argument. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 16 Aug 2021 22:49:08 +0200] rev 3294
Runtime+SVGHMI: Added a generic way to wakeup non-real-time threads from real-time PLC thread. Replace SVGHMI specific calls in Linux and Xenomai implementations of plc_main.c. Fixed xenomai build, xeno-config making problems with --no-auto-init argument.

Thu, 29 Jul 2021 11:59:28 +0200Runtime: Better handling of nested strings in spawn_subprocess commandline parsing svghmi
Edouard Tisserant [Thu, 29 Jul 2021 11:59:28 +0200] rev 3293
Runtime: Better handling of nested strings in spawn_subprocess commandline parsing

Thu, 29 Jul 2021 08:25:26 +0200IDE: Fixed use of RingBuffers in variable traces graphs when switching to 2D trend graph. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 29 Jul 2021 08:25:26 +0200] rev 3292
IDE: Fixed use of RingBuffers in variable traces graphs when switching to 2D trend graph.

Mon, 26 Jul 2021 10:20:39 +0200IDE: On windows, align better "reset to default" button in CTN config panel. svghmi
Edouard Tisserant [Mon, 26 Jul 2021 10:20:39 +0200] rev 3291
IDE: On windows, align better "reset to default" button in CTN config panel.

Mon, 26 Jul 2021 08:42:26 +0200SVGHMI: Fix detection of library without instance and instances without library. Added one more widget in the widget library. Renamed "view_name" in "name" in commands substitutions. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 26 Jul 2021 08:42:26 +0200] rev 3290
SVGHMI: Fix detection of library without instance and instances without library. Added one more widget in the widget library. Renamed "view_name" in "name" in commands substitutions.

Fri, 23 Jul 2021 13:16:15 +0200SVGHMI: Fix missing "OnWatchdog" in XSD, accidentally deleted in earlier commit. svghmi
Edouard Tisserant [Fri, 23 Jul 2021 13:16:15 +0200] rev 3289
SVGHMI: Fix missing "OnWatchdog" in XSD, accidentally deleted in earlier commit.

Fri, 23 Jul 2021 13:15:19 +0200IDE: Add a "undo" button for each field in CTN config panel to reset to default value. svghmi
Edouard Tisserant [Fri, 23 Jul 2021 13:15:19 +0200] rev 3288
IDE: Add a "undo" button for each field in CTN config panel to reset to default value.

Thu, 22 Jul 2021 12:03:34 +0200SVGHMI: detect watchdog abuse (more than one HMI instance with watchdog) at build time svghmi
Edouard Tisserant [Thu, 22 Jul 2021 12:03:34 +0200] rev 3287
SVGHMI: detect watchdog abuse (more than one HMI instance with watchdog) at build time

Thu, 22 Jul 2021 12:02:50 +0200SVGHMI: code refactoring allowing more in depth customization for substitution on start/stop/restart commands, and default SVG choice. svghmi
Edouard Tisserant [Thu, 22 Jul 2021 12:02:50 +0200] rev 3286
SVGHMI: code refactoring allowing more in depth customization for substitution on start/stop/restart commands, and default SVG choice.

Tue, 20 Jul 2021 10:52:25 +0200Runtime: more robust loading of Wamp config, specially in case config file was corrupted. svghmi
Edouard Tisserant [Tue, 20 Jul 2021 10:52:25 +0200] rev 3285
Runtime: more robust loading of Wamp config, specially in case config file was corrupted.

Tue, 20 Jul 2021 09:43:35 +0200SVGHMI: add arguments to pass to ressource factory when attaching rerssource to svghmi root svghmi
Edouard Tisserant [Tue, 20 Jul 2021 09:43:35 +0200] rev 3284
SVGHMI: add arguments to pass to ressource factory when attaching rerssource to svghmi root

Tue, 20 Jul 2021 09:12:45 +0200SVGHMI: fix typo in slider widget svghmi
Edouard Tisserant [Tue, 20 Jul 2021 09:12:45 +0200] rev 3283
SVGHMI: fix typo in slider widget

Thu, 15 Jul 2021 11:50:44 +0200Runtime: Handle errors in user's python code more gracefully : make exceptions and allow repair. svghmi
Edouard Tisserant [Thu, 15 Jul 2021 11:50:44 +0200] rev 3282
Runtime: Handle errors in user's python code more gracefully : make exceptions and allow repair.

Thu, 15 Jul 2021 11:48:02 +0200SVGHMI: Fixed halting problem when there is no session opened. svghmi
Edouard Tisserant [Thu, 15 Jul 2021 11:48:02 +0200] rev 3281
SVGHMI: Fixed halting problem when there is no session opened.

Tue, 13 Jul 2021 16:19:07 +0200SVGHMI: Widget lib: small doc fix. svghmi
Edouard Tisserant [Tue, 13 Jul 2021 16:19:07 +0200] rev 3280
SVGHMI: Widget lib: small doc fix.

Tue, 13 Jul 2021 16:18:37 +0200SVGHMI: DnD UI: Use widget's short description, initially forgoten. svghmi
Edouard Tisserant [Tue, 13 Jul 2021 16:18:37 +0200] rev 3279
SVGHMI: DnD UI: Use widget's short description, initially forgoten.

Tue, 13 Jul 2021 16:16:58 +0200SVGHMI: Fixed typo on session manager unregister, leading to wrong count of sessions and then exceptions when creating more session than allowed in protocol options. Also added more safety check in protocol in case session would be missing. svghmi
Edouard Tisserant [Tue, 13 Jul 2021 16:16:58 +0200] rev 3278
SVGHMI: Fixed typo on session manager unregister, leading to wrong count of sessions and then exceptions when creating more session than allowed in protocol options. Also added more safety check in protocol in case session would be missing.

Tue, 13 Jul 2021 16:13:21 +0200SVGHMI: set some boundaries for watchdog timings and max connection count. svghmi
Edouard Tisserant [Tue, 13 Jul 2021 16:13:21 +0200] rev 3277
SVGHMI: set some boundaries for watchdog timings and max connection count.

Tue, 13 Jul 2021 16:12:15 +0200SVGHMI: update generated xslt svghmi
Edouard Tisserant [Tue, 13 Jul 2021 16:12:15 +0200] rev 3276
SVGHMI: update generated xslt

Mon, 12 Jul 2021 23:26:14 +0200SVGHMI: fixed bug introduced in 7bdb766c2a4d, typo breaking meter widget svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 12 Jul 2021 23:26:14 +0200] rev 3275
SVGHMI: fixed bug introduced in 7bdb766c2a4d, typo breaking meter widget

Mon, 12 Jul 2021 16:29:55 +0200SVGHMI: default library path, default page when starting a SVGHMI project, error page when no SVG present svghmi
Edouard Tisserant [Mon, 12 Jul 2021 16:29:55 +0200] rev 3274
SVGHMI: default library path, default page when starting a SVGHMI project, error page when no SVG present

Mon, 12 Jul 2021 14:13:29 +0200SVGHMI: finished multiclient support. Still needs more testing. svghmi
Edouard Tisserant [Mon, 12 Jul 2021 14:13:29 +0200] rev 3273
SVGHMI: finished multiclient support. Still needs more testing.

Mon, 12 Jul 2021 10:07:52 +0200SVGHMI: Fixed iterator in session manager. Getting closer to working multiclient, to be continued. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 12 Jul 2021 10:07:52 +0200] rev 3272
SVGHMI: Fixed iterator in session manager. Getting closer to working multiclient, to be continued.

Fri, 09 Jul 2021 15:47:43 +0200SVGHMI: Fixing last commit's multiclient implementation, in case of watchdog. To be continued, since multiclient still fail... svghmi
Edouard Tisserant [Fri, 09 Jul 2021 15:47:43 +0200] rev 3271
SVGHMI: Fixing last commit's multiclient implementation, in case of watchdog. To be continued, since multiclient still fail...

Wed, 07 Jul 2021 16:31:13 +0200SVGHMI: Implemented multiserver+multiclient, but only tested with single client and single server for now. To be continued... svghmi
Edouard Tisserant [Wed, 07 Jul 2021 16:31:13 +0200] rev 3270
SVGHMI: Implemented multiserver+multiclient, but only tested with single client and single server for now. To be continued...

Mon, 05 Jul 2021 10:51:02 +0200SVGHMI: More configuration parameters : network interface, TCP port, URL path and watchdog enabling. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 05 Jul 2021 10:51:02 +0200] rev 3269
SVGHMI: More configuration parameters : network interface, TCP port, URL path and watchdog enabling.

Thu, 01 Jul 2021 14:33:14 +0200SVGHMI: Added a way to distinguish watchdog-enabled HMI from multi-client HMI in URL. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 01 Jul 2021 14:33:14 +0200] rev 3268
SVGHMI: Added a way to distinguish watchdog-enabled HMI from multi-client HMI in URL.

Wed, 30 Jun 2021 15:51:59 +0200SVGHMI: Prepare accepting multiple clients on multiple HMI: Use POULibrary new capability to add variables to PLC Configuration. Now heartbeat and HMI tree root are added by the library part of SVGHMI, and not by each instance. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 30 Jun 2021 15:51:59 +0200] rev 3267
SVGHMI: Prepare accepting multiple clients on multiple HMI: Use POULibrary new capability to add variables to PLC Configuration. Now heartbeat and HMI tree root are added by the library part of SVGHMI, and not by each instance.

Wed, 30 Jun 2021 15:44:32 +0200IDE: Allow POU Libraries to inject PLC Configurations globals during build. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 30 Jun 2021 15:44:32 +0200] rev 3266
IDE: Allow POU Libraries to inject PLC Configurations globals during build.

Fri, 18 Jun 2021 14:13:03 +0200SVGHMI: DnD UI: Add hint instructing user to Drag HMI tree items to text field. svghmi
Edouard Tisserant [Fri, 18 Jun 2021 14:13:03 +0200] rev 3265
SVGHMI: DnD UI: Add hint instructing user to Drag HMI tree items to text field.

Fri, 18 Jun 2021 11:47:55 +0200SVGHMI: update generated XSLT files svghmi
Edouard Tisserant [Fri, 18 Jun 2021 11:47:55 +0200] rev 3264
SVGHMI: update generated XSLT files

Fri, 18 Jun 2021 11:47:33 +0200SVGHMI: DnD UI: Fix SVG gen that was dropping widget name and making XSLTExceptions plus some UX enhancements. svghmi
Edouard Tisserant [Fri, 18 Jun 2021 11:47:33 +0200] rev 3263
SVGHMI: DnD UI: Fix SVG gen that was dropping widget name and making XSLTExceptions plus some UX enhancements.

Fri, 18 Jun 2021 10:57:33 +0200removed useless import svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Jun 2021 10:57:33 +0200] rev 3262
removed useless import

Fri, 18 Jun 2021 10:49:10 +0200SVGHMI: DnD UI: SVG for DnD now generated again based on paths and args entries filled by user. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Jun 2021 10:49:10 +0200] rev 3261
SVGHMI: DnD UI: SVG for DnD now generated again based on paths and args entries filled by user.

Wed, 16 Jun 2021 18:27:27 +0200merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 16 Jun 2021 18:27:27 +0200] rev 3260
merge

Wed, 16 Jun 2021 18:27:05 +0200SVGHMI: UI: added prefill of arguments according to values in widget instance in library. Also added library's widget instance description to description field. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 16 Jun 2021 18:27:05 +0200] rev 3259
SVGHMI: UI: added prefill of arguments according to values in widget instance in library. Also added library's widget instance description to description field.

Wed, 16 Jun 2021 12:15:02 +0200IDE: Fixed variable traces graphs RingBuffers. Removed an apparently useless wxCallAfter in trend graph that was leading to pydeadobject exception on wxGTK when double-clicking. svghmi
Edouard Tisserant [Wed, 16 Jun 2021 12:15:02 +0200] rev 3258
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 +0200IDE: Cleaned up some useless tests in variable trace data handling code, changed from bare numpy arrays to RingBuffers inorder to avoid RAM outage and crash after long tracing session. svghmi
Edouard Tisserant [Mon, 14 Jun 2021 16:48:39 +0200] rev 3257
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 +0200IDE: Log: Prevent crash when display progress on empty log. svghmi
Edouard Tisserant [Fri, 11 Jun 2021 11:56:07 +0200] rev 3256
IDE: Log: Prevent crash when display progress on empty log.

Thu, 10 Jun 2021 14:05:44 +0200merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 10 Jun 2021 14:05:44 +0200] rev 3255
merge

Thu, 10 Jun 2021 09:40:05 +0200Copy description when DnD variables from CodeFile CTN to POUs svghmi
Edouard Tisserant [Thu, 10 Jun 2021 09:40:05 +0200] rev 3254
Copy description when DnD variables from CodeFile CTN to POUs

Wed, 09 Jun 2021 15:28:00 +0200SVGHMI: fix exception when stored widget library path does not exist anymore svghmi
Edouard Tisserant [Wed, 09 Jun 2021 15:28:00 +0200] rev 3253
SVGHMI: fix exception when stored widget library path does not exist anymore

Thu, 10 Jun 2021 13:47:58 +0200SVGHMI: added checking of widget literal argument in DnD UI according to type given in widget description svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 10 Jun 2021 13:47:58 +0200] rev 3252
SVGHMI: added checking of widget literal argument in DnD UI according to type given in widget description

Wed, 09 Jun 2021 10:06:23 +0200SVGHMI: UI Updates validity indicator when DnD HMI tree node in text field, according to node type svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 09 Jun 2021 10:06:23 +0200] rev 3251
SVGHMI: UI Updates validity indicator when DnD HMI tree node in text field, according to node type

Mon, 31 May 2021 16:06:00 +0200SVGHMI: Fixed typo in last commit svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 31 May 2021 16:06:00 +0200] rev 3250
SVGHMI: Fixed typo in last commit

Mon, 31 May 2021 10:10:00 +0200merged svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 31 May 2021 10:10:00 +0200] rev 3249
merged

Tue, 25 May 2021 15:05:38 +0200Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting. svghmi
Edouard Tisserant [Tue, 25 May 2021 15:05:38 +0200] rev 3248
Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.

Pyro/wamp/UI delegate jobs to Worker, causing race condition if worker isn't already started.
Added a function to ensure that Worker is already created when pyro or UI starts

Mon, 31 May 2021 10:08:02 +0200SVGHMI: UI now have multiple HMI tree variables DnD to widget paths. Still no type checking, WIP. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 31 May 2021 10:08:02 +0200] rev 3247
SVGHMI: UI now have multiple HMI tree variables DnD to widget paths. Still no type checking, WIP.

Mon, 24 May 2021 14:33:54 +0200Finished fixing Wx IDs abuse. There was still some wasted IDs because of wx.NewId calls in many places where it wasn't needed, and those IDs were not re-used. As a consequence Beremiz was making exception crashing after a few hours of intensive use. svghmi
Edouard Tisserant [Mon, 24 May 2021 14:33:54 +0200] rev 3246
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.

Thu, 20 May 2021 12:16:51 +0200SVGHMI: DnD UI : changed layout again, moved description in a vertical splitter, added scrollbar for preview and signature, fixed flickering description svghmi
Edouard Tisserant [Thu, 20 May 2021 12:16:51 +0200] rev 3245
SVGHMI: DnD UI : changed layout again, moved description in a vertical splitter, added scrollbar for preview and signature, fixed flickering description

Wed, 19 May 2021 18:54:35 +0200SVGHMI: UI: Swap widget selection tree and preview panel svghmi
Edouard Tisserant [Wed, 19 May 2021 18:54:35 +0200] rev 3244
SVGHMI: UI: Swap widget selection tree and preview panel

Wed, 19 May 2021 15:29:18 +0200SVGHMI: WIP: Widget Library UI: Reworking widget selection and binding. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 May 2021 15:29:18 +0200] rev 3243
SVGHMI: WIP: Widget Library UI: Reworking widget selection and binding.

Tue, 18 May 2021 09:28:44 +0200Merged SVGHMI branches svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 18 May 2021 09:28:44 +0200] rev 3242
Merged SVGHMI branches

Tue, 18 May 2021 09:22:17 +0200SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 18 May 2021 09:22:17 +0200] rev 3241
SVGHMI: WIP on Widget DnD UI : Added documentation to widgets, that is injected in widget parse tree during widget analysis

Mon, 17 May 2021 08:52:38 +0200SVGHMI: Fix behaviour of Jump widget, that wasn't displaying "disabled" state in some cases. svghmi
Edouard Tisserant [Mon, 17 May 2021 08:52:38 +0200] rev 3240
SVGHMI: Fix behaviour of Jump widget, that wasn't displaying "disabled" state in some cases.

Wed, 12 May 2021 11:38:00 +0200merged default in svghmi svghmi
Edouard Tisserant [Wed, 12 May 2021 11:38:00 +0200] rev 3239
merged default in svghmi

Mon, 03 May 2021 00:14:38 +0200SVGHMI: updating generated XSLT svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 May 2021 00:14:38 +0200] rev 3238
SVGHMI: updating generated XSLT

Mon, 03 May 2021 00:14:11 +0200SVGHMI: Intermediate state while updating UI, preparing for displaying widget description and multiple variables selections svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 May 2021 00:14:11 +0200] rev 3237
SVGHMI: Intermediate state while updating UI, preparing for displaying widget description and multiple variables selections

Mon, 03 May 2021 00:06:03 +0200SVGHMI: Extend widget labels parsing to allow expressing widget's accepted types in labels svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 May 2021 00:06:03 +0200] rev 3236
SVGHMI: Extend widget labels parsing to allow expressing widget's accepted types in labels

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Thu, 18 Mar 2021 14:32:21 +0100SVGHMI: JsonTable: Fixed options not being passed in JSON post when jumping to a page where additional variables are pre-defined by a HMI:VarInit. svghmi
Edouard Tisserant [Thu, 18 Mar 2021 14:32:21 +0100] rev 3195
SVGHMI: JsonTable: Fixed options not being passed in JSON post when jumping to a page where additional variables are pre-defined by a HMI:VarInit.
Was JS Fetch Promise not executed late enough, and gathering JsonTable variables before the sequence of calls to dispatch() was finished.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Tue, 02 Mar 2021 09:25:55 +0100IDE: Log: Cosmetic changes, refactoring svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:25:55 +0100] rev 3171
IDE: Log: Cosmetic changes, refactoring

Mon, 01 Mar 2021 15:46:23 +0100SVGHMI: Make build log less redundant, and refactor progress information code a bit, to make it also a bit less redundant. svghmi
Edouard Tisserant [Mon, 01 Mar 2021 15:46:23 +0100] rev 3170
SVGHMI: Make build log less redundant, and refactor progress information code a bit, to make it also a bit less redundant.

Mon, 01 Mar 2021 15:45:13 +0100IDE: Make ST code generation more verbose, since it can be really long in case of big programs, and it is better to let the user know build is still in progress. svghmi
Edouard Tisserant [Mon, 01 Mar 2021 15:45:13 +0100] rev 3169
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.

Mon, 01 Mar 2021 10:03:50 +0100merged svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 01 Mar 2021 10:03:50 +0100] rev 3168
merged

Fri, 26 Feb 2021 11:08:51 +0100SVGHMI: Fixed progress time computation svghmi
Edouard Tisserant [Fri, 26 Feb 2021 11:08:51 +0100] rev 3167
SVGHMI: Fixed progress time computation

Sun, 28 Feb 2021 21:45:10 +0100IDE: Fixed log console that was not updating line by line smoothly when building. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 28 Feb 2021 21:45:10 +0100] rev 3166
IDE: Fixed log console that was not updating line by line smoothly when building.

Fri, 26 Feb 2021 10:00:14 +0100SVGHMI: Optimized overlapping geometry (widget ot page belonging) computation. Added human readable messages for progress. Includes updated XSLT. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 26 Feb 2021 10:00:14 +0100] rev 3165
SVGHMI: Optimized overlapping geometry (widget ot page belonging) computation. Added human readable messages for progress. Includes updated XSLT.

Thu, 25 Feb 2021 11:22:10 +0100merged svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 25 Feb 2021 11:22:10 +0100] rev 3164
merged

Wed, 24 Feb 2021 09:37:00 +0100Merge changes from default into svghmi branch svghmi
Edouard Tisserant [Wed, 24 Feb 2021 09:37:00 +0100] rev 3163
Merge changes from default into svghmi branch

Wed, 24 Feb 2021 15:36:37 +0100SVGHMI: More build time optimization : def_by_label now takes far less time. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 24 Feb 2021 15:36:37 +0100] rev 3162
SVGHMI: More build time optimization : def_by_label now takes far less time.

Tue, 23 Feb 2021 10:07:21 +0100SVGHMI: Optimize sumarized_elements xslt function, taking most of SVGHMI build time. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 23 Feb 2021 10:07:21 +0100] rev 3161
SVGHMI: Optimize sumarized_elements xslt function, taking most of SVGHMI build time.

Mon, 22 Feb 2021 10:09:57 +0100Merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 22 Feb 2021 10:09:57 +0100] rev 3160
Merge

Fri, 19 Feb 2021 14:56:14 +0100SVGHMI: Add icons svghmi
Edouard Tisserant [Fri, 19 Feb 2021 14:56:14 +0100] rev 3159
SVGHMI: Add icons

Fri, 19 Feb 2021 12:03:42 +0100SVGHMI: Fixed/extended error message when failing to launch POEdit. svghmi
Edouard Tisserant [Fri, 19 Feb 2021 12:03:42 +0100] rev 3158
SVGHMI: Fixed/extended error message when failing to launch POEdit.

Fri, 19 Feb 2021 12:02:49 +0100SVGHMI: Fix launch of POEdit on widows. Parsing oommand in registry based on heuristic was bad, now using regex should be safer. TODO : replicate for Inkscape launch. svghmi
Edouard Tisserant [Fri, 19 Feb 2021 12:02:49 +0100] rev 3157
SVGHMI: Fix launch of POEdit on widows. Parsing oommand in registry based on heuristic was bad, now using regex should be safer. TODO : replicate for Inkscape launch.

Mon, 22 Feb 2021 10:08:36 +0100SVGHMI: display progress in IDE console while building svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 22 Feb 2021 10:08:36 +0100] rev 3156
SVGHMI: display progress in IDE console while building

Sun, 21 Feb 2021 21:38:44 +0100SVGHMI: finally found why HMI:Input wasnt't initializing properly: vsprintf takes a list. Also, removed intermediate variable last_val, since edit_value() works on strings anyhow, and in case of formated floats, it is better to workl on already formated value. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 21 Feb 2021 21:38:44 +0100] rev 3155
SVGHMI: finally found why HMI:Input wasnt't initializing properly: vsprintf takes a list. Also, removed intermediate variable last_val, since edit_value() works on strings anyhow, and in case of formated floats, it is better to workl on already formated value.

Fri, 19 Feb 2021 10:04:36 +0100SVGHMI: update generated XSLT svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 19 Feb 2021 10:04:36 +0100] rev 3154
SVGHMI: update generated XSLT

Fri, 19 Feb 2021 10:04:17 +0100Allow printf-like formating in HMI:Input, usefull for example when dealing with floating point numbers. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 19 Feb 2021 10:04:17 +0100] rev 3153
Allow printf-like formating in HMI:Input, usefull for example when dealing with floating point numbers.

Fri, 19 Feb 2021 10:03:00 +0100SVGHMI: Switch from {object} to Map for "updates" global, for performance but also preventing wierd behaviour when iterating svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 19 Feb 2021 10:03:00 +0100] rev 3152
SVGHMI: Switch from {object} to Map for "updates" global, for performance but also preventing wierd behaviour when iterating

Thu, 18 Feb 2021 12:02:28 +0100SVGHMI: Fixed HMI:ScrollBar to exclude cursor size from accessible range ( position is now 0->range-size instead of 0->range ). Fixed and extended tests/svghmi to have working ScrollBar on two alarm pages. Includes generated XSLT update. svghmi
Edouard Tisserant [Thu, 18 Feb 2021 12:02:28 +0100] rev 3151
SVGHMI: Fixed HMI:ScrollBar to exclude cursor size from accessible range ( position is now 0->range-size instead of 0->range ). Fixed and extended tests/svghmi to have working ScrollBar on two alarm pages. Includes generated XSLT update.

Thu, 18 Feb 2021 10:43:10 +0100SVGHMI: JsonTable removed useless promise since fetch() already does one. Updated generated XSLT. svghmi
Edouard Tisserant [Thu, 18 Feb 2021 10:43:10 +0100] rev 3150
SVGHMI: JsonTable removed useless promise since fetch() already does one. Updated generated XSLT.

Thu, 18 Feb 2021 05:39:46 +0100SVGHMI: Optimization for JsonTable : reload JSON only when necessary, and avoid concurrent http requests. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 18 Feb 2021 05:39:46 +0100] rev 3149
SVGHMI: Optimization for JsonTable : reload JSON only when necessary, and avoid concurrent http requests.

Tue, 16 Feb 2021 11:47:52 +0100merge svghmi
Edouard Tisserant [Tue, 16 Feb 2021 11:47:52 +0100] rev 3148
merge

Tue, 16 Feb 2021 11:35:56 +0100SVGHMI: update generated XSLT svghmi
Edouard Tisserant [Tue, 16 Feb 2021 11:35:56 +0100] rev 3147
SVGHMI: update generated XSLT

Tue, 16 Feb 2021 11:32:37 +0100SVGHMI: little fix ihn i18n example. svghmi
Edouard Tisserant [Tue, 16 Feb 2021 11:32:37 +0100] rev 3146
SVGHMI: little fix ihn i18n example.

Tue, 16 Feb 2021 11:32:00 +0100SVGHMI: Fixed sending HMI_REAL to PLC. Added a svghmi_real test that illustrates using printf style formating in HMI:Display to control precision of Float number display. svghmi
Edouard Tisserant [Tue, 16 Feb 2021 11:32:00 +0100] rev 3145
SVGHMI: Fixed sending HMI_REAL to PLC. Added a svghmi_real test that illustrates using printf style formating in HMI:Display to control precision of Float number display.

Tue, 16 Feb 2021 09:38:28 +0100SVGHMI: i18n: ensure langs always appea in same order, and add two variables that are updated automatically when selecting a new language : lang_name and lang_code. Also fixed i18n startup, prevent wrong lang numer to crash loading. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 16 Feb 2021 09:38:28 +0100] rev 3144
SVGHMI: i18n: ensure langs always appea in same order, and add two variables that are updated automatically when selecting a new language : lang_name and lang_code. Also fixed i18n startup, prevent wrong lang numer to crash loading.

Mon, 15 Feb 2021 15:46:47 +0100SVGHMI: more straightforward implementation of dragging position computation in Scrollbar + some little fix about boundaries. svghmi
Edouard Tisserant [Mon, 15 Feb 2021 15:46:47 +0100] rev 3143
SVGHMI: more straightforward implementation of dragging position computation in Scrollbar + some little fix about boundaries.

Sun, 14 Feb 2021 19:15:20 +0100SVGHMI: allow i18n of formated strings of HMI:Messages. This was by construction impossible since formating was given as an argument. Now added optional "format" labelled element in HMI:Display, so that it can be translated, when labelled "_format". svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 19:15:20 +0100] rev 3142
SVGHMI: allow i18n of formated strings of HMI:Messages. This was by construction impossible since formating was given as an argument. Now added optional "format" labelled element in HMI:Display, so that it can be translated, when labelled "_format".

Sun, 14 Feb 2021 05:30:29 +0100SVGHMI: update generated XSLT svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 05:30:29 +0100] rev 3141
SVGHMI: update generated XSLT

Sun, 14 Feb 2021 05:29:51 +0100SVGHMI: i18n: prevent creating messages.pot if no translation svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 05:29:51 +0100] rev 3140
SVGHMI: i18n: prevent creating messages.pot if no translation

Sun, 14 Feb 2021 05:22:30 +0100SVGHMI: Add inhibition to widget's apply_hmi_value() so that it does not change variable more frquently than given widget's frequency. This prevents flooding network with many update if browser is producing events at high rate, as for exemple when dragging ScrollBar's cursor. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 05:22:30 +0100] rev 3139
SVGHMI: Add inhibition to widget's apply_hmi_value() so that it does not change variable more frquently than given widget's frequency. This prevents flooding network with many update if browser is producing events at high rate, as for exemple when dragging ScrollBar's cursor.

Sun, 14 Feb 2021 05:17:25 +0100SVGHMI: fix scrollbar not behaving when rotated. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 05:17:25 +0100] rev 3138
SVGHMI: fix scrollbar not behaving when rotated.

Sun, 14 Feb 2021 05:15:13 +0100SVGHMI: remove forgotten debug code svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 14 Feb 2021 05:15:13 +0100] rev 3137
SVGHMI: remove forgotten debug code

Fri, 12 Feb 2021 22:00:07 +0100SVGHMI: Add a robust ScrollBar widget. HMI:ScrollBar@positionrange@size svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 12 Feb 2021 22:00:07 +0100] rev 3136
SVGHMI: Add a robust ScrollBar widget. HMI:ScrollBar@positionrange@size

Fri, 12 Feb 2021 21:58:03 +0100SVGHMI: propagate default local variables (HMI_LOCAL, PAGE_LOCAL) to widgets at startup svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 12 Feb 2021 21:58:03 +0100] rev 3135
SVGHMI: propagate default local variables (HMI_LOCAL, PAGE_LOCAL) to widgets at startup

Tue, 09 Feb 2021 17:10:08 +0100SVGHMI: Update generated XSLT svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 17:10:08 +0100] rev 3134
SVGHMI: Update generated XSLT

Tue, 09 Feb 2021 17:09:08 +0100SVGHMI: HMI:DropDown:#langs@lang now automatically shows human readable list of languages. tests/svghmi_i18n updated accordingly. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 17:09:08 +0100] rev 3133
SVGHMI: HMI:DropDown:#langs@lang now automatically shows human readable list of languages. tests/svghmi_i18n updated accordingly.

Tue, 09 Feb 2021 08:11:22 +0100SVGHMI: Add a simple i18n test svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 08:11:22 +0100] rev 3132
SVGHMI: Add a simple i18n test

Tue, 09 Feb 2021 07:57:14 +0100SVGHMI: Prevent Dropdown widget to mak exception whe value out of range svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 07:57:14 +0100] rev 3131
SVGHMI: Prevent Dropdown widget to mak exception whe value out of range

Tue, 09 Feb 2021 07:56:25 +0100SVGHMI: removed dead code svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 07:56:25 +0100] rev 3130
SVGHMI: removed dead code

Tue, 09 Feb 2021 07:55:16 +0100SVGHMI: Add "lang" permament persistent HMI_LOCAL variable to reflect selected language, apply stored language choice at startup and make it always subscribed to a pseudo widget (as for hearbeat) that apply language choice when it changes. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 07:55:16 +0100] rev 3129
SVGHMI: Add "lang" permament persistent HMI_LOCAL variable to reflect selected language, apply stored language choice at startup and make it always subscribed to a pseudo widget (as for hearbeat) that apply language choice when it changes.

Tue, 09 Feb 2021 07:46:02 +0100SVGHMI: Added HMI:VarInitPersistent to initialize persistent HMI_LOCAL and PAGE_LOCAL variables, stored as cookies in browser. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 07:46:02 +0100] rev 3128
SVGHMI: Added HMI:VarInitPersistent to initialize persistent HMI_LOCAL and PAGE_LOCAL variables, stored as cookies in browser.

Tue, 09 Feb 2021 07:41:24 +0100SVGHMI: Enforce formating HMI_LOCAL and PAGE_LOCAL variables until the end of variable name svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 09 Feb 2021 07:41:24 +0100] rev 3127
SVGHMI: Enforce formating HMI_LOCAL and PAGE_LOCAL variables until the end of variable name

Thu, 04 Feb 2021 21:23:58 +0100SVGHMI: generate JS translation literals so that it is possible to also translate uses of texts, and added JS code that apply translations to tspans svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 04 Feb 2021 21:23:58 +0100] rev 3126
SVGHMI: generate JS translation literals so that it is possible to also translate uses of texts, and added JS code that apply translations to tspans

Thu, 04 Feb 2021 21:20:01 +0100SVGHMI: widget activable elements : moved code to wher it belongs, rewrote cleaner svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 04 Feb 2021 21:20:01 +0100] rev 3125
SVGHMI: widget activable elements : moved code to wher it belongs, rewrote cleaner

Tue, 02 Feb 2021 16:39:02 +0100SVGHMI: update generated XSLT svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Feb 2021 16:39:02 +0100] rev 3124
SVGHMI: update generated XSLT

Tue, 02 Feb 2021 11:20:54 +0100Merged svghmi
Edouard Tisserant [Tue, 02 Feb 2021 11:20:54 +0100] rev 3123
Merged

Tue, 02 Feb 2021 11:17:03 +0100SVGHMI: make a copy of tests/svghmi as test/svghmi_widget because too crowded since having pages for widget documentation. Strip those pages from tests/svghmi, so that it svghmi
Edouard Tisserant [Tue, 02 Feb 2021 11:17:03 +0100] rev 3122
SVGHMI: make a copy of tests/svghmi as test/svghmi_widget because too crowded since having pages for widget documentation. Strip those pages from tests/svghmi, so that it
is more light for regular testing.

Tue, 02 Feb 2021 10:59:00 +0100SVGHMI: Prevent excluded widget to appear in generated pages' widget list. svghmi
Edouard Tisserant [Tue, 02 Feb 2021 10:59:00 +0100] rev 3121
SVGHMI: Prevent excluded widget to appear in generated pages' widget list.

Tue, 02 Feb 2021 10:43:43 +0100SVGHMI: Remove recursive walk in parsed widget to find unique type and use xsl:key instead. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Feb 2021 10:43:43 +0100] rev 3120
SVGHMI: Remove recursive walk in parsed widget to find unique type and use xsl:key instead.

Tue, 26 Jan 2021 11:17:08 +0100SVGHMI: Fix browser side exception when some widget are not used, and are then discarded and not present in final SVG. In that case JS code was still making reference to discarded widget elements and was raising exception at init. svghmi
Edouard Tisserant [Tue, 26 Jan 2021 11:17:08 +0100] rev 3119
SVGHMI: Fix browser side exception when some widget are not used, and are then discarded and not present in final SVG. In that case JS code was still making reference to discarded widget elements and was raising exception at init.

Tue, 26 Jan 2021 11:14:22 +0100SVGHMI : removed support for changing keyboard position and showing at user defined location. Feature was problematic in many respect. svghmi
Edouard Tisserant [Tue, 26 Jan 2021 11:14:22 +0100] rev 3118
SVGHMI : removed support for changing keyboard position and showing at user defined location. Feature was problematic in many respect.

Mon, 25 Jan 2021 14:02:08 +0100SVGHMI: Make an error when pages are nested svghmi
Edouard Tisserant [Mon, 25 Jan 2021 14:02:08 +0100] rev 3117
SVGHMI: Make an error when pages are nested

Fri, 22 Jan 2021 11:30:37 +0100SVGHMI: i18n: finished passing back translated messaged to xslt proc, finished template to generate corresponding javascript literals. svghmi
Edouard Tisserant [Fri, 22 Jan 2021 11:30:37 +0100] rev 3116
SVGHMI: i18n: finished passing back translated messaged to xslt proc, finished template to generate corresponding javascript literals.

Fri, 22 Jan 2021 08:43:24 +0100SVGHMI: i18n: various fixes about unicode encoding and converting translation result back to XML to feed xslt processor svghmi
Edouard Tisserant [Fri, 22 Jan 2021 08:43:24 +0100] rev 3115
SVGHMI: i18n: various fixes about unicode encoding and converting translation result back to XML to feed xslt processor

Thu, 21 Jan 2021 11:08:04 +0100SVGHMI: i18n: better warning messages, more explicit. svghmi
Edouard Tisserant [Thu, 21 Jan 2021 11:08:04 +0100] rev 3114
SVGHMI: i18n: better warning messages, more explicit.

Thu, 21 Jan 2021 05:04:23 +0100SVGHMI: i18n: now loads PO filesand match translation against catalog. Refactored a bit to move i18n related code in i18n.py svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 21 Jan 2021 05:04:23 +0100] rev 3113
SVGHMI: i18n: now loads PO filesand match translation against catalog. Refactored a bit to move i18n related code in i18n.py

Tue, 19 Jan 2021 11:57:13 +0100SVGHMI: still WIP, now POT file is properly generated with utf-8 encoding and POEdit is launched when pressing button. svghmi
Edouard Tisserant [Tue, 19 Jan 2021 11:57:13 +0100] rev 3112
SVGHMI: still WIP, now POT file is properly generated with utf-8 encoding and POEdit is launched when pressing button.

Mon, 18 Jan 2021 10:32:13 +0100Docutil : reworked Inkscape launching and path resolution in docsvg.py svghmi
Edouard Tisserant [Mon, 18 Jan 2021 10:32:13 +0100] rev 3111
Docutil : reworked Inkscape launching and path resolution in docsvg.py

Fri, 15 Jan 2021 10:15:41 +0100merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jan 2021 10:15:41 +0100] rev 3110
merge

Wed, 13 Jan 2021 10:28:09 +0100Removed harmful assert in ProcessLogger. svghmi
Edouard Tisserant [Wed, 13 Jan 2021 10:28:09 +0100] rev 3109
Removed harmful assert in ProcessLogger.

ProcessLogger was having an assert in constructor when missing logger, leading to systematic exception when testing options accepted by compiler. This exception was silenced in ProjectController, and then MatIEC was always called without options.

Fri, 15 Jan 2021 10:11:05 +0100SVGHMI: Intermediate commit while implementing i18n. WIP. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 15 Jan 2021 10:11:05 +0100] rev 3108
SVGHMI: Intermediate commit while implementing i18n. WIP.

Tue, 05 Jan 2021 01:23:45 +0100SVGHMI: Jump widget: switch to class based declaraion, and add some TODO comments to prepare for jump to relative page being selected through a DropDown widget. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 05 Jan 2021 01:23:45 +0100] rev 3107
SVGHMI: Jump widget: switch to class based declaraion, and add some TODO comments to prepare for jump to relative page being selected through a DropDown widget.

Mon, 04 Jan 2021 13:57:11 +0100SVGHMI: intermediate state of test/svghmi's SVG for backup... WIP svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Jan 2021 13:57:11 +0100] rev 3106
SVGHMI: intermediate state of test/svghmi's SVG for backup... WIP

Mon, 04 Jan 2021 12:34:56 +0100SVGHMI: CircularBar: use animate() + cormetic changes svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 04 Jan 2021 12:34:56 +0100] rev 3105
SVGHMI: CircularBar: use animate() + cormetic changes

Tue, 29 Dec 2020 16:54:32 +0100SVGHMI: Meter widget: use animate() + cosmetic changes svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 16:54:32 +0100] rev 3104
SVGHMI: Meter widget: use animate() + cosmetic changes

Tue, 29 Dec 2020 15:53:30 +0100SVGHMI: Update generated xslt svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 15:53:30 +0100] rev 3103
SVGHMI: Update generated xslt

Tue, 29 Dec 2020 15:39:48 +0100SVGHMI: Fix bug in keypad leading to error messages in browser console when keypas has no Shift or CapsLock keys svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 15:39:48 +0100] rev 3102
SVGHMI: Fix bug in keypad leading to error messages in browser console when keypas has no Shift or CapsLock keys

Tue, 29 Dec 2020 15:38:31 +0100SVGHMI: cosmetic changes svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 15:38:31 +0100] rev 3101
SVGHMI: cosmetic changes

Tue, 29 Dec 2020 15:37:41 +0100SVGHMI: Input widget overrides undershot() and overshot() methods to display "min: xxx" or "max: xxx" when user input goes out of given range. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 15:37:41 +0100] rev 3100
SVGHMI: Input widget overrides undershot() and overshot() methods to display "min: xxx" or "max: xxx" when user input goes out of given range.

Tue, 29 Dec 2020 15:35:39 +0100SVGHMI: Added clipping to min and max value for all widget using @path,min,max syntax. Added overshot() and undershot() methods to widget base class, called when value is limited to max or min respectively. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 29 Dec 2020 15:35:39 +0100] rev 3099
SVGHMI: Added clipping to min and max value for all widget using @path,min,max syntax. Added overshot() and undershot() methods to widget base class, called when value is limited to max or min respectively.

Thu, 24 Dec 2020 17:00:43 +0100SVGHMI: decoupled operation string evaluation from HMI variable uptdate in change_hmi_variable(), paving the way for min/max boundaries enforcement svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 24 Dec 2020 17:00:43 +0100] rev 3098
SVGHMI: decoupled operation string evaluation from HMI variable uptdate in change_hmi_variable(), paving the way for min/max boundaries enforcement

Thu, 24 Dec 2020 16:56:19 +0100SVGHMI: Added parsing of min and max value that can be given as @path,min,max in widget description svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 24 Dec 2020 16:56:19 +0100] rev 3097
SVGHMI: Added parsing of min and max value that can be given as @path,min,max in widget description

Tue, 22 Dec 2020 14:57:59 +0100Merged default in svghmi branch svghmi
Edouard Tisserant [Tue, 22 Dec 2020 14:57:59 +0100] rev 3096
Merged default in svghmi branch

Mon, 21 Dec 2020 11:10:27 +0100WebInterface: better wording for wiping PLC content: "Repair" svghmi
Edouard Tisserant [Mon, 21 Dec 2020 11:10:27 +0100] rev 3095
WebInterface: better wording for wiping PLC content: "Repair"

Fri, 18 Dec 2020 15:52:58 +0100SVGHMI: almost rewrote Input widget to make it new class based style. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Dec 2020 15:52:58 +0100] rev 3094
SVGHMI: almost rewrote Input widget to make it new class based style.

Fri, 18 Dec 2020 11:50:28 +0100runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Dec 2020 11:50:28 +0100] rev 3093
runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.

Thu, 17 Dec 2020 19:31:00 +0100SVGHMI: added dropdown selection highlighting and fixed scrolling so that it doesn't miss any entry while jumping from one page to the other. svghmi
Edouard Tisserant [Thu, 17 Dec 2020 19:31:00 +0100] rev 3092
SVGHMI: added dropdown selection highlighting and fixed scrolling so that it doesn't miss any entry while jumping from one page to the other.

Wed, 16 Dec 2020 15:44:24 +0100SVGHMI: change scroll buttons into single unicode triangle and center them. Use highlight rectangle duplicated and hidden to catch selection clicks so that the whole row is clickable. svghmi
Edouard Tisserant [Wed, 16 Dec 2020 15:44:24 +0100] rev 3091
SVGHMI: change scroll buttons into single unicode triangle and center them. Use highlight rectangle duplicated and hidden to catch selection clicks so that the whole row is clickable.

Tue, 15 Dec 2020 13:43:21 +0100SVGHMI: DropDown widget now using new class based style svghmi
Edouard Tisserant [Tue, 15 Dec 2020 13:43:21 +0100] rev 3090
SVGHMI: DropDown widget now using new class based style

Thu, 10 Dec 2020 15:48:15 +0100Add a little test to see OnChange's .count .first .last in action svghmi
Edouard Tisserant [Thu, 10 Dec 2020 15:48:15 +0100] rev 3089
Add a little test to see OnChange's .count .first .last in action

Thu, 10 Dec 2020 14:54:42 +0100Fixed "Onchange" object added in previous commit svghmi
Edouard Tisserant [Thu, 10 Dec 2020 14:54:42 +0100] rev 3088
Fixed "Onchange" object added in previous commit

Thu, 10 Dec 2020 11:37:27 +0100Python Safe Globals now have more reliable triggering of OnChange call. Added "Onchange" object to accessible runtime variables that let user python code see count of changes and first and last values. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 10 Dec 2020 11:37:27 +0100] rev 3087
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.

Mon, 07 Dec 2020 09:49:34 +0100SVGHMI: cosmetic fixes in button widget svghmi
Edouard Tisserant [Mon, 07 Dec 2020 09:49:34 +0100] rev 3086
SVGHMI: cosmetic fixes in button widget

Sat, 05 Dec 2020 16:59:27 +0100SVGHMI: Rewrote button widget. svghmi
Edouard Tisserant [Sat, 05 Dec 2020 16:59:27 +0100] rev 3085
SVGHMI: Rewrote button widget.

Wed, 02 Dec 2020 14:33:24 +0100SVGHMI: update generated XSLT svghmi
Edouard Tisserant [Wed, 02 Dec 2020 14:33:24 +0100] rev 3084
SVGHMI: update generated XSLT

Wed, 02 Dec 2020 14:32:56 +0100SVGHMI: stuff test so that it moves all the time, to have better chance to spot memory leaks... svghmi
Edouard Tisserant [Wed, 02 Dec 2020 14:32:56 +0100] rev 3083
SVGHMI: stuff test so that it moves all the time, to have better chance to spot memory leaks...

Wed, 02 Dec 2020 14:31:57 +0100SVGHMI: prevent unwnted context menu and pinch zoom svghmi
Edouard Tisserant [Wed, 02 Dec 2020 14:31:57 +0100] rev 3082
SVGHMI: prevent unwnted context menu and pinch zoom

Wed, 02 Dec 2020 14:30:58 +0100SVGHMI: more attempts to prevent losing memory in JS closure svghmi
Edouard Tisserant [Wed, 02 Dec 2020 14:30:58 +0100] rev 3081
SVGHMI: more attempts to prevent losing memory in JS closure

Fri, 27 Nov 2020 18:06:34 +0100SVGHMI: WIP trying to reduce memory usage : use .onclick onstead of SetAttribute, avoid useless closure and object creation when possible, etc. svghmi
Edouard Tisserant [Fri, 27 Nov 2020 18:06:34 +0100] rev 3080
SVGHMI: WIP trying to reduce memory usage : use .onclick onstead of SetAttribute, avoid useless closure and object creation when possible, etc.

Wed, 25 Nov 2020 14:47:47 +0100SVGHMI: update generated xslt file svghmi
Edouard Tisserant [Wed, 25 Nov 2020 14:47:47 +0100] rev 3079
SVGHMI: update generated xslt file

Wed, 25 Nov 2020 14:47:23 +0100SVGHMI: use const when applicable svghmi
Edouard Tisserant [Wed, 25 Nov 2020 14:47:23 +0100] rev 3078
SVGHMI: use const when applicable

Wed, 25 Nov 2020 14:46:25 +0100SVGHMI: prevents text and svg elements selection on the whole page when dragging. svghmi
Edouard Tisserant [Wed, 25 Nov 2020 14:46:25 +0100] rev 3077
SVGHMI: prevents text and svg elements selection on the whole page when dragging.

Wed, 25 Nov 2020 14:45:01 +0100SVGHMI: Update default test to check that Input widget is indeed updated when variable changes. svghmi
Edouard Tisserant [Wed, 25 Nov 2020 14:45:01 +0100] rev 3076
SVGHMI: Update default test to check that Input widget is indeed updated when variable changes.

Wed, 25 Nov 2020 14:43:03 +0100SVGHMI: Fix: on screen keyboard wasn't showing up when editing local variables through Input widget. svghmi
Edouard Tisserant [Wed, 25 Nov 2020 14:43:03 +0100] rev 3075
SVGHMI: Fix: on screen keyboard wasn't showing up when editing local variables through Input widget.

Fri, 20 Nov 2020 11:17:40 +0100Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 20 Nov 2020 11:17:40 +0100] rev 3074
Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode

Wed, 18 Nov 2020 23:08:17 +0100merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Nov 2020 23:08:17 +0100] rev 3073
merge

Wed, 18 Nov 2020 10:15:44 +0100py_ext: better handling of coma separated OnChange attribute for python safe global variables. svghmi
Edouard Tisserant [Wed, 18 Nov 2020 10:15:44 +0100] rev 3072
py_ext: better handling of coma separated OnChange attribute for python safe global variables.

Wed, 18 Nov 2020 23:06:16 +0100Project tree: Clicking on ConfigTreeNode should have same behaviour as for POUS and other IEC types : simple click to select and double click to open. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Nov 2020 23:06:16 +0100] rev 3071
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.

Mon, 02 Nov 2020 10:56:09 +0100Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Nov 2020 10:56:09 +0100] rev 3070
Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched.

Wed, 28 Oct 2020 18:21:12 +0200Arbitrary variables added to JsonTable subscription are now passed as 'extra' field in json query. As an example added JsonTable filtering in tests/svghmi svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 28 Oct 2020 18:21:12 +0200] rev 3069
Arbitrary variables added to JsonTable subscription are now passed as 'extra' field in json query. As an example added JsonTable filtering in tests/svghmi

Thu, 22 Oct 2020 22:44:29 +0200SVGHMI: Fix HMI_REAL support, and add a HMI_REAL use case in tests/svghmi. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 22 Oct 2020 22:44:29 +0200] rev 3068
SVGHMI: Fix HMI_REAL support, and add a HMI_REAL use case in tests/svghmi.

Tue, 20 Oct 2020 00:24:49 +0200merge svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Oct 2020 00:24:49 +0200] rev 3067
merge

Mon, 19 Oct 2020 10:17:18 +0200SVGHMI: JsonTable now outputs "visible" value as well. svghmi
Edouard Tisserant [Mon, 19 Oct 2020 10:17:18 +0200] rev 3066
SVGHMI: JsonTable now outputs "visible" value as well.

Mon, 19 Oct 2020 10:15:26 +0200SVGHMI: non significant cosmetic changes svghmi
Edouard Tisserant [Mon, 19 Oct 2020 10:15:26 +0200] rev 3065
SVGHMI: non significant cosmetic changes

Mon, 19 Oct 2020 09:29:11 +0200- New widget customHtml which allows to insert block of html code svghmi
usveticic [Mon, 19 Oct 2020 09:29:11 +0200] rev 3064
- New widget customHtml which allows to insert block of html code
- widget animate transfered to animaterotation
- widget animate, left to be more customizable
- changes to svghmi_v2/svghmi.svg

Tue, 20 Oct 2020 00:23:52 +0200PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Oct 2020 00:23:52 +0200] rev 3063
PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly.

Thu, 01 Oct 2020 14:23:27 +0200Button fix if no active or inactive state, svghmi
usveticic [Thu, 01 Oct 2020 14:23:27 +0200] rev 3062
Button fix if no active or inactive state,
Widget animate changed to use anitmateTransform and added option to change rotation
Widget circular slider fixed so it is working on got and reprogramed so it similar to normal slider
Widget slider added support for changing size still need some changes to work properly
Added slider to svghmi test project
Changed svg in svhgmi_v2 project

Wed, 30 Sep 2020 12:31:59 +0200Merge two different heads svghmi
usveticic [Wed, 30 Sep 2020 12:31:59 +0200] rev 3061
Merge two different heads

Thu, 24 Sep 2020 15:42:40 +0200SVGHMI: Documentation fix svghmi
Edouard Tisserant [Thu, 24 Sep 2020 15:42:40 +0200] rev 3060
SVGHMI: Documentation fix

Thu, 24 Sep 2020 11:52:40 +0200Button and toggle reworked to use animate and dispatch svghmi
usveticic [Thu, 24 Sep 2020 11:52:40 +0200] rev 3059
Button and toggle reworked to use animate and dispatch
Slider added buttons to incremente/decrement by 1
Init for animate widget
Changed test svg and plc

Thu, 17 Sep 2020 11:30:22 +0200Merge + fix side effects of making warning instead of errors in case of missing HMI variable svghmi
Edouard Tisserant [Thu, 17 Sep 2020 11:30:22 +0200] rev 3058
Merge + fix side effects of making warning instead of errors in case of missing HMI variable

Wed, 16 Sep 2020 09:42:26 +0200Updated svg and xml for testing program svghmi
usveticic [Wed, 16 Sep 2020 09:42:26 +0200] rev 3057
Updated svg and xml for testing program

Wed, 16 Sep 2020 09:41:52 +0200Button, ToggleButton and slider updated. Error to warning when building svghmi
usveticic [Wed, 16 Sep 2020 09:41:52 +0200] rev 3056
Button, ToggleButton and slider updated. Error to warning when building

Button fixed so it doesn't release until it gets feedback from plc

Toggle button changed so it makes changes instantly. There was too big delay if we waited for feedback.

Slider added new features need some changes for final version.

Tue, 15 Sep 2020 13:57:06 +0200Modbus: fixed typo in ctype typing. svghmi
Edouard Tisserant [Tue, 15 Sep 2020 13:57:06 +0200] rev 3055
Modbus: fixed typo in ctype typing.

Fri, 11 Sep 2020 13:46:41 +0200MODBUS: Fix saving of websettings. svghmi
Edouard Tisserant [Fri, 11 Sep 2020 13:46:41 +0200] rev 3054
MODBUS: Fix saving of websettings.

Thu, 10 Sep 2020 16:08:26 +0200Runtime/PLCObject : move call to PreStartPLC right after call to the "start" method of all python extensions, and then just before the start of the python loop executing python_* blocks. svghmi
Edouard Tisserant [Thu, 10 Sep 2020 16:08:26 +0200] rev 3053
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, 03 Sep 2020 11:16:08 +0200SVGHMI: Better error message when inkscape is not installed. svghmi
Edouard Tisserant [Thu, 03 Sep 2020 11:16:08 +0200] rev 3052
SVGHMI: Better error message when inkscape is not installed.

Wed, 02 Sep 2020 11:45:41 +0200SVGHMI: nicer error message svghmi
Edouard Tisserant [Wed, 02 Sep 2020 11:45:41 +0200] rev 3051
SVGHMI: nicer error message

Tue, 01 Sep 2020 11:15:48 +0200Merge svghmi
Edouard Tisserant [Tue, 01 Sep 2020 11:15:48 +0200] rev 3050
Merge

Mon, 31 Aug 2020 13:54:08 +0200Attempt to workaround problem reported about empty plc.xml after unrelated crash. Now, if etree model is corrupted in a way tostring() would generate an empty string, exception prevents saving. svghmi
Edouard Tisserant [Mon, 31 Aug 2020 13:54:08 +0200] rev 3049
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.

Fri, 28 Aug 2020 15:29:35 +0200SVGHMI: JsonTable can now have clickable elements, that trigger a request with extra argument whose content is taken from Json data. svghmi
Edouard Tisserant [Fri, 28 Aug 2020 15:29:35 +0200] rev 3048
SVGHMI: JsonTable can now have clickable elements, that trigger a request with extra argument whose content is taken from Json data.

Fri, 28 Aug 2020 11:31:18 +0200Merged svghmi
Edouard Tisserant [Fri, 28 Aug 2020 11:31:18 +0200] rev 3047
Merged

Fri, 28 Aug 2020 11:27:07 +0200SVGHMI: cosmetic fix in test svghmi
Edouard Tisserant [Fri, 28 Aug 2020 11:27:07 +0200] rev 3046
SVGHMI: cosmetic fix in test

Tue, 18 Aug 2020 11:42:28 +0200All widgets reworked to use widget class and animate function if needed svghmi
usveticic [Tue, 18 Aug 2020 11:42:28 +0200] rev 3045
All widgets reworked to use widget class and animate function if needed

Thu, 27 Aug 2020 14:34:48 +0200SVGHMI: Moved JsonTable/Alarm related test in a separate page. svghmi
Edouard Tisserant [Thu, 27 Aug 2020 14:34:48 +0200] rev 3044
SVGHMI: Moved JsonTable/Alarm related test in a separate page.

Thu, 27 Aug 2020 14:34:00 +0200SVGHMI: JsonTable now ignores elements and groups starting with # svghmi
Edouard Tisserant [Thu, 27 Aug 2020 14:34:00 +0200] rev 3043
SVGHMI: JsonTable now ignores elements and groups starting with #

Thu, 27 Aug 2020 09:59:35 +0200SVGHMI: Fix keypad : non-number input was always considered invalid because of missing type checking. svghmi
Edouard Tisserant [Thu, 27 Aug 2020 09:59:35 +0200] rev 3042
SVGHMI: Fix keypad : non-number input was always considered invalid because of missing type checking.

Wed, 26 Aug 2020 14:27:54 +0200SVGHMI: JsonTable now updates range and position variables so that slider widget can update. svghmi
Edouard Tisserant [Wed, 26 Aug 2020 14:27:54 +0200] rev 3041
SVGHMI: JsonTable now updates range and position variables so that slider widget can update.

Wed, 26 Aug 2020 14:24:43 +0200SVGHMI: Fix multiple variable support in widget svghmi
Edouard Tisserant [Wed, 26 Aug 2020 14:24:43 +0200] rev 3040
SVGHMI: Fix multiple variable support in widget

Wed, 26 Aug 2020 11:34:06 +0200SVGHMI: Add TODOs in Button widgets. svghmi
Edouard Tisserant [Wed, 26 Aug 2020 11:34:06 +0200] rev 3039
SVGHMI: Add TODOs in Button widgets.

Wed, 26 Aug 2020 11:26:45 +0200SVGHMI: Alarm test not using Button widget anymore, too many problems. Use Input widget instead to increment value on each click and execute python code on change. svghmi
Edouard Tisserant [Wed, 26 Aug 2020 11:26:45 +0200] rev 3038
SVGHMI: Alarm test not using Button widget anymore, too many problems. Use Input widget instead to increment value on each click and execute python code on change.

Tue, 25 Aug 2020 14:34:49 +0200SVGHMI: little fix in HMI:Button svghmi
Edouard Tisserant [Tue, 25 Aug 2020 14:34:49 +0200] rev 3037
SVGHMI: little fix in HMI:Button

Tue, 25 Aug 2020 14:32:39 +0200SVGHMI: JsonTable now use intermediate variables again to address JSON data without duplicating code or referencing. Using intermediate variables also alows to check for availability of data and stop evaluating early if data is missing. Finally added complete roundtrip example to illustrate use of JSonTable to display "alarms" collected in python from changes on PLC boolean variables. svghmi
Edouard Tisserant [Tue, 25 Aug 2020 14:32:39 +0200] rev 3036
SVGHMI: JsonTable now use intermediate variables again to address JSON data without duplicating code or referencing. Using intermediate variables also alows to check for availability of data and stop evaluating early if data is missing. Finally added complete roundtrip example to illustrate use of JSonTable to display "alarms" collected in python from changes on PLC boolean variables.

Mon, 24 Aug 2020 09:48:35 +0200SVGHMI: removed debug code forgotten here and there. svghmi
Edouard Tisserant [Mon, 24 Aug 2020 09:48:35 +0200] rev 3035
SVGHMI: removed debug code forgotten here and there.

Fri, 21 Aug 2020 14:29:03 +0200SVGHMI: JsonTable now makes meaningfull JSON request : all arguments and variables are passed in. svghmi
Edouard Tisserant [Fri, 21 Aug 2020 14:29:03 +0200] rev 3034
SVGHMI: JsonTable now makes meaningfull JSON request : all arguments and variables are passed in.

Fri, 21 Aug 2020 13:22:54 +0200SVGHMI: Keypad is now keeping Javascript type constency. In other words, if a number was given as initial value, input value will have to convert to number in order to be valid. In case invalid value is entered, initial value is restored. svghmi
Edouard Tisserant [Fri, 21 Aug 2020 13:22:54 +0200] rev 3033
SVGHMI: Keypad is now keeping Javascript type constency. In other words, if a number was given as initial value, input value will have to convert to number in order to be valid. In case invalid value is entered, initial value is restored.

Thu, 20 Aug 2020 14:12:49 +0200SVGHMI: Behave when project path include spaces, and make more understandable error in case of problem extracting geometry with inkscape. svghmi
Edouard Tisserant [Thu, 20 Aug 2020 14:12:49 +0200] rev 3032
SVGHMI: Behave when project path include spaces, and make more understandable error in case of problem extracting geometry with inkscape.

Thu, 20 Aug 2020 13:56:21 +0200SVGHMI: Refactor the way JsonTable generate javascript code to access json data. Now support multiple assignments, used in the case of text to change both content and style on the same element. svghmi
Edouard Tisserant [Thu, 20 Aug 2020 13:56:21 +0200] rev 3031
SVGHMI: Refactor the way JsonTable generate javascript code to access json data. Now support multiple assignments, used in the case of text to change both content and style on the same element.

Thu, 20 Aug 2020 13:52:00 +0200SVGHMI: Fix again clone unlinking, and this time add an "original" attribute to track the id of the original object before unlinking. svghmi
Edouard Tisserant [Thu, 20 Aug 2020 13:52:00 +0200] rev 3030
SVGHMI: Fix again clone unlinking, and this time add an "original" attribute to track the id of the original object before unlinking.

Mon, 17 Aug 2020 10:00:25 +0200SVGHMI: Fix svg test file while testing latest JsonTableChanges svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 17 Aug 2020 10:00:25 +0200] rev 3029
SVGHMI: Fix svg test file while testing latest JsonTableChanges

Sat, 15 Aug 2020 18:50:25 +0200SVGHMI: HMI:JsonTable also recognize TextStyleList, but parsing of textContent is still not implemented and style is still not updated. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 15 Aug 2020 18:50:25 +0200] rev 3028
SVGHMI: HMI:JsonTable also recognize TextStyleList, but parsing of textContent is still not implemented and style is still not updated.

Sat, 15 Aug 2020 18:46:35 +0200SVGHMI: Deeper clone unlinking. Was actually not recursive, and clones in clones where not unlinked. Stack successive ids to avoid collisions. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 15 Aug 2020 18:46:35 +0200] rev 3027
SVGHMI: Deeper clone unlinking. Was actually not recursive, and clones in clones where not unlinked. Stack successive ids to avoid collisions.

Thu, 13 Aug 2020 11:37:39 +0200SVGHMI: factorize dispatch calling logic. svghmi
Edouard Tisserant [Thu, 13 Aug 2020 11:37:39 +0200] rev 3026
SVGHMI: factorize dispatch calling logic.

Thu, 13 Aug 2020 11:30:18 +0200SVGHMI: HMI:VarInit:"a string"@a_value : empty widget (i.e. empty svg:group) that initialize content of local variables to value given as first argument. svghmi
Edouard Tisserant [Thu, 13 Aug 2020 11:30:18 +0200] rev 3025
SVGHMI: HMI:VarInit:"a string"@a_value : empty widget (i.e. empty svg:group) that initialize content of local variables to value given as first argument.

Wed, 12 Aug 2020 15:24:02 +0200Merge svghmi
Edouard Tisserant [Wed, 12 Aug 2020 15:24:02 +0200] rev 3024
Merge

Wed, 12 Aug 2020 13:36:18 +0200SVGHMI: Add more local HMI variable tests in tests/svghmi. svghmi
Edouard Tisserant [Wed, 12 Aug 2020 13:36:18 +0200] rev 3023
SVGHMI: Add more local HMI variable tests in tests/svghmi.

Tue, 11 Aug 2020 14:37:33 +0200SVGHMI: finished initial implementation of PAGE_LOCAL and HMI_LOCAL variables. svghmi
Edouard Tisserant [Tue, 11 Aug 2020 14:37:33 +0200] rev 3022
SVGHMI: finished initial implementation of PAGE_LOCAL and HMI_LOCAL variables.

Mon, 10 Aug 2020 15:25:57 +0200SVGHMI: add a SetPoint to Slider Widget, visible only when operating the slider. svghmi
Edouard Tisserant [Mon, 10 Aug 2020 15:25:57 +0200] rev 3021
SVGHMI: add a SetPoint to Slider Widget, visible only when operating the slider.

Mon, 10 Aug 2020 14:00:20 +0200SVGHMI: Update Slider widget so that it doesn't display future value but actual value only. svghmi
Edouard Tisserant [Mon, 10 Aug 2020 14:00:20 +0200] rev 3020
SVGHMI: Update Slider widget so that it doesn't display future value but actual value only.

Mon, 10 Aug 2020 13:58:55 +0200SVGHMI: 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
Edouard Tisserant [Mon, 10 Aug 2020 13:58:55 +0200] rev 3019
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.

Mon, 10 Aug 2020 11:30:06 +0200Merge svghmi
Edouard Tisserant [Mon, 10 Aug 2020 11:30:06 +0200] rev 3018
Merge

Sat, 08 Aug 2020 15:53:28 +0200SVGHMI: Intermediate state while implementing local HMI variables. Now write to cache only (no send), still need to implement dispatch on change. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 08 Aug 2020 15:53:28 +0200] rev 3017
SVGHMI: Intermediate state while implementing local HMI variables. Now write to cache only (no send), still need to implement dispatch on change.

Wed, 05 Aug 2020 15:20:10 +0200Beremiz test project with newly created widgets. svghmi
usveticic [Wed, 05 Aug 2020 15:20:10 +0200] rev 3016
Beremiz test project with newly created widgets.

Wed, 05 Aug 2020 15:18:00 +0200Rebuilded gen_index_html.xslt after all new widgets were commited svghmi
usveticic [Wed, 05 Aug 2020 15:18:00 +0200] rev 3015
Rebuilded gen_index_html.xslt after all new widgets were commited

Wed, 05 Aug 2020 15:16:43 +0200Create new multistate widget which extand class widget svghmi
usveticic [Wed, 05 Aug 2020 15:16:43 +0200] rev 3014
Create new multistate widget which extand class widget

Wed, 05 Aug 2020 15:16:03 +0200Create new CircularSlider widget which extand class widget svghmi
usveticic [Wed, 05 Aug 2020 15:16:03 +0200] rev 3013
Create new CircularSlider widget which extand class widget

Wed, 05 Aug 2020 15:15:33 +0200Create new slider widget which extand class widget svghmi
usveticic [Wed, 05 Aug 2020 15:15:33 +0200] rev 3012
Create new slider widget which extand class widget

Wed, 05 Aug 2020 15:14:39 +0200Reworked togglebutton widget to extand class widget svghmi
usveticic [Wed, 05 Aug 2020 15:14:39 +0200] rev 3011
Reworked togglebutton widget to extand class widget

Wed, 05 Aug 2020 15:13:59 +0200Changed keyboard to show on defined position. svghmi
usveticic [Wed, 05 Aug 2020 15:13:59 +0200] rev 3010
Changed keyboard to show on defined position.

* svghmi.js
added size paramter to edit_value
changed show_modal function to offset keyboard if paramter passed

*widget_input.ysl2
in on_edit_click:
function get position if key_pos element is defined in input widget

*widget_keypad.ysl2
Reworked keypad widget to extand class widget,
added support for changing keyboard position to user defined location

Wed, 05 Aug 2020 15:04:53 +0200Reworked button widget so it uses classes. svghmi
usveticic [Wed, 05 Aug 2020 15:04:53 +0200] rev 3009
Reworked button widget so it uses classes.

Thu, 06 Aug 2020 15:01:01 +0200SVGHMI: 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
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 06 Aug 2020 15:01:01 +0200] rev 3008
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.

Thu, 06 Aug 2020 14:59:04 +0200SVGHMI : 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
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 06 Aug 2020 14:59:04 +0200] rev 3007
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.

Wed, 05 Aug 2020 18:53:56 +0200SVGHMI: JS refactoring continued : "dispatch_value_to_widget" becomes widget class member "new_hmi_value" (was also broken by previous relativeness commit) svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Aug 2020 18:53:56 +0200] rev 3006
SVGHMI: JS refactoring continued : "dispatch_value_to_widget" becomes widget class member "new_hmi_value" (was also broken by previous relativeness commit)

Wed, 05 Aug 2020 18:49:29 +0200SVGHMI: widgets are not anymore binary relative or absolute, but have a "relativeness". svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Aug 2020 18:49:29 +0200] rev 3005
SVGHMI: widgets are not anymore binary relative or absolute, but have a "relativeness".

Because of allowing multiple variables per widget, we must distinguish if individual variables is relative to page, not the whole widget.

Tue, 04 Aug 2020 11:53:39 +0200SVGHMI: More JS code refactoring : change_hmi_value and apply_hmi_value now methods of widget class. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 04 Aug 2020 11:53:39 +0200] rev 3004
SVGHMI: More JS code refactoring : change_hmi_value and apply_hmi_value now methods of widget class.

Mon, 03 Aug 2020 18:25:23 +0200SVGHMI: Better JS code semantic in ForEach widget class. Update lagging generated xslt. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 18:25:23 +0200] rev 3003
SVGHMI: Better JS code semantic in ForEach widget class. Update lagging generated xslt.

Mon, 03 Aug 2020 18:22:19 +0200SVGHMI: Add ForEach Widget is svghmi test svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 18:22:19 +0200] rev 3002
SVGHMI: Add ForEach Widget is svghmi test

Mon, 03 Aug 2020 16:34:44 +0200SVGHMI: add get_idx(index) to widget objects to factorize a bit code repeated accross widgets. To be continued. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 16:34:44 +0200] rev 3001
SVGHMI: add get_idx(index) to widget objects to factorize a bit code repeated accross widgets. To be continued.

Mon, 03 Aug 2020 16:32:23 +0200SVGHMI: prefer apply_hmi_value() to change_hmi_value() when possible svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 16:32:23 +0200] rev 3000
SVGHMI: prefer apply_hmi_value() to change_hmi_value() when possible

Mon, 03 Aug 2020 16:30:16 +0200SVGHMI: Add RelativePages to tests svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 16:30:16 +0200] rev 2999
SVGHMI: Add RelativePages to tests

Mon, 03 Aug 2020 12:08:25 +0200SVGHMI: Update Widget Display templates to generate Class based declaration. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 03 Aug 2020 12:08:25 +0200] rev 2998
SVGHMI: Update Widget Display templates to generate Class based declaration.

Wed, 22 Jul 2020 13:56:43 +0200SVGHMI: JsonTable now picks items from HMI:List, and update texts, all according to Json data. Still miss scrolling. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 22 Jul 2020 13:56:43 +0200] rev 2997
SVGHMI: JsonTable now picks items from HMI:List, and update texts, all according to Json data. Still miss scrolling.

Fri, 17 Jul 2020 12:21:45 +0200SVGHMI: JsonTable now generate working data access code for data/* elements. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 17 Jul 2020 12:21:45 +0200] rev 2996
SVGHMI: JsonTable now generate working data access code for data/* elements.

Fri, 17 Jul 2020 12:19:53 +0200SVGHMI: 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
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 17 Jul 2020 12:19:53 +0200] rev 2995
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.

Tue, 14 Jul 2020 22:05:47 +0200SVGHMI: minimal JSON Table Widget communication infra + corresponding python code as py_ext code in svghmi test. To be continued. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Jul 2020 22:05:47 +0200] rev 2994
SVGHMI: minimal JSON Table Widget communication infra + corresponding python code as py_ext code in svghmi test. To be continued.

Mon, 13 Jul 2020 13:56:42 +0200Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree. svghmi
Edouard Tisserant [Mon, 13 Jul 2020 13:56:42 +0200] rev 2993
Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree.

Fri, 10 Jul 2020 11:15:41 +0200Python Runtime : stil untested optimization of Python Safe Globals. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 10 Jul 2020 11:15:41 +0200] rev 2992
Python Runtime : stil untested optimization of Python Safe Globals.

Now only one python_poll block per python extension is used to trigger
execution of OnChange calls.

Fri, 03 Jul 2020 14:02:04 +0200Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Jul 2020 14:02:04 +0200] rev 2991
Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.

Fri, 03 Jul 2020 10:03:25 +0200Merge from default svghmi
Edouard Tisserant [Fri, 03 Jul 2020 10:03:25 +0200] rev 2990
Merge from default

Mon, 29 Jun 2020 14:38:04 +0200Modbus: fix strange side effect of re-use of condition variables or mutex with Xenomai : without bzero of the associated types, mutex keeps locked. svghmi
Edouard Tisserant [Mon, 29 Jun 2020 14:38:04 +0200] rev 2989
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 +0200Modbus: fix client timer invalid arguments. svghmi
Edouard Tisserant [Wed, 24 Jun 2020 14:38:11 +0200] rev 2988
Modbus: fix client timer invalid arguments.

Tue, 23 Jun 2020 13:50:21 +0200Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions. svghmi
Edouard Tisserant [Tue, 23 Jun 2020 13:50:21 +0200] rev 2987
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 +0200Runtime: Fix typo in PLCObject leading to exception when reporting failure. svghmi
Edouard Tisserant [Fri, 19 Jun 2020 11:07:25 +0200] rev 2986
Runtime: Fix typo in PLCObject leading to exception when reporting failure.

Thu, 18 Jun 2020 14:18:40 +0200merged svghmi
Edouard Tisserant [Thu, 18 Jun 2020 14:18:40 +0200] rev 2985
merged

Thu, 18 Jun 2020 14:16:19 +0200SVGHMI: Fix bug introduced when merging default svghmi
Edouard Tisserant [Thu, 18 Jun 2020 14:16:19 +0200] rev 2984
SVGHMI: Fix bug introduced when merging default

Thu, 18 Jun 2020 14:15:43 +0200SVGHMI: Add use of Python PLC Globals it test svghmi
Edouard Tisserant [Thu, 18 Jun 2020 14:15:43 +0200] rev 2983
SVGHMI: Add use of Python PLC Globals it test

Thu, 18 Jun 2020 11:00:26 +0200Merge default changes in SVGHMI svghmi
Edouard Tisserant [Thu, 18 Jun 2020 11:00:26 +0200] rev 2982
Merge default changes in SVGHMI

Thu, 18 Jun 2020 10:42:08 +0200Merge default changes in SVGHMI svghmi
Edouard Tisserant [Thu, 18 Jun 2020 10:42:08 +0200] rev 2981
Merge default changes in SVGHMI

Thu, 04 Jun 2020 11:14:21 +0200SVGHMI: add "unsubscribable" property to widgets in order to generalize what already happens for jump buttons. svghmi
Edouard Tisserant [Thu, 04 Jun 2020 11:14:21 +0200] rev 2980
SVGHMI: add "unsubscribable" property to widgets in order to generalize what already happens for jump buttons.
In most cases jump buttons do not really subscribe to pointed HMI variable, path is given as a relative page jump path. When widget.unsubscribable is set to true, no subscription is made on page switch, but still offset is updated.
This fixes bug happening on relative jump buttons without "disabled" element where offset did not change on relative page switch.

Wed, 03 Jun 2020 13:31:55 +0200merge svghmi
Edouard Tisserant [Wed, 03 Jun 2020 13:31:55 +0200] rev 2979
merge

Fri, 29 May 2020 09:46:07 +0200Merge svghmi
dgaberscek [Fri, 29 May 2020 09:46:07 +0200] rev 2978
Merge

Tue, 26 May 2020 10:59:01 +0200SVGHMI: Added widget toggleButton. svghmi
dgaberscek [Tue, 26 May 2020 10:59:01 +0200] rev 2977
SVGHMI: Added widget toggleButton.

Tue, 26 May 2020 10:53:02 +0200SVGHMI: Changed widget button handler to element attribute. svghmi
dgaberscek [Tue, 26 May 2020 10:53:02 +0200] rev 2976
SVGHMI: Changed widget button handler to element attribute.

Tue, 02 Jun 2020 13:37:34 +0200Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer. svghmi
Edouard Tisserant [Tue, 02 Jun 2020 13:37:34 +0200] rev 2975
Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer.

Tue, 02 Jun 2020 11:34:50 +0200IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button. svghmi
Edouard Tisserant [Tue, 02 Jun 2020 11:34:50 +0200] rev 2974
IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button.

Mon, 01 Jun 2020 14:47:31 +0200Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect. svghmi
Edouard Tisserant [Mon, 01 Jun 2020 14:47:31 +0200] rev 2973
Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect.

Thu, 28 May 2020 11:38:09 +0200PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions. svghmi
Edouard Tisserant [Thu, 28 May 2020 11:38:09 +0200] rev 2972
PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions.

Tue, 26 May 2020 09:58:20 +0200Solve 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
Edouard Tisserant [Tue, 26 May 2020 09:58:20 +0200] rev 2971
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.

Thu, 21 May 2020 11:29:45 +0200SVGHMI: stop using eval in change_hmi_value, apparently slowly leaking memory. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 21 May 2020 11:29:45 +0200] rev 2970
SVGHMI: stop using eval in change_hmi_value, apparently slowly leaking memory.

Thu, 14 May 2020 17:49:20 +0200SVGHMI: 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
Edouard Tisserant [Thu, 14 May 2020 17:49:20 +0200] rev 2969
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.

Thu, 14 May 2020 17:48:58 +0200SVGHMI: 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
Edouard Tisserant [Thu, 14 May 2020 17:48:58 +0200] rev 2968
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.

Thu, 14 May 2020 17:48:15 +0200SVGHMI: Applies clone unlinking to widget themselves, not only to clones inside widgets. svghmi
Edouard Tisserant [Thu, 14 May 2020 17:48:15 +0200] rev 2967
SVGHMI: Applies clone unlinking to widget themselves, not only to clones inside widgets.

Thu, 14 May 2020 09:24:09 +0200merge svghmi
Edouard Tisserant [Thu, 14 May 2020 09:24:09 +0200] rev 2966
merge

Wed, 13 May 2020 14:48:52 +0200SVGHMI: 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
Edouard Tisserant [Wed, 13 May 2020 14:48:52 +0200] rev 2965
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.

Wed, 13 May 2020 14:47:17 +0200Added FatalError call to Libraries code gen, so that they can emit messages addressed like config tree nodes do. svghmi
Edouard Tisserant [Wed, 13 May 2020 14:47:17 +0200] rev 2964
Added FatalError call to Libraries code gen, so that they can emit messages addressed like config tree nodes do.

Wed, 13 May 2020 22:25:22 +0200SVGHMI: more Widget properties declared ES6 style. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 22:25:22 +0200] rev 2963
SVGHMI: more Widget properties declared ES6 style.

Wed, 13 May 2020 22:22:13 +0200SVGHMI: Switch widget now use class declaration svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 22:22:13 +0200] rev 2962
SVGHMI: Switch widget now use class declaration

Wed, 13 May 2020 18:50:07 +0200SVGHMI: Update Button widget to class declaration, and add a button widget in tests/svghmi. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 18:50:07 +0200] rev 2961
SVGHMI: Update Button widget to class declaration, and add a button widget in tests/svghmi.

Wed, 13 May 2020 18:47:09 +0200SVGHMI: explicit handling of undefined maximum widget update frequency svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 18:47:09 +0200] rev 2960
SVGHMI: explicit handling of undefined maximum widget update frequency

Wed, 13 May 2020 18:27:26 +0200SVGHMI: removed dead code svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 18:27:26 +0200] rev 2959
SVGHMI: removed dead code

Wed, 13 May 2020 18:26:38 +0200SVGHMI: Back button updated to class style svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 May 2020 18:26:38 +0200] rev 2958
SVGHMI: Back button updated to class style

Mon, 11 May 2020 11:33:00 +0200merge svghmi
Edouard Tisserant [Mon, 11 May 2020 11:33:00 +0200] rev 2957
merge

Mon, 11 May 2020 11:10:38 +0200DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing svghmi
Edouard Tisserant [Mon, 11 May 2020 11:10:38 +0200] rev 2956
DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing

Sun, 10 May 2020 23:40:43 +0200SVGHMI: Exclude non-widget HMI:* labeled elements from hmi_widget. Namely : HMI:Page HMI:Lang and HMI:List have been excluded. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 23:40:43 +0200] rev 2955
SVGHMI: Exclude non-widget HMI:* labeled elements from hmi_widget. Namely : HMI:Page HMI:Lang and HMI:List have been excluded.

Sun, 10 May 2020 17:01:09 +0200SVGHMI: clean up dead code, update generated xslt. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 17:01:09 +0200] rev 2954
SVGHMI: clean up dead code, update generated xslt.

Sun, 10 May 2020 16:36:41 +0200SVGHMI: apply per class overloading of sub/unsub to Jump widget svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 16:36:41 +0200] rev 2953
SVGHMI: apply per class overloading of sub/unsub to Jump widget

Sun, 10 May 2020 16:36:09 +0200SVGHMI: apply per class overloading of sub/unsub to ForEach widget svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 16:36:09 +0200] rev 2952
SVGHMI: apply per class overloading of sub/unsub to ForEach widget

Sun, 10 May 2020 16:34:44 +0200SVGHMI: Widget's specific sub/unsub traits are now wxpressed in widget's class. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 16:34:44 +0200] rev 2951
SVGHMI: Widget's specific sub/unsub traits are now wxpressed in widget's class.

Sun, 10 May 2020 16:32:19 +0200SVGHMI: Parameters common to all widget constructors now passed as ordered parameters. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 10 May 2020 16:32:19 +0200] rev 2950
SVGHMI: Parameters common to all widget constructors now passed as ordered parameters.

Fri, 08 May 2020 16:51:43 +0200SVGHMI: 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
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 08 May 2020 16:51:43 +0200] rev 2949
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.

Fri, 08 May 2020 16:47:52 +0200SVGHMI: Add an exslt function to collect used widget types, in order to only include necessary JS definitions in furure changes. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 08 May 2020 16:47:52 +0200] rev 2948
SVGHMI: Add an exslt function to collect used widget types, in order to only include necessary JS definitions in furure changes.

Fri, 08 May 2020 16:44:20 +0200SVGHMI: Systematically output local name as /* comment */ when emiting content. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 08 May 2020 16:44:20 +0200] rev 2947
SVGHMI: Systematically output local name as /* comment */ when emiting content.

Fri, 24 Apr 2020 10:03:40 +0200Merge svghmi
Edouard Tisserant [Fri, 24 Apr 2020 10:03:40 +0200] rev 2946
Merge

Fri, 24 Apr 2020 10:02:13 +0200SVGHMI: Fix flawed logic to place nodes in the HMI tree, leading to wrecked tree in some cases. svghmi
Edouard Tisserant [Fri, 24 Apr 2020 10:02:13 +0200] rev 2945
SVGHMI: Fix flawed logic to place nodes in the HMI tree, leading to wrecked tree in some cases.

Wed, 22 Apr 2020 15:33:53 +0200Added button and circular bar widgets. svghmi
dgaberscek [Wed, 22 Apr 2020 15:33:53 +0200] rev 2944
Added button and circular bar widgets.

Mon, 20 Apr 2020 16:19:31 +0200SVGHMI: added more meaningful namespaces to emit javascript code from. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 20 Apr 2020 16:19:31 +0200] rev 2943
SVGHMI: added more meaningful namespaces to emit javascript code from.

Sun, 19 Apr 2020 22:44:41 +0200SVGHMI: moved JS code of foreach and jump widget in corresponding widget_*.ysl2. To be continued. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 19 Apr 2020 22:44:41 +0200] rev 2942
SVGHMI: moved JS code of foreach and jump widget in corresponding widget_*.ysl2. To be continued.

Sun, 19 Apr 2020 22:01:12 +0200SVGHMI: spread JS code from svghmi/scripts.ysl2 in other .ysl2 files, using dedicated preamble and epilogue namespaces svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 19 Apr 2020 22:01:12 +0200] rev 2941
SVGHMI: spread JS code from svghmi/scripts.ysl2 in other .ysl2 files, using dedicated preamble and epilogue namespaces

Sun, 19 Apr 2020 10:48:34 +0200SVGHMI: Introduced "emit" to simplify producing per-topic code and content from anywhere in code. Applied to debug output, next to JS. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 19 Apr 2020 10:48:34 +0200] rev 2940
SVGHMI: Introduced "emit" to simplify producing per-topic code and content from anywhere in code. Applied to debug output, next to JS.

Sat, 18 Apr 2020 14:06:41 +0200SVGHMI: Move reflective debug tags from "reflect" to "debug" namespace, preparing for per-purpose namespaces. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 18 Apr 2020 14:06:41 +0200] rev 2939
SVGHMI: Move reflective debug tags from "reflect" to "debug" namespace, preparing for per-purpose namespaces.

Sat, 18 Apr 2020 13:14:45 +0200SVGHMI: Added scripts.ysl2 svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 18 Apr 2020 13:14:45 +0200] rev 2938
SVGHMI: Added scripts.ysl2

Sat, 18 Apr 2020 11:49:02 +0200SVGHMI: moving code wher it belongs, and reformulate some declarations for better readability. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 18 Apr 2020 11:49:02 +0200] rev 2937
SVGHMI: moving code wher it belongs, and reformulate some declarations for better readability.

Thu, 16 Apr 2020 10:21:25 +0200SVGHMI: HMI:DropDown: more documentation. svghmi
Edouard Tisserant [Thu, 16 Apr 2020 10:21:25 +0200] rev 2936
SVGHMI: HMI:DropDown: more documentation.

Wed, 15 Apr 2020 14:29:19 +0200SVGHMI: Comments in HMI:DropDown source code svghmi
Edouard Tisserant [Wed, 15 Apr 2020 14:29:19 +0200] rev 2935
SVGHMI: Comments in HMI:DropDown source code

Tue, 14 Apr 2020 23:04:54 +0200SVGHMI: HMI:DropDown menu aligns to selected when opening svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 23:04:54 +0200] rev 2934
SVGHMI: HMI:DropDown menu aligns to selected when opening

Tue, 14 Apr 2020 22:08:52 +0200SVGHMI: When clicking outside of opened HMI:DropDown box, close it. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 22:08:52 +0200] rev 2933
SVGHMI: When clicking outside of opened HMI:DropDown box, close it.

Tue, 14 Apr 2020 19:22:18 +0200SVGHMI: Fix HMI:DropDown flicker on close. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Apr 2020 19:22:18 +0200] rev 2932
SVGHMI: Fix HMI:DropDown flicker on close.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Thu, 12 Mar 2020 13:15:54 +0100SVGHMI: unsignificant changes or changes in generated code svghmi
Edouard Tisserant [Thu, 12 Mar 2020 13:15:54 +0100] rev 2867
SVGHMI: unsignificant changes or changes in generated code

Thu, 12 Mar 2020 13:14:38 +0100SVGHMI: 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
Edouard Tisserant [Thu, 12 Mar 2020 13:14:38 +0100] rev 2866
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.

Thu, 12 Mar 2020 09:33:20 +0100SVGHMI: cosmetic code moving svghmi
Edouard Tisserant [Thu, 12 Mar 2020 09:33:20 +0100] rev 2865
SVGHMI: cosmetic code moving

Tue, 10 Mar 2020 13:57:29 +0100SVGHMI: 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
Edouard Tisserant [Tue, 10 Mar 2020 13:57:29 +0100] rev 2864
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.

Mon, 09 Mar 2020 13:43:34 +0100SVGHMI: fix wrong updates of HMI variables on each change, especially when not subscribed. svghmi
Edouard Tisserant [Mon, 09 Mar 2020 13:43:34 +0100] rev 2863
SVGHMI: fix wrong updates of HMI variables on each change, especially when not subscribed.

Mon, 09 Mar 2020 13:40:45 +0100SVGHMI: whitespaces svghmi
Edouard Tisserant [Mon, 09 Mar 2020 13:40:45 +0100] rev 2862
SVGHMI: whitespaces

Fri, 06 Mar 2020 14:43:03 +0100SVGHMI: fixed repeated error when Input widget is missing 'value' element svghmi
Edouard Tisserant [Fri, 06 Mar 2020 14:43:03 +0100] rev 2861
SVGHMI: fixed repeated error when Input widget is missing 'value' element

Fri, 06 Mar 2020 14:42:08 +0100SVGHMI: more decoupling in between UI related and the rest of JS code, still in the aim of enhancing robustness under heavy load. svghmi
Edouard Tisserant [Fri, 06 Mar 2020 14:42:08 +0100] rev 2860
SVGHMI: more decoupling in between UI related and the rest of JS code, still in the aim of enhancing robustness under heavy load.

Fri, 06 Mar 2020 09:35:08 +0100SVGHMI: use requestAnimationFrame to delegate rendering of updates from network. Should help prevent browser collapse leading to watchdog in case of overload. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 06 Mar 2020 09:35:08 +0100] rev 2859
SVGHMI: use requestAnimationFrame to delegate rendering of updates from network. Should help prevent browser collapse leading to watchdog in case of overload.

Thu, 05 Mar 2020 13:54:29 +0100SVGHMI: Fix disapearing elements in case of nested detachable elements. svghmi
Edouard Tisserant [Thu, 05 Mar 2020 13:54:29 +0100] rev 2858
SVGHMI: Fix disapearing elements in case of nested detachable elements.

Thu, 05 Mar 2020 10:23:03 +0100SVGHMI: Meter widget accepts 2 arguments : min and max, taken in account when min or max text element is missing svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 05 Mar 2020 10:23:03 +0100] rev 2857
SVGHMI: Meter widget accepts 2 arguments : min and max, taken in account when min or max text element is missing

Wed, 04 Mar 2020 20:02:15 +0100SVGHMI: 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
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 04 Mar 2020 20:02:15 +0100] rev 2856
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.

Wed, 04 Mar 2020 16:46:35 +0100SVGHMI: more whitespace fixes svghmi
Edouard Tisserant [Wed, 04 Mar 2020 16:46:35 +0100] rev 2855
SVGHMI: more whitespace fixes

Wed, 04 Mar 2020 16:46:03 +0100SVGHMI: unlink clones (i.e. deep copy elements refered by svg:use) inside widget. svghmi
Edouard Tisserant [Wed, 04 Mar 2020 16:46:03 +0100] rev 2854
SVGHMI: unlink clones (i.e. deep copy elements refered by svg:use) inside widget.

Designer can use Inkscape clones to duplicate similar assets accross widget. Those clones are unliked so that elements can be independently transformed by individual widgets.

Wed, 04 Mar 2020 09:31:53 +0100SVGHMI: whitespaces and comments svghmi
Edouard Tisserant [Wed, 04 Mar 2020 09:31:53 +0100] rev 2853
SVGHMI: whitespaces and comments

Tue, 03 Mar 2020 16:29:22 +0100SVGHMI: completely fixed indentation of generated widget description. Lets try to keep it as-is until we can use yslt indentation. svghmi
Edouard Tisserant [Tue, 03 Mar 2020 16:29:22 +0100] rev 2852
SVGHMI: completely fixed indentation of generated widget description. Lets try to keep it as-is until we can use yslt indentation.

Tue, 03 Mar 2020 10:58:00 +0100SVGHMI: re-indent generated JS svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 03 Mar 2020 10:58:00 +0100] rev 2851
SVGHMI: re-indent generated JS

Mon, 02 Mar 2020 16:30:29 +0100SVGHMI: detach/re-attach elements required by pages on page switch svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Mar 2020 16:30:29 +0100] rev 2850
SVGHMI: detach/re-attach elements required by pages on page switch

This is meant to optimize performances with large drawings leading to long restyle or reflow.

Mon, 02 Mar 2020 16:25:35 +0100SVGHMI: re-indenting svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Mar 2020 16:25:35 +0100] rev 2849
SVGHMI: re-indenting

Mon, 02 Mar 2020 14:43:21 +0100SVGHMI: declares pages detachable requirements as an object, to find more efficiently common requirements svghmi
Edouard Tisserant [Mon, 02 Mar 2020 14:43:21 +0100] rev 2848
SVGHMI: declares pages detachable requirements as an object, to find more efficiently common requirements

Mon, 02 Mar 2020 10:29:41 +0100SVGHMI: fix some JS + add generation of detachable elements, to be continued svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Mar 2020 10:29:41 +0100] rev 2847
SVGHMI: fix some JS + add generation of detachable elements, to be continued

Fri, 28 Feb 2020 22:54:07 +0100SVGHMI: now compute discardable elements first so that we can do better grouping of required elements when sumarizing. svghmi
Edouard Tisserant [Fri, 28 Feb 2020 22:54:07 +0100] rev 2846
SVGHMI: now compute discardable elements first so that we can do better grouping of required elements when sumarizing.

Fri, 28 Feb 2020 17:52:35 +0100SVGHMI : documentation for new geometry intersection computation code + little fixes... svghmi
Edouard Tisserant [Fri, 28 Feb 2020 17:52:35 +0100] rev 2845
SVGHMI : documentation for new geometry intersection computation code + little fixes...

Fri, 28 Feb 2020 16:09:21 +0100SVGHMI: detachable and discardable elements sets, Reworked geometric intersection, toward more accurate page content detection. svghmi
Edouard Tisserant [Fri, 28 Feb 2020 16:09:21 +0100] rev 2844
SVGHMI: detachable and discardable elements sets, Reworked geometric intersection, toward more accurate page content detection.

Moved page's widget/element dependency crawling functions so that it is possible to compute a global detachable and discardable elements sets.
Reworked geometric intersection detection logic to distinguish ovelapping and inclusion.
Goal is to include englobing and overlapping graphical elements, but not groups (would then include everything around...). Intermediate commit, to be continued.

Thu, 27 Feb 2020 13:14:24 +0100SVGHMI : 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
Edouard Tisserant [Thu, 27 Feb 2020 13:14:24 +0100] rev 2843
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.

Fri, 21 Feb 2020 16:22:44 +0100SVGHMI: 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
Edouard Tisserant [Fri, 21 Feb 2020 16:22:44 +0100] rev 2842
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.

Fri, 21 Feb 2020 16:18:53 +0100SVGHMI: optimize browser work by hiding (display:none) pages that are not displayed. svghmi
Edouard Tisserant [Fri, 21 Feb 2020 16:18:53 +0100] rev 2841
SVGHMI: optimize browser work by hiding (display:none) pages that are not displayed.

Fri, 21 Feb 2020 16:15:33 +0100SVGHMI: Better and less verbose SVG namespace handling in XSLT transform svghmi
Edouard Tisserant [Fri, 21 Feb 2020 16:15:33 +0100] rev 2840
SVGHMI: Better and less verbose SVG namespace handling in XSLT transform

Mon, 17 Feb 2020 13:57:44 +0100SVGHMI: Added mostly untested switch widget svghmi
Edouard Tisserant [Mon, 17 Feb 2020 13:57:44 +0100] rev 2839
SVGHMI: Added mostly untested switch widget

Fri, 14 Feb 2020 21:41:13 +0100SVGHMI: 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
Edouard Tisserant [Fri, 14 Feb 2020 21:41:13 +0100] rev 2838
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.

Fri, 14 Feb 2020 10:29:10 +0100SVGHMI: ensure that coordinate in CSV file generated by inkscape are both matching svg default unit and in default reference frame svghmi
Edouard Tisserant [Fri, 14 Feb 2020 10:29:10 +0100] rev 2837
SVGHMI: ensure that coordinate in CSV file generated by inkscape are both matching svg default unit and in default reference frame

Thu, 13 Feb 2020 09:43:35 +0100SVGHMI : still behave, even if important things are missing in SVG widget definitions (ex: needle missing for Meter widget) svghmi
Edouard Tisserant [Thu, 13 Feb 2020 09:43:35 +0100] rev 2836
SVGHMI : still behave, even if important things are missing in SVG widget definitions (ex: needle missing for Meter widget)

Thu, 13 Feb 2020 09:41:43 +0100SVGHMI : fix watchdog exception when timeout null svghmi
Edouard Tisserant [Thu, 13 Feb 2020 09:41:43 +0100] rev 2835
SVGHMI : fix watchdog exception when timeout null

Tue, 11 Feb 2020 13:56:48 +0100SVGHMI: be a bit more tolerant with missing HMI paths or missing elements in widgets : continue build (with warning) and fail silently at runtime. svghmi
Edouard Tisserant [Tue, 11 Feb 2020 13:56:48 +0100] rev 2834
SVGHMI: be a bit more tolerant with missing HMI paths or missing elements in widgets : continue build (with warning) and fail silently at runtime.

Thu, 30 Jan 2020 14:33:06 +0100SVGHMI : fixed bug happening when some SVG ids are containing dashes svghmi
Edouard Tisserant [Thu, 30 Jan 2020 14:33:06 +0100] rev 2833
SVGHMI : fixed bug happening when some SVG ids are containing dashes

Thu, 23 Jan 2020 13:46:05 +0100SVGHMI : wait for initial timeout after watchdog is triggered, since it generaly induces HMI restart svghmi
Edouard Tisserant [Thu, 23 Jan 2020 13:46:05 +0100] rev 2832
SVGHMI : wait for initial timeout after watchdog is triggered, since it generaly induces HMI restart

Thu, 23 Jan 2020 11:22:09 +0100SVGHMI : watchdog is now taking an initial and interval duration as CTN fields. svghmi
Edouard Tisserant [Thu, 23 Jan 2020 11:22:09 +0100] rev 2831
SVGHMI : watchdog is now taking an initial and interval duration as CTN fields.

Tue, 21 Jan 2020 13:55:03 +0100SVGHMI : avoid caching of xhtml file by forcing cache-control header in http response. svghmi
Edouard Tisserant [Tue, 21 Jan 2020 13:55:03 +0100] rev 2830
SVGHMI : avoid caching of xhtml file by forcing cache-control header in http response.

Fri, 17 Jan 2020 16:25:45 +0100SVGHMI : HMI_STRING now also supported from HMI to PLC svghmi
Edouard Tisserant [Fri, 17 Jan 2020 16:25:45 +0100] rev 2829
SVGHMI : HMI_STRING now also supported from HMI to PLC

Wed, 15 Jan 2020 11:13:39 +0100SVGHMI : cosmetic svghmi
Edouard Tisserant [Wed, 15 Jan 2020 11:13:39 +0100] rev 2828
SVGHMI : cosmetic

Wed, 15 Jan 2020 09:35:29 +0100SVGHMI non significant fixes svghmi
Edouard Tisserant [Wed, 15 Jan 2020 09:35:29 +0100] rev 2827
SVGHMI non significant fixes

Tue, 14 Jan 2020 11:09:26 +0100SVGHMI : support for HMI_STRING and HMI_BOOL svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Jan 2020 11:09:26 +0100] rev 2826
SVGHMI : support for HMI_STRING and HMI_BOOL

Tue, 14 Jan 2020 11:04:18 +0100plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Jan 2020 11:04:18 +0100] rev 2825
plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes

Mon, 13 Jan 2020 15:15:01 +0100SVGHMI : Added python fomating {port} and {name} to commands so that command can build target URL svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 13 Jan 2020 15:15:01 +0100] rev 2824
SVGHMI : Added python fomating {port} and {name} to commands so that command can build target URL

Fri, 10 Jan 2020 17:00:01 +0100SVGHMI : add on Start, Stop and Watchdog command fields to configuration svghmi
Edouard Tisserant [Fri, 10 Jan 2020 17:00:01 +0100] rev 2823
SVGHMI : add on Start, Stop and Watchdog command fields to configuration

Fri, 10 Jan 2020 13:15:07 +0100SVGHMI: 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
Edouard Tisserant [Fri, 10 Jan 2020 13:15:07 +0100] rev 2822
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

Wed, 18 Dec 2019 13:31:22 +0100Add --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
Edouard Tisserant [Wed, 18 Dec 2019 13:31:22 +0100] rev 2821
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.

Mon, 09 Dec 2019 14:53:42 +0100SVGHMI : had to move the problem of wkaing up python thread from plc thread to platform specific code. svghmi
Edouard Tisserant [Mon, 09 Dec 2019 14:53:42 +0100] rev 2820
SVGHMI : had to move the problem of wkaing up python thread from plc thread to platform specific code.
Since Xenomai's cobalt thread are definitely incompatible with normal posix python interpreter binary's thread, we must synchronize them with arcane rt_pipes (the only ones that really work cross domain) as already done in debug and python async eval blocks.

Mon, 09 Dec 2019 10:43:54 +0100SVGHMI: change collect/send thread looping condition to fix infinite loop in some cases svghmi
Edouard Tisserant [Mon, 09 Dec 2019 10:43:54 +0100] rev 2819
SVGHMI: change collect/send thread looping condition to fix infinite loop in some cases

Tue, 03 Dec 2019 09:46:12 +0100SVGHMI: re-implemented tree view with classic wxTreeCtl svghmi
Edouard Tisserant [Tue, 03 Dec 2019 09:46:12 +0100] rev 2818
SVGHMI: re-implemented tree view with classic wxTreeCtl

Tue, 03 Dec 2019 09:44:48 +0100Non significant changes, whitespaces, etc. svghmi
Edouard Tisserant [Tue, 03 Dec 2019 09:44:48 +0100] rev 2817
Non significant changes, whitespaces, etc.

Fri, 15 Nov 2019 10:34:14 +0100SVGHMI: Added simple HMI Tree View. svghmi
Edouard Tisserant [Fri, 15 Nov 2019 10:34:14 +0100] rev 2816
SVGHMI: Added simple HMI Tree View.

Thu, 14 Nov 2019 08:46:32 +0100SVGHMI: add a class attribute to HMI Tree nodes, set when using HMI_NODE svghmi
Edouard Tisserant [Thu, 14 Nov 2019 08:46:32 +0100] rev 2815
SVGHMI: add a class attribute to HMI Tree nodes, set when using HMI_NODE

Wed, 13 Nov 2019 11:22:53 +0100SVGHMI: HMI_LABEL and HMI_CLASS become HMI_NODE. svghmi
Edouard Tisserant [Wed, 13 Nov 2019 11:22:53 +0100] rev 2814
SVGHMI: HMI_LABEL and HMI_CLASS become HMI_NODE.
- Name of parent POU becomes HMI tree node name,
- Name of HMI_NODE variable becomes class of the node.

Wed, 13 Nov 2019 11:21:04 +0100Add FatalError() method to ConfigTreeNode. svghmi
Edouard Tisserant [Wed, 13 Nov 2019 11:21:04 +0100] rev 2813
Add FatalError() method to ConfigTreeNode.
Extensions can report error addressed to user, without a traceback.

Thu, 07 Nov 2019 16:40:48 +0100SVGHMI: various fixes to make SVGHMI behave on more versions of twisted and GCC. svghmi
Edouard Tisserant [Thu, 07 Nov 2019 16:40:48 +0100] rev 2812
SVGHMI: various fixes to make SVGHMI behave on more versions of twisted and GCC.

Wed, 30 Oct 2019 15:17:05 +0100SVGHMI - 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
Edouard Tisserant [Wed, 30 Oct 2019 15:17:05 +0100] rev 2811
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.

Tue, 29 Oct 2019 11:18:58 +0100SVGHMI: various insignificant code moves, commenting and typos fixes. svghmi
Edouard Tisserant [Tue, 29 Oct 2019 11:18:58 +0100] rev 2810
SVGHMI: various insignificant code moves, commenting and typos fixes.

Tue, 29 Oct 2019 09:10:10 +0100SVGHMI : fancier second page in tests/svghmi svghmi
Edouard Tisserant [Tue, 29 Oct 2019 09:10:10 +0100] rev 2809
SVGHMI : fancier second page in tests/svghmi

Mon, 28 Oct 2019 19:52:43 +0100SVGHMI: 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
Edouard Tisserant [Mon, 28 Oct 2019 19:52:43 +0100] rev 2808
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.

Mon, 28 Oct 2019 10:30:20 +0100SVGHMI - added simple Meter widget. svghmi
Edouard Tisserant [Mon, 28 Oct 2019 10:30:20 +0100] rev 2807
SVGHMI - added simple Meter widget.

Sun, 27 Oct 2019 22:28:51 +0100SVGHMI: 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
Edouard Tisserant [Sun, 27 Oct 2019 22:28:51 +0100] rev 2806
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

Sun, 27 Oct 2019 21:38:10 +0100SVGHMI: fixed HMI->PLC dataflow : not updates as expected, and not initialized properly after subscribe. svghmi
Edouard Tisserant [Sun, 27 Oct 2019 21:38:10 +0100] rev 2805
SVGHMI: fixed HMI->PLC dataflow : not updates as expected, and not initialized properly after subscribe.

Thu, 24 Oct 2019 11:20:04 +0200Fixed one more sequel of 5f79b194fa63 'SVGHMI: filter out temporary variables created while generating ST code out of FBD.' svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 24 Oct 2019 11:20:04 +0200] rev 2804
Fixed one more sequel of 5f79b194fa63 'SVGHMI: filter out temporary variables created while generating ST code out of FBD.'

Thu, 24 Oct 2019 10:02:07 +0200SVGHMI: Added relative changes of HMI value from widgets. svghmi
Edouard Tisserant [Thu, 24 Oct 2019 10:02:07 +0200] rev 2803
SVGHMI: Added relative changes of HMI value from widgets.

Tue, 22 Oct 2019 22:58:55 +0200SVGHMI - Fixed svghmi.{c,js} about HMI -> PLC data unpack. svghmi
Edouard Tisserant [Tue, 22 Oct 2019 22:58:55 +0200] rev 2802
SVGHMI - Fixed svghmi.{c,js} about HMI -> PLC data unpack.

Tue, 22 Oct 2019 17:06:31 +0200SVGHMI: 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
Edouard Tisserant [Tue, 22 Oct 2019 17:06:31 +0200] rev 2801
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.

Sat, 19 Oct 2019 01:23:30 +0200SVGHMI: dispatching data to minimalist "Display" text widget. svghmi
Edouard Tisserant [Sat, 19 Oct 2019 01:23:30 +0200] rev 2800
SVGHMI: dispatching data to minimalist "Display" text widget.

Thu, 17 Oct 2019 15:48:09 +0200SVGHMI: 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
Edouard Tisserant [Thu, 17 Oct 2019 15:48:09 +0200] rev 2799
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.

Tue, 15 Oct 2019 17:14:48 +0200SVGHMI : many details about communication implemented in JS, with side effects. svghmi
Edouard Tisserant [Tue, 15 Oct 2019 17:14:48 +0200] rev 2798
SVGHMI : many details about communication implemented in JS, with side effects.

Fri, 11 Oct 2019 12:03:14 +0200SVGHMI: 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
Edouard Tisserant [Fri, 11 Oct 2019 12:03:14 +0200] rev 2797
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.

Thu, 10 Oct 2019 10:03:47 +0200SVGHMI fix logic for page membership detection svghmi
Edouard Tisserant [Thu, 10 Oct 2019 10:03:47 +0200] rev 2796
SVGHMI fix logic for page membership detection

Thu, 10 Oct 2019 09:54:44 +0200SVGHMI compute default page svghmi
Edouard Tisserant [Thu, 10 Oct 2019 09:54:44 +0200] rev 2795
SVGHMI compute default page

Wed, 09 Oct 2019 11:15:14 +0200SVGHMI: deduce pages content out of geometry (elements contained in page bounding box are in) svghmi
Edouard Tisserant [Wed, 09 Oct 2019 11:15:14 +0200] rev 2794
SVGHMI: deduce pages content out of geometry (elements contained in page bounding box are in)

Wed, 09 Oct 2019 09:04:35 +0200SVGHMI: use func:function for parsing labels so that it can be used in predicates svghmi
Edouard Tisserant [Wed, 09 Oct 2019 09:04:35 +0200] rev 2793
SVGHMI: use func:function for parsing labels so that it can be used in predicates

Tue, 08 Oct 2019 13:27:00 +0200SVGHMI: moved/fixed some templates, avoided namespace problems, added parsing of HMI:* inkscape labels svghmi
Edouard Tisserant [Tue, 08 Oct 2019 13:27:00 +0200] rev 2792
SVGHMI: moved/fixed some templates, avoided namespace problems, added parsing of HMI:* inkscape labels

Mon, 07 Oct 2019 12:02:45 +0200SVGHMI: now generating JS object describing widgets and pointing to SVG elements svghmi
Edouard Tisserant [Mon, 07 Oct 2019 12:02:45 +0200] rev 2791
SVGHMI: now generating JS object describing widgets and pointing to SVG elements

Sat, 05 Oct 2019 09:45:58 +0200SVGHI: compute hmitree variables ordered index in xslt svghmi
Edouard Tisserant [Sat, 05 Oct 2019 09:45:58 +0200] rev 2790
SVGHI: compute hmitree variables ordered index in xslt

Wed, 02 Oct 2019 11:31:02 +0200SVGHMI: now built. svghmi
Edouard Tisserant [Wed, 02 Oct 2019 11:31:02 +0200] rev 2789
SVGHMI: now built.

Mon, 30 Sep 2019 13:26:11 +0200SVGHMI: Work in progress. C side mostly implemented, neither built nor tested. svghmi
Edouard Tisserant [Mon, 30 Sep 2019 13:26:11 +0200] rev 2788
SVGHMI: Work in progress. C side mostly implemented, neither built nor tested.

Fri, 27 Sep 2019 06:54:35 +0200SVGHMI: More strict formating of active HMI labels : @ separator only used for paths svghmi
Edouard Tisserant [Fri, 27 Sep 2019 06:54:35 +0200] rev 2787
SVGHMI: More strict formating of active HMI labels : @ separator only used for paths

Thu, 26 Sep 2019 09:33:49 +0200SVGHMI: new test svg to drive next implementation svghmi
Edouard Tisserant [Thu, 26 Sep 2019 09:33:49 +0200] rev 2786
SVGHMI: new test svg to drive next implementation

Wed, 25 Sep 2019 08:53:27 +0200Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2 svghmi
Edouard Tisserant [Wed, 25 Sep 2019 08:53:27 +0200] rev 2785
Non significant changes in generated xslt, side effect of changes in yslt_noindent.yml2

Tue, 24 Sep 2019 11:58:31 +0200Merge default in SVGHMI branch svghmi
Edouard Tisserant [Tue, 24 Sep 2019 11:58:31 +0200] rev 2784
Merge default in SVGHMI branch

Fri, 20 Sep 2019 13:38:58 +0200SVGHMI: Starting to define JS side more in details. svghmi
Edouard Tisserant [Fri, 20 Sep 2019 13:38:58 +0200] rev 2783
SVGHMI: Starting to define JS side more in details.

Thu, 19 Sep 2019 15:32:36 +0200SVGHMI: added transformation of code given in inkscape's description fields into javascript functions svghmi
Edouard Tisserant [Thu, 19 Sep 2019 15:32:36 +0200] rev 2782
SVGHMI: added transformation of code given in inkscape's description fields into javascript functions

Thu, 19 Sep 2019 10:41:39 +0200SVGHMI: gui.svg -> svghmi.svg svghmi
Edouard Tisserant [Thu, 19 Sep 2019 10:41:39 +0200] rev 2781
SVGHMI: gui.svg -> svghmi.svg

Thu, 19 Sep 2019 09:01:49 +0200SVGHMI: moved static JS code to a separate file included at xhtml generation time svghmi
Edouard Tisserant [Thu, 19 Sep 2019 09:01:49 +0200] rev 2780
SVGHMI: moved static JS code to a separate file included at xhtml generation time

Wed, 18 Sep 2019 11:09:35 +0200SVGHMI: 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
Edouard Tisserant [Wed, 18 Sep 2019 11:09:35 +0200] rev 2779
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.

Wed, 18 Sep 2019 11:03:56 +0200PLCobject: Call "stop" and "cleanup" methods from python runtime files in reverse order compared to "init" and "start". svghmi
Edouard Tisserant [Wed, 18 Sep 2019 11:03:56 +0200] rev 2778
PLCobject: Call "stop" and "cleanup" methods from python runtime files in reverse order compared to "init" and "start".

Mon, 16 Sep 2019 13:45:04 +0200SVGHMI: WIP for python<->C data exchange : message from browser hit the C side. svghmi
Edouard Tisserant [Mon, 16 Sep 2019 13:45:04 +0200] rev 2777
SVGHMI: WIP for python<->C data exchange : message from browser hit the C side.

Mon, 16 Sep 2019 11:44:20 +0200SVGHMI: WIP for python<->C data exchange svghmi
Edouard Tisserant [Mon, 16 Sep 2019 11:44:20 +0200] rev 2776
SVGHMI: WIP for python<->C data exchange

Mon, 16 Sep 2019 10:54:15 +0200SVGHMI: WIP for python<->C data exchange svghmi
Edouard Tisserant [Mon, 16 Sep 2019 10:54:15 +0200] rev 2775
SVGHMI: WIP for python<->C data exchange

Thu, 12 Sep 2019 12:56:47 +0200SVGHMI: WIP for python<->C data exchange svghmi
Edouard Tisserant [Thu, 12 Sep 2019 12:56:47 +0200] rev 2774
SVGHMI: WIP for python<->C data exchange

Thu, 12 Sep 2019 12:55:32 +0200SVGHMI: single session for now svghmi
Edouard Tisserant [Thu, 12 Sep 2019 12:55:32 +0200] rev 2773
SVGHMI: single session for now

Thu, 12 Sep 2019 12:54:36 +0200SVGHMI: few fixes on serving svghmi
Edouard Tisserant [Thu, 12 Sep 2019 12:54:36 +0200] rev 2772
SVGHMI: few fixes on serving

Wed, 11 Sep 2019 12:24:30 +0200WIP on svghmi, now builds and runs. HTTP serving + WS transport ready, missing actual data to transmit and thread to collect it. svghmi
Edouard Tisserant [Wed, 11 Sep 2019 12:24:30 +0200] rev 2771
WIP on svghmi, now builds and runs. HTTP serving + WS transport ready, missing actual data to transmit and thread to collect it.

Wed, 11 Sep 2019 11:20:11 +0200Non significant changes to mute GCC warnings about unused variables. svghmi
Edouard Tisserant [Wed, 11 Sep 2019 11:20:11 +0200] rev 2770
Non significant changes to mute GCC warnings about unused variables.

Thu, 05 Sep 2019 08:35:33 +0200Fixed 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
Edouard Tisserant [Thu, 05 Sep 2019 08:35:33 +0200] rev 2769
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...

Tue, 03 Sep 2019 12:17:33 +0200SVGHMI: Intermediate state while working on svghmi.c svghmi
Edouard Tisserant [Tue, 03 Sep 2019 12:17:33 +0200] rev 2768
SVGHMI: Intermediate state while working on svghmi.c

Mon, 26 Aug 2019 08:54:02 +0200svghmi.c : deduplicated variable access code borrowed from plc_debug.c. Added targets/var_access.c. svghmi
Edouard Tisserant [Mon, 26 Aug 2019 08:54:02 +0200] rev 2767
svghmi.c : deduplicated variable access code borrowed from plc_debug.c. Added targets/var_access.c.

Fri, 23 Aug 2019 14:01:31 +0200SVGHMI: Added iterators in svghmi.c copy-pasted form plc_debug.c svghmi
Edouard Tisserant [Fri, 23 Aug 2019 14:01:31 +0200] rev 2766
SVGHMI: Added iterators in svghmi.c copy-pasted form plc_debug.c

Fri, 23 Aug 2019 13:01:37 +0200SVGHMI: svghmi.c now has mutex, iterator, and read/write buffer. svghmi
Edouard Tisserant [Fri, 23 Aug 2019 13:01:37 +0200] rev 2765
SVGHMI: svghmi.c now has mutex, iterator, and read/write buffer.

Thu, 22 Aug 2019 14:58:53 +0200SVGHMI: draft for svghmi.c. It has all PLC variables pointed in HMI tree in an array. svghmi
Edouard Tisserant [Thu, 22 Aug 2019 14:58:53 +0200] rev 2764
SVGHMI: draft for svghmi.c. It has all PLC variables pointed in HMI tree in an array.

Tue, 20 Aug 2019 10:32:34 +0200Pass HMITree to SVG transform. It seems it could really help to reduce JS tree binding logic in the end. svghmi
Edouard Tisserant [Tue, 20 Aug 2019 10:32:34 +0200] rev 2763
Pass HMITree to SVG transform. It seems it could really help to reduce JS tree binding logic in the end.

Tue, 20 Aug 2019 10:30:59 +0200Add special nodes at HMI Tree root, fix code to handle special node (no path). svghmi
Edouard Tisserant [Tue, 20 Aug 2019 10:30:59 +0200] rev 2762
Add special nodes at HMI Tree root, fix code to handle special node (no path).

Tue, 20 Aug 2019 10:08:11 +0200Swap CTN code gen and Libraries code gen, because SVGHMI use both, and need the library part to produce hmitree before CTN part. svghmi
Edouard Tisserant [Tue, 20 Aug 2019 10:08:11 +0200] rev 2761
Swap CTN code gen and Libraries code gen, because SVGHMI use both, and need the library part to produce hmitree before CTN part.

Tue, 20 Aug 2019 10:01:18 +0200yslt_noindent : Avoid YSLT's indent logic to interfere when using linequote. svghmi
Edouard Tisserant [Tue, 20 Aug 2019 10:01:18 +0200] rev 2760
yslt_noindent : Avoid YSLT's indent logic to interfere when using linequote.

Wed, 14 Aug 2019 13:06:03 +0200SVGHMI: make a reasonably basic test svghmi
Edouard Tisserant [Wed, 14 Aug 2019 13:06:03 +0200] rev 2759
SVGHMI: make a reasonably basic test

Wed, 14 Aug 2019 11:05:17 +0200SVGHMI: filter out temporary variables created while generating ST code out of FBD. svghmi
Edouard Tisserant [Wed, 14 Aug 2019 11:05:17 +0200] rev 2758
SVGHMI: filter out temporary variables created while generating ST code out of FBD.

Tue, 13 Aug 2019 14:04:13 +0200SVGHMI: added deduction of HMI tree from list of HMI_* instances. svghmi
Edouard Tisserant [Tue, 13 Aug 2019 14:04:13 +0200] rev 2757
SVGHMI: added deduction of HMI tree from list of HMI_* instances.

Mon, 12 Aug 2019 13:09:55 +0200SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable. svghmi
Edouard Tisserant [Mon, 12 Aug 2019 13:09:55 +0200] rev 2756
SVGHMI: added extraction of SVG bounding boxes, obtained from "inkscape -S", and passed to XSLT transform as variable.

Mon, 12 Aug 2019 13:06:11 +0200Allow using docutil.get_inkscape_path() on Linux also. svghmi
Edouard Tisserant [Mon, 12 Aug 2019 13:06:11 +0200] rev 2755
Allow using docutil.get_inkscape_path() on Linux also.

Fri, 09 Aug 2019 12:12:24 +0200SVGHMI: little fixes to make the build go through svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:12:24 +0200] rev 2754
SVGHMI: little fixes to make the build go through

Fri, 09 Aug 2019 12:11:31 +0200SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with. svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:11:31 +0200] rev 2753
SVGHMI: Added XSLT transformation, Makefile to get XSLT from ysl2 (copy of plcopen/Makefile) and a minimal stylesheet to start with.

Fri, 09 Aug 2019 12:07:33 +0200Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI) svghmi
Edouard Tisserant [Fri, 09 Aug 2019 12:07:33 +0200] rev 2752
Moved XSLT model query python code so that XSLT part can be reused for other transformations (i.e. in SVGHMI)

Thu, 08 Aug 2019 15:56:17 +0200Complete SVGUI test minimal skeleton so that it builds. svghmi
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 08 Aug 2019 15:56:17 +0200] rev 2751
Complete SVGUI test minimal skeleton so that it builds.

Wed, 07 Aug 2019 14:18:22 +0200intermediate commit, work in progress svghmi
Edouard Tisserant [Wed, 07 Aug 2019 14:18:22 +0200] rev 2750
intermediate commit, work in progress

Thu, 18 Jul 2019 14:09:33 +0200Use a POU Library's Generate_C to collect all variables in SVGHMI. svghmi
Edouard Tisserant [Thu, 18 Jul 2019 14:09:33 +0200] rev 2749
Use a POU Library's Generate_C to collect all variables in SVGHMI.

Wed, 17 Jul 2019 09:44:44 +0200merged svghmi
Edouard Tisserant [Wed, 17 Jul 2019 09:44:44 +0200] rev 2748
merged

Wed, 17 Jul 2019 09:44:11 +0200Enable svghmi plugin in features, and small fixes to skeleton. svghmi
Edouard Tisserant [Wed, 17 Jul 2019 09:44:11 +0200] rev 2747
Enable svghmi plugin in features, and small fixes to skeleton.

Mon, 15 Jul 2019 09:05:00 +0200Merged default in svghmi svghmi
Edouard Tisserant [Mon, 15 Jul 2019 09:05:00 +0200] rev 2746
Merged default in svghmi

Fri, 12 Jul 2019 11:58:22 +0200Skeleton for svghmi extension svghmi
Edouard Tisserant [Fri, 12 Jul 2019 11:58:22 +0200] rev 2745
Skeleton for svghmi extension

Wed, 30 Jun 2021 15:44:32 +0200IDE: Allow POU Libraries to inject PLC Configurations globals during build.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 30 Jun 2021 15:44:32 +0200] rev 2744
IDE: Allow POU Libraries to inject PLC Configurations globals during build.

Wed, 30 Jun 2021 16:46:14 +0300WIP: initial setup.
Ivan Tyagov <ivan@nexedi.com> [Wed, 30 Jun 2021 16:46:14 +0300] rev 2743
WIP: initial setup.

Wed, 16 Jun 2021 12:15:02 +0200IDE: Fixed variable traces graphs RingBuffers. Removed an apparently useless wxCallAfter in trend graph that was leading to pydeadobject exception on wxGTK when double-clicking.
Edouard Tisserant [Wed, 16 Jun 2021 12:15:02 +0200] rev 2742
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 +0200IDE: 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.
Edouard Tisserant [Mon, 14 Jun 2021 16:48:39 +0200] rev 2741
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 +0200IDE: Log: Prevent crash when display progress on empty log.
Edouard Tisserant [Fri, 11 Jun 2021 11:56:07 +0200] rev 2740
IDE: Log: Prevent crash when display progress on empty log.

Thu, 10 Jun 2021 09:40:05 +0200Copy description when DnD variables from CodeFile CTN to POUs
Edouard Tisserant [Thu, 10 Jun 2021 09:40:05 +0200] rev 2739
Copy description when DnD variables from CodeFile CTN to POUs

Tue, 25 May 2021 15:05:38 +0200Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.
Edouard Tisserant [Tue, 25 May 2021 15:05:38 +0200] rev 2738
Runtime: Fix exception "Worker is disabled" when connecting while PLC runtime is starting.

Pyro/wamp/UI delegate jobs to Worker, causing race condition if worker isn't already started.
Added a function to ensure that Worker is already created when pyro or UI starts

Mon, 24 May 2021 14:33:54 +0200Finished 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.
Edouard Tisserant [Mon, 24 May 2021 14:33:54 +0200] rev 2737
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 +0200Add ThirPartyPath call in util.path module, so that individual extensions don't have to each implement same logic to find dependencies
Edouard Tisserant [Wed, 12 May 2021 11:36:56 +0200] rev 2736
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 +0200IDE: Add a shortcut to project "Clean" action : F9
Edouard Tisserant [Thu, 01 Apr 2021 15:51:24 +0200] rev 2735
IDE: Add a shortcut to project "Clean" action : F9

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

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

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

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

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

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

Tue, 02 Mar 2021 09:25:55 +0100IDE: Log: Cosmetic changes, refactoring
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 02 Mar 2021 09:25:55 +0100] rev 2728
IDE: Log: Cosmetic changes, refactoring

Mon, 01 Mar 2021 15:45:13 +0100IDE: 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.
Edouard Tisserant [Mon, 01 Mar 2021 15:45:13 +0100] rev 2727
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 +0100IDE: Fixed log console that was not updating line by line smoothly when building.
Edouard Tisserant <edouard.tisserant@gmail.com> [Sun, 28 Feb 2021 21:45:10 +0100] rev 2726
IDE: Fixed log console that was not updating line by line smoothly when building.

Fri, 09 Apr 2021 09:45:28 +0200merge
Edouard Tisserant [Fri, 09 Apr 2021 09:45:28 +0200] rev 2725
merge

Tue, 02 Feb 2021 13:47:48 +0100Merge
Tomaz Orac [Tue, 02 Feb 2021 13:47:48 +0100] rev 2724
Merge

Thu, 28 Jan 2021 14:51:16 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:51:16 +0000] rev 2723
merge

Thu, 28 Jan 2021 14:50:26 +0000modbus plugin: add (user accessible) transaction bool flags for servers/slaves; FIX BUG in previous commit affecting RTU slaves.
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:50:26 +0000] rev 2722
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 +0000modbus plugin: add (user accessible) transaction counters for servers/slaves
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 Jan 2021 14:17:40 +0000] rev 2721
modbus plugin: add (user accessible) transaction counters for servers/slaves

Tue, 23 Feb 2021 16:16:12 +0100PLCObject : 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.
Edouard Tisserant [Tue, 23 Feb 2021 16:16:12 +0100] rev 2720
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 +0100Merge
Edouard Tisserant [Mon, 18 Jan 2021 10:59:28 +0100] rev 2719
Merge

Fri, 25 Dec 2020 17:12:02 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Fri, 25 Dec 2020 17:12:02 +0000] rev 2718
merge

Fri, 25 Dec 2020 17:11:38 +0000modbus plugin: add/fix comments
Mario de Sousa <msousa@fe.up.pt> [Fri, 25 Dec 2020 17:11:38 +0000] rev 2717
modbus plugin: add/fix comments

Mon, 21 Dec 2020 22:35:07 +0000merge
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:35:07 +0000] rev 2716
merge

Mon, 21 Dec 2020 22:32:03 +0000Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16)
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:32:03 +0000] rev 2715
Modbus plugin: fix bug - map BOOL flag onto C u8 (was incorrectly mapped onto u16)

Mon, 21 Dec 2020 22:26:36 +0000Modbus plugin: map status of MB transaction onto 2 located BYTE vars (instead of a singlw WORD var).
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 22:26:36 +0000] rev 2714
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 +0000Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable
Mario de Sousa <msousa@fe.up.pt> [Mon, 21 Dec 2020 21:15:47 +0000] rev 2713
Modbus plugin: provide user programs feedback on current connection status mapped onto a WORD located variable

Wed, 13 Jan 2021 10:28:09 +0100Removed harmful assert in ProcessLogger.
Edouard Tisserant [Wed, 13 Jan 2021 10:28:09 +0100] rev 2712
Removed harmful assert in ProcessLogger.

ProcessLogger was having an assert in constructor when missing logger, leading to systematic exception when testing options accepted by compiler. This exception was silenced in ProjectController, and then MatIEC was always called without options.

Tue, 22 Dec 2020 18:05:05 +0100Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 22 Dec 2020 18:05:05 +0100] rev 2711
Fix missing import, consequence of bad resolution of conflicting hg graft of f0a822ef9fa0 into d15a997859b1

Tue, 14 Jan 2020 11:04:18 +0100plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 14 Jan 2020 11:04:18 +0100] rev 2710
plc_debug.c/var_acces.c : whitespace cleanup and other cosmetic changes

Fri, 03 Jul 2020 14:02:04 +0200Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 03 Jul 2020 14:02:04 +0200] rev 2709
Prevent global python_poll blocks to be created when accidentally adding content to C-File OnChange column.

Mon, 11 May 2020 11:10:38 +0200DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing
Edouard Tisserant [Mon, 11 May 2020 11:10:38 +0200] rev 2708
DEBUG: (IDE side) fixed wrong implementation of anti-rapid-fire leading to systematic delay in subscribing

Tue, 11 Feb 2020 13:56:48 +0100XSLTransform.py: added get_error_log()
Edouard Tisserant [Tue, 11 Feb 2020 13:56:48 +0100] rev 2707
XSLTransform.py: added get_error_log()

Mon, 31 Aug 2020 13:54:08 +0200Attempt 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.
Edouard Tisserant [Mon, 31 Aug 2020 13:54:08 +0200] rev 2706
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 +0200docsvg.py : Better error message when inkscape is not installed.
Edouard Tisserant [Thu, 03 Sep 2020 11:16:08 +0200] rev 2705
docsvg.py : Better error message when inkscape is not installed.

Sat, 04 Apr 2020 09:41:32 +0200Fix unmatched "Courier" font for monospace fonts on latest ubuntu 20.04. Selected "FreeMono" instead, present since at least 18.04
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 04 Apr 2020 09:41:32 +0200] rev 2704
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 +0200Python Runtime: order of execution of extension's init() and cleanup() now reflects order of appearance of extensions in configuration tree.
Edouard Tisserant [Mon, 13 Jul 2020 13:56:42 +0200] rev 2703
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 +0100Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding
Edouard Tisserant [Tue, 22 Dec 2020 14:53:15 +0100] rev 2702
Runtime: change PLCObject 'BlobAsFile' method to allow customization by overriding

Mon, 21 Dec 2020 11:10:27 +0100WebInterface: better wording for wiping PLC content: "Repair"
Edouard Tisserant [Mon, 21 Dec 2020 11:10:27 +0100] rev 2701
WebInterface: better wording for wiping PLC content: "Repair"

Fri, 18 Dec 2020 11:50:28 +0100runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 18 Dec 2020 11:50:28 +0100] rev 2700
runtime: added restart/reset button in web settings. Accidentaly fixed web settings logging feature.

Thu, 10 Dec 2020 15:48:15 +0100Add a little test to see OnChange's .count .first .last in action
Edouard Tisserant [Thu, 10 Dec 2020 15:48:15 +0100] rev 2699
Add a little test to see OnChange's .count .first .last in action

Thu, 10 Dec 2020 14:54:42 +0100Fixed "Onchange" object added in previous commit
Edouard Tisserant [Thu, 10 Dec 2020 14:54:42 +0100] rev 2698
Fixed "Onchange" object added in previous commit

Thu, 10 Dec 2020 11:37:27 +0100Python 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.
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 10 Dec 2020 11:37:27 +0100] rev 2697
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 +0100Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 20 Nov 2020 11:17:40 +0100] rev 2696
Project tree: avoid flickering and glitches in notebook when selecting some still not opened ConfigTreeNode

Wed, 18 Nov 2020 23:06:16 +0100Project tree: Clicking on ConfigTreeNode should have same behaviour as for POUS and other IEC types : simple click to select and double click to open.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 18 Nov 2020 23:06:16 +0100] rev 2695
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 +0100py_ext: better handling of coma separated OnChange attribute for python safe global variables.
Edouard Tisserant [Wed, 18 Nov 2020 10:15:44 +0100] rev 2694
py_ext: better handling of coma separated OnChange attribute for python safe global variables.

Mon, 02 Nov 2020 10:56:09 +0100Allow customization of generated py_ext OnChange calls, by adding a static method to PythonFileCTNMixin that can the be later hot patched.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 02 Nov 2020 10:56:09 +0100] rev 2693
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 +0200PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 20 Oct 2020 00:23:52 +0200] rev 2692
PY_EXT: OnChange is now a coma separated list of callables. Updated tests/python accordingly.

Tue, 15 Sep 2020 13:57:06 +0200Modbus: fixed typo in ctype typing.
Edouard Tisserant [Tue, 15 Sep 2020 13:57:06 +0200] rev 2691
Modbus: fixed typo in ctype typing.

Fri, 11 Sep 2020 13:46:41 +0200MODBUS: Fix saving of websettings.
Edouard Tisserant [Fri, 11 Sep 2020 13:46:41 +0200] rev 2690
MODBUS: Fix saving of websettings.

Thu, 10 Sep 2020 16:08:26 +0200Runtime/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.
Edouard Tisserant [Thu, 10 Sep 2020 16:08:26 +0200] rev 2689
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 +0100Modbus plugin: reformat code, and add comment.
Mario de Sousa <msousa@fe.up.pt> [Thu, 13 Aug 2020 19:00:38 +0100] rev 2688
Modbus plugin: reformat code, and add comment.

Thu, 13 Aug 2020 18:42:02 +0100Modbus plugin: fix runtime periodic timer (don't use POSIX timer)
Mario de Sousa <msousa@fe.up.pt> [Thu, 13 Aug 2020 18:42:02 +0100] rev 2687
Modbus plugin: fix runtime periodic timer (don't use POSIX timer)

Wed, 01 Jul 2020 10:36:20 +0200Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions.
Edouard Tisserant [Wed, 01 Jul 2020 10:36:20 +0200] rev 2686
Modbus and Bacnet websettings : Rename variables and functions to avoid name collisions.

Websettings for modbus and bacnet are now passed to runtime as python files loaded (execfile) at init of PLCObject with the same globals.
Because if this, same names used in previously different modules now colide.

Mon, 29 Jun 2020 14:38:04 +0200Modbus: fix strange side effect of re-use of condition variables or mutex with Xenomai : without bzero of the associated types, mutex keeps locked.
Edouard Tisserant [Mon, 29 Jun 2020 14:38:04 +0200] rev 2685
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 +0200Modbus: fix client timer invalid arguments.
Edouard Tisserant [Wed, 24 Jun 2020 14:38:11 +0200] rev 2684
Modbus: fix client timer invalid arguments.

Tue, 23 Jun 2020 13:50:21 +0200Modbus add a timer thread, and switch timer to SIGEV_THREAD_ID to follow xenomai posix skin restrictions.
Edouard Tisserant [Tue, 23 Jun 2020 13:50:21 +0200] rev 2683
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 +0200Runtime: Fix typo in PLCObject leading to exception when reporting failure.
Edouard Tisserant [Fri, 19 Jun 2020 11:07:25 +0200] rev 2682
Runtime: Fix typo in PLCObject leading to exception when reporting failure.

Thu, 18 Jun 2020 14:18:16 +0200Py_ext: use non-derived type when generating C code for handling Python PLC globals.
Edouard Tisserant [Thu, 18 Jun 2020 14:18:16 +0200] rev 2681
Py_ext: use non-derived type when generating C code for handling Python PLC globals.

Wed, 17 Jun 2020 14:32:55 +0200tests/python : add some STRING PLC Python globals with OnChange.
Edouard Tisserant [Wed, 17 Jun 2020 14:32:55 +0200] rev 2680
tests/python : add some STRING PLC Python globals with OnChange.

Wed, 17 Jun 2020 14:30:55 +0200Runtime: STRING type for Python PLC Globals was making problem with strings, since generated code wasn't doing comparison properly.
Edouard Tisserant [Wed, 17 Jun 2020 14:30:55 +0200] rev 2679
Runtime: STRING type for Python PLC Globals was making problem with strings, since generated code wasn't doing comparison properly.

Tue, 16 Jun 2020 15:53:52 +0200Merge
Tomaz Orac [Tue, 16 Jun 2020 15:53:52 +0200] rev 2678
Merge

Tue, 16 Jun 2020 11:12:36 +0200Modbus: more comments to remember some necessary changes.
Edouard Tisserant [Tue, 16 Jun 2020 11:12:36 +0200] rev 2677
Modbus: more comments to remember some necessary changes.

Tue, 16 Jun 2020 10:16:25 +0200Modbus/BACnet : add some comments so that we don't forget some pending optimization.
Edouard Tisserant [Tue, 16 Jun 2020 10:16:25 +0200] rev 2676
Modbus/BACnet : add some comments so that we don't forget some pending optimization.

Tue, 16 Jun 2020 10:12:21 +0200Modbus: Delete stored configuration when identical to default configuration.
Edouard Tisserant [Tue, 16 Jun 2020 10:12:21 +0200] rev 2675
Modbus: Delete stored configuration when identical to default configuration.

Mon, 15 Jun 2020 14:34:00 +0200BACnet: prevent saving configuration that is same as default, delete it if so.
Edouard Tisserant [Mon, 15 Jun 2020 14:34:00 +0200] rev 2674
BACnet: prevent saving configuration that is same as default, delete it if so.

Mon, 15 Jun 2020 14:29:41 +0200BACnet and Modbus : fix configuration storage directory
Edouard Tisserant [Mon, 15 Jun 2020 14:29:41 +0200] rev 2673
BACnet and Modbus : fix configuration storage directory

Mon, 15 Jun 2020 14:27:58 +0200Runtime extrension web settings: distinguish display string and token when calling NS.newExtensionSetting, thus allowing meaningful name to be displayed instead of an id.
Edouard Tisserant [Mon, 15 Jun 2020 14:27:58 +0200] rev 2672
Runtime extrension web settings: distinguish display string and token when calling NS.newExtensionSetting, thus allowing meaningful name to be displayed instead of an id.

Fri, 12 Jun 2020 14:40:50 +0200Debug : when BEREMIZ_DEBUG file exist, display all commands issued in console.
Edouard Tisserant [Fri, 12 Jun 2020 14:40:50 +0200] rev 2671
Debug : when BEREMIZ_DEBUG file exist, display all commands issued in console.

Fri, 12 Jun 2020 14:39:32 +0200BACnet 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.
Edouard Tisserant [Fri, 12 Jun 2020 14:39:32 +0200] rev 2670
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.

Fri, 12 Jun 2020 10:30:23 +0200BACnet and Modbus: Remove additional loading and unloading, use the one already in place for extensions.
Edouard Tisserant [Fri, 12 Jun 2020 10:30:23 +0200] rev 2669
BACnet and Modbus: Remove additional loading and unloading, use the one already in place for extensions.

Sun, 07 Jun 2020 23:47:32 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:47:32 +0100] rev 2668
merge

Sun, 07 Jun 2020 23:46:16 +0100Bacnet plugin web configuration: strip leading and trailing spaces for net. interface and port numb.
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:46:16 +0100] rev 2667
Bacnet plugin web configuration: strip leading and trailing spaces for net. interface and port numb.

Sun, 07 Jun 2020 23:38:20 +0100Modbus plugin, web interface: strip leading and trailing spaces from string parameters
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 23:38:20 +0100] rev 2666
Modbus plugin, web interface: strip leading and trailing spaces from string parameters

Sun, 07 Jun 2020 22:32:24 +0100Modbus plugin web interface: show the keyword "#ANY#" on TCP servers
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 22:32:24 +0100] rev 2665
Modbus plugin web interface: show the keyword "#ANY#" on TCP servers

Sun, 07 Jun 2020 19:33:32 +0100Modbus plugin: fix bug: was checking user configuration against wrong limits
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 19:33:32 +0100] rev 2664
Modbus plugin: fix bug: was checking user configuration against wrong limits

Sun, 07 Jun 2020 18:34:32 +0100Modbus plugin: fix algorithm detecting Modbus TCP servers using the same IP port on the same network interface
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 18:34:32 +0100] rev 2663
Modbus plugin: fix algorithm detecting Modbus TCP servers using the same IP port on the same network interface

Sun, 07 Jun 2020 12:28:21 +0100Modbus plugin: check for duplicate "Configuration_Name"
Mario de Sousa <msousa@fe.up.pt> [Sun, 07 Jun 2020 12:28:21 +0100] rev 2662
Modbus plugin: check for duplicate "Configuration_Name"

Sat, 06 Jun 2020 08:51:32 +0100add comment
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:51:32 +0100] rev 2661
add comment

Sat, 06 Jun 2020 08:50:36 +0100add comment
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:50:36 +0100] rev 2660
add comment

Sat, 06 Jun 2020 08:43:41 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 08:43:41 +0100] rev 2659
merge

Sat, 06 Jun 2020 07:34:02 +0100Modbus plugin web configuration: fix comments, and delete un-used code
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 07:34:02 +0100] rev 2658
Modbus plugin web configuration: fix comments, and delete un-used code

Sat, 06 Jun 2020 07:24:42 +0100Modbus plugin web configuration: use drop down choices for baud, parity and stop bits.
Mario de Sousa <msousa@fe.up.pt> [Sat, 06 Jun 2020 07:24:42 +0100] rev 2657
Modbus plugin web configuration: use drop down choices for baud, parity and stop bits.

Fri, 05 Jun 2020 18:02:12 +0100Modbus plugin web configuration: save node type and addr type to persistant storage
Mario de Sousa <msousa@fe.up.pt> [Fri, 05 Jun 2020 18:02:12 +0100] rev 2656
Modbus plugin web configuration: save node type and addr type to persistant storage

Mon, 01 Jun 2020 14:11:22 +0100Add web extension: configure Modbus Server plugin parameters
Mario de Sousa <msousa@fe.up.pt> [Mon, 01 Jun 2020 14:11:22 +0100] rev 2655
Add web extension: configure Modbus Server plugin parameters

Mon, 01 Jun 2020 08:54:26 +0100Add web extension: configure Modbus plugin parameters (currently only supports Modbus clients)
Mario de Sousa <msousa@fe.up.pt> [Mon, 01 Jun 2020 08:54:26 +0100] rev 2654
Add web extension: configure Modbus plugin parameters (currently only supports Modbus clients)

Tue, 02 Jun 2020 13:37:34 +0200Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer.
Edouard Tisserant [Tue, 02 Jun 2020 13:37:34 +0200] rev 2653
Runtime: create .md5 file at the end of all transfered files being written to disk, so that it presence indicates completeness of transfer.

Tue, 02 Jun 2020 11:34:50 +0200IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button.
Edouard Tisserant [Tue, 02 Jun 2020 11:34:50 +0200] rev 2652
IDE: Main toolbar : Show repair button also in stop mode. Move repair button after disconnect button.

Mon, 01 Jun 2020 14:47:31 +0200Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect.
Edouard Tisserant [Mon, 01 Jun 2020 14:47:31 +0200] rev 2651
Runtime: fsync() files when transfering them, to prebent data loss when poweroff soon after programming. Fixed variable naming as a side effect.

Thu, 28 May 2020 11:16:59 +0100merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:16:59 +0100] rev 2650
merge

Thu, 28 May 2020 11:15:22 +0100BACnet plugin: Add web interface for online parameter configuration
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:15:22 +0100] rev 2649
BACnet plugin: Add web interface for online parameter configuration

Thu, 28 May 2020 11:01:42 +0100modbus_plugin: generate nicer error message, instead of a traceback
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 11:01:42 +0100] rev 2648
modbus_plugin: generate nicer error message, instead of a traceback

Thu, 28 May 2020 10:54:48 +0100Modbus plugin: Add "exec. req. flag" and "write on change" features
Mario de Sousa <msousa@fe.up.pt> [Thu, 28 May 2020 10:54:48 +0100] rev 2647
Modbus plugin: Add "exec. req. flag" and "write on change" features

Thu, 28 May 2020 11:38:09 +0200PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions.
Edouard Tisserant [Thu, 28 May 2020 11:38:09 +0200] rev 2646
PLCObject : reorganize code in StartPLC(), add a PreStartPLC() empty method, to be overloaded by runtime extensions.

Tue, 26 May 2020 09:58:20 +0200Solve 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.
Edouard Tisserant [Tue, 26 May 2020 09:58:20 +0200] rev 2645
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.

Wed, 18 Dec 2019 13:31:22 +0100Add --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.
Edouard Tisserant [Wed, 18 Dec 2019 13:31:22 +0100] rev 2644
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.

Mon, 25 Nov 2019 08:10:45 +0100Etherlab : Merged 2014-2018 changes from jblee and others
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 25 Nov 2019 08:10:45 +0100] rev 2643
Etherlab : Merged 2014-2018 changes from jblee and others