0
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2025-07-14 11:41:49 +02:00

fix: clean up, run cli script, add docs

This commit is contained in:
2024-12-02 17:33:04 +01:00
parent 9ac4ce73ff
commit b87cab6744
7 changed files with 129 additions and 1 deletions

View File

@ -0,0 +1,35 @@
(user.widgets.user_script_widget)=
# User Script Widget
````{tab} Overview
The [`UserScriptWidget`] is designed to allow users to run their user-defined scripts directly from a BEC GUI. This widget lists all available user scripts and allows users to execute them with a single click. The widget also provides an interface to open a VSCode editor to modify the files hosting the user scripts. This widget is particularly useful to provide a user-friendly interface to run custom scripts to users without using the command line. We note that the scripts are executed in a BEC client that does not share the full namespace with the BEC IPython kernel.
## Key Features:
- **User Script Execution**: Run user-defined scripts directly from the BEC GUI.
- **VSCode Integration**: Open the VSCode editor to modify the files hosting the user scripts.
````{tab} Examples
The `UserScriptWidget` widget can be integrated within a [`BECDockArea`](user.widgets.bec_dock_area) or used as an individual component in your application through `BECDesigner`. Below are examples demonstrating how to create and use the `BECStatusBox` widget.
## Example 1 - Adding BEC Status Box to BECDockArea
In this example, we demonstrate how to add a `BECStatusBox` widget to a `BECDockArea`, allowing users to monitor the status of BEC processes directly from the GUI.
```python
# Add a new dock with a BECStatusBox widget
user_script = gui.add_dock().add_widget("UserScriptWidget")
```
```{hint}
The widget will automatically display the list of available user scripts. Users can click on the script name to execute it.
```
````
````{tab} API
```{eval-rst}
.. include:: /api_reference/_autosummary/bec_widgets.cli.client.UserScriptWidget.rst
```
````

View File

@ -134,6 +134,15 @@ Display status of BEC services.
Display current scan queue.
```
```{grid-item-card} User Script Widget
:link: user.widgets.user_script_widget
:link-type: ref
:img-top: /assets/widget_screenshots/user_script_widget.png
Run user-defined scripts directly from the BEC GUI.
```
````
## BEC Utility Widgets
@ -238,6 +247,7 @@ Display DAP summaries of LMFit models in a window.
Select DAP model from a list of DAP processes.
```
````
```{toctree}
@ -270,5 +280,6 @@ signal_input/signal_input.md
position_indicator/position_indicator.md
lmfit_dialog/lmfit_dialog.md
dap_combo_box/dap_combo_box.md
user_script_widget/user_script_widget.md
```