Modular BECMonitor and ConfigDialog
Main Features:
BECMonitor
- Standalone widget (
bec_widgets/widgets/monitor.py
) which can be used for visualisation of live data acquisition based on the config dict very similar to the one used in thebec_widgets/examples/extreme.py
- Inherits from pg.GraphicsLayoutWidget
- To use it in the application you can promote in QtDesigner defining the class and header (see example in attached screenshot)
- example of use as a three separate widgets can be found in
examples/modular_app/modular_app.py
where one has to just connectConfigDialog
to the correctBECMonitor
- Close #15
ConfigDialog
- Property editor for
BECMonitor
where one can setup what devices should be plotted and Crete different configurations for different incoming scans - Configurations can be imported/exported to .yaml files for later use.
Minor Features:
Mostly utility function in bec_widgets/qt_utis
-
yaml_dialog.py
→ simple function which opensQFileDialog
for saving/loading .yaml and convert from/itdict
→ close #25 -
BECTable
→ inheritedQTableWidget
just with function to delete rows with Backspace/Delete -
widget_hierarchy.py
→ debugging tool to print out the hierarchy of the widget and pick up the values from certain widgets
Future plans
BECMonitor
-
on_scan_segment
can be refactored into separate class with multiple method for more modular validation of the incoming data from the redis → created #27 (closed) - custom right click context menu #30 (closed)
ConfigDialog
- Validation tool for importing/exporting .yaml, probably based on pydantic and json schema.
- Autocompletion for line edits → user will be only able to add devices which are loaded in the current bec instance. #23 (closed)
- Option to not pass entries, just names on devices and rely on
._hints
. #28 (closed) - Colorbutton in signals table to set colors of rendered curves. #29 (closed)
- Color palette comboBox with color scheme preview. #20 (closed)
Edited by wyzula_j