easycoder 250404.1__tar.gz → 250422.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of easycoder might be problematic. Click here for more details.
- easycoder-250422.2/.gitignore +1 -0
- {easycoder-250404.1 → easycoder-250422.2}/PKG-INFO +3 -15
- {easycoder-250404.1 → easycoder-250422.2}/README.md +1 -12
- easycoder-250422.2/config.ecs +275 -0
- easycoder-250422.2/config.py +3 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/__init__.py +1 -1
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_core.py +8 -0
- easycoder-250422.2/easycoder/ec_pyside6.py +517 -0
- easycoder-250422.2/group.py +36 -0
- easycoder-250422.2/plugins/ec_pyside6.py +295 -0
- easycoder-250422.2/test.ecs +119 -0
- easycoder-250422.2/test.json +1 -0
- easycoder-250422.2/test.py +52 -0
- easycoder-250404.1/test.ecs +0 -15
- {easycoder-250404.1 → easycoder-250422.2}/LICENSE +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/README.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/README.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/boolean.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/empty.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/ends.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/even.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/exists.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/greater.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/hasProperty.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/includes.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/is.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/less.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/list.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/none.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/not.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/numeric.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/object.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/odd.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/starts.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/conditions/string.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/add.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/append.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/assert.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/begin.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/clear.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/close.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/create.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/debug.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/decrement.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/delete.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/divide.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/exit.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/file.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/fork.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/get.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/go.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/gosub.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/if.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/import.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/increment.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/index.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/init.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/input.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/load.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/lock.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/log.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/module.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/multiply.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/negate.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/open.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/pop.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/post.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/print.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/push.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/put.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/read.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/release.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/replace.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/return.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/run.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/save.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/script.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/set.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/split.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/stack.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/stop.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/system.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/take.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/toggle.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/truncate.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/unlock.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/variable.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/wait.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/while.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/keywords/write.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/arg.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/args.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/cos.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/datime.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/decode.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/element.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/elements.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/empty.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/encode.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/error.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/files.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/float.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/from.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/hash.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/index.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/integer.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/json.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/keys.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/left.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/length.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/lowercase.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/memory.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/modification.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/modulo.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/newline.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/now.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/position.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/property.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/random.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/right.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/sin.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/stringify.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/tab.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/tan.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/timestamp.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/today.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/trim.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/type.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/uppercase.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/value.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/core/values/weekday.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/README.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/attach.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/close.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/create.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/ellipse.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/image.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/move.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/on.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/rectangle.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/render.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/run.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/set.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/keywords/text.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/values/attribute.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/doc/graphics/values/window.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/README.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_classes.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_compiler.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_condition.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_graphics.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_gutils.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_handler.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_program.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_timestamp.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/easycoder/ec_value.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/images/Semoigo Dawn.jpg +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/json/graphics-demo.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/ec_keyboard.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/ec_p100.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/4-function.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/4-function.png +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-0.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-0.png +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-1.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-1.png +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-2.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-2.png +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-3.json +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/keyboards/qwerty-3.png +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/plugins/points.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/pyproject.toml +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/README.md +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/benchmark.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/config.ecg +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/connect.ecg +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/ec_keyboard.py +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/findxr.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/fizzbuzz.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/hello.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/points.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/test.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/testg.ecg +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/scripts/tests.ecs +0 -0
- {easycoder-250404.1 → easycoder-250422.2}/test.ecg +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
*/__pycache__/*
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
2
|
Name: easycoder
|
|
3
|
-
Version:
|
|
3
|
+
Version: 250422.2
|
|
4
4
|
Summary: Rapid scripting in English
|
|
5
5
|
Keywords: compiler,scripting,prototyping,programming,coding,python,low code,hypertalk,computer language,learn to code
|
|
6
6
|
Author-email: Graham Trott <gtanyware@gmail.com>
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
8
|
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
-
License-File: LICENSE
|
|
10
9
|
Requires-Dist: pytz
|
|
11
10
|
Project-URL: Home, https://github.com/easycoder/easycoder-py
|
|
12
11
|
|
|
@@ -84,18 +83,7 @@ Here in the repository is a folder called `scripts` containing some sample scrip
|
|
|
84
83
|
`benchmark.ecs` allows the performance of **_EasyCoder_** to be compared to other languages if a similar script is written for each one.
|
|
85
84
|
|
|
86
85
|
## Graphical programming
|
|
87
|
-
**_EasyCoder_** includes a graphical programming environment that is in the early stages of development. Some demo scripts will be included in the `scripts` directory
|
|
88
|
-
```
|
|
89
|
-
sudo apt install python3-tk
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Next, install the Python `pySimpleGUI` graphics library; this is done with `pip install pysimplegui`. Then run your **_EasyCoder_** script using `easycoder {scriptname}.ecg`.
|
|
93
|
-
|
|
94
|
-
Graphical scripts look much like any other script but their file names must use the extension `.ecg` to signal to **_EasyCoder_** that it needs to load the graphics module. Non-graphical applications can use any extension but `.ecs` is recommended. This allows the **_EasyCoder_** application to be used wherever Python is installed, in either a command-line or a graphical environment, but graphics will of course not be available in the former.
|
|
95
|
-
|
|
96
|
-
Some demo graphical scripts will included in the `scripts` directory as development proceeds.
|
|
97
|
-
|
|
98
|
-
`gtest.ecg` contains sample code to demonstrate and test basic features.
|
|
86
|
+
**_EasyCoder_** includes a graphical programming environment based on PySide6, that is in the early stages of development. Some demo scripts will be included in the `scripts` directory as development proceeds.
|
|
99
87
|
|
|
100
88
|
## Significant features
|
|
101
89
|
|
|
@@ -72,18 +72,7 @@ Here in the repository is a folder called `scripts` containing some sample scrip
|
|
|
72
72
|
`benchmark.ecs` allows the performance of **_EasyCoder_** to be compared to other languages if a similar script is written for each one.
|
|
73
73
|
|
|
74
74
|
## Graphical programming
|
|
75
|
-
**_EasyCoder_** includes a graphical programming environment that is in the early stages of development. Some demo scripts will be included in the `scripts` directory
|
|
76
|
-
```
|
|
77
|
-
sudo apt install python3-tk
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
Next, install the Python `pySimpleGUI` graphics library; this is done with `pip install pysimplegui`. Then run your **_EasyCoder_** script using `easycoder {scriptname}.ecg`.
|
|
81
|
-
|
|
82
|
-
Graphical scripts look much like any other script but their file names must use the extension `.ecg` to signal to **_EasyCoder_** that it needs to load the graphics module. Non-graphical applications can use any extension but `.ecs` is recommended. This allows the **_EasyCoder_** application to be used wherever Python is installed, in either a command-line or a graphical environment, but graphics will of course not be available in the former.
|
|
83
|
-
|
|
84
|
-
Some demo graphical scripts will included in the `scripts` directory as development proceeds.
|
|
85
|
-
|
|
86
|
-
`gtest.ecg` contains sample code to demonstrate and test basic features.
|
|
75
|
+
**_EasyCoder_** includes a graphical programming environment based on PySide6, that is in the early stages of development. Some demo scripts will be included in the `scripts` directory as development proceeds.
|
|
87
76
|
|
|
88
77
|
## Significant features
|
|
89
78
|
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
! config.ecs
|
|
2
|
+
|
|
3
|
+
script Configurator
|
|
4
|
+
|
|
5
|
+
use graphics
|
|
6
|
+
|
|
7
|
+
window Window
|
|
8
|
+
layout MainPanel
|
|
9
|
+
layout LeftPanel
|
|
10
|
+
layout RightPanel
|
|
11
|
+
layout DeviceHPanel
|
|
12
|
+
layout OuterLayout
|
|
13
|
+
layout Layout
|
|
14
|
+
groupbox Group
|
|
15
|
+
label Label
|
|
16
|
+
label MasterDeviceLabel
|
|
17
|
+
label RelayStateLabel
|
|
18
|
+
label StatusLabel
|
|
19
|
+
pushbutton ResetConfigButton
|
|
20
|
+
pushbutton ScanNetworkButton
|
|
21
|
+
pushbutton SelectMasterButton
|
|
22
|
+
pushbutton SelectSlaveButton
|
|
23
|
+
pushbutton DeleteSlaveButton
|
|
24
|
+
pushbutton UpdateSlaveButton
|
|
25
|
+
pushbutton DeleteFileButton
|
|
26
|
+
pushbutton ExitButton
|
|
27
|
+
pushbutton SelectSystemButton
|
|
28
|
+
pushbutton SaveHostButton
|
|
29
|
+
pushbutton RelayOffButton
|
|
30
|
+
pushbutton RelayOnButton
|
|
31
|
+
pushbutton SaveWidgetDataButton
|
|
32
|
+
lineinput SSIDInput
|
|
33
|
+
lineinput PasswordInput
|
|
34
|
+
lineinput DeviceNameInput
|
|
35
|
+
lineinput ChannelInput
|
|
36
|
+
lineinput LEDPinInput
|
|
37
|
+
lineinput RelayPinInput
|
|
38
|
+
lineinput DHT22PinInput
|
|
39
|
+
lineinput PathInput
|
|
40
|
+
listbox SlaveList
|
|
41
|
+
checkbox LEDInvertCheckbox
|
|
42
|
+
checkbox RelayInvertCheckbox
|
|
43
|
+
|
|
44
|
+
! debug step
|
|
45
|
+
|
|
46
|
+
log `Starting`
|
|
47
|
+
init graphics
|
|
48
|
+
create Window title `RBR-Now configurator` size 700 500
|
|
49
|
+
create MainPanel type QHBoxLayout
|
|
50
|
+
|
|
51
|
+
create LeftPanel type QVBoxLayout
|
|
52
|
+
add LeftPanel to MainPanel
|
|
53
|
+
create ResetConfigButton text `Reset config`
|
|
54
|
+
on click ResetConfigButton go to ResetConfigFile
|
|
55
|
+
add ResetConfigButton to LeftPanel
|
|
56
|
+
|
|
57
|
+
create ScanNetworkButton text `Scan network`
|
|
58
|
+
on click ScanNetworkButton go to ScanNetwork
|
|
59
|
+
add ScanNetworkButton to LeftPanel
|
|
60
|
+
|
|
61
|
+
create SelectMasterButton text `Select master`
|
|
62
|
+
on click SelectMasterButton go to SelectMaster
|
|
63
|
+
add SelectMasterButton to LeftPanel
|
|
64
|
+
|
|
65
|
+
create SelectSlaveButton text `Select slave`
|
|
66
|
+
on click SelectSlaveButton go to SelectSlave
|
|
67
|
+
add SelectSlaveButton to LeftPanel
|
|
68
|
+
|
|
69
|
+
create UpdateSlaveButton text `Update slave`
|
|
70
|
+
on click UpdateSlaveButton go to UpdateSlave
|
|
71
|
+
add UpdateSlaveButton to LeftPanel
|
|
72
|
+
|
|
73
|
+
create DeleteFileButton text `Delete file`
|
|
74
|
+
add DeleteFileButton to LeftPanel
|
|
75
|
+
on click DeleteFileButton go to DeleteFile
|
|
76
|
+
|
|
77
|
+
create DeleteSlaveButton text `Delete slave`
|
|
78
|
+
add DeleteSlaveButton to LeftPanel
|
|
79
|
+
on click DeleteSlaveButton go to DeleteSlave
|
|
80
|
+
|
|
81
|
+
add stretch to LeftPanel
|
|
82
|
+
|
|
83
|
+
create ExitButton text `Exit`
|
|
84
|
+
add ExitButton to LeftPanel
|
|
85
|
+
on click ExitButton go to Exit
|
|
86
|
+
|
|
87
|
+
create RightPanel type QVBoxLayout
|
|
88
|
+
add stretch RightPanel to MainPanel
|
|
89
|
+
|
|
90
|
+
! Create the system name group
|
|
91
|
+
create Group title `System name`
|
|
92
|
+
set the height of Group to 50
|
|
93
|
+
add Group to RightPanel
|
|
94
|
+
create Layout type QHBoxLayout
|
|
95
|
+
add Layout to Group
|
|
96
|
+
create Label text `(none)`
|
|
97
|
+
add stretch Label to Layout
|
|
98
|
+
create SelectSystemButton text `Select system`
|
|
99
|
+
on click SelectSystemButton go to SelectSystem
|
|
100
|
+
add SelectSystemButton to Layout
|
|
101
|
+
|
|
102
|
+
! Create the host access group
|
|
103
|
+
create Group title `Host`
|
|
104
|
+
set the height of Group to 50
|
|
105
|
+
add Group to RightPanel
|
|
106
|
+
create Layout type QHBoxLayout
|
|
107
|
+
add Layout to Group
|
|
108
|
+
create Label text `SSID:`
|
|
109
|
+
add Label to Layout
|
|
110
|
+
create SSIDInput size 40
|
|
111
|
+
add SSIDInput to Layout
|
|
112
|
+
create Label text `Password:`
|
|
113
|
+
add Label to Layout
|
|
114
|
+
create PasswordInput size 40
|
|
115
|
+
add PasswordInput to Layout
|
|
116
|
+
create SaveHostButton text `Save`
|
|
117
|
+
on click SaveHostButton go to SaveHostInfo
|
|
118
|
+
add SaveHostButton to Layout
|
|
119
|
+
|
|
120
|
+
! Create the Master Device group
|
|
121
|
+
create Group title `Master device`
|
|
122
|
+
set the height of Group to 50
|
|
123
|
+
add Group to RightPanel
|
|
124
|
+
create Layout type QHBoxLayout
|
|
125
|
+
add Layout to Group
|
|
126
|
+
create MasterDeviceLabel text `(none)`
|
|
127
|
+
add MasterDeviceLabel to Layout
|
|
128
|
+
|
|
129
|
+
! Create the Slave Devices group
|
|
130
|
+
create Group title `Slave devices`
|
|
131
|
+
set the height of Group to 150
|
|
132
|
+
add Group to RightPanel
|
|
133
|
+
create Layout type QHBoxLayout
|
|
134
|
+
add Layout to Group
|
|
135
|
+
create SlaveList
|
|
136
|
+
add SlaveList to Layout
|
|
137
|
+
|
|
138
|
+
! Create the Selected Devices group
|
|
139
|
+
create Group title `Selected device`
|
|
140
|
+
set the height of Group to 150
|
|
141
|
+
add Group to RightPanel
|
|
142
|
+
|
|
143
|
+
create DeviceHPanel type QHBoxLayout
|
|
144
|
+
add DeviceHPanel to Group
|
|
145
|
+
|
|
146
|
+
create OuterLayout type QVBoxLayout
|
|
147
|
+
add OuterLayout to DeviceHPanel
|
|
148
|
+
|
|
149
|
+
create Layout type QHBoxLayout
|
|
150
|
+
add Layout to OuterLayout
|
|
151
|
+
create Label text `Name:`
|
|
152
|
+
add Label to Layout
|
|
153
|
+
create DeviceNameInput size 40
|
|
154
|
+
add DeviceNameInput to Layout
|
|
155
|
+
create Label text `Channel:`
|
|
156
|
+
add Label to Layout
|
|
157
|
+
create ChannelInput size 5
|
|
158
|
+
add ChannelInput to Layout
|
|
159
|
+
add stretch to Layout
|
|
160
|
+
|
|
161
|
+
create Layout type QHBoxLayout
|
|
162
|
+
add Layout to OuterLayout
|
|
163
|
+
create Label text `LED Pin:`
|
|
164
|
+
add Label to Layout
|
|
165
|
+
create LEDPinInput size 5
|
|
166
|
+
add LEDPinInput to Layout
|
|
167
|
+
create LEDInvertCheckbox text `Inverted`
|
|
168
|
+
add LEDInvertCheckbox to Layout
|
|
169
|
+
add stretch to Layout
|
|
170
|
+
|
|
171
|
+
create Layout type QHBoxLayout
|
|
172
|
+
add Layout to OuterLayout
|
|
173
|
+
create Label text `Relay Pin:`
|
|
174
|
+
add Label to Layout
|
|
175
|
+
create RelayPinInput size 5
|
|
176
|
+
add RelayPinInput to Layout
|
|
177
|
+
create RelayInvertCheckbox text `Inverted`
|
|
178
|
+
add RelayInvertCheckbox to Layout
|
|
179
|
+
create RelayOffButton size 5 text `-`
|
|
180
|
+
on click RelayOffButton go to RelayOff
|
|
181
|
+
add RelayOffButton to Layout
|
|
182
|
+
create RelayOnButton size 5 text `+`
|
|
183
|
+
on click RelayOnButton go to RelayOn
|
|
184
|
+
add RelayOnButton to Layout
|
|
185
|
+
create RelayStateLabel size 5 text `???`
|
|
186
|
+
add RelayStateLabel to Layout
|
|
187
|
+
add stretch to Layout
|
|
188
|
+
|
|
189
|
+
create Layout type QHBoxLayout
|
|
190
|
+
add Layout to OuterLayout
|
|
191
|
+
create Label text `DHT22 Pin:`
|
|
192
|
+
add Label to Layout
|
|
193
|
+
create DHT22PinInput size 5
|
|
194
|
+
add DHT22PinInput to Layout
|
|
195
|
+
add stretch to Layout
|
|
196
|
+
|
|
197
|
+
create Layout type QHBoxLayout
|
|
198
|
+
add Layout to OuterLayout
|
|
199
|
+
create Label text `Path:`
|
|
200
|
+
add Label to Layout
|
|
201
|
+
create PathInput size 60
|
|
202
|
+
add PathInput to Layout
|
|
203
|
+
add stretch to Layout
|
|
204
|
+
|
|
205
|
+
! The 'Save' button
|
|
206
|
+
create Layout type QVBoxLayout
|
|
207
|
+
add Layout to DeviceHPanel
|
|
208
|
+
create SaveWidgetDataButton text `Save`
|
|
209
|
+
on click SaveWidgetDataButton go to SaveWidgetData
|
|
210
|
+
add SaveWidgetDataButton to Layout
|
|
211
|
+
|
|
212
|
+
create StatusLabel text `<font color="#00ff00">OK</font>`
|
|
213
|
+
add StatusLabel to RightPanel
|
|
214
|
+
|
|
215
|
+
add stretch to RightPanel
|
|
216
|
+
|
|
217
|
+
show MainPanel in Window
|
|
218
|
+
|
|
219
|
+
start graphics
|
|
220
|
+
log `Graphics running`
|
|
221
|
+
stop
|
|
222
|
+
|
|
223
|
+
ResetConfigFile:
|
|
224
|
+
log `Reset the configuration file`
|
|
225
|
+
stop
|
|
226
|
+
|
|
227
|
+
ScanNetwork:
|
|
228
|
+
log `Scan the network`
|
|
229
|
+
stop
|
|
230
|
+
|
|
231
|
+
SelectMaster:
|
|
232
|
+
log `Select the master device`
|
|
233
|
+
stop
|
|
234
|
+
|
|
235
|
+
SelectSlave:
|
|
236
|
+
log `Select a slave device`
|
|
237
|
+
stop
|
|
238
|
+
|
|
239
|
+
UpdateSlave:
|
|
240
|
+
log `Update the files om the selected device`
|
|
241
|
+
stop
|
|
242
|
+
|
|
243
|
+
DeleteFile:
|
|
244
|
+
log `Delete a file on the selected device`
|
|
245
|
+
stop
|
|
246
|
+
|
|
247
|
+
DeleteSlave:
|
|
248
|
+
log `Delete the selected slave device`
|
|
249
|
+
stop
|
|
250
|
+
|
|
251
|
+
Exit:
|
|
252
|
+
log `Exit the configuator`
|
|
253
|
+
close Window
|
|
254
|
+
exit
|
|
255
|
+
|
|
256
|
+
SelectSystem:
|
|
257
|
+
log `Select the system`
|
|
258
|
+
stop
|
|
259
|
+
|
|
260
|
+
SaveHostInfo:
|
|
261
|
+
log `Save the host information`
|
|
262
|
+
stop
|
|
263
|
+
|
|
264
|
+
SaveWidgetData:
|
|
265
|
+
log `Save the widget data`
|
|
266
|
+
stop
|
|
267
|
+
|
|
268
|
+
RelayOff:
|
|
269
|
+
log `Turn the relay OFF`
|
|
270
|
+
stop
|
|
271
|
+
|
|
272
|
+
RelayOn:
|
|
273
|
+
log `Turn the relay ON`
|
|
274
|
+
stop
|
|
275
|
+
|
|
@@ -1337,6 +1337,7 @@ class Core(Handler):
|
|
|
1337
1337
|
newValue[index] = value
|
|
1338
1338
|
symbolRecord['elements'] = elements
|
|
1339
1339
|
symbolRecord['value'] = newValue
|
|
1340
|
+
symbolRecord['index'] = 0
|
|
1340
1341
|
return self.nextPC()
|
|
1341
1342
|
|
|
1342
1343
|
elif cmdType == 'element':
|
|
@@ -1596,6 +1597,13 @@ class Core(Handler):
|
|
|
1596
1597
|
target['locked'] = False
|
|
1597
1598
|
return self.nextPC()
|
|
1598
1599
|
|
|
1600
|
+
def k_use(self, command):
|
|
1601
|
+
if self.nextIs('graphics'):
|
|
1602
|
+
from .ec_pyside6 import Graphics
|
|
1603
|
+
self.program.classes.append(Graphics)
|
|
1604
|
+
self.program.processClasses()
|
|
1605
|
+
return True
|
|
1606
|
+
|
|
1599
1607
|
# Declare a general-purpose variable
|
|
1600
1608
|
def k_variable(self, command):
|
|
1601
1609
|
return self.compileVariable(command, True)
|