bec-widgets 0.79.3__py3-none-any.whl → 0.82.0__py3-none-any.whl

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.
Files changed (89) hide show
  1. .gitlab-ci.yml +0 -1
  2. .pylintrc +1 -1
  3. CHANGELOG.md +52 -62
  4. PKG-INFO +1 -4
  5. README.md +2 -2
  6. bec_widgets/cli/client.py +3 -2
  7. bec_widgets/cli/generate_cli.py +11 -10
  8. bec_widgets/cli/rpc_wigdet_handler.py +1 -1
  9. bec_widgets/examples/__init__.py +0 -9
  10. bec_widgets/utils/bec_connector.py +2 -1
  11. bec_widgets/utils/bec_dispatcher.py +3 -3
  12. bec_widgets/utils/bec_widget.py +2 -0
  13. bec_widgets/utils/entry_validator.py +1 -1
  14. bec_widgets/utils/plugin_utils.py +80 -10
  15. bec_widgets/utils/ui_loader.py +85 -26
  16. bec_widgets/widgets/{device_inputs → base_classes}/device_input_base.py +2 -0
  17. bec_widgets/widgets/color_button/color_button.py +36 -0
  18. bec_widgets/widgets/{buttons/color_button → color_button}/color_button_plugin.py +1 -1
  19. bec_widgets/widgets/{buttons/color_button → color_button}/register_color_button.py +1 -1
  20. bec_widgets/widgets/device_combobox/assets/device_combobox_icon.png +0 -0
  21. bec_widgets/widgets/{device_inputs/device_combobox → device_combobox}/device_combobox.py +2 -2
  22. bec_widgets/widgets/device_combobox/device_combobox.pyproject +3 -0
  23. bec_widgets/widgets/{device_inputs/device_combobox → device_combobox}/device_combobox_plugin.py +6 -3
  24. bec_widgets/widgets/{device_inputs/device_combobox → device_combobox}/register_device_combobox.py +1 -3
  25. bec_widgets/widgets/device_line_edit/assets/line_edit_icon.png +0 -0
  26. bec_widgets/widgets/{device_inputs/device_line_edit → device_line_edit}/device_line_edit.py +2 -2
  27. bec_widgets/widgets/device_line_edit/device_line_edit.pyproject +3 -0
  28. bec_widgets/widgets/{device_inputs/device_line_edit → device_line_edit}/device_line_edit_plugin.py +6 -3
  29. bec_widgets/widgets/{device_inputs/device_line_edit → device_line_edit}/register_device_line_edit.py +1 -3
  30. bec_widgets/widgets/figure/plots/waveform/waveform.py +8 -2
  31. bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.py +1 -1
  32. bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_toolbar.py +1 -1
  33. bec_widgets/widgets/motor_map/motor_map_widget.py +0 -12
  34. bec_widgets/widgets/scan_control/scan_control.py +1 -1
  35. bec_widgets/widgets/scan_control/scan_group_box.py +1 -1
  36. bec_widgets/widgets/stop_button/assets/stop.png +0 -0
  37. bec_widgets/widgets/stop_button/register_stop_button.py +15 -0
  38. bec_widgets/widgets/{buttons/stop_button → stop_button}/stop_button.py +5 -12
  39. bec_widgets/widgets/stop_button/stop_button.pyproject +1 -0
  40. bec_widgets/widgets/stop_button/stop_button_plugin.py +57 -0
  41. bec_widgets/widgets/toggle/register_toggle_switch.py +15 -0
  42. bec_widgets/widgets/toggle/toggle.py +149 -0
  43. bec_widgets/widgets/toggle/toggle_switch.pyproject +1 -0
  44. bec_widgets/widgets/toggle/toggle_switch_plugin.py +54 -0
  45. {bec_widgets-0.79.3.dist-info → bec_widgets-0.82.0.dist-info}/METADATA +1 -4
  46. {bec_widgets-0.79.3.dist-info → bec_widgets-0.82.0.dist-info}/RECORD +66 -74
  47. docs/introduction/introduction.md +1 -1
  48. docs/user/getting_started/installation.md +2 -2
  49. pyproject.toml +1 -2
  50. tests/unit_tests/test_device_input_base.py +1 -1
  51. tests/unit_tests/test_device_input_widgets.py +2 -2
  52. tests/unit_tests/test_generate_cli_client.py +41 -17
  53. tests/unit_tests/test_plugin_utils.py +2 -3
  54. tests/unit_tests/test_stop_button.py +5 -2
  55. tests/unit_tests/test_toggle.py +38 -0
  56. bec_widgets/examples/motor_movement/__init__.py +0 -9
  57. bec_widgets/examples/motor_movement/motor_control_compilations.py +0 -250
  58. bec_widgets/examples/motor_movement/motor_controller.ui +0 -926
  59. bec_widgets/widgets/buttons/__init__.py +0 -1
  60. bec_widgets/widgets/buttons/color_button/color_button.py +0 -17
  61. bec_widgets/widgets/device_inputs/__init__.py +0 -2
  62. bec_widgets/widgets/device_inputs/device_combobox/device_combobox.pyproject +0 -4
  63. bec_widgets/widgets/device_inputs/device_combobox/launch_device_combobox.py +0 -11
  64. bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit.pyproject +0 -4
  65. bec_widgets/widgets/device_inputs/device_line_edit/launch_device_line_edit.py +0 -11
  66. bec_widgets/widgets/motor_control/motor_control.py +0 -252
  67. bec_widgets/widgets/motor_control/motor_table/motor_table.py +0 -484
  68. bec_widgets/widgets/motor_control/motor_table/motor_table.ui +0 -113
  69. bec_widgets/widgets/motor_control/movement_absolute/__init__.py +0 -0
  70. bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.py +0 -159
  71. bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.ui +0 -149
  72. bec_widgets/widgets/motor_control/movement_relative/__init__.py +0 -0
  73. bec_widgets/widgets/motor_control/movement_relative/movement_relative.py +0 -230
  74. bec_widgets/widgets/motor_control/movement_relative/movement_relative.ui +0 -298
  75. bec_widgets/widgets/motor_control/selection/__init__.py +0 -0
  76. bec_widgets/widgets/motor_control/selection/selection.py +0 -110
  77. bec_widgets/widgets/motor_control/selection/selection.ui +0 -69
  78. tests/unit_tests/test_motor_control.py +0 -588
  79. /bec_widgets/widgets/{buttons/color_button → base_classes}/__init__.py +0 -0
  80. /bec_widgets/widgets/{buttons/stop_button → color_button}/__init__.py +0 -0
  81. /bec_widgets/widgets/{buttons/color_button → color_button}/assets/color_button.png +0 -0
  82. /bec_widgets/widgets/{buttons/color_button → color_button}/color_button.pyproject +0 -0
  83. /bec_widgets/widgets/{device_inputs/device_combobox → device_combobox}/__init__.py +0 -0
  84. /bec_widgets/widgets/{device_inputs/device_line_edit → device_line_edit}/__init__.py +0 -0
  85. /bec_widgets/widgets/{motor_control → stop_button}/__init__.py +0 -0
  86. /bec_widgets/widgets/{motor_control/motor_table → toggle}/__init__.py +0 -0
  87. {bec_widgets-0.79.3.dist-info → bec_widgets-0.82.0.dist-info}/WHEEL +0 -0
  88. {bec_widgets-0.79.3.dist-info → bec_widgets-0.82.0.dist-info}/entry_points.txt +0 -0
  89. {bec_widgets-0.79.3.dist-info → bec_widgets-0.82.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,12 +1,12 @@
1
1
  .gitignore,sha256=cMQ1MLmnoR88aMCCJwUyfoTnufzl4-ckmHtlFUqHcT4,3253
2
- .gitlab-ci.yml,sha256=RnYDz4zKXjlqltTryprlB1s5vLXxI2-seW-Vb70NNF0,8162
3
- .pylintrc,sha256=OstrgmEyP0smNFBKoIN5_26-UmNZgMHnbjvAWX0UrLs,18535
2
+ .gitlab-ci.yml,sha256=vuDJPAYOK0995_H6fu0N5dIgIrOJgTvKr0HZkNWlxMw,8142
3
+ .pylintrc,sha256=eeY8YwSI74oFfq6IYIbCqnx3Vk8ZncKaatv96n_Y8Rs,18544
4
4
  .readthedocs.yaml,sha256=aSOc277LqXcsTI6lgvm_JY80lMlr69GbPKgivua2cS0,603
5
- CHANGELOG.md,sha256=GC_r9Byw1xBscFwof_pEjhjMkmOLnQYybtibbMQDv84,7091
5
+ CHANGELOG.md,sha256=k2WtOtHgXemiWHWfpEiNOVE8J8rSXScPG5bnccZKTtw,6798
6
6
  LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
7
- PKG-INFO,sha256=KNOSryTtLS3GCT2Zw_6V5l9g4xxCSX_MAvinpePvrBU,1427
8
- README.md,sha256=y4jB6wvArS7N8_iTbKWnSM_oRAqLA2GqgzUR-FMh5sU,2645
9
- pyproject.toml,sha256=UakMzJgq7Qf9K_YagOPPzsfhPEg0FO_KedOKoZEDT9c,2403
7
+ PKG-INFO,sha256=LT1qiOoINPiD0fx8bR3xpuvsb8e3_dscPXfGK1NVQNs,1309
8
+ README.md,sha256=Od69x-RS85Hph0-WwWACwal4yUd67XkEn4APEfHhHFw,2649
9
+ pyproject.toml,sha256=wcznXGDLca8bvxpzz4gq3qCV0D7E9st-N9uyKRSo028,2358
10
10
  .git_hooks/pre-commit,sha256=n3RofIZHJl8zfJJIUomcMyYGFi_rwq4CC19z0snz3FI,286
11
11
  .gitlab/issue_templates/bug_report_template.md,sha256=gAuyEwl7XlnebBrkiJ9AqffSNOywmr8vygUFWKTuQeI,386
12
12
  .gitlab/issue_templates/documentation_update_template.md,sha256=FHLdb3TS_D9aL4CYZCjyXSulbaW5mrN2CmwTaeLPbNw,860
@@ -17,19 +17,16 @@ bec_widgets/assets/bec_widgets_icon.png,sha256=K8dgGwIjalDh9PRHUsSQBqgdX7a00nM3i
17
17
  bec_widgets/assets/terminal_icon.png,sha256=bJl7Tft4Fi2uxvuXI8o14uMHnI9eAWKSU2uftXCH9ws,3889
18
18
  bec_widgets/cli/__init__.py,sha256=d0Q6Fn44e7wFfLabDOBxpcJ1DPKWlFunGYDUBmO-4hA,22
19
19
  bec_widgets/cli/auto_updates.py,sha256=DyBV3HnjMSH-cvVkYNcDiYKVf0Xut4Qy2qGQqkW47Bw,4833
20
- bec_widgets/cli/client.py,sha256=ahOa50EN5qknxv_cnWdoBCi-FPlj6UHOGGOnl48enSk,60054
20
+ bec_widgets/cli/client.py,sha256=MMDy1edr1j9klgVGZZmD1dzLxi74gp75Jf4FNed9al8,60084
21
21
  bec_widgets/cli/client_utils.py,sha256=zq1gPW7t4n9Nsn4MLkdUeKwwl-9nUcf5UjuN8lZr9iY,12281
22
- bec_widgets/cli/generate_cli.py,sha256=FUMSm84ztE6UIIHs8U0Irof1i5LRu6CXW1sl-RF_UKA,5877
22
+ bec_widgets/cli/generate_cli.py,sha256=Ea5px9KblUlcGg-1JbJBTIU7laGg2n8PM7Efw9WVVzM,5889
23
23
  bec_widgets/cli/rpc_register.py,sha256=QxXUZu5XNg00Yf5O3UHWOXg3-f_pzKjjoZYMOa-MOJc,2216
24
- bec_widgets/cli/rpc_wigdet_handler.py,sha256=1qQOGrM8rozaWLkoxAW8DTVLv_L_DZdZgUMDPy5MOek,1486
24
+ bec_widgets/cli/rpc_wigdet_handler.py,sha256=6kQng2DyS6rhLJqSJ7xa0kdgSxp-35A2upcf833dJRE,1483
25
25
  bec_widgets/cli/server.py,sha256=2EJvkQDzrDTsZjRPs7g2v_iPTspGqxzY34tRAnvjxjY,7281
26
- bec_widgets/examples/__init__.py,sha256=WWQ0cu7m8sA4Ehy-DWdTIqSISjaHsbxhsNmNrMnhDZU,202
26
+ bec_widgets/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
27
  bec_widgets/examples/jupyter_console/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
28
  bec_widgets/examples/jupyter_console/jupyter_console_window.py,sha256=oOVCTY68bAn9HDFd5W_xNqQhI7Nsm7TaqYYLqLWXo2w,5520
29
29
  bec_widgets/examples/jupyter_console/jupyter_console_window.ui,sha256=2A2mNTUMZBYygz8K4qWzrcjnNqZBMVyeHm26iLZVRWI,1473
30
- bec_widgets/examples/motor_movement/__init__.py,sha256=LzPJkxLAxOsZCbXR-fRCPmeYobp7Yqds6tDxW4W1gSw,214
31
- bec_widgets/examples/motor_movement/motor_control_compilations.py,sha256=8rpA7a2xVZTDMrx7YQIj3IJew78J1gcVMkHvloS0U_Q,9055
32
- bec_widgets/examples/motor_movement/motor_controller.ui,sha256=83XX6NGILwntoUIghvzWnMuGf80O8khK3SduVKTAEFM,29105
33
30
  bec_widgets/examples/plugin_example_pyside/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
31
  bec_widgets/examples/plugin_example_pyside/main.py,sha256=xdC6RWSRt1rW8Prj0CsDeCPct6-_j3__oJmdgogB5PI,505
35
32
  bec_widgets/examples/plugin_example_pyside/registertictactoe.py,sha256=VNFkHc5Sc30lRKzOFJbhArCHGkp_wRxOeJjZbmaAHRU,448
@@ -38,26 +35,29 @@ bec_widgets/examples/plugin_example_pyside/tictactoe.py,sha256=s3rCurXloVcmMdzZi
38
35
  bec_widgets/examples/plugin_example_pyside/tictactoeplugin.py,sha256=BBt3MD8oDLUMCCY3mioJa1QRR0WQdW6DuvVmK1Taovk,1734
39
36
  bec_widgets/examples/plugin_example_pyside/tictactoetaskmenu.py,sha256=LNwplI6deUdKY6FOhUuWBanotxk9asF2G-6k7lFfA8Y,2301
40
37
  bec_widgets/utils/__init__.py,sha256=1930ji1Jj6dVuY81Wd2kYBhHYNV-2R0bN_L4o9zBj1U,533
41
- bec_widgets/utils/bec_connector.py,sha256=ZWaN9C2CKwqj4NIL1irxNDRyMJ1cBSkCAzb6xmxTIKw,9472
38
+ bec_widgets/utils/bec_connector.py,sha256=JScGWHEt4kh6C-C0O_JV_bOuiQlBjYTAPJktqgeAj70,9534
42
39
  bec_widgets/utils/bec_designer.py,sha256=ak3G8FdojUPjVBBwdPXw7tN5P2Uxr-SSoQt394jXeAA,4308
43
- bec_widgets/utils/bec_dispatcher.py,sha256=QZjRKNrZ181yt_6nLJCfdNk5EyeaGImApNA1FWR4rqo,6186
40
+ bec_widgets/utils/bec_dispatcher.py,sha256=dghOw63Ql6rQ-zH1ZaYU6kT9Dg5kNDcZwEdu2YPBJeU,6150
44
41
  bec_widgets/utils/bec_table.py,sha256=nA2b8ukSeUfquFMAxGrUVOqdrzMoDYD6O_4EYbOG2zk,717
42
+ bec_widgets/utils/bec_widget.py,sha256=Y-t90XMe2PASvY96Xve5a_jevXqnxk1SJ-mfy6ULC9Y,59
45
43
  bec_widgets/utils/colors.py,sha256=CP_lwj757CpwdVhWSfdNEXKFCEVVVF48DizD2WJKSwI,9759
46
44
  bec_widgets/utils/container_utils.py,sha256=m3VUyAYmSWkEwApP9tBvKxPYVtc2kHw4toxIpMryJy4,1495
47
45
  bec_widgets/utils/crosshair.py,sha256=SubY4FQCI6vUKsmMYGKHR7uYdGQJ6vhoYLuC1XlKS9I,9626
48
- bec_widgets/utils/entry_validator.py,sha256=IqmtResXQtnmMvWVSl8IrnggqSzXLp4cSggn6WdSTpE,1298
46
+ bec_widgets/utils/entry_validator.py,sha256=3skJIsUwTYicT76AMHm_M78RiWtUgyD2zb-Rxo2HdHQ,1313
49
47
  bec_widgets/utils/generate_designer_plugin.py,sha256=T6DqL29sN4LcXLH8Hoa410UGnoRzjsZ-z0PRGTEzkRE,5809
50
48
  bec_widgets/utils/layout_manager.py,sha256=H0nKsIMaPxRkof1MEXlSmW6w1dFxA6astaGzf4stI84,4727
51
- bec_widgets/utils/plugin_utils.py,sha256=tmZkUNvVlldPjHDfL_TbaV2jjAECgPjGsvLMmmyZcfc,3342
49
+ bec_widgets/utils/plugin_utils.py,sha256=njvVdvF-AR47Yn80ntpvFldEvLuFx9GV-qEX4p_n4AI,5263
52
50
  bec_widgets/utils/rpc_decorator.py,sha256=pIvtqySQLnuS7l2Ti_UAe4WX7CRivZnsE5ZdKAihxh0,479
53
51
  bec_widgets/utils/thread_checker.py,sha256=rDNuA3X6KQyA7JPb67mccTg0z8YkInynLAENQDQpbuE,1607
54
- bec_widgets/utils/ui_loader.py,sha256=2N50GPH2nh7lT7NQVoHzcjgZzk2zFybFqrBmG91dq8M,2552
52
+ bec_widgets/utils/ui_loader.py,sha256=9C4DkMIM8PEGXs2LmbZMyLVt38EIO9-T9C2UnK2SAvE,4882
55
53
  bec_widgets/utils/validator_delegate.py,sha256=Emj1WF6W8Ke1ruBWUfmHdVJpmOSPezuOt4zvQTay_44,442
56
54
  bec_widgets/utils/widget_io.py,sha256=4wlmXwKs7ncpCEQYXBzLVo7Z0IjU-TaJ9RtuaM8-Q98,12038
57
55
  bec_widgets/utils/yaml_dialog.py,sha256=T6UyGNGdmpXW74fa_7Nk6b99T5pp2Wvyw3AOauRc8T8,2407
58
56
  bec_widgets/utils/plugin_templates/plugin.template,sha256=JHkUvYegesW-xEhZuY4FQVGqyEMBRLaPY4JNI8Ni_vE,1182
59
57
  bec_widgets/utils/plugin_templates/register.template,sha256=XyL3OZPT_FTArLAM8tHd5qMqv2ZuAbJAZLsNNnHcagU,417
60
58
  bec_widgets/widgets/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
59
+ bec_widgets/widgets/base_classes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
+ bec_widgets/widgets/base_classes/device_input_base.py,sha256=k7-hIJBvoh1xPCnMCdJ-hdVvtqG1QMtk4sF3EZwvdCU,3918
61
61
  bec_widgets/widgets/bec_queue/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
62
  bec_widgets/widgets/bec_queue/bec_queue.py,sha256=voIsj599a5t-u-H15tpSqjGBmy5ra6LsHpZnqEZFrI8,3551
63
63
  bec_widgets/widgets/bec_queue/bec_queue.pyproject,sha256=VhoNmAv1DQUl9dg7dELyf5i4pZ5k65N3GnqOYiSwbQo,27
@@ -69,30 +69,25 @@ bec_widgets/widgets/bec_status_box/bec_status_box.pyproject,sha256=JWtx3Csfn2h7O
69
69
  bec_widgets/widgets/bec_status_box/bec_status_box_plugin.py,sha256=CNFIETpkORLQ9J3l91jefiRLJs5Ru3nsWIPoUwaRbB0,1242
70
70
  bec_widgets/widgets/bec_status_box/register_bec_status_box.py,sha256=EiQITnkNw7IU7hE776wAeXro97eZd9XlsB9essgCebE,481
71
71
  bec_widgets/widgets/bec_status_box/status_item.py,sha256=2SoMmgHL_MFnr7XiStFjLolHh0Vs3P68ZvP8kMIGc8w,5046
72
- bec_widgets/widgets/buttons/__init__.py,sha256=74ucIRU6-anoqQ-zT7wbrysmxhg_3_04xGhN_kllNUI,48
73
- bec_widgets/widgets/buttons/color_button/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
- bec_widgets/widgets/buttons/color_button/color_button.py,sha256=AJUMOQVLd4H39wzW2MJLhGAww7a1NtjivTkfexVhHHo,512
75
- bec_widgets/widgets/buttons/color_button/color_button.pyproject,sha256=LUYF4VkDOB4ttVe7YfvLh64K-XZg0-xaVT06BqCT3UA,30
76
- bec_widgets/widgets/buttons/color_button/color_button_plugin.py,sha256=4phedgYl94PAn2VL-_IPIU3rKq6dwDGgHXyk5c2HcgU,1264
77
- bec_widgets/widgets/buttons/color_button/register_color_button.py,sha256=PqsqOMNcdBL956mRIRFau4emb0bExuEtI9_l1l6rf88,483
78
- bec_widgets/widgets/buttons/color_button/assets/color_button.png,sha256=dkjgGHSdxu98nM68O16fGpxBjxkkeLN8iu9M_8i5-NY,5618
79
- bec_widgets/widgets/buttons/stop_button/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
- bec_widgets/widgets/buttons/stop_button/stop_button.py,sha256=x4a7RvlMkHzOd05zKOGYkyTmBza7Me7jgOL9WIgA_c4,906
72
+ bec_widgets/widgets/color_button/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
+ bec_widgets/widgets/color_button/color_button.py,sha256=Faszdcu6iJo2n0fdAORvKMf926Le9f454t6JIIZRc-0,1049
74
+ bec_widgets/widgets/color_button/color_button.pyproject,sha256=LUYF4VkDOB4ttVe7YfvLh64K-XZg0-xaVT06BqCT3UA,30
75
+ bec_widgets/widgets/color_button/color_button_plugin.py,sha256=CvO3L6r8pBd-0DNuqjQ7uKF9u1mU6xFs23sS_dsj4tw,1256
76
+ bec_widgets/widgets/color_button/register_color_button.py,sha256=ZAx3t7G2VI2S-1qcEof31Xi9O0X8deLeZNgS651L1JI,475
77
+ bec_widgets/widgets/color_button/assets/color_button.png,sha256=dkjgGHSdxu98nM68O16fGpxBjxkkeLN8iu9M_8i5-NY,5618
81
78
  bec_widgets/widgets/console/console.py,sha256=EgKYlbW3NrRPoQwIr8x739sLd1IRBWkEy286VDQw0gA,17838
82
- bec_widgets/widgets/device_inputs/__init__.py,sha256=BcWvcSASPh6YdDu5jfC48xqI2_iBj1epUt4doYJQHEs,122
83
- bec_widgets/widgets/device_inputs/device_input_base.py,sha256=AP0Pgto87CKqgTuzrmFL3a7MOW9_qm1rmyiI2ZrvCOM,3839
84
- bec_widgets/widgets/device_inputs/device_combobox/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
- bec_widgets/widgets/device_inputs/device_combobox/device_combobox.py,sha256=0IMwb7A2A9HosgYQXpzYbOj6iQAhoMSrOTTGYbhJyDc,2826
86
- bec_widgets/widgets/device_inputs/device_combobox/device_combobox.pyproject,sha256=AH6Oz_4aDCzsBbHWnCNK_ALvQ0Qwj-z24sUG1oNSK3I,75
87
- bec_widgets/widgets/device_inputs/device_combobox/device_combobox_plugin.py,sha256=VfbP0PrLwME8OB1bz1kVmy8vJCZDRONvas5j5cPyd08,1218
88
- bec_widgets/widgets/device_inputs/device_combobox/launch_device_combobox.py,sha256=jr9JJHtIPmbUNLpGLUESS_bYcITnbv-W3EdrZCHq2Rg,267
89
- bec_widgets/widgets/device_inputs/device_combobox/register_device_combobox.py,sha256=V6QcxBU9Lli4qy2Vhf9bFfpTsofsc-bT-_vEp0heBsM,518
90
- bec_widgets/widgets/device_inputs/device_line_edit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
- bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit.py,sha256=DJbUvO5ewg-IG4-CgW69OSH3qvxd3bWuCGdy8q5NTrY,3379
92
- bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit.pyproject,sha256=0GTk3WfNUHl-6tFEAY0pel5XBpVR0oyRX2BU-LNzVps,77
93
- bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit_plugin.py,sha256=J1MNrtXkgBrwEsUXnf0pGRoNJ1g_OWqk-xafSpV4ot8,1239
94
- bec_widgets/widgets/device_inputs/device_line_edit/launch_device_line_edit.py,sha256=3sVZ-5Hoy1smhgBcnzO9SXHk5_oUEaWFnRfslXAW3_4,267
95
- bec_widgets/widgets/device_inputs/device_line_edit/register_device_line_edit.py,sha256=GXHPRe1kSkJ2NKDWQJWabI4a6Maw__niA2g5wLiheX8,520
79
+ bec_widgets/widgets/device_combobox/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
+ bec_widgets/widgets/device_combobox/device_combobox.py,sha256=L6hPOk3LkTy9U_HRdU7bvqCH1L1Y_BuPYTTfl1eqShg,2824
81
+ bec_widgets/widgets/device_combobox/device_combobox.pyproject,sha256=wI2eXR5ky_IM9-BCHJnH_9CEqYcZwIuLcgitSEr8OJU,40
82
+ bec_widgets/widgets/device_combobox/device_combobox_plugin.py,sha256=CQszPKVXoa4wRxucQjVIqblP5rtGvwWn8FZOR_OE_-o,1406
83
+ bec_widgets/widgets/device_combobox/register_device_combobox.py,sha256=xzz2qM82cgFIrj77c9zyUpJ-1QHZRMrLkyeq8uGNsmE,487
84
+ bec_widgets/widgets/device_combobox/assets/device_combobox_icon.png,sha256=ydC7WZmoU-UjjIOGFuUIDjQ30p4L66si2emHawc_inU,2592
85
+ bec_widgets/widgets/device_line_edit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
86
+ bec_widgets/widgets/device_line_edit/device_line_edit.py,sha256=SnNWR_DrXwe3-FvaDosfIaSOqXiDy8_UcfRrPGwdKm0,3377
87
+ bec_widgets/widgets/device_line_edit/device_line_edit.pyproject,sha256=tqAYXRbxsHR41MwqmAxvfq1CFeZ1IRv84whUG67HjjE,41
88
+ bec_widgets/widgets/device_line_edit/device_line_edit_plugin.py,sha256=7aJR2jsEdbq2UuH9p-7lqKzndkrtY4ZcqnNLIVc7rzk,1423
89
+ bec_widgets/widgets/device_line_edit/register_device_line_edit.py,sha256=8gEPnC8djYCw-idoZAENNB3bPOxM6pbzEp9A366EAGg,489
90
+ bec_widgets/widgets/device_line_edit/assets/line_edit_icon.png,sha256=nxVykqQY4kgMJP7GELzv6N_dghqIzBJb2MWqxs4B-Ug,3391
96
91
  bec_widgets/widgets/dock/__init__.py,sha256=B7foHt02gnhM7mFksa7GJVwT7n0j_JvYDCt6wc6XR5g,61
97
92
  bec_widgets/widgets/dock/dock.py,sha256=joymi8NRoIuzuugUj9ccF9e1m57HwLQhhMmjaWiwTnM,7597
98
93
  bec_widgets/widgets/dock/dock_area.py,sha256=WKIt61v7w2YXahfIL4nddWHPfpTpw52uphX4QCbS3q0,7913
@@ -109,45 +104,42 @@ bec_widgets/widgets/figure/plots/image/image_processor.py,sha256=GeTtWjbldy6VejM
109
104
  bec_widgets/widgets/figure/plots/motor_map/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
105
  bec_widgets/widgets/figure/plots/motor_map/motor_map.py,sha256=QYeXKcb87DPti19MaAFFr6LGma4F7GijaxnC1vx8Kng,18013
111
106
  bec_widgets/widgets/figure/plots/waveform/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
- bec_widgets/widgets/figure/plots/waveform/waveform.py,sha256=GW8dInC7Wd4sNp6vCGYOHdhvqFrLrKJr3GmtLc-yW8c,29033
107
+ bec_widgets/widgets/figure/plots/waveform/waveform.py,sha256=e401GGvUF11rZKf4onB4zYlcUWIv8Zsnm4GcysaXi6U,29226
113
108
  bec_widgets/widgets/figure/plots/waveform/waveform_curve.py,sha256=yQZGPKs--3X_9Qg2pv0GUiL5WLBQVC3z_PJKRnsHqPU,8293
114
109
  bec_widgets/widgets/jupyter_console/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
110
  bec_widgets/widgets/jupyter_console/jupyter_console.py,sha256=ioLYJL31RdBoAOGFSS8PVSnUhkWPWmLC3tiKp7CouO8,2251
116
- bec_widgets/widgets/motor_control/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
117
- bec_widgets/widgets/motor_control/motor_control.py,sha256=UrLCvp3J6uiVxWV2jqQbsA2nsMf9s_rrDH2KjnUm-bk,7890
118
- bec_widgets/widgets/motor_control/motor_table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
- bec_widgets/widgets/motor_control/motor_table/motor_table.py,sha256=xOTCz4eBKzEUyeOJhnAK--sbf-68H0yg7LM3KH3A9Hc,17570
120
- bec_widgets/widgets/motor_control/motor_table/motor_table.ui,sha256=t6aRKiSmutMfp0AyupavbCs0cal-FANEnlKQiPzC9PQ,2792
121
- bec_widgets/widgets/motor_control/movement_absolute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
- bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.py,sha256=TQXZ1o4a4ukRAvhbebXC0v2-VGLqHVM2VzSAv5PajDI,5694
123
- bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.ui,sha256=nR3p6oevAkIBTLW5wM_zYOVWsCAUgeMZdRm10Q77COE,4126
124
- bec_widgets/widgets/motor_control/movement_relative/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
- bec_widgets/widgets/motor_control/movement_relative/movement_relative.py,sha256=DXFHAxSGskpapRTyDNbG_oqLwFkVOXITYkEXbfQGWWQ,8926
126
- bec_widgets/widgets/motor_control/movement_relative/movement_relative.ui,sha256=PulNJNiws7TRAxHM2snNyvlmQ0tRShdArHmtaC85h4U,8684
127
- bec_widgets/widgets/motor_control/selection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
128
- bec_widgets/widgets/motor_control/selection/selection.py,sha256=WNHndvv4JvxeAMnDFBMTvUILcn9u_0mWGRsgNiBZEsM,3988
129
- bec_widgets/widgets/motor_control/selection/selection.ui,sha256=vXXpvNWuL6xyHhW7Lx1zmVFX-95Z5AXGlhKQD2HmM1A,1779
130
111
  bec_widgets/widgets/motor_map/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
112
  bec_widgets/widgets/motor_map/bec_motor_map_widget.pyproject,sha256=NAI8s5gRKz80ED4KY7OgD2OgSH5HEsjt2ux2BYp66yg,63
132
113
  bec_widgets/widgets/motor_map/bec_motor_map_widget_plugin.py,sha256=PIfDE78Zqvsu7-xwoh9DdYkH8a7eOUFSaEl0bNrHYHc,1292
133
- bec_widgets/widgets/motor_map/motor_map_widget.py,sha256=16gcr_soWytWyUC8yl077KeKC691pLt3a-ZJSdj7dRM,7492
114
+ bec_widgets/widgets/motor_map/motor_map_widget.py,sha256=bmXNRlEZfDC-YMxeC2QwmWX3ftESg4KQpOSxVnOYy1Q,7103
134
115
  bec_widgets/widgets/motor_map/register_bec_motor_map_widget.py,sha256=qRG8PtWGjso0pWbvj_DXKnbUfmQzfGqPSrnAozXfM7o,492
135
116
  bec_widgets/widgets/motor_map/assets/connection.svg,sha256=czIb1BnshmxJnER8ssU3WcLENrFSIUfMwberajWOGAk,341
136
117
  bec_widgets/widgets/motor_map/assets/history.svg,sha256=bd6p5saxRiNRpd5OsSwIOvRWvel0WFEHul9zw4y9vH0,392
137
118
  bec_widgets/widgets/motor_map/assets/motor_map.png,sha256=xd6GFBM8gAb5c-xRgswxTZFtvo449yK57-EbkFvidOI,9746
138
119
  bec_widgets/widgets/motor_map/assets/settings.svg,sha256=ro30oa9CF1YijOXoUl-hz2DilJcqTy4rlTrMYhggumQ,1473
139
120
  bec_widgets/widgets/motor_map/motor_map_dialog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
140
- bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.py,sha256=ADXqL535WK9gz8Cfgnru6mHU_22pma5XKjMVh8U22L4,2931
121
+ bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.py,sha256=Y6ZkBGxsBy_cQ24K9YO8NbOZWpbJqAGC1H2-kDPdMfM,2931
141
122
  bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.ui,sha256=nv5vPftt6vcIl60OOZLRvwD29rdHVWOoGmz168BnwKw,2685
142
- bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_toolbar.py,sha256=SKS45caPdLSwiikk9karcPzkMcC33ToQ0MZAVLRiSzw,2183
123
+ bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_toolbar.py,sha256=qVvNgGVPTbJ4j6GDWsdV61I__t5rcuiv-818I0Yc9XU,2201
143
124
  bec_widgets/widgets/ring_progress_bar/__init__.py,sha256=_uoJKnDM2YAeUBfwc5WLbIHSJj7zm_FAurSKP3WRaCw,47
144
125
  bec_widgets/widgets/ring_progress_bar/ring.py,sha256=19zFj-6ZrIPLXYqvs5EPcrmDWnfnSLlEOmzJffL4d3A,11241
145
126
  bec_widgets/widgets/ring_progress_bar/ring_progress_bar.py,sha256=sU4Dur2XzBVfDYAYazI6pjOZOhzggoQIuc9VD3PWgac,24073
146
127
  bec_widgets/widgets/scan_control/__init__.py,sha256=IOfHl15vxb_uC6KN62-PeUzbBha_vQyqkkXbJ2HU674,38
147
- bec_widgets/widgets/scan_control/scan_control.py,sha256=lrnT3Oz7XH-zy65qSgVPoCRTAyJmryMZoBhvcY-ZP2M,7697
148
- bec_widgets/widgets/scan_control/scan_group_box.py,sha256=8XGpYcdKTEtiqOFbBxZ6xV07ZJ_tg9R-JDfsdTdqXSI,7400
128
+ bec_widgets/widgets/scan_control/scan_control.py,sha256=EHibpeK8vpG6rlg8zhvDDz8GDUzDmvhYH0aX7-Xo4m8,7689
129
+ bec_widgets/widgets/scan_control/scan_group_box.py,sha256=wrrJLfI0apfll0NKpqM8ymlbl5NaqA9cKNgyfVdYR00,7420
130
+ bec_widgets/widgets/stop_button/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
+ bec_widgets/widgets/stop_button/register_stop_button.py,sha256=U7r3fEOH-uPhAQI-nTituHXDDXDWR4JQZ7_vD6b_dfM,471
132
+ bec_widgets/widgets/stop_button/stop_button.py,sha256=icJQT1k5G_nvdHWZZkGEZVQupt-mWd2viK8zYg5B5dI,793
133
+ bec_widgets/widgets/stop_button/stop_button.pyproject,sha256=Cc_xbv-zfzNVpsdg_1QyzuTlrJaM9_BkIjes70umrx0,29
134
+ bec_widgets/widgets/stop_button/stop_button_plugin.py,sha256=-90MqPp1cFumsrHGaFgc_nahdCoew98M5bS1oqSRhDk,1346
135
+ bec_widgets/widgets/stop_button/assets/stop.png,sha256=9nGdvR-qwOz1YP4xYoBjmDnnj9ns2cLLhfvTz9amyKc,8424
149
136
  bec_widgets/widgets/text_box/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
137
  bec_widgets/widgets/text_box/text_box.py,sha256=dg2gpOqdBZNKD08mygb40twweFBiG-xsXz0GlIhfXV0,4240
138
+ bec_widgets/widgets/toggle/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
139
+ bec_widgets/widgets/toggle/register_toggle_switch.py,sha256=8pVtkeEeiDOjV4OPoZq1I30F9JDzl4nQE7e7xoWyWBs,472
140
+ bec_widgets/widgets/toggle/toggle.py,sha256=JzCGYoyHBrlBWCoyL94QX4zSLyEwWbCNHMegjlnSy2E,4442
141
+ bec_widgets/widgets/toggle/toggle_switch.pyproject,sha256=Msa-AS5H5XlqW65r8GlX2AxD8FnFnDyDgGnbKcXqKOw,24
142
+ bec_widgets/widgets/toggle/toggle_switch_plugin.py,sha256=8e8JjUx6T5CIx7ixWLwVdT9JOJTbQ8aWwd3_9VAc_Mw,1177
151
143
  bec_widgets/widgets/toolbar/__init__.py,sha256=d-TP4_cr_VbpwreMM4ePnfZ5YXsEPQ45ibEf75nuGoE,36
152
144
  bec_widgets/widgets/toolbar/toolbar.py,sha256=rloOsr3TVGHLI4OJNKYWEBb1Z9_yJ0ZYIyf9RlPlxwY,3194
153
145
  bec_widgets/widgets/vscode/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -174,7 +166,7 @@ docs/developer/developer.md,sha256=VUdMnQBsSRCawYMFCe0vya5oj1MimLML7Pd58kY6fYY,7
174
166
  docs/developer/getting_started/development.md,sha256=aYLmuLMYpp5FcIXeDUqCfcStIV8veuiMBjOt5bTW_30,1406
175
167
  docs/developer/getting_started/getting_started.md,sha256=My_K_6O7LLaXVB_eINrRku5o-jVx95lsmGgHxgZhT7A,378
176
168
  docs/developer/widgets/widgets.md,sha256=aNsJgG7R-3EerumNB6GH84JLIXfZqGN5GjvpKWDi0Hk,504
177
- docs/introduction/introduction.md,sha256=wp7jmhkUtJnSnEnmIAZGUcau_3-5e5-FohvZb63khw4,1432
169
+ docs/introduction/introduction.md,sha256=YBEFDhxqHTcbfbNTo76xDflaFUHIqDs-sToA1HRmCnI,1436
178
170
  docs/user/customisation.md,sha256=wCW8fAbqtlgGE3mURvXOrK67Xo0_B-lxfg0sYuQWB40,3186
179
171
  docs/user/user.md,sha256=uCTcjclIi6rdjYRQebko6bWFEVsjyfshsVU3BDYrC-Y,1403
180
172
  docs/user/api_reference/api_reference.md,sha256=q2Imc48Rq6GcAP0R4bS3KuW5ptZZdsV4wxGJb3JJQHg,174
@@ -183,7 +175,7 @@ docs/user/getting_started/BECDockArea.png,sha256=t3vSm_rVRk371J5LOutbolETuEjStNc
183
175
  docs/user/getting_started/auto_updates.md,sha256=Gicx3lplI6JRBlnPj_VL6IhqOIcsWjYF4_EdZSCje2A,3754
184
176
  docs/user/getting_started/getting_started.md,sha256=lxZXCr6HAkM61oo5Bu-YjINSKo4wihWhAPJdotEAAVQ,358
185
177
  docs/user/getting_started/gui_complex_gui.gif,sha256=ovv9u371BGG5GqhzyBMl4mvqMHLfJS0ylr-dR0Ydwtw,6550393
186
- docs/user/getting_started/installation.md,sha256=5_fPbmUqLGtwOskFHTlytd4PJKrMcHqHShzM9ymM0oI,1149
178
+ docs/user/getting_started/installation.md,sha256=VqtHasD0BAPt-K6YJQicWpyqb91RJYkZ8qpvwSLsgaY,1153
187
179
  docs/user/getting_started/quick_start.md,sha256=ABDRRB8DM8dFYdsWUfzQV0eaffRFAlcn2HIfw7yiUGs,9401
188
180
  docs/user/widgets/BECFigure.png,sha256=8dQr4u0uk_y0VV-R1Jh9yTR3Vidd9HDEno_07R0swaE,1605920
189
181
  docs/user/widgets/bec_figure.md,sha256=tNT-5QP3DekY_iC9jOMULzdxmUU8wMkkX5Ru9yq0Txo,6671
@@ -223,20 +215,20 @@ tests/unit_tests/test_bec_status_box.py,sha256=gZdjyy9DNuUP9UwleTLj2Dp5HUImiqnkH
223
215
  tests/unit_tests/test_client_utils.py,sha256=eViJ1Tz-HX9TkMvQH6W8cO-c3_1I8bUc4_Yen6LOc0E,830
224
216
  tests/unit_tests/test_color_validation.py,sha256=xbFbtFDia36XLgaNrX2IwvAX3IDC_Odpj5BGoJSgiIE,2389
225
217
  tests/unit_tests/test_crosshair.py,sha256=3OMAJ2ZaISYXMOtkXf1rPdy94vCr8njeLi6uHblBL9Q,5045
226
- tests/unit_tests/test_device_input_base.py,sha256=Bf2lk_utvLsDqDX5NWgyArSAo-dWMQ72yiCPGoWVwxM,2431
227
- tests/unit_tests/test_device_input_widgets.py,sha256=PmUL8aJXg_BYwWDE3Gh1kGm8q6fQZD5sWlVXz3KLwI0,5837
228
- tests/unit_tests/test_generate_cli_client.py,sha256=adcMoXjWpFLVjpauCu0r31CMMibUY1LF1MMf8rO-6rw,2815
218
+ tests/unit_tests/test_device_input_base.py,sha256=ooA7lL-tqW-Cvd6mMx_xlupunsGw93PYFDc6CgiQPgg,2430
219
+ tests/unit_tests/test_device_input_widgets.py,sha256=4zbN64p4BZcAGGc1gTB3QhFGYeBU7lQ6MtTblu1ZXrQ,5809
220
+ tests/unit_tests/test_generate_cli_client.py,sha256=ng-eV5iF7Dhm-6YpxYo99CMY0KgqoaZBQNkMeKULDBU,3355
229
221
  tests/unit_tests/test_generate_plugin.py,sha256=9603ucZChM-pYpHadzsR94U1Zec1KZT34WedX9qzgMo,4464
230
- tests/unit_tests/test_motor_control.py,sha256=bdCjhthWEy9iNyNZiD1JAeN_PSMaOblS780XGDjVwsw,20851
231
222
  tests/unit_tests/test_plot_base.py,sha256=vWbt-QO5blSoE5C1392MIFha9A9JnUsx_D_9yTqhcRo,3845
232
- tests/unit_tests/test_plugin_utils.py,sha256=PonKNpu4fZaFmKbI2v0tZJjZrsTvBGSF96bPHvKJvrE,608
223
+ tests/unit_tests/test_plugin_utils.py,sha256=ayksWdrFY7kOiA0wVEjKFmFCF3UhH3lG8tzPVOpwysk,528
233
224
  tests/unit_tests/test_ring_progress_bar.py,sha256=hDlqkQho7FR7HAfM4Zrr4q1m773a3_rQ8CbM1GqDDSE,12252
234
225
  tests/unit_tests/test_rpc_register.py,sha256=hECjZEimd440mwRrO0rg7L3PKN7__3DgjmESN6wx3bo,1179
235
226
  tests/unit_tests/test_rpc_widget_handler.py,sha256=ceQ3BPnBIFY2Hy-sDPw0wxxREVTTphILts0gvX9qoUw,234
236
227
  tests/unit_tests/test_scan_control.py,sha256=Wr6KcE8av4sEIOx5VgYbzVCem3Jgb4Kzx_oOuvwlmkE,13459
237
228
  tests/unit_tests/test_scan_control_group_box.py,sha256=HNqjP10B_NonikspNwKz9upJU-t7xf6hwBerNhbC-uo,5563
238
- tests/unit_tests/test_stop_button.py,sha256=2OH9dhs_-S5QovPPgU-5hJoViE1YKZa0gxisb4vOY28,712
229
+ tests/unit_tests/test_stop_button.py,sha256=tpQanzBUyl7qLXjbMUQqm3U3vShbKKARcnLpgsu3P0E,789
239
230
  tests/unit_tests/test_text_box_widget.py,sha256=cT0uEHt_6d-FwST0A_wE9sFW9E3F_nJbKhuBAeU4yHg,1862
231
+ tests/unit_tests/test_toggle.py,sha256=Amzgres7te0tTQIDR2WMKSx9Kce44TxMpIPR6HZygXQ,832
240
232
  tests/unit_tests/test_vscode_widget.py,sha256=NVB23ppLqIj-Opd8QnapqUJzDMz6mIZfm3wGPnFXyUE,2788
241
233
  tests/unit_tests/test_waveform1d.py,sha256=inc-CyRA_3-PE99WnR6vDdfRE1vgp-ZoLVJ-Qbq0qFY,15967
242
234
  tests/unit_tests/test_website_widget.py,sha256=fBADIJJBAHU4Ro7u95kdemFVNv196UOcuO9oLHuHt8A,761
@@ -247,8 +239,8 @@ tests/unit_tests/test_configs/config_device_no_entry.yaml,sha256=hdvue9KLc_kfNzG
247
239
  tests/unit_tests/test_configs/config_scan.yaml,sha256=vo484BbWOjA_e-h6bTjSV9k7QaQHrlAvx-z8wtY-P4E,1915
248
240
  tests/unit_tests/test_msgs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
249
241
  tests/unit_tests/test_msgs/available_scans_message.py,sha256=m_z97hIrjHXXMa2Ex-UvsPmTxOYXfjxyJaGkIY6StTY,46532
250
- bec_widgets-0.79.3.dist-info/METADATA,sha256=KNOSryTtLS3GCT2Zw_6V5l9g4xxCSX_MAvinpePvrBU,1427
251
- bec_widgets-0.79.3.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
252
- bec_widgets-0.79.3.dist-info/entry_points.txt,sha256=3otEkCdDB9LZJuBLzG4pFLK5Di0CVybN_12IsZrQ-58,166
253
- bec_widgets-0.79.3.dist-info/licenses/LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
254
- bec_widgets-0.79.3.dist-info/RECORD,,
242
+ bec_widgets-0.82.0.dist-info/METADATA,sha256=LT1qiOoINPiD0fx8bR3xpuvsb8e3_dscPXfGK1NVQNs,1309
243
+ bec_widgets-0.82.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
244
+ bec_widgets-0.82.0.dist-info/entry_points.txt,sha256=3otEkCdDB9LZJuBLzG4pFLK5Di0CVybN_12IsZrQ-58,166
245
+ bec_widgets-0.82.0.dist-info/licenses/LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
246
+ bec_widgets-0.82.0.dist-info/RECORD,,
@@ -10,7 +10,7 @@ Targeting the unique needs of beamline scientists, BEC Widgets stands out with i
10
10
  **Key Features**:
11
11
 
12
12
  - **Integration:** Seamlessly integrates with [BEC (Beamline Experiment Control)](https://gitlab.psi.ch/bec/bec), ensuring a cohesive and efficient experiment control experience.
13
- - **Support for PyQt5 and PyQt6:** Provides compatibility with both PyQt5 and PyQt6, offering versatility in your development environment.
13
+ - **Support for Pyside6 and PyQt6:** Provides compatibility with both Pyside6 and PyQt6, offering versatility in your development environment.
14
14
  - **Widget Modularity:** Features modular widgets that can be easily combined to create customized applications, perfectly aligning with the diverse needs of beamline experiments.
15
15
 
16
16
  ## Getting Started
@@ -16,10 +16,10 @@ To install BEC Widgets using the pip package manager, execute the following comm
16
16
  pip install 'bec_widgets[pyqt6]'
17
17
  ```
18
18
 
19
- In case you want to use PyQt5, you can install it by using the following command:
19
+ In case you want to use Pyside6, you can install it by using the following command:
20
20
 
21
21
  ```bash
22
- pip install 'bec_widgets[pyqt5]'
22
+ pip install 'bec_widgets[pyside6]'
23
23
  ```
24
24
 
25
25
  **Troubleshooting**
pyproject.toml CHANGED
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "bec_widgets"
7
- version = "0.79.3"
7
+ version = "0.82.0"
8
8
  description = "BEC Widgets"
9
9
  requires-python = ">=3.10"
10
10
  classifiers = [
@@ -37,7 +37,6 @@ dev = [
37
37
  "pytest-xvfb~=3.0",
38
38
  "pytest~=8.0",
39
39
  ]
40
- pyqt5 = ["PyQt5>=5.9", "PyQtWebEngine>=5.9"]
41
40
  pyqt6 = ["PyQt6>=6.7", "PyQt6-WebEngine>=6.7"]
42
41
  pyside6 = ["PySide6>=6.7"]
43
42
 
@@ -1,6 +1,6 @@
1
1
  import pytest
2
2
 
3
- from bec_widgets.widgets.device_inputs.device_input_base import DeviceInputBase
3
+ from bec_widgets.widgets.base_classes.device_input_base import DeviceInputBase
4
4
 
5
5
  from .client_mocks import mocked_client
6
6
 
@@ -1,7 +1,7 @@
1
1
  import pytest
2
2
 
3
- from bec_widgets.widgets.device_inputs.device_combobox.device_combobox import DeviceComboBox
4
- from bec_widgets.widgets.device_inputs.device_line_edit.device_line_edit import DeviceLineEdit
3
+ from bec_widgets.widgets.device_combobox.device_combobox import DeviceComboBox
4
+ from bec_widgets.widgets.device_line_edit.device_line_edit import DeviceLineEdit
5
5
 
6
6
  from .client_mocks import mocked_client
7
7
 
@@ -4,6 +4,7 @@ import black
4
4
  import isort
5
5
 
6
6
  from bec_widgets.cli.generate_cli import ClientGenerator
7
+ from bec_widgets.utils.plugin_utils import BECClassContainer, BECClassInfo
7
8
 
8
9
  # pylint: disable=missing-function-docstring
9
10
 
@@ -33,11 +34,31 @@ class MockBECFigure:
33
34
 
34
35
  def test_client_generator_with_black_formatting():
35
36
  generator = ClientGenerator()
36
- rpc_classes = {
37
- "connector_classes": [MockBECWaveform1D, MockBECFigure],
38
- "top_level_classes": [MockBECFigure],
39
- }
40
- generator.generate_client(rpc_classes)
37
+ container = BECClassContainer()
38
+ container.add_class(
39
+ BECClassInfo(
40
+ name="MockBECWaveform1D",
41
+ module="test_module",
42
+ file="test_file",
43
+ obj=MockBECWaveform1D,
44
+ is_connector=True,
45
+ is_widget=True,
46
+ is_top_level=False,
47
+ )
48
+ )
49
+ container.add_class(
50
+ BECClassInfo(
51
+ name="MockBECFigure",
52
+ module="test_module",
53
+ file="test_file",
54
+ obj=MockBECFigure,
55
+ is_connector=True,
56
+ is_widget=True,
57
+ is_top_level=True,
58
+ )
59
+ )
60
+
61
+ generator.generate_client(container)
41
62
 
42
63
  # Format the expected output with black to ensure it matches the generator output
43
64
  expected_output = dedent(
@@ -51,6 +72,7 @@ def test_client_generator_with_black_formatting():
51
72
 
52
73
  # pylint: skip-file
53
74
 
75
+
54
76
  class Widgets(str, enum.Enum):
55
77
  """
56
78
  Enum for the available widgets.
@@ -59,18 +81,6 @@ def test_client_generator_with_black_formatting():
59
81
  MockBECFigure = "MockBECFigure"
60
82
 
61
83
 
62
- class MockBECWaveform1D(RPCBase):
63
- @rpc_call
64
- def set_frequency(self, frequency: float) -> list:
65
- """
66
- Set the frequency of the waveform.
67
- """
68
- @rpc_call
69
- def set_amplitude(self, amplitude: float) -> tuple[float, float]:
70
- """
71
- Set the amplitude of the waveform.
72
- """
73
-
74
84
  class MockBECFigure(RPCBase):
75
85
  @rpc_call
76
86
  def add_plot(self, plot_id: str):
@@ -83,6 +93,20 @@ def test_client_generator_with_black_formatting():
83
93
  """
84
94
  Remove a plot from the figure.
85
95
  """
96
+
97
+
98
+ class MockBECWaveform1D(RPCBase):
99
+ @rpc_call
100
+ def set_frequency(self, frequency: float) -> list:
101
+ """
102
+ Set the frequency of the waveform.
103
+ """
104
+
105
+ @rpc_call
106
+ def set_amplitude(self, amplitude: float) -> tuple[float, float]:
107
+ """
108
+ Set the amplitude of the waveform.
109
+ """
86
110
  '''
87
111
  )
88
112
 
@@ -3,9 +3,8 @@ from bec_widgets.utils.plugin_utils import get_rpc_classes
3
3
 
4
4
  def test_client_generator_classes():
5
5
  out = get_rpc_classes("bec_widgets")
6
- assert list(out.keys()) == ["connector_classes", "top_level_classes"]
7
- connector_cls_names = [cls.__name__ for cls in out["connector_classes"]]
8
- top_level_cls_names = [cls.__name__ for cls in out["top_level_classes"]]
6
+ connector_cls_names = [cls.__name__ for cls in out.connector_classes]
7
+ top_level_cls_names = [cls.__name__ for cls in out.top_level_classes]
9
8
 
10
9
  assert "BECFigure" in connector_cls_names
11
10
  assert "BECWaveform" in connector_cls_names
@@ -2,7 +2,7 @@
2
2
 
3
3
  import pytest
4
4
 
5
- from bec_widgets.widgets.buttons import StopButton
5
+ from bec_widgets.widgets.stop_button.stop_button import StopButton
6
6
 
7
7
  from .client_mocks import mocked_client
8
8
 
@@ -18,7 +18,10 @@ def stop_button(qtbot, mocked_client):
18
18
 
19
19
  def test_stop_button(stop_button):
20
20
  assert stop_button.text() == "Stop"
21
- assert stop_button.styleSheet() == "background-color: #cc181e; color: white"
21
+ assert (
22
+ stop_button.styleSheet()
23
+ == "background-color: #cc181e; color: white; font-weight: bold; font-size: 12px;"
24
+ )
22
25
  stop_button.click()
23
26
  assert stop_button.queue.request_scan_abortion.called
24
27
  assert stop_button.queue.request_queue_reset.called
@@ -0,0 +1,38 @@
1
+ import pytest
2
+ from qtpy.QtCore import QPointF, Qt
3
+
4
+ from bec_widgets.widgets.toggle.toggle import ToggleSwitch
5
+
6
+
7
+ @pytest.fixture
8
+ def toggle(qtbot):
9
+ widget = ToggleSwitch()
10
+ qtbot.addWidget(widget)
11
+ qtbot.waitExposed(widget)
12
+ yield widget
13
+
14
+
15
+ def test_toggle(toggle):
16
+ toggle.checked = False
17
+ assert toggle.checked is False
18
+
19
+ assert toggle.thumb_pos == QPointF(3, 2)
20
+
21
+ toggle.checked = True
22
+ assert toggle.checked is True
23
+
24
+ assert toggle.thumb_pos == QPointF(22, 2)
25
+
26
+
27
+ def test_toggle_click(qtbot, toggle):
28
+ init_state = toggle.checked
29
+
30
+ qtbot.mouseClick(toggle, Qt.LeftButton)
31
+ toggle.paintEvent(None)
32
+ assert toggle.checked is not init_state
33
+
34
+ init_state = toggle.checked
35
+
36
+ qtbot.mouseClick(toggle, Qt.LeftButton)
37
+ toggle.paintEvent(None)
38
+ assert toggle.checked is not init_state
@@ -1,9 +0,0 @@
1
- from .motor_control_compilations import (
2
- MotorControlApp,
3
- MotorControlMap,
4
- MotorControlPanel,
5
- MotorControlPanelAbsolute,
6
- MotorControlPanelRelative,
7
- MotorCoordinateTable,
8
- MotorThread,
9
- )