Thu, 20 Oct 2022 18:15:31 +0200Update README.md wxPython4
etisserant <edouard.tisserant@gmail.com> [Thu, 20 Oct 2022 18:15:31 +0200] rev 3638
Update README.md

removed undue blank lines

Thu, 20 Oct 2022 18:10:27 +0200Update README.md wxPython4
etisserant <edouard.tisserant@gmail.com> [Thu, 20 Oct 2022 18:10:27 +0200] rev 3637
Update README.md

use back quote instead of simple quote for quoted strings.

Wed, 19 Oct 2022 22:04:39 +0200IDE: fix exception when removing a file in Project Files manager. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 Oct 2022 22:04:39 +0200] rev 3636
IDE: fix exception when removing a file in Project Files manager.

Wed, 19 Oct 2022 20:53:01 +0200Update README.md wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 19 Oct 2022 20:53:01 +0200] rev 3635
Update README.md

Tue, 11 Oct 2022 15:07:14 +0200Tests: fix OPC-UA test when run from repo. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 11 Oct 2022 15:07:14 +0200] rev 3634
Tests: fix OPC-UA test when run from repo.

project_files directory isn't commited because empty,
test fails if project_files is missing.

Tue, 11 Oct 2022 15:02:07 +0200OPC-UA: better logging in case of failure at init wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 11 Oct 2022 15:02:07 +0200] rev 3633
OPC-UA: better logging in case of failure at init

Tue, 11 Oct 2022 13:49:01 +0200Tests: version bump open62541 v1.3.2 -> v1.3.3 for github CI workflow. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 11 Oct 2022 13:49:01 +0200] rev 3632
Tests: version bump open62541 v1.3.2 -> v1.3.3 for github CI workflow.

Tue, 11 Oct 2022 13:06:48 +0200Tests: add opc-ua encrypted test wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 11 Oct 2022 13:06:48 +0200] rev 3631
Tests: add opc-ua encrypted test

Thu, 06 Oct 2022 10:02:46 +0200Merged changes from default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 06 Oct 2022 10:02:46 +0200] rev 3630
Merged changes from default

Wed, 05 Oct 2022 09:06:18 +0200SVGHMI: update generated XSLT
Edouard Tisserant [Wed, 05 Oct 2022 09:06:18 +0200] rev 3629
SVGHMI: update generated XSLT

Tue, 04 Oct 2022 11:06:04 +0200SVGHMI: Update svghmi_references example to demonstrate use of Assign widget.
Edouard Tisserant [Tue, 04 Oct 2022 11:06:04 +0200] rev 3628
SVGHMI: Update svghmi_references example to demonstrate use of Assign widget.

Tue, 04 Oct 2022 11:04:33 +0200SVGHMI: Add Assign widget, doing multiple assignments on click.
Edouard Tisserant [Tue, 04 Oct 2022 11:04:33 +0200] rev 3627
SVGHMI: Add Assign widget, doing multiple assignments on click.

Thu, 29 Sep 2022 11:08:05 +0200SVGHMI: add visible feedback to Jump widget when clicked/touched
Edouard Tisserant [Thu, 29 Sep 2022 11:08:05 +0200] rev 3626
SVGHMI: add visible feedback to Jump widget when clicked/touched

Wed, 28 Sep 2022 09:19:07 +0200SVGHMI: add support for "reference" and "frame" rectangles to spread-out ovelapping elements.
Edouard Tisserant [Wed, 28 Sep 2022 09:19:07 +0200] rev 3625
SVGHMI: add support for "reference" and "frame" rectangles to spread-out ovelapping elements.

When HMI become complicated, designer needs to spread-out ovelapping elements
in order to unclutter drawing and facilitate maintenance.

Thu, 22 Sep 2022 09:42:38 +0200SVGHMI: remove intermediate "updates" Map and apply_updates()
Edouard Tisserant [Thu, 22 Sep 2022 09:42:38 +0200] rev 3624
SVGHMI: remove intermediate "updates" Map and apply_updates()

It was used initially to decouple DOM updates from reception of data through
websocket, but now since all widget SHOULD use animate() to modify DOM, and
dispatch() only change internal state, apply_update is unnecessary.

Wed, 21 Sep 2022 11:51:05 +0200SVGHMI: cosmetic fix in js
Edouard Tisserant [Wed, 21 Sep 2022 11:51:05 +0200] rev 3623
SVGHMI: cosmetic fix in js

Wed, 21 Sep 2022 11:41:28 +0200SVGHMI: do not discard out-of-page elements inside widgets that are ovelapping pages.
Edouard Tisserant [Wed, 21 Sep 2022 11:41:28 +0200] rev 3622
SVGHMI: do not discard out-of-page elements inside widgets that are ovelapping pages.

Fri, 16 Sep 2022 09:03:59 +0200SVGHMI: update generated XSLT
Edouard Tisserant [Fri, 16 Sep 2022 09:03:59 +0200] rev 3621
SVGHMI: update generated XSLT

