bec-widgets 0.80.1__tar.gz → 0.81.1__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.
Files changed (251) hide show
  1. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/CHANGELOG.md +12 -12
  2. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/PKG-INFO +1 -1
  3. bec_widgets-0.81.1/bec_widgets/widgets/buttons/color_button/color_button.py +36 -0
  4. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/pyproject.toml +1 -1
  5. bec_widgets-0.80.1/bec_widgets/examples/__init__.py +0 -9
  6. bec_widgets-0.80.1/bec_widgets/examples/motor_movement/__init__.py +0 -9
  7. bec_widgets-0.80.1/bec_widgets/examples/motor_movement/motor_control_compilations.py +0 -250
  8. bec_widgets-0.80.1/bec_widgets/examples/motor_movement/motor_controller.ui +0 -926
  9. bec_widgets-0.80.1/bec_widgets/widgets/buttons/color_button/color_button.py +0 -17
  10. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/motor_control.py +0 -252
  11. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/motor_table/motor_table.py +0 -484
  12. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/motor_table/motor_table.ui +0 -113
  13. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.py +0 -159
  14. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_absolute/movement_absolute.ui +0 -149
  15. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_relative/movement_relative.py +0 -230
  16. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_relative/movement_relative.ui +0 -298
  17. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/selection/selection.py +0 -110
  18. bec_widgets-0.80.1/bec_widgets/widgets/motor_control/selection/selection.ui +0 -69
  19. bec_widgets-0.80.1/tests/__init__.py +0 -0
  20. bec_widgets-0.80.1/tests/end-2-end/__init__.py +0 -0
  21. bec_widgets-0.80.1/tests/unit_tests/__init__.py +0 -0
  22. bec_widgets-0.80.1/tests/unit_tests/test_motor_control.py +0 -588
  23. bec_widgets-0.80.1/tests/unit_tests/test_msgs/__init__.py +0 -0
  24. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.git_hooks/pre-commit +0 -0
  25. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitignore +0 -0
  26. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitlab/issue_templates/bug_report_template.md +0 -0
  27. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitlab/issue_templates/documentation_update_template.md +0 -0
  28. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitlab/issue_templates/feature_request_template.md +0 -0
  29. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitlab/merge_request_templates/default.md +0 -0
  30. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.gitlab-ci.yml +0 -0
  31. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.pylintrc +0 -0
  32. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/.readthedocs.yaml +0 -0
  33. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/LICENSE +0 -0
  34. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/README.md +0 -0
  35. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/__init__.py +0 -0
  36. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/assets/bec_widgets_icon.png +0 -0
  37. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/assets/terminal_icon.png +0 -0
  38. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/__init__.py +0 -0
  39. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/auto_updates.py +0 -0
  40. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/client.py +0 -0
  41. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/client_utils.py +0 -0
  42. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/generate_cli.py +0 -0
  43. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/rpc_register.py +0 -0
  44. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/rpc_wigdet_handler.py +0 -0
  45. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/cli/server.py +0 -0
  46. {bec_widgets-0.80.1/bec_widgets/examples/jupyter_console → bec_widgets-0.81.1/bec_widgets/examples}/__init__.py +0 -0
  47. {bec_widgets-0.80.1/bec_widgets/examples/plugin_example_pyside → bec_widgets-0.81.1/bec_widgets/examples/jupyter_console}/__init__.py +0 -0
  48. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/jupyter_console/jupyter_console_window.py +0 -0
  49. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/jupyter_console/jupyter_console_window.ui +0 -0
  50. {bec_widgets-0.80.1/bec_widgets/widgets/bec_queue → bec_widgets-0.81.1/bec_widgets/examples/plugin_example_pyside}/__init__.py +0 -0
  51. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/main.py +0 -0
  52. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/registertictactoe.py +0 -0
  53. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/taskmenuextension.pyproject +0 -0
  54. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/tictactoe.py +0 -0
  55. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/tictactoeplugin.py +0 -0
  56. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/examples/plugin_example_pyside/tictactoetaskmenu.py +0 -0
  57. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/__init__.py +0 -0
  58. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/bec_connector.py +0 -0
  59. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/bec_designer.py +0 -0
  60. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/bec_dispatcher.py +0 -0
  61. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/bec_table.py +0 -0
  62. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/bec_widget.py +0 -0
  63. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/colors.py +0 -0
  64. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/container_utils.py +0 -0
  65. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/crosshair.py +0 -0
  66. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/entry_validator.py +0 -0
  67. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/generate_designer_plugin.py +0 -0
  68. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/layout_manager.py +0 -0
  69. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/plugin_templates/plugin.template +0 -0
  70. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/plugin_templates/register.template +0 -0
  71. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/plugin_utils.py +0 -0
  72. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/rpc_decorator.py +0 -0
  73. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/thread_checker.py +0 -0
  74. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/ui_loader.py +0 -0
  75. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/validator_delegate.py +0 -0
  76. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/widget_io.py +0 -0
  77. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/utils/yaml_dialog.py +0 -0
  78. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/__init__.py +0 -0
  79. {bec_widgets-0.80.1/bec_widgets/widgets/bec_status_box → bec_widgets-0.81.1/bec_widgets/widgets/bec_queue}/__init__.py +0 -0
  80. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_queue/bec_queue.py +0 -0
  81. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_queue/bec_queue.pyproject +0 -0
  82. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_queue/bec_queue_plugin.py +0 -0
  83. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_queue/register_bec_queue.py +0 -0
  84. {bec_widgets-0.80.1/bec_widgets/widgets/buttons/color_button → bec_widgets-0.81.1/bec_widgets/widgets/bec_status_box}/__init__.py +0 -0
  85. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_status_box/bec_status_box.py +0 -0
  86. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_status_box/bec_status_box.pyproject +0 -0
  87. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_status_box/bec_status_box_plugin.py +0 -0
  88. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_status_box/register_bec_status_box.py +0 -0
  89. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/bec_status_box/status_item.py +0 -0
  90. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/__init__.py +0 -0
  91. {bec_widgets-0.80.1/bec_widgets/widgets/buttons/stop_button → bec_widgets-0.81.1/bec_widgets/widgets/buttons/color_button}/__init__.py +0 -0
  92. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/color_button/assets/color_button.png +0 -0
  93. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/color_button/color_button.pyproject +0 -0
  94. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/color_button/color_button_plugin.py +0 -0
  95. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/color_button/register_color_button.py +0 -0
  96. {bec_widgets-0.80.1/bec_widgets/widgets/device_inputs/device_combobox → bec_widgets-0.81.1/bec_widgets/widgets/buttons/stop_button}/__init__.py +0 -0
  97. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/buttons/stop_button/stop_button.py +0 -0
  98. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/console/console.py +0 -0
  99. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/__init__.py +0 -0
  100. {bec_widgets-0.80.1/bec_widgets/widgets/device_inputs/device_line_edit → bec_widgets-0.81.1/bec_widgets/widgets/device_inputs/device_combobox}/__init__.py +0 -0
  101. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_combobox/device_combobox.py +0 -0
  102. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_combobox/device_combobox.pyproject +0 -0
  103. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_combobox/device_combobox_plugin.py +0 -0
  104. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_combobox/launch_device_combobox.py +0 -0
  105. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_combobox/register_device_combobox.py +0 -0
  106. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_input_base.py +0 -0
  107. {bec_widgets-0.80.1/bec_widgets/widgets/figure/plots → bec_widgets-0.81.1/bec_widgets/widgets/device_inputs/device_line_edit}/__init__.py +0 -0
  108. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit.py +0 -0
  109. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit.pyproject +0 -0
  110. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_line_edit/device_line_edit_plugin.py +0 -0
  111. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_line_edit/launch_device_line_edit.py +0 -0
  112. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/device_inputs/device_line_edit/register_device_line_edit.py +0 -0
  113. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/dock/__init__.py +0 -0
  114. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/dock/dock.py +0 -0
  115. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/dock/dock_area.py +0 -0
  116. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/__init__.py +0 -0
  117. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/figure.py +0 -0
  118. {bec_widgets-0.80.1/bec_widgets/widgets/figure/plots/image → bec_widgets-0.81.1/bec_widgets/widgets/figure/plots}/__init__.py +0 -0
  119. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/axis_settings.py +0 -0
  120. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/axis_settings.ui +0 -0
  121. {bec_widgets-0.80.1/bec_widgets/widgets/figure/plots/motor_map → bec_widgets-0.81.1/bec_widgets/widgets/figure/plots/image}/__init__.py +0 -0
  122. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/image/image.py +0 -0
  123. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/image/image_item.py +0 -0
  124. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/image/image_processor.py +0 -0
  125. {bec_widgets-0.80.1/bec_widgets/widgets/figure/plots/waveform → bec_widgets-0.81.1/bec_widgets/widgets/figure/plots/motor_map}/__init__.py +0 -0
  126. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/motor_map/motor_map.py +0 -0
  127. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/plot_base.py +0 -0
  128. {bec_widgets-0.80.1/bec_widgets/widgets/jupyter_console → bec_widgets-0.81.1/bec_widgets/widgets/figure/plots/waveform}/__init__.py +0 -0
  129. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/waveform/waveform.py +0 -0
  130. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/figure/plots/waveform/waveform_curve.py +0 -0
  131. {bec_widgets-0.80.1/bec_widgets/widgets/motor_control → bec_widgets-0.81.1/bec_widgets/widgets/jupyter_console}/__init__.py +0 -0
  132. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/jupyter_console/jupyter_console.py +0 -0
  133. {bec_widgets-0.80.1/bec_widgets/widgets/motor_control/motor_table → bec_widgets-0.81.1/bec_widgets/widgets/motor_map}/__init__.py +0 -0
  134. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/assets/connection.svg +0 -0
  135. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/assets/history.svg +0 -0
  136. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/assets/motor_map.png +0 -0
  137. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/assets/settings.svg +0 -0
  138. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/bec_motor_map_widget.pyproject +0 -0
  139. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/bec_motor_map_widget_plugin.py +0 -0
  140. {bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_absolute → bec_widgets-0.81.1/bec_widgets/widgets/motor_map/motor_map_dialog}/__init__.py +0 -0
  141. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.py +0 -0
  142. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_settings.ui +0 -0
  143. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/motor_map_dialog/motor_map_toolbar.py +0 -0
  144. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/motor_map_widget.py +0 -0
  145. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/motor_map/register_bec_motor_map_widget.py +0 -0
  146. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/ring_progress_bar/__init__.py +0 -0
  147. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/ring_progress_bar/ring.py +0 -0
  148. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/ring_progress_bar/ring_progress_bar.py +0 -0
  149. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/scan_control/__init__.py +0 -0
  150. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/scan_control/scan_control.py +0 -0
  151. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/scan_control/scan_group_box.py +0 -0
  152. {bec_widgets-0.80.1/bec_widgets/widgets/motor_control/movement_relative → bec_widgets-0.81.1/bec_widgets/widgets/text_box}/__init__.py +0 -0
  153. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/text_box/text_box.py +0 -0
  154. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/toolbar/__init__.py +0 -0
  155. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/toolbar/toolbar.py +0 -0
  156. {bec_widgets-0.80.1/bec_widgets/widgets/motor_control/selection → bec_widgets-0.81.1/bec_widgets/widgets/vscode}/__init__.py +0 -0
  157. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/vscode/vscode.py +0 -0
  158. {bec_widgets-0.80.1/bec_widgets/widgets/motor_map → bec_widgets-0.81.1/bec_widgets/widgets/website}/__init__.py +0 -0
  159. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/bec_widgets/widgets/website/website.py +0 -0
  160. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/Makefile +0 -0
  161. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/_static/custom.css +0 -0
  162. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/_templates/custom-class-template.rst +0 -0
  163. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/_templates/custom-module-template.rst +0 -0
  164. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/api_reference/api_reference.md +0 -0
  165. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/apps_48dp.svg +0 -0
  166. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/display_settings_48dp.svg +0 -0
  167. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/index_api.svg +0 -0
  168. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/index_contribute.svg +0 -0
  169. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/index_getting_started.svg +0 -0
  170. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/index_user_guide.svg +0 -0
  171. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/assets/rocket_launch_48dp.svg +0 -0
  172. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/conf.py +0 -0
  173. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/developer/developer.md +0 -0
  174. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/developer/getting_started/development.md +0 -0
  175. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/developer/getting_started/getting_started.md +0 -0
  176. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/developer/widgets/widgets.md +0 -0
  177. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/index.md +0 -0
  178. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/introduction/introduction.md +0 -0
  179. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/make.bat +0 -0
  180. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/requirements.txt +0 -0
  181. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/api_reference/api_reference.md +0 -0
  182. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/applications/applications.md +0 -0
  183. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/customisation.md +0 -0
  184. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/BECDockArea.png +0 -0
  185. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/auto_updates.md +0 -0
  186. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/getting_started.md +0 -0
  187. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/gui_complex_gui.gif +0 -0
  188. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/installation.md +0 -0
  189. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/getting_started/quick_start.md +0 -0
  190. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/user.md +0 -0
  191. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/BECFigure.png +0 -0
  192. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/bec_figure.md +0 -0
  193. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/bec_figure_dap.gif +0 -0
  194. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/bec_status_box.gif +0 -0
  195. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/bec_status_box.md +0 -0
  196. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/buttons.md +0 -0
  197. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/image_plot.gif +0 -0
  198. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/motor.gif +0 -0
  199. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/progress_bar.gif +0 -0
  200. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/ring_progress_bar.md +0 -0
  201. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/scan_control.gif +0 -0
  202. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/scan_control.md +0 -0
  203. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/scatter_2D.gif +0 -0
  204. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/text_box.md +0 -0
  205. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/w1D.gif +0 -0
  206. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/website.md +0 -0
  207. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/docs/user/widgets/widgets.md +0 -0
  208. {bec_widgets-0.80.1/bec_widgets/widgets/motor_map/motor_map_dialog → bec_widgets-0.81.1/tests}/__init__.py +0 -0
  209. {bec_widgets-0.80.1/bec_widgets/widgets/text_box → bec_widgets-0.81.1/tests/end-2-end}/__init__.py +0 -0
  210. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/end-2-end/conftest.py +0 -0
  211. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/end-2-end/test_bec_dock_rpc_e2e.py +0 -0
  212. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/end-2-end/test_bec_figure_rpc_e2e.py +0 -0
  213. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/end-2-end/test_rpc_register_e2e.py +0 -0
  214. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/end-2-end/test_scan_control_e2e.py +0 -0
  215. {bec_widgets-0.80.1/bec_widgets/widgets/vscode → bec_widgets-0.81.1/tests/unit_tests}/__init__.py +0 -0
  216. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/client_mocks.py +0 -0
  217. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/conftest.py +0 -0
  218. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_connector.py +0 -0
  219. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_dispatcher.py +0 -0
  220. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_dock.py +0 -0
  221. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_figure.py +0 -0
  222. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_image.py +0 -0
  223. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_motor_map.py +0 -0
  224. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_queue.py +0 -0
  225. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_bec_status_box.py +0 -0
  226. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_client_utils.py +0 -0
  227. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_color_validation.py +0 -0
  228. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_configs/config_device.yaml +0 -0
  229. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_configs/config_device_no_entry.yaml +0 -0
  230. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_configs/config_scan.yaml +0 -0
  231. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_crosshair.py +0 -0
  232. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_device_input_base.py +0 -0
  233. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_device_input_widgets.py +0 -0
  234. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_generate_cli_client.py +0 -0
  235. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_generate_plugin.py +0 -0
  236. {bec_widgets-0.80.1/bec_widgets/widgets/website → bec_widgets-0.81.1/tests/unit_tests/test_msgs}/__init__.py +0 -0
  237. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_msgs/available_scans_message.py +0 -0
  238. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_plot_base.py +0 -0
  239. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_plugin_utils.py +0 -0
  240. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_ring_progress_bar.py +0 -0
  241. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_rpc_register.py +0 -0
  242. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_rpc_widget_handler.py +0 -0
  243. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_scan_control.py +0 -0
  244. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_scan_control_group_box.py +0 -0
  245. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_stop_button.py +0 -0
  246. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_text_box_widget.py +0 -0
  247. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_vscode_widget.py +0 -0
  248. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_waveform1d.py +0 -0
  249. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_website_widget.py +0 -0
  250. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_widget_io.py +0 -0
  251. {bec_widgets-0.80.1 → bec_widgets-0.81.1}/tests/unit_tests/test_yaml_dialog.py +0 -0
