bec-widgets 0.94.7__py3-none-any.whl → 0.95.1__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.
- CHANGELOG.md +46 -44
- PKG-INFO +1 -1
- bec_widgets/cli/client.py +19 -0
- bec_widgets/examples/plugin_example_pyside/tictactoeplugin.py +5 -3
- bec_widgets/widgets/bec_queue/bec_queue_plugin.py +5 -3
- bec_widgets/widgets/bec_status_box/bec_status_box_plugin.py +5 -3
- bec_widgets/widgets/color_button/color_button_plugin.py +5 -3
- bec_widgets/widgets/colormap_selector/colormap_selector_plugin.py +5 -3
- bec_widgets/widgets/device_browser/__init__.py +0 -0
- bec_widgets/widgets/device_browser/device_browser.py +107 -0
- bec_widgets/widgets/device_browser/device_browser.pyproject +1 -0
- bec_widgets/widgets/device_browser/device_browser.ui +44 -0
- bec_widgets/widgets/device_browser/device_browser_plugin.py +57 -0
- bec_widgets/widgets/device_browser/device_item/__init__.py +1 -0
- bec_widgets/widgets/device_browser/device_item/device_item.py +53 -0
- bec_widgets/widgets/device_browser/register_device_browser.py +15 -0
- bec_widgets/widgets/device_combobox/device_combo_box_plugin.py +5 -3
- bec_widgets/widgets/device_line_edit/device_line_edit_plugin.py +5 -3
- bec_widgets/widgets/dock/dock_area_plugin.py +5 -3
- bec_widgets/widgets/image/bec_image_widget_plugin.py +5 -3
- bec_widgets/widgets/motor_map/bec_motor_map_widget_plugin.py +5 -3
- bec_widgets/widgets/position_indicator/position_indicator_plugin.py +5 -3
- bec_widgets/widgets/positioner_box/positioner_box_plugin.py +5 -3
- bec_widgets/widgets/positioner_box/positioner_control_line_plugin.py +5 -3
- bec_widgets/widgets/ring_progress_bar/ring_progress_bar_plugin.py +5 -3
- bec_widgets/widgets/scan_control/scan_control_plugin.py +5 -3
- bec_widgets/widgets/spinner/spinner_widget_plugin.py +5 -3
- bec_widgets/widgets/stop_button/stop_button_plugin.py +5 -3
- bec_widgets/widgets/text_box/text_box_plugin.py +5 -3
- bec_widgets/widgets/toggle/toggle_switch_plugin.py +5 -3
- bec_widgets/widgets/vscode/vs_code_editor_plugin.py +5 -3
- bec_widgets/widgets/waveform/bec_waveform_widget_plugin.py +5 -3
- bec_widgets/widgets/website/website_widget_plugin.py +5 -3
- {bec_widgets-0.94.7.dist-info → bec_widgets-0.95.1.dist-info}/METADATA +1 -1
- {bec_widgets-0.94.7.dist-info → bec_widgets-0.95.1.dist-info}/RECORD +97 -77
- docs/_static/custom.css +10 -10
- docs/assets/widget_screenshots/buttons.png +0 -0
- docs/assets/widget_screenshots/device_box.png +0 -0
- docs/assets/widget_screenshots/device_browser.png +0 -0
- docs/assets/widget_screenshots/device_inputs.png +0 -0
- docs/assets/widget_screenshots/dock_area.png +0 -0
- docs/assets/widget_screenshots/figure.png +0 -0
- docs/assets/widget_screenshots/image_widget.png +0 -0
- docs/assets/widget_screenshots/motor_map_widget.png +0 -0
- docs/assets/widget_screenshots/position_indicator.png +0 -0
- docs/assets/widget_screenshots/queue.png +0 -0
- docs/assets/widget_screenshots/ring_progress_bar.png +0 -0
- docs/assets/widget_screenshots/scan_controller.png +0 -0
- docs/assets/widget_screenshots/spinner.gif +0 -0
- docs/assets/widget_screenshots/status_box.png +0 -0
- docs/assets/widget_screenshots/text_box.png +0 -0
- docs/assets/widget_screenshots/toggle.png +0 -0
- docs/assets/widget_screenshots/waveform_widget.png +0 -0
- docs/assets/widget_screenshots/website.png +0 -0
- docs/conf.py +1 -0
- docs/developer/developer.md +2 -0
- docs/developer/introduction/introduction.md +1 -0
- docs/developer/introduction/useful_links.md +23 -0
- docs/index.md +4 -0
- docs/requirements.txt +1 -0
- docs/user/user.md +4 -0
- docs/user/widgets/bec_figure/bec_figure.md +105 -0
- docs/user/widgets/bec_status_box/bec_status_box.md +38 -0
- docs/user/widgets/buttons/buttons.md +50 -0
- docs/user/widgets/device_browser/device_browser.md +36 -0
- docs/user/widgets/device_browser/device_browser.png +0 -0
- docs/user/widgets/device_input/device_input.md +100 -0
- docs/user/widgets/dock_area/BECDockArea.png +0 -0
- docs/user/widgets/dock_area/bec_dock_area.md +107 -0
- docs/user/widgets/image/image_widget.md +84 -0
- docs/user/widgets/motor_map/motor_map.md +80 -0
- docs/user/widgets/position_indicator/position_indicator.md +76 -0
- docs/user/widgets/positioner_box/positioner_box.md +63 -0
- docs/user/widgets/progress_bar/ring_progress_bar.md +103 -0
- docs/user/widgets/queue/queue.md +41 -0
- docs/user/widgets/scan_control/scan_control.md +46 -0
- docs/user/widgets/spinner/spinner.md +75 -0
- docs/user/widgets/text_box/text_box.md +74 -0
- docs/user/widgets/toggle/toggle.md +66 -0
- docs/user/widgets/waveform/waveform_widget.md +132 -0
- docs/user/widgets/website/website.md +69 -0
- docs/user/widgets/widgets.md +212 -12
- pyproject.toml +1 -1
- tests/unit_tests/client_mocks.py +14 -0
- tests/unit_tests/test_device_browser.py +83 -0
- bec_widgets/assets/designer_icons/code.png +0 -0
- bec_widgets/assets/designer_icons/color_button.png +0 -0
- bec_widgets/assets/designer_icons/colormap_selector.png +0 -0
- bec_widgets/assets/designer_icons/device_combo_box.png +0 -0
- bec_widgets/assets/designer_icons/device_line_edit.png +0 -0
- bec_widgets/assets/designer_icons/dock_area.png +0 -0
- bec_widgets/assets/designer_icons/games.png +0 -0
- bec_widgets/assets/designer_icons/image.png +0 -0
- bec_widgets/assets/designer_icons/motor_map.png +0 -0
- bec_widgets/assets/designer_icons/position_indicator.png +0 -0
- bec_widgets/assets/designer_icons/positioner_box.png +0 -0
- bec_widgets/assets/designer_icons/queue.png +0 -0
- bec_widgets/assets/designer_icons/ring_progress.png +0 -0
- bec_widgets/assets/designer_icons/scan_control.png +0 -0
- bec_widgets/assets/designer_icons/spinner.png +0 -0
- bec_widgets/assets/designer_icons/status.png +0 -0
- bec_widgets/assets/designer_icons/stop.png +0 -0
- bec_widgets/assets/designer_icons/text.png +0 -0
- bec_widgets/assets/designer_icons/toggle.png +0 -0
- bec_widgets/assets/designer_icons/waveform.png +0 -0
- bec_widgets/assets/designer_icons/web.png +0 -0
- docs/user/widgets/bec_figure.md +0 -146
- docs/user/widgets/bec_status_box.md +0 -30
- docs/user/widgets/buttons.md +0 -37
- docs/user/widgets/ring_progress_bar.md +0 -54
- docs/user/widgets/scan_control.md +0 -35
- docs/user/widgets/text_box.md +0 -33
- docs/user/widgets/website.md +0 -21
- {bec_widgets-0.94.7.dist-info → bec_widgets-0.95.1.dist-info}/WHEEL +0 -0
- {bec_widgets-0.94.7.dist-info → bec_widgets-0.95.1.dist-info}/entry_points.txt +0 -0
- {bec_widgets-0.94.7.dist-info → bec_widgets-0.95.1.dist-info}/licenses/LICENSE +0 -0
- /docs/user/widgets/{BECFigure.png → bec_figure/BECFigure.png} +0 -0
- /docs/user/widgets/{bec_status_box.gif → bec_status_box/bec_status_box.gif} +0 -0
- /docs/user/widgets/{image_plot.gif → image/image_plot.gif} +0 -0
- /docs/user/widgets/{motor.gif → motor_map/motor.gif} +0 -0
- /docs/user/widgets/{progress_bar.gif → progress_bar/progress_bar.gif} +0 -0
- /docs/user/widgets/{scan_control.gif → scan_control/scan_control.gif} +0 -0
- /docs/user/widgets/{bec_figure_dap.gif → waveform/bec_figure_dap.gif} +0 -0
- /docs/user/widgets/{scatter_2D.gif → waveform/scatter_2D.gif} +0 -0
- /docs/user/widgets/{w1D.gif → waveform/w1D.gif} +0 -0
@@ -1,54 +0,0 @@
|
|
1
|
-
(user.widgets.spiral_progress_bar)=
|
2
|
-
# [Ring Progress Bar](/api_reference/_autosummary/bec_widgets.cli.client.RingProgressBar)
|
3
|
-
|
4
|
-
**Purpose:**
|
5
|
-
|
6
|
-
The ring Progress Bar widget is a circular progress bar that can be used to visualize the progress of a task. The
|
7
|
-
widget is designed to be used in applications where the progress of a task is represented as a percentage. The Spiral
|
8
|
-
Progress Bar widget is a part of the BEC Widgets library and can be controlled directly using its API, or hooked up to
|
9
|
-
the progress of a device readback or scan.
|
10
|
-
|
11
|
-
**Key Features:**
|
12
|
-
|
13
|
-
- circular progress bar to show updates on the progress of a task.
|
14
|
-
- hooks to update the progress bar from a device readback or scan.
|
15
|
-
- multiple progress rings to show different tasks in parallel.
|
16
|
-
|
17
|
-
**Example of Use:**
|
18
|
-