Wed, 05 Oct 2022 20:44:01 +0200OPCUA: cosmetic fixes wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Oct 2022 20:44:01 +0200] rev 3620
OPCUA: cosmetic fixes

Wed, 05 Oct 2022 20:25:58 +0200CLI: poll runtime log and output new entries to stdout. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Oct 2022 20:25:58 +0200] rev 3619
CLI: poll runtime log and output new entries to stdout.

Wed, 05 Oct 2022 20:15:28 +0200CLI: when using --keep, do not disconnect before being interrupted wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Oct 2022 20:15:28 +0200] rev 3618
CLI: when using --keep, do not disconnect before being interrupted

Wed, 05 Oct 2022 16:10:17 +0200Runtime: work around 1s delay added when using twisted reactor's callLater. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 05 Oct 2022 16:10:17 +0200] rev 3617
Runtime: work around 1s delay added when using twisted reactor's callLater.

Since wxPython4, using wxReactor from non-main thread was producing
exceptions in wxWidget's C++ code. Then reactor.run() was called from
main thread, and runtime's worker was delegating calls to reactor
with callLater(0, callable).

While this worked perfectly with wxReactor, it did introduce an unexplained
1 second delay to each worker call when using nomal linux reactors
(i.e. without wxPython). As a workaround reactor runs in a thread when using
twisted without wxPython

Wed, 14 Sep 2022 15:24:33 +0200tests: opcua_client test project is not meant to be encrypted. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Sep 2022 15:24:33 +0200] rev 3616
tests: opcua_client test project is not meant to be encrypted.

Wed, 14 Sep 2022 15:02:43 +0200SVGHMI: update generated XSLT files wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Sep 2022 15:02:43 +0200] rev 3615
SVGHMI: update generated XSLT files

Wed, 14 Sep 2022 14:59:18 +0200Merged changes from default wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Sep 2022 14:59:18 +0200] rev 3614
Merged changes from default

Wed, 14 Sep 2022 12:41:44 +0200SVGHMI: ensures that PLC sends only fresh data to HMI, even right after variable being subscribed.
Edouard Tisserant [Wed, 14 Sep 2022 12:41:44 +0200] rev 3613
SVGHMI: ensures that PLC sends only fresh data to HMI, even right after variable being subscribed.

Wed, 14 Sep 2022 14:56:25 +0200OPC-UA: add logging to help user to understang what went wrong when connecting. wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Sep 2022 14:56:25 +0200] rev 3612
OPC-UA: add logging to help user to understang what went wrong when connecting.

Wed, 14 Sep 2022 14:55:13 +0200OPC-UA: fix LDFLAG, missing OpenSSL's -lcrypto wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 14 Sep 2022 14:55:13 +0200] rev 3611
OPC-UA: fix LDFLAG, missing OpenSSL's -lcrypto

open62541 is linked staticaly, therefore shared object dependencies have to be given explicitely.

Tue, 13 Sep 2022 17:52:29 +0200tests: missing SSL support in open62541 build parameters wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 17:52:29 +0200] rev 3610
tests: missing SSL support in open62541 build parameters

Tue, 13 Sep 2022 16:53:15 +0200Merge changes from default branch wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 16:53:15 +0200] rev 3609
Merge changes from default branch

Tue, 13 Sep 2022 16:51:54 +0200merge wxPython4
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 16:51:54 +0200] rev 3608
merge

Tue, 13 Sep 2022 16:32:39 +0200Merge pull request #5 from vitw/wxPython4
etisserant <edouard.tisserant@gmail.com> [Tue, 13 Sep 2022 16:32:39 +0200] rev 3607
Merge pull request #5 from vitw/wxPython4

update installation instructions

Thu, 01 Sep 2022 11:58:29 +0500docs: add additional dependencies to installation instructions
v.petrov <v.petrov@k-soft-spb.ru> [Thu, 01 Sep 2022 11:58:29 +0500] rev 3606
docs: add additional dependencies to installation instructions

Wed, 31 Aug 2022 12:04:51 +0500update installation instructions
v.petrov <v.petrov@k-soft-spb.ru> [Wed, 31 Aug 2022 12:04:51 +0500] rev 3605
update installation instructions

Tue, 13 Sep 2022 16:31:52 +0200SVGHMI: fix svghmi_jumps example's SVG file (viewport was misplaced)
Edouard Tisserant [Tue, 13 Sep 2022 16:31:52 +0200] rev 3604
SVGHMI: fix svghmi_jumps example's SVG file (viewport was misplaced)

Tue, 13 Sep 2022 16:29:21 +0200SVGHMI: rework the way cached values are applied to widgets when fresh data is missing.
Edouard Tisserant [Tue, 13 Sep 2022 16:29:21 +0200] rev 3603
SVGHMI: rework the way cached values are applied to widgets when fresh data is missing.

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.