0
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2025-07-13 11:11:49 +02:00
Files
bec_widgets/CHANGELOG.md
semantic-release e55daee756 0.46.6
Automatically generated by python-semantic-release
2024-04-19 16:51:51 +00:00

64 KiB

Changelog

v0.46.6 (2024-04-19)

Fix

  • cli: Fixed support for devices as cli input (1111610)

v0.46.5 (2024-04-19)

Fix

  • widgets/figure: Individual cleanup disabled, making stuck rpc (ff52100)
  • plots/waveform: Colormap is correctly passed from BECFigure (026c079)

v0.46.4 (2024-04-16)

Fix

  • Renaming of bec_client to bec_ipython_client (4da625e)
  • plots/motor_map: User can get data as dict from BECMotorMap (c12f2ce)
  • plots/image: User can get data as np.ndarray from BECImageItem (c2c583f)
  • rpc/server: Server can accept client or dispatcher (ecdf0f1)

v0.46.3 (2024-04-11)

Fix

  • test_fake_redis: TestMessage fixed to pydantic BaseModel (0b86a00)
  • plots/motor_map: Removed single callback flag for connecting device_readback motors (49327a8)
  • cli/client_utils: Print_log is buffered; add output processing thread (285bf01)
  • Producer->connector (9def373)

v0.46.2 (2024-04-10)

Fix

  • widget/plots: Added "get_config" to all children of BECConnector to USER_ACCESS (ee617b7)

v0.46.1 (2024-04-10)

Fix

  • rpc/client: Correct name for RPC class BECWaveform (instead of BECWaveform1D) (cf29035)

v0.46.0 (2024-04-09)

Feature

  • plot/waveform1d: BECWaveform1D can show z data of scatter coded to different detector like BECMonitor2DScatter; BECWaveform1D name changed to BECWaveform (3d399ba)

v0.45.0 (2024-03-26)

Feature

  • plots/bec_figure: Motor Map integrated to BECFigure (b8519e8)
  • plots/bec_motor_map: BECMotorMap build on BECPlotBase (0f69c34)

Documentation

  • Added api reference; closes #123 (88014d2)

v0.44.5 (2024-03-25)

Fix

v0.44.4 (2024-03-22)

Fix

  • cli/server: Thread heartbeat replaced with QTimer (e6b0657)
  • cli/server: Removed BECFigure.start(), the QApplication event loop is started by server.py (f3a96de)

v0.44.3 (2024-03-21)

Fix

  • cli: Don't call user script if gui is not alive (a92aead)
  • cli: Added gui heartbeat (882cf55)

v0.44.2 (2024-03-20)

Fix

  • utils/bec_dispatcher: Try/except to start client, to avoid crash when redis is not running (9ccd4ea)
  • utils/bec_dispatcher: Bec_dispatcher adjusted to the new BECClient; dropped support to inject bec_config.yaml, instead BECClient can be passed as arg (86416d5)

v0.44.1 (2024-03-19)

Fix

  • examples/motor_compilation: Motor_control_compilations.py do not have any hardcoded config anymore (14f901f)

v0.44.0 (2024-03-18)

Feature

  • cli: Added update script to BECFigure (9049e0d)

Fix

  • cli: Removed hard-coded signal (203ae09)
  • cli: Fixed cleanup procedure (2d39c5e)

v0.43.2 (2024-03-18)

Fix

  • cli/server: Added QApplications to enter separate QT event loop ensuring that QT objects are not deleted (d0f9bf1)

v0.43.1 (2024-03-15)

Fix

  • plots/image: Same access pattern for image and image_item for setting up parameters, autorange of z scale disabled by default (b8d4e69)
  • widget/various: Corrected USER_ACCESS methods for children widgets to include inherited methods to RPC (4664661)
  • widgets/figure: Added widgets can be accessed as a list (fig.axes) or as a dictionary (fig.widgets) (fcf918c)

v0.43.0 (2024-03-14)

Feature

  • plots/image: Image processor can run in threaded or non-threaded version (4865b10)
  • plots/image: Change stream processor to QThread with connector.get_last; cleanup method for BECFigure to kill all threads if App is closed during acquisition (7ffedd9)
  • plots/image: Basic image visualisation, getting data are based on stream_connector (deprecated) (9ad0055)