|
19
|
-
|
20
|
-
**Code example:**
|
21
|
-
|
22
|
-
The following code snipped demonstrates how to create a `RingProgressBar` using BEC Widgets within BEC.
|
23
|
-
```python
|
24
|
-
# adds a new dock with a ring progress bar
|
25
|
-
progress = gui.add_dock().add_widget("RingProgressBar")
|
26
|
-
# customize the size of the ring
|
27
|
-
progress.set_line_width(20)
|
28
|
-
```
|
29
|
-
|
30
|
-
By default, the Ring Progress Bar widget will display a single ring. To add more rings, use the add_ring method:
|
31
|
-
|
32
|
-
```python
|
33
|
-
# adds a new dock with a ring progress bar
|
34
|
-
progress.add_ring()
|
35
|
-
```
|
36
|
-
|
37
|
-
To access rings and specify their properties, you can use `progress.rings` with an index specifying the ring index (
|
38
|
-
starting from 0):
|
39
|
-
|
40
|
-
```python
|
41
|
-
progress.rings[0].set_line_width(20) # set the width of the first ring
|
42
|
-
progress.rings[1].set_line_width(10) # set the width of the second ring
|
43
|
-
```
|
44
|
-
|
45
|
-
By default, the `RingProgressBar` widget is set with `progress.enable_auto_update(True)`, which will automatically
|
46
|
-
update the bars in the widget. To manually set updates for each progress bar, use the set_update method. Note that
|
47
|
-
manually updating a ring will disable the automatic update for the whole widget:
|
48
|
-
|
49
|
-
```python
|
50
|
-
progress.rings[0].set_update("scan") # set the update of the first ring to be an overall scan progress
|
51
|
-
progress.rings[1].set_update("device",
|
52
|
-
"samx") # set the update of the second ring to be a device readback (in this case, samx)
|
53
|
-
```
|
54
|
-
|
@@ -1,35 +0,0 @@
|
|
1
|
-
(user.widgets.scan_control)=
|
2
|
-
|
3
|
-
# Scan Control
|
4
|
-
|
5
|
-
**Purpose:**
|
6
|
-
|
7
|
-
The `ScanControl` widget is designed to generate a graphical user interface (GUI) to control various scan operations
|
8
|
-
based on the scan's signature and `gui_config`. The widget is used to control the scan operations, such as starting,
|
9
|
-
stopping, and pausing the scan. The widget also provides a graphical representation of the scan progress and the scan
|
10
|
-
status. The widget is designed to be used in conjunction with the `ScanServer` and `ScanBundler` services from the BEC
|
11
|
-
core services.
|
12
|
-
|
13
|
-
By default the widget supports only the scans which have defined `gui_config` and are inhereted from these scan classes:
|
14
|
-
|
15
|
-
- [ScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.ScanBase.html)
|
16
|
-
- [SyncFlyScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.SyncFlyScanBase.html)
|
17
|
-
- [AsyncFlyScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.AsyncFlyScanBase.html)
|
18
|
-
|
19
|
-
**Key Features:**
|
20
|
-
|
21
|
-
- Automatically generates a control interface based on scan signatures and `gui_config`.
|
22
|
-
- Supports adding and removing argument bundles dynamically.
|
23
|
-
- Provides a visual representation of scan parameters grouped by functionality.
|
24
|
-
- Integrates start and stop controls for executing and halting scans.
|
25
|
-
|
26
|
-
**Example of Use:**
|
27
|
-
|
28
|
-
**Code example:**
|
29
|
-
The following code snipped demonstrates how to create a `ScanControl` widget using BEC Widgets within `BECIPythonClient`
|
30
|
-
|
31
|
-