@@ -1,5 +1,17 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## v0.81.1 (2024-07-07)
4
+
5
+ ### Fix
6
+
7
+ * fix(motor_control): temporary remove of motor control widgets ([`99114f1`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/99114f14f62202e1fd8bf145616fa8c69937ada4))
8
+
9
+ ## v0.81.0 (2024-07-06)
10
+
11
+ ### Feature
12
+
13
+ * feat(color_button): can get colors in RGBA or HEX ([`9594be2`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/9594be260680d11c8550ff74ffb8d679e5a5b8f6))
14
+
3
15
  ## v0.80.1 (2024-07-06)
4
16
 
5
17
  ### Fix
@@ -129,15 +141,3 @@
129
141
  ### Unknown
130
142
 
131
143
  * fix:parent set as first kwarg TextBox and WebsiteWidget ([`a45c407`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/a45c4075684b93bfdcee03e5a416b84f61d3bc6f))
132
-
133
- ## v0.75.0 (2024-06-26)
134
-
135
- ### Feature
136
-
137
- * feat(widgets): added simple bec queue widget ([`3faee98`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/3faee98ec80041a27e4c1f1156178de6f9dcdc63))
138
-
139
- ### Refactor
140
-
141
- * refactor(dispatcher): cleanup ([`ca02132`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/ca02132c8d18535b37e9192e00459d2aca6ba5cf))
142
-
143
- ## v0.74.1 (2024-06-26)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bec_widgets
3
- Version: 0.80.1
3
+ Version: 0.81.1
4
4
  Summary: BEC Widgets