Fix

  • plots/waveform1d: Curves_data access disabled (598479b)
  • cli: Find_widget_by_id for BECImageShow changed to be compatible with RPC logic (4ef6ae9)
  • plots/image: Access pattern for ImageItems in BECImageShow (3362fab)
  • cli: Fix cli connector.send to set_and_publish for gui_instruction_response (4076698)

v0.42.1 (2024-03-10)

Fix

  • various: Repo cleanup, removed - [plot_app, one_plot, scan_plot, scan2d_plot, crosshair_example, qtplugins], tests adjusted (f3b3c2f)

v0.42.0 (2024-03-07)

Feature

  • utils/bec_dispatcher: BECDispatcher can register redis stream (4c0a7bb)

v0.41.4 (2024-03-07)

Fix

  • utils/bec_dispatcher: BECDispatcher can accept new EndpointInfo dataclass. (c319dac)

v0.41.3 (2024-03-01)

Fix

  • cli/generate_cli: Typing.get_overloads are only used if the python version is higher than 3.11 (f386563)
  • cli/generate_cli: Added automatic black formatting; added black as a dependency (d89f596)

v0.41.2 (2024-02-28)

Fix

  • utils/bec_dispatcher: Msg is unp[acked from dict before accessing .content (bb1f066)

v0.41.1 (2024-02-26)

Fix

  • bec_dispatcher: Handle redis connection errors more gracefully (a2ed2eb)
  • bec_dispatcher: Adapt code to redis connector refactoring (8127fc2)

v0.41.0 (2024-02-26)

Feature

  • widgets/waveform1d: Data can be exported from rendered curve (5fc8047)
  • widgets/figure: Clear_all method for BECFigure (0363fd5)
  • widgets/Waveform1D: Waveform1D can be fully constructed by config (9a5c86e)
  • widgets/figure.py: Dark/light theme changer (08534a4)
  • utils/entry_validator: Possibility to validate add_scan_curve with current BEC session (1db77b9)
  • cli: Added cli interface, rebased (a61bf36)
  • Curve can be modified after adding to the plot (684592a)
  • Waveform1d.py curves can be removed by identifier by order(int) or by curve_id(str) (f0ed243)
  • Waveform1d.py curves can be stylised; access scan history by index or scanID (cba3863)
  • Start method for BECFigure, jupyter console .ui added to git (1d26b23)
  • Added @user_access from bec_lib.utils (b827e9e)
  • Plot can be removed from BECFigure (60d150a)
  • Figure.py create widget factory (c781b1b)
  • Waveform1d.py draft (565e475)
  • Rpc decorator to add methods to USER_ACCESS (b676877)
  • BECFigure and BECPlotBase created (9ef331c)
  • BECConnector -> mixin class for all BEC Widget to hook them to BEC client (91447a2)

Fix

  • cli/client_utils: "rpc" pop from msg_results (ebb36f6)
  • tests: BECDispatcher fixture putted back (644f103)
  • cli/rpc: Rpc client can return any type of object + config dict of the widgets (fd711b4)
  • cli/rpc: Server access children widget.find_widget_by_id(gui_id) (57132a4)
  • cli: Fixed property access, rebased (f71dc5c)
  • rpc_server: Fixed gui_id lookup (4630d78)
  • cli: Fixed rpc construction of nested widgets (da640e8)
  • plots/waveform1d: Pandas import clean up, export curves with none skipped (35cd4fd)
  • widgets/plots: Added placeholder for cleanup method to BECPlotBase (24c7737)
  • widget/figure: Add cleanup method to disconnect all slots before removing Waveform1D from layout (a28b9c8)
  • rpc: Added annotations to pass py3.9 tests (c6bdf0b)
  • rpc: Connection to on_rpc_update done through bec_dispatcher (1c2fb8b)
  • After removing plot from BECFigure, the coordinates are correctly resigned (d678a85)
  • Removed DI references, fixed set when adding plot by fig (7c15d75)

v0.40.1 (2024-02-23)

Fix

  • utils/bec_dispatcher: _do_disconnect_slot will shutdown consumer of slots/signals which were already disconnected (feca7a3)

v0.40.0 (2024-02-16)

Feature

  • utils.colors: Golden_angle_color utility can return colors as a list of QColor, RGB or HEC (5125909)

v0.39.0 (2024-02-12)

Feature

  • Added full app with all motor movement related widgets into motor_control_compilations.py (fa4ca93)
  • MotorCoordinateTable mode_switch added for "Individual" and "Start/Stop" modes (2f96e10)
  • Motor_control.py MotorCoordinateTable added basic version to store coordinates and show them in motor_map.py (031cb09)
  • Active motors from motor_map.py can be changed by slot without changing the whole config (17f1458)
  • Control panels compilations (8361736)
  • Comboboxes of motor selection are changed to orange if the motors are not connected yet (0b9927f)
  • Motor_control.py MotorControl widgets - Absolute + Relative movement, MotorSelection, ErrorMessage popups (6fe08e6)

v0.38.2 (2024-02-07)

Fix

v0.38.1 (2024-01-26)

Fix

  • Monitor.py replots last scan after changing config with new signals; config_dialog.py checks if the new config is valid with BEC (ab275b8)

Documentation

  • 2D waveform scatter plot changed to 2D scatter plot (812ffaf)
  • Documentation for example apps and widgets updated (f7a4967)

v0.38.0 (2024-01-23)

Feature

  • BECMonitor2DScatter for plotting x/y/z signal as a mesh of scatter plot (75090b8)

Fix

  • Monitor_scatter_2D.py changed to new BECDispatcher definition (747e97e)

v0.37.1 (2024-01-23)

Fix

  • tests: Ensure BEC service is shutdown after bec dispatcher test (4664568)
  • tests: Ensure threads started during plot tests are properly stopped (3fb6644)

v0.37.0 (2024-01-17)

Feature

  • Independent motor_map widget (1a429b3)

v0.36.2 (2024-01-17)

Fix

  • Bec_dispatcher.py can partially disconnect topics from slot (7607d7a)
  • Bec_dispatcher.py can connect multiple topics to one callback slot (e51be04)

v0.36.1 (2024-01-15)

Fix

  • Motor_example.py fix to the new .read() structure from bec_lib (f9c5c82)

v0.36.0 (2024-01-12)

Feature

  • Bec_dispatcher can link multiple endpoints topics for one qt slot (58721be)

v0.35.0 (2024-01-12)

Feature

  • Monitor.py can access custom data send through redis (6e4775a)
  • Monitor.py access data directly from scan storage (26c07c3)

Fix

  • Monitor.py clear command from BECPlotter CLI clear now flush database and clear the plots (ebd4fcc)
  • Monitor.py crosshair enabled by default (97dcc5a)
  • Monitor.py change import of ConfigDialog from relative to absolute in order to make BECPlotter be able to open it (6061b31)
  • Monitor_config_validator.py changed to check .describe() instead of signals (5ab82bc)
  • Monitor.py fixed not updating config changes after receiving refresh from BECPlotter (00ef3ae)
  • Monitor_config_validator.py valid color is Literal['black','white'] (86c5f25)
  • Monitor.py fixed scan mode (a706da2)
  • Motor_config_validation changed to new monitor config structure (d67bdd2)

v0.34.1 (2023-12-12)

Fix

  • Formatter and tests fixed (186c42d)

Documentation

  • Readdocs updated (af995a7)
  • Readme.md updated (cba8131)
  • Gitlab templates for issues and merge requests from main bec repo (831eddc)

v0.34.0 (2023-12-08)

Feature

  • Monitor.py error message popup (a3b24f9)

Fix

  • Monitor_config_validator.py - Signal validation changed from field_validator to model_validator to check first name and then entry (0868047)
  • Monitor_config_validator.py fix entry validation executed only if name validator is successful (af71e35)

v0.33.0 (2023-12-07)

Feature

  • Added axis_width and axis_color as optional plot settings (504944f)

Fix

  • Fixed default config options (03bdf98)
  • Added hooks to react to incoming config messages and instructions (1084bc0)

v0.32.2 (2023-12-06)

Fix

  • Changed exec_ to exec for all apps (080c258)
  • Yaml_dialog.py changed to use native solution of OS -> should prevent crashing on py3.11 (5adde23)

v0.32.1 (2023-12-06)

Fix

  • Widget_io print_widget_hierarchy fix comboboxes (d1f9979)
  • WidgetIO combobox fixed for qt6 distributions (4f70097)

v0.32.0 (2023-11-30)

Feature

  • Jupyter rich console added as alternative to default QTextEdit terminal output (016b26f)
  • Editor.py basic signature calltip (045b1ba)
  • Editor.py jedi autocomplete hooked (fb555b2)
  • Editor.py added splitter between editor and terminal (c70ddb3)
  • Toolbar.py proof-of-concept (286e62d)
  • Basic text editor + running terminal output (9487844)

Fix

  • Added missing dependency jedi (d978740)
  • Editor.py switch to disable docstring (3cc05cd)
  • Editor.py compact signature on tooltip (f96cacc)
  • Editor.py removed automatic background behind edited text (d865e2f)
  • Toolbar.py automatic initialisation works (8ad3059)
  • Terminal output as QThread (a0d172e)

v0.31.0 (2023-11-13)

Feature

  • Pydantic validation module for monitor.py (7fec0c7)

Documentation

  • Pydantic validation module docs (92a5325)

v0.30.0 (2023-11-10)

Feature

  • WidgetIO support for QLabel (aa4c7c3)
  • Scan_control.py added option to limit scan selection from list of strings as init parameter (0fe06ad)
  • Scan_control.py a general widget which can generate GUI for scan input (088fa51)

Fix

  • Added imports to init.py in widget for ScanControl class (b85cc89)
  • Scan_control.py args_size_max fixed (da9025e)
  • Scan_control.py default spinBox limits increases (5c67026)
  • Scan_control.py supports minimum and maximum number of args (ee2f36f)
  • Scan_control.py wipe table and reinitialise devices when scan is changed (5ac3526)
  • Widget_IO.py added handler for QCheckBox (18a7025)
  • Scan_control.py scan can be executed from GUI (2e42ba1)
  • Scan_control.py all kwargs are rendered (4b7592c)
  • Scan_control.py kwargs and args are added to the correct layouts (b311069)

v0.29.0 (2023-10-31)

Feature

  • Widget_hierarchy.py tool to inspect hierarchy of the widget (cda8dae)
  • Yaml_dialog.py interactive QFileDialog window to load/save .yaml files to/from dict (2b29b6c)
  • Qt_utils custom class for class where one can delete the row with backspace or delete (a6616f5)
  • Modular_app.py, device_monitor.py, config_dialog.py linked together, plot configuration can be done through GUI (bf2a09e)
  • Config_dialog.py interactive editor of plot settings (c9e5dd5)

Fix

  • Yaml_dialog.py added support for .yml files (10539f0)
  • Yaml_dialog.py added return None if no file path is specified (ff1d918)
  • Wrong init.py in modular_app (d52aa15)
  • Test_bec_monitor.py config loaded fresh in the test function to avoid parameter leak (3866d7c)
  • Test_bec_monitor.py setup_monitor help function changed to pytest.fixture (989cd51)
  • Test_config_dialog.py - QApplication removed (1cdd760)
  • Test_config_dialog.py - test_add_new_plot_and_modify qtbot action .click() changed -> function called directly (1333e6c)
  • Test_config_dialog.py disabled (4e710dd)
  • Test_bec_monitor.py QApplication instance removed (77e1d09)
  • Test_config_dialog.py QApplication instance added (60e864b)
  • Device_monitor.py BECDeviceMonitor can be promoted in the QtDesigner and then setup in the modular app (afab283)
  • Device_monitor.py crosshairs can be attached again (644a97a)
  • Config_dialog.py prevents to add one scan twice (12469c8)
  • Config_dialog.py export to .yaml fixed (7e99920)
  • Config_dialog.py scan_type structure implemented (e41d81c)
  • Config_dialog.py config from default mode can be exported to dict (55b5ca7)
  • Config_dialog.py tabs for scans and plots are closable now (ec88564)
  • Modular_app.py configs are linked to the actual version of the state of the device monitor (d78940d)
  • Config_dialog.py can load the current configuration of the plot (f94a29b)

Documentation

  • Config_dialog.py comments added to example cases (4a6e73f)
  • Device_monitor.py update docstrings (a785bca)
  • Added sphinx base structure (9d36b96)

v0.28.1 (2023-10-19)

Fix

  • Stream_plot.py on_dap_update data dict opened correctly (28908dd)

v0.28.0 (2023-10-13)

Feature

  • BECDeviceMonitor modular class which can be used to replace placeholder in .ui file. (f3f55a7)
  • Placeholders initialised (75af040)

Fix

  • Scan_mode for BECDeviceMonitor fixed init_ui (59bba14)

v0.27.2 (2023-10-12)

Fix

v0.27.1 (2023-10-10)

Fix

  • Extreme.py default config file changed to the config_example.yaml (5814113)
  • Extreme.py retry action fixed in ErrorHandler (5162270)
  • Extreme.py advanced error handling with possibility to reload different config (51c3a9e)
  • Extreme.py error in configuration are displayed as messagebox (9750039)
  • Extreme.py validation function to check config key component structure (824ce82)
  • Extreme.py improved error handling for scan types mode (fbd299c)
  • Extreme.py init_ui changed > to >= for setting number of columns (6c773c7)
  • Extreme.py init_plot_background error handling (c525eba)
  • Extreme.py ui is initialised for the first scan of config in scan mode (fc60984)
  • Extreme.py client and device manager initialisation (ae79faa)
  • Extreme.py default config file changed to the config_example.yaml (d356cf7)
  • Extreme.py retry action fixed in ErrorHandler (b76df1b)
  • Extreme.py advanced error handling with possibility to reload different config (d623cf9)
  • Extreme.py error in configuration are displayed as messagebox (89a52a0)
  • Extreme.py validation function to check config key component structure (5a7ac86)
  • Extreme.py improved error handling for scan types mode (ece1859)
  • Extreme.py init_ui changed > to >= for setting number of columns (a0a89fe)
  • Extreme.py init_plot_background error handling (dafb6fa)
  • Extreme.py ui is initialised for the first scan of config in scan mode (82bebe6)
  • Extreme.py client and device manager initialisation (cf15163)
  • Formatter fixed (153c5f4)

v0.27.0 (2023-09-25)

Feature

  • Motor_example.py in start/end mode new button allowing user to go to end position (65b045e)

Fix

  • Epics removed from requirements (44cc881)
  • Motor_example.py load .csv logic fixed (b78152b)
  • Motor_example.py export .csv logic fixed (85841cd)
  • Motor_example.py precision in duplicate table fixed (05f48de)
  • Motor_example.py duplicate table fixed (401fec8)
  • Motor_example.py manual changing coordinates in start/stop works again (b13509e)
  • Motor_example.py replot points logic simplified (a15860a)
  • Motor_example.py new independent mapping relying on the table (673ed32)
  • Extreme.py formatting fixed (63f52fc)
  • Line_plot.py ROI interactions fixed (e4f23f5)
  • Online changes e21543 (b41d63e)
  • Motor_example.py user is blocked to duplicate last entry in start/end mode if end coordinate was not defined (418480f)
  • Motor_example.py - new more robust logic for getting coordinates for table go buttons (08f508f)

Performance

  • Motor_example.py replot logic optimizes (a4fb6bd)

v0.26.7 (2023-09-19)

Fix

  • Eiger_plot_hist.py removed (abe35bf)

v0.26.6 (2023-09-19)

Fix

  • Extreme.py saved to .yaml works correctly for different scans configurations (cb144c7)
  • Extreme.py fixed logic of loading new config.yaml during app operation (4287ac8)

Documentation

  • Extreme.py updated documentation (7ff72b4)

v0.26.5 (2023-09-13)

Fix

  • Motor_example.py help extended (a5c6ffa)

v0.26.4 (2023-09-12)

Fix

v0.26.3 (2023-09-12)

Fix

  • Import works for both modes (b867f25)

v0.26.2 (2023-09-12)

Fix

  • Import with start/stop mode works again (cacc076)

v0.26.1 (2023-09-12)

Fix

  • Removed scipy from eiger_plot.py (0e634ee)

v0.26.0 (2023-09-12)

Feature

  • Plot different signals and plot configurations based on different scans (57e6990)

v0.25.1 (2023-09-12)

Fix

  • Specific config for csaxs (8ff983f)
  • Mode lock in config to disable changing the mode for users (10ccf0c)

v0.25.0 (2023-09-12)

Feature

  • ComboBox to switch between entries mode (f2fde2c)

Fix

  • Extra columns works again (2123361)
  • Resize table is user controlled (63e3896)

v0.24.2 (2023-09-12)

Fix

v0.24.1 (2023-09-08)

Fix

  • Typo fixed in mca_plot.py (3b12f1b)

v0.24.0 (2023-09-08)

Feature

  • HistogramLUT for mca_plot (ae04072)

v0.23.0 (2023-09-08)

Feature

  • Added key bindings and help dialog (ade893d)

v0.22.0 (2023-09-08)

Feature

v0.21.2 (2023-09-08)

Fix

  • Moved mask as a last step of image processing (87d5467)

v0.21.1 (2023-09-08)

Fix

  • Update_signal typo fixed (43f03b5)

v0.21.0 (2023-09-08)

Feature

  • Added functionality to load mask (33d1193)

Fix

v0.20.0 (2023-09-08)

Feature

  • Added rotate and transpose logic (acd7a3b)

Fix

  • Added missing .ui file to git (ae8fc94)

v0.19.2 (2023-09-08)

Fix

v0.19.1 (2023-09-08)

Fix

  • Rotation always counter-clockwise (00385ab)

v0.19.0 (2023-09-08)

Feature

  • Rotation of the image to the left/right by 90, 180, 270 degree (327f6b3)
  • Simulation stream with Gaussian peak in 1st quadrant (4fa8d46)
  • Eiger_plot.py in example folder with new GUI (5cbedec)

v0.18.1 (2023-09-08)

Fix

v0.18.0 (2023-09-08)

Feature

v0.17.1 (2023-09-08)

Fix

  • Start_device_consumer changed from EP device_status to scan_status (46a3981)

v0.17.0 (2023-09-07)

Feature

  • Console arguments added for Redis port, device, and sub_device tag (fb52b2a)
  • Plot flips every second row (c368871)
  • Device_consumer is getting scanID and initialise stream_consumer (9271b91)
  • Simulation and simple 2D plot for mca card stream (bfef713)

v0.16.4 (2023-09-06)

Fix

  • Self.limit_map_data fixed to be initialised only with integers from limits (b62509a)

v0.16.3 (2023-09-06)

Fix

  • Limit spinBoxes morphed to doubleSpinBoxes (a1264fe)

Documentation

  • PyqtGraph controls in help (2397af1)

v0.16.2 (2023-09-06)

Fix

  • X and y motor can be linked again (f45512e)

v0.16.1 (2023-09-06)

Fix

  • Default values fixed from .yaml (8a6e2da)

v0.16.0 (2023-09-06)

Feature

  • Added help button (2087d19)
  • Table can be loaded from .csv (15d995f)
  • Table can be exported to csv (772f18f)
  • Additional extra rows takes values from previous row (1235294)
  • Additional columns can be added through .yaml (fa76acb)

Fix

  • Help extended (9fba033)
  • Table loads number of columns correctly (bf12963)
  • Content always aligned to centre (74884a3)

v0.15.0 (2023-09-06)

Feature

  • Step for x and y can be linked or separated (16ab746)
  • User can choose if to save coordinates when moving to absolute coordinates (6324199)

Fix

  • Table checkbox fixed (7e6244c)
  • Partial fix to table checkBox (75f5c8f)
  • Coordinates markers are updated on the map, if X, Y in table manually is changed (0aa667b)
  • Added float validator to the table (be1bd81)
  • Table bug, when deleted multiple rows (9d83a45)
  • Table bug, when user deleted row and wanted to go to the previous position (63e6d61)

v0.14.2 (2023-09-05)

Fix

  • Bec_config initialisation by command line argument (b7a1b8b)

v0.14.1 (2023-09-05)

Fix

  • Gui default tab changed to coordinates table (3c74fa5)

v0.14.0 (2023-09-05)

Feature

  • Enable gui button, in the case that motor movement is not finished (84155d2)
  • Saved coordinates are shown on the map (0ca665a)

Fix

  • Motor position points can be switched on/off if points were deleted (5b30dfd)
  • Highlight disapear with new motor (3fb8651)
  • New points do not make invisible points visible again (fb10551)
  • Checkbox visibility toggle is working. (a178c43)
  • Saved coordinates can be removed from table and from the map again (c32e95a)

v0.13.0 (2023-09-05)

Feature

  • Crosshair highlight at motor position (9228e5a)
  • Increase step size double with key bindings (e9ef1e3)
  • Go, set, save current coordinates and keyboard shortcuts (5d6a328)

Fix

  • Spinbox limits in ui file (8de08cf)
  • Precision updated correctly (172ccc6)

v0.12.0 (2023-09-04)

Feature

  • Config from .yaml file (1a67758)
  • Removal of motor configurations from user (34212d4)

Fix

  • Error message if motor do not have limits attribute (bf93b02)

Documentation

  • Added documentation to all classes and methods (4afaa1b)

v0.11.0 (2023-09-04)

Feature

  • Colorbutton next to each curve in the table to be able to set up colors (2c6719c)

Fix

  • User selected colors are preserved with the new scan (8e7885f)
  • Colorbutton change now symbols as well (6d2e1c9)

v0.10.0 (2023-09-01)

Feature

  • Load and export configuration into .yaml from GUI (e527353)
  • Error messages if name or entry is wrong (415c4ee)
  • Number of columns can be dynamically changed (65bfccc)
  • Multi window interface created for extreme BL (69c38d6)

Fix

  • Check if num_columns is not higher that actual number of plots (aac6e17)
  • Add max number of columns according to the number of plots (fbd71c1)
  • More specific error messages (583e643)
  • Bec_dispatcher.py can take multiple workers as a list (7bcf88d)
  • Config.yaml can be passed as a console argument to extreme.py (b8aa373)
  • Columns span generalised for any number of columns (2d851b6)

Documentation

  • Updated documentation and TODOs (0ebe35a)
  • Fixed documentation (2f7c1b9)

v0.9.0 (2023-08-29)

Feature

  • Migrate to .yaml config file instead of argparse (a9f1688)
  • Better color coding of curves (0eff18f)

v0.8.1 (2023-08-29)

Fix

  • Added missing local .ui file (f0589b7)

v0.8.0 (2023-08-29)

Feature

  • User can specify tuple of (x,y) devices which wants to plot (3344f1b)
  • Fit table hardcode to "gaussian_fit_worker_3" (3af57ab)
  • Crosshair snapped to x, y data automatically, clicked coordinates glows (49ba6fe)
  • Crosshair snaps to data, but it is activated with button due to debug (223f102)
  • Dap fit plotted as curve, data as scatter (118f6af)
  • Oneplot can receive one motor and one monitor signal (ff545bf)
  • Oneplot initialized as an example app for plotting motor vs monitor signals + dispatcher loop over msg (98c0c64)

Fix

  • User can disable dap_worker and just choose signals to plot (cab5354)
  • Crosshair snaps correctly to x dataset (2ed5d72)

v0.7.0 (2023-08-28)

Feature

  • Labels of current motors are shown in motors limits (413e435)
  • Total number of points, scatter size and number of point to dim after last position can be changed from GUI (e0b52fc)
  • Speed and frequency can be updated from GUI (f391a2f)
  • Speed and frequency is retrieved from devices (ce98164)
  • Delete coordinate table row by DELETE or BACKSPACE key (5dd0af6)
  • Motor selection (cab32be)
  • New GUI (0226188)
  • Keyboard shortcut to go to coordinates (3c0e595)
  • Ability to choose how many points should be dimmed before reaching the threshold + total number of point which should be stored. (9eae697)
  • Stop movement function, one callback function for 2 motors, move_finished is emitted in move_motor function not in callback (187c748)
  • Controls are disabled while motor is moving and enabled when motor movement is finished (ed84293)
  • Motor coordinates are now scatter instead of image (3f6d5c6)
  • Going to absolute coordinates saves coordinate in the table for later use with tag (8be98c9)
  • Table with coordinates getting initial coordinates of motor (92388c3)
  • Motor move to absolute (X,Y) coordinates (cbe27e4)
  • Motor limits can be changed by spinBoxes (2d1665c)
  • Switch for keyboard shortcuts for motor movement (cac4562)
  • Setting map according to motor limits (512e698)
  • Map of motor position (e6952a6)
  • Motor_example.py created, motor samx and samy can be moved by buttons (947ba9f)

Fix

  • Line_plot.py default changed back to "gauss_bpm" (64708bc)
  • Motor selection is disabled while motor is moving (c7e35d7)
  • Init_motor_map receive motor position from motor_thread (95ead71)
  • Motor movement absolute fixed - movement by thread (11aa15f)

v0.6.3 (2023-08-17)

Fix

  • Crosshair handles dynamic changes of number of curves in 1D plot (242737b)

Documentation

  • Crosshair class documentation (8a60cad)

v0.6.2 (2023-08-17)

Fix

  • Correct coordinates for cursor table (ce54daf)

v0.6.1 (2023-08-14)

Fix

  • Crosshair snaps to correct coordinates also with logx and logy (167a891)

v0.6.0 (2023-08-11)

Feature

  • New GUI for line_plot.py (b57b3bb)
  • Cursor universal signals (20e9516)

v0.5.0 (2023-08-11)

Feature

  • Add generic connect function for slots (6a3df34)
  • Add possibility to provide service config (8c9a9c9)

Fix

  • Dispatcher argparse and scan_plot tests (67f619e)
  • Gui event removing bugs (a9dd191)

v0.4.0 (2023-08-11)

Feature

  • Cursor universal for 1D and 2D (f75554b)
  • Added qt_utils package with general Crosshair function (5353fed)
  • 2D plot updating (d32088b)
  • Metadata available on_dap_update (18b5d46)
  • Plotting from streamer (bb806c1)
  • Added Legend to plot (0feca4b)
  • Cursor coordinate as a QTable (a999f76)
  • Changed from PlotItem to GraphicsLayoutWidget, added LabelItem (075cc79)
  • Add display_ui_file.py (91d8ffa)
  • Add disconnect_dap_slot (1325704)
  • Inherit from GraphicsView for consistency with 2D plot (d8c101c)
  • Add BECScanPlot2D (67905e8)
  • Emit the full bec message to slots (1bb3020)

Fix

  • Q selection for gui_event signal (0bf452a)
  • Fixed logic in data subscription (c2d469b)
  • Scan_plot to accept metadata from dap signal (7bec0b5)
  • Plotting latest 1d curves (378be81)
  • Testing the data structure of plotting (4fb0a3b)
  • Fix examples when run directly as a script (cd11ee5)
  • Module paths (e7f644c)

v0.3.0 (2023-07-19)

Feature

  • Add auto-computed color_list from colormaps (3e1708b)
  • Add functionality for plotting multiple signals (10e2906)
  • Added lineplot widget (989a3f0)
  • Added ctrl_c from grum (8fee13a)

Fix

  • Add warning for non-existing signalz (48075e4)
  • Documentation and bugfix for mouse_moved (a460f3c)

Documentation

  • Add notes about qt designer install via conda-forge (d8038a8)
  • Added license (db2d33e)

v0.2.1 (2023-07-13)

Fix

  • Fixed setup config (wrong name) (947db1e)
  • Fixed bec_lib dependency (86f4def)

v0.2.0 (2023-07-13)

Feature

  • Move ivan's qtwidgets to bec-widgets (34e5ed2)

v0.1.0 (2023-07-11)

Feature