|
32
|
-
|
33
|
-
```python
|
34
|
-
scan_control = gui.add_dock().add_widget("ScanControl")
|
35
|
-
```
|
docs/user/widgets/text_box.md
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
(user.widgets.text_box)=
|
2
|
-
# [Text Box Widget](/api_reference/_autosummary/bec_widgets.cli.client.TextBox)
|
3
|
-
**Purpose:**
|
4
|
-
|
5
|
-
The Text Box Widget is a widget that allows you to display text within the BEC GUI. The widget can be used to display plain text or HTML text.
|
6
|
-
|
7
|
-
**Key Features:**
|
8
|
-
|
9
|
-
- set the text to display.
|
10
|
-
- automatically detects if the text is plain text or HTML text.
|
11
|
-
- set background color and font color.
|
12
|
-
|
13
|
-
**Code example:**
|
14
|
-
|
15
|
-
The following code snipped demonstrates how to create a `TextBox` widget using BEC Widgets within BEC.
|
16
|
-
```python
|
17
|
-
text_box = gui.add_dock().add_widget("TextBox")
|
18
|
-
# set the text to display
|
19
|
-
text_box.set_text("Hello, World!")
|
20
|
-
# set the background color and font color
|
21
|
-
text_box.set_color(backgroud_color="#FFF", font_color="#000")
|
22
|
-
# set the text to display as HTML
|
23
|
-
text_box.set_text("<h1>Welcome to BEC Widgets</h1><p>This is an example of displaying <strong>HTML</strong> text.</p>")
|
24
|
-
```
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
docs/user/widgets/website.md
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
(user.widgets.website)=
|
2
|
-
# [Website Widget](/api_reference/_autosummary/bec_widgets.cli.client.WebsiteWidget)
|
3
|
-
**Purpose:**
|
4
|
-
|
5
|
-
The Website Widget is a widget that allows you to display a website within the BEC GUI. The widget can be used to display any website.
|
6
|
-
|
7
|
-
**Key Features:**
|
8
|
-
|
9
|
-
- set the URL of the website to display.
|
10
|
-
- reload the website.
|
11
|
-
- navigate back and forward in the website history.
|
12
|
-
|
13
|
-
**Code example:**
|
14
|
-
|
15
|
-
The following code snipped demonstrates how to create a `WebsiteWidget` using BEC Widgets within BEC.
|
16
|
-
```python
|
17
|
-
# adds a new dock with a website widget
|
18
|
-
web = gui.add_dock().add_widget("Website")
|
19
|
-
# set the URL of the website to display
|
20
|
-
web.set_url("https://bec.readthedocs.io/en/latest/")
|
21
|
-
```
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|