5
5
  Project-URL: Bug Tracker, https://gitlab.psi.ch/bec/bec_widgets/issues
6
6
  Project-URL: Homepage, https://gitlab.psi.ch/bec/bec_widgets
@@ -0,0 +1,36 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Literal
4
+
5
+ import pyqtgraph as pg
6
+
7
+
8
+ class ColorButton(pg.ColorButton):
9
+ """
10
+ A ColorButton that opens a dialog to select a color. Inherits from pyqtgraph.ColorButton.
11
+ Patches event loop of the ColorDialog, if opened in another QDialog.
12
+ """
13
+
14
+ def __init__(self, *args, **kwargs):
15
+ super().__init__(*args, **kwargs)
16
+
17
+ def selectColor(self):
18
+ self.origColor = self.color()
19
+ self.colorDialog.setCurrentColor(self.color())
20
+ self.colorDialog.open()
21
+ self.colorDialog.exec()
22
+
23
+ def get_color(self, format: Literal["RGBA", "HEX"] = "RGBA") -> tuple | str:
24
+ """
25
+ Get the color of the button in the specified format.
26
+
27
+ Args:
28
+ format(Literal["RGBA", "HEX"]): The format of the returned color.
29
+
30
+ Returns:
31
+ tuple|str: The color in the specified format.
32
+ """
33
+ if format == "RGBA":
34
+ return self.color().getRgb()
35
+ if format == "HEX":
36
+ return self.color().name()
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "bec_widgets"
7
- version = "0.80.1"
7
+ version = "0.81.1"
8
8
  description = "BEC Widgets"
9
9
  requires-python = ">=3.10"
10
10
  classifiers = [
@@ -1,9 +0,0 @@
1
- from .motor_movement import (
2
- MotorControlApp,
3
- MotorControlMap,
4
- MotorControlPanel,
5
- MotorControlPanelAbsolute,
6
- MotorControlPanelRelative,
7
- MotorCoordinateTable,
8
- MotorThread,
9
- )
@@ -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
- )
@@ -1,250 +0,0 @@
1
- # pylint: disable = no-name-in-module,missing-class-docstring, missing-module-docstring
2
-
3
- import qdarktheme
4
- from qtpy.QtCore import Qt
5
- from qtpy.QtWidgets import QApplication, QSplitter, QVBoxLayout, QWidget
6
-
7
- from bec_widgets.utils.bec_dispatcher import BECDispatcher
8
- from bec_widgets.widgets.motor_control.motor_control import MotorThread
9
- from bec_widgets.widgets.motor_control.motor_table.motor_table import MotorCoordinateTable
10
- from bec_widgets.widgets.motor_control.movement_absolute.movement_absolute import (
11
- MotorControlAbsolute,
12
- )
13
- from bec_widgets.widgets.motor_control.movement_relative.movement_relative import (
14
- MotorControlRelative,
15
- )
16
- from bec_widgets.widgets.motor_control.selection.selection import MotorControlSelection
17
-
18
- CONFIG_DEFAULT = {
19
- "motor_control": {
20
- "motor_x": "samx",
21
- "motor_y": "samy",
22
- "step_size_x": 3,
23
- "step_size_y": 3,
24
- "precision": 4,
25
- "step_x_y_same": False,
26
- "move_with_arrows": False,
27
- },
28
- "plot_settings": {
29
- "colormap": "Greys",
30
- "scatter_size": 5,
31
- "max_points": 1000,
32
- "num_dim_points": 100,
33
- "precision": 2,
34
- "num_columns": 1,
35
- "background_value": 25,
36
- },
37
- "motors": [
38
- {
39
- "plot_name": "Motor Map",
40
- "x_label": "Motor X",
41
- "y_label": "Motor Y",
42
- "signals": {
43
- "x": [{"name": "samx", "entry": "samx"}],
44
- "y": [{"name": "samy", "entry": "samy"}],
45
- },
46
- }
47
- ],
48
- }
49
-
50
-
51
- class MotorControlApp(QWidget):
52
- def __init__(self, parent=None, client=None, config=None):
53
- super().__init__(parent)
54
-
55
- bec_dispatcher = BECDispatcher()
56
- self.client = bec_dispatcher.client if client is None else client
57
- self.config = config
58
-
59
- # Widgets
60
- self.motor_control_panel = MotorControlPanel(client=self.client, config=self.config)
61
- # Create MotorMap
62
- # self.motion_map = MotorMap(client=self.client, config=self.config)
63
- # Create MotorCoordinateTable
64
- self.motor_table = MotorCoordinateTable(client=self.client, config=self.config)
65
-
66
- # Create the splitter and add MotorMap and MotorControlPanel
67
- splitter = QSplitter(Qt.Horizontal)
68
- # splitter.addWidget(self.motion_map)
69
- splitter.addWidget(self.motor_control_panel)
70
- splitter.addWidget(self.motor_table)
71
-
72
- # Set the main layout
73
- layout = QVBoxLayout(self)
74
- layout.addWidget(splitter)
75
- self.setLayout(layout)
76
-
77
- # Connecting signals and slots
78
- # self.motor_control_panel.selection_widget.selected_motors_signal.connect(
79
- # lambda x, y: self.motion_map.change_motors(x, y, 0)
80
- # )
81
- self.motor_control_panel.absolute_widget.coordinates_signal.connect(
82
- self.motor_table.add_coordinate
83
- )
84
- self.motor_control_panel.relative_widget.precision_signal.connect(
85
- self.motor_table.set_precision
86
- )
87
- self.motor_control_panel.relative_widget.precision_signal.connect(
88
- self.motor_control_panel.absolute_widget.set_precision
89
- )
90
-
91
- # self.motor_table.plot_coordinates_signal.connect(self.motion_map.plot_saved_coordinates)
92
-
93
-
94
- class MotorControlMap(QWidget):
95
- def __init__(self, parent=None, client=None, config=None):
96
- super().__init__(parent)
97
-
98
- bec_dispatcher = BECDispatcher()
99
- self.client = bec_dispatcher.client if client is None else client
100
- self.config = config
101
-
102
- # Widgets
103
- self.motor_control_panel = MotorControlPanel(client=self.client, config=self.config)
104
- # Create MotorMap
105
- # self.motion_map = MotorMap(client=self.client, config=self.config)
106
-
107
- # Create the splitter and add MotorMap and MotorControlPanel
108
- splitter = QSplitter(Qt.Horizontal)
109
- # splitter.addWidget(self.motion_map)
110
- splitter.addWidget(self.motor_control_panel)
111
-
112
- # Set the main layout
113
- layout = QVBoxLayout(self)
114
- layout.addWidget(splitter)
115
- self.setLayout(layout)
116
-
117
- # Connecting signals and slots
118
- # self.motor_control_panel.selection_widget.selected_motors_signal.connect(
119
- # lambda x, y: self.motion_map.change_motors(x, y, 0)
120
- # )
121
-
122
-
123
- class MotorControlPanel(QWidget):
124
- def __init__(self, parent=None, client=None, config=None):
125
- super().__init__(parent)
126
-
127
- bec_dispatcher = BECDispatcher()
128
- self.client = bec_dispatcher.client if client is None else client
129
- self.config = config
130
-
131
- self.motor_thread = MotorThread(client=self.client)
132
-
133
- self.selection_widget = MotorControlSelection(
134
- client=self.client, config=self.config, motor_thread=self.motor_thread
135
- )
136
- self.relative_widget = MotorControlRelative(
137
- client=self.client, config=self.config, motor_thread=self.motor_thread
138
- )
139
- self.absolute_widget = MotorControlAbsolute(
140
- client=self.client, config=self.config, motor_thread=self.motor_thread
141
- )
142
-
143
- layout = QVBoxLayout(self)
144
-
145
- layout.addWidget(self.selection_widget)
146
- layout.addWidget(self.relative_widget)
147
- layout.addWidget(self.absolute_widget)
148
-
149
- # Connecting signals and slots
150
- self.selection_widget.selected_motors_signal.connect(self.relative_widget.change_motors)
151
- self.selection_widget.selected_motors_signal.connect(self.absolute_widget.change_motors)
152
-
153
- # Set the window to a fixed size based on its contents
154
- # self.layout().setSizeConstraint(layout.SetFixedSize)
155
-
156
-
157
- class MotorControlPanelAbsolute(QWidget):
158
- def __init__(self, parent=None, client=None, config=None):
159
- super().__init__(parent)
160
-
161
- bec_dispatcher = BECDispatcher()
162
- self.client = bec_dispatcher.client if client is None else client
163
- self.config = config
164
-
165
- self.motor_thread = MotorThread(client=self.client)
166
-
167
- self.selection_widget = MotorControlSelection(
168
- client=client, config=config, motor_thread=self.motor_thread
169
- )
170
- self.absolute_widget = MotorControlAbsolute(
171
- client=client, config=config, motor_thread=self.motor_thread
172
- )
173
-
174
- layout = QVBoxLayout(self)
175
- layout.addWidget(self.selection_widget)
176
- layout.addWidget(self.absolute_widget)
177
-
178
- # Connecting signals and slots
179
- self.selection_widget.selected_motors_signal.connect(self.absolute_widget.change_motors)
180
-
181
-
182
- class MotorControlPanelRelative(QWidget):
183
- def __init__(self, parent=None, client=None, config=None):
184
- super().__init__(parent)
185
-
186
- bec_dispatcher = BECDispatcher()
187
- self.client = bec_dispatcher.client if client is None else client
188
- self.config = config
189
-
190
- self.motor_thread = MotorThread(client=self.client)
191
-
192
- self.selection_widget = MotorControlSelection(
193
- client=client, config=config, motor_thread=self.motor_thread
194
- )
195
- self.relative_widget = MotorControlRelative(
196
- client=client, config=config, motor_thread=self.motor_thread
197
- )
198
-
199
- layout = QVBoxLayout(self)
200
- layout.addWidget(self.selection_widget)
201
- layout.addWidget(self.relative_widget)
202
-
203
- # Connecting signals and slots
204
- self.selection_widget.selected_motors_signal.connect(self.relative_widget.change_motors)
205
-
206
-
207
- if __name__ == "__main__": # pragma: no cover
208
- import argparse
209
- import sys
210
-
211
- parser = argparse.ArgumentParser(description="Run various Motor Control Widgets compositions.")
212
- parser.add_argument(
213
- "-v",
214
- "--variant",
215
- type=str,
216
- choices=["app", "map", "panel", "panel_abs", "panel_rel"],
217
- help="Select the variant of the motor control to run. "
218
- "'app' for the full application, "
219
- "'map' for MotorMap, "
220
- "'panel' for the MotorControlPanel, "
221
- "'panel_abs' for MotorControlPanel with absolute control, "
222
- "'panel_rel' for MotorControlPanel with relative control.",
223
- )
224
-
225
- args = parser.parse_args()
226
-
227
- bec_dispatcher = BECDispatcher()
228
- client = bec_dispatcher.client
229
- client.start()
230
-
231
- app = QApplication([])
232
- qdarktheme.setup_theme("auto")
233
-
234
- if args.variant == "app":
235
- window = MotorControlApp(client=client) # , config=CONFIG_DEFAULT)
236
- elif args.variant == "map":
237
- window = MotorControlMap(client=client) # , config=CONFIG_DEFAULT)
238
- elif args.variant == "panel":
239
- window = MotorControlPanel(client=client) # , config=CONFIG_DEFAULT)
240
- elif args.variant == "panel_abs":
241
- window = MotorControlPanelAbsolute(client=client) # , config=CONFIG_DEFAULT)
242
- elif args.variant == "panel_rel":
243
- window = MotorControlPanelRelative(client=client) # , config=CONFIG_DEFAULT)
244
- else:
245
- print("Please specify a valid variant to run. Use -h for help.")
246
- print("Running the full application by default.")
247
- window = MotorControlApp(client=client) # , config=CONFIG_DEFAULT)
248
-
249
- window.show()
250
- sys.exit(app.exec())