From e2a66507c80fe3492218ce53d2259e018923f185 Mon Sep 17 00:00:00 2001 From: Filip Leonarski Date: Mon, 19 May 2025 16:10:30 +0200 Subject: [PATCH] Fixes at the BL --- common/src/aaredaqlib/helical_geometry.py | 2 +- common/src/aaredaqlib/models.py | 3 ++- common/src/aaredaqlib/raster_grid.py | 6 +++--- common/src/aaredaqlib/rotation_scan.py | 4 ++-- common/src/aaredaqlib/screening_scan.py | 2 +- daq/pyproject.toml | 5 +++-- daq/src/aaredaq/daq.py | 8 +++++--- daq/src/aaredaq/devices.py | 2 +- gui/src/aaregui/main.py | 4 ++-- gui/src/aaregui/main_window.py | 20 +++++++++---------- gui/src/aaregui/panels/abr_tweak_panel.py | 6 +++--- gui/src/aaregui/panels/beam_center_panel.py | 2 +- gui/src/aaregui/panels/beamline_controls.py | 16 +++++++-------- .../aaregui/panels/beamline_state_panel.py | 2 +- .../panels/data_collection_settings.py | 12 +++++------ gui/src/aaregui/panels/file_path_panel.py | 2 +- gui/src/aaregui/panels/helical_scan_panel.py | 2 +- gui/src/aaregui/panels/illumination_panel.py | 4 ++-- .../aaregui/panels/loop_centering_panel.py | 2 +- gui/src/aaregui/panels/omega_panel.py | 6 +++--- .../aaregui/panels/raster_data_collection.py | 2 +- gui/src/aaregui/panels/sample_queue_panel.py | 4 ++-- .../panels/screening_data_collection.py | 2 +- gui/src/aaregui/panels/smargon_panel.py | 6 +++--- .../panels/standard_data_collection.py | 2 +- gui/src/aaregui/panels/status_panel.py | 6 ++++-- gui/src/aaregui/panels/tell_sample_panel.py | 4 ++-- gui/src/aaregui/panels/zoom_panel.py | 4 ++-- gui/src/aaregui/widgets/camera_image.py | 4 ++-- gui/src/aaregui/widgets/status_bar.py | 14 ++++++------- 30 files changed, 82 insertions(+), 76 deletions(-) diff --git a/common/src/aaredaqlib/helical_geometry.py b/common/src/aaredaqlib/helical_geometry.py index 005970da..610e30c6 100644 --- a/common/src/aaredaqlib/helical_geometry.py +++ b/common/src/aaredaqlib/helical_geometry.py @@ -1,4 +1,4 @@ -from aaredaqlib import SmargonCoordinate +from aaredaqlib.coordinate import SmargonCoordinate from aaredaqlib.rotation_scan import RotationScanRequest diff --git a/common/src/aaredaqlib/models.py b/common/src/aaredaqlib/models.py index dd2594b0..f38ff15c 100644 --- a/common/src/aaredaqlib/models.py +++ b/common/src/aaredaqlib/models.py @@ -140,10 +140,11 @@ class BeamlineStatus(BaseModel): light: Annotated[float, Field(ge=0.0, le=100.0)] cryojet_K: float shutter_open: bool + flux_ph_s: float class SessionStatus(BaseModel): session: SessionsStateEnum = SessionsStateEnum.Vacant - current_pgroup: str | None + current_pgroup: str | None = None staff: bool = False class DAQStatusModel(BaseModel): diff --git a/common/src/aaredaqlib/raster_grid.py b/common/src/aaredaqlib/raster_grid.py index 534f2a05..58c0d2ca 100644 --- a/common/src/aaredaqlib/raster_grid.py +++ b/common/src/aaredaqlib/raster_grid.py @@ -3,9 +3,9 @@ from typing import Annotated from pydantic import Field, AfterValidator -from aaredaqlib import Coordinate, positive_coords, SmargonCoordinate -from aaredaqlib import SampleGeometryModel -from aaredaqlib import ScanRequest +from aaredaqlib.coordinate import Coordinate, positive_coords, SmargonCoordinate +from aaredaqlib.sample_geometry import SampleGeometryModel +from aaredaqlib.scan_request import ScanRequest def normalize_angle(angle_deg: float) -> float: diff --git a/common/src/aaredaqlib/rotation_scan.py b/common/src/aaredaqlib/rotation_scan.py index 19f249d0..2853a6c6 100644 --- a/common/src/aaredaqlib/rotation_scan.py +++ b/common/src/aaredaqlib/rotation_scan.py @@ -1,5 +1,5 @@ -from aaredaqlib import SmargonCoordinate -from aaredaqlib import ScanRequest +from aaredaqlib.coordinate import SmargonCoordinate +from aaredaqlib.scan_request import ScanRequest class RotationScanRequest(ScanRequest): diff --git a/common/src/aaredaqlib/screening_scan.py b/common/src/aaredaqlib/screening_scan.py index e5d93f43..24c1f743 100644 --- a/common/src/aaredaqlib/screening_scan.py +++ b/common/src/aaredaqlib/screening_scan.py @@ -1,4 +1,4 @@ -from aaredaqlib import ScanRequest +from aaredaqlib.scan_request import ScanRequest class ScreeningScanRequest(ScanRequest): diff --git a/daq/pyproject.toml b/daq/pyproject.toml index fc54c20a..bb12a0a5 100644 --- a/daq/pyproject.toml +++ b/daq/pyproject.toml @@ -14,8 +14,9 @@ dependencies = [ "uvicorn==0.34.2", "ultralytics==8.3.133", "aareDB==0.1.1a4", - "aaredaqlib==0.1.0", - "jfjoch_client==1.0.0rc37" + "jfjoch_client==1.0.0rc37", + "opencv-python-headless==4.11.0.86", + "python_multipart==0.0.20" ] [lint] diff --git a/daq/src/aaredaq/daq.py b/daq/src/aaredaq/daq.py index 38003d78..26f6bf5f 100644 --- a/daq/src/aaredaq/daq.py +++ b/daq/src/aaredaq/daq.py @@ -11,7 +11,7 @@ from aaredaqlib.models import ( SampleShortInfo, PuckLoadedInfo, SampleShortInfoList, - DAQStatusModel, BeamlineStatus, ) + DAQStatusModel, BeamlineStatus, SessionStatus, ) from aaredaqlib.raster_grid import RasterGridRequest from aaredaqlib.rotation_scan import RotationScanRequest from aaredaqlib.sample_geometry import SampleGeometryModel @@ -712,7 +712,8 @@ class AareDAQ: ring_current_mA=self.__devs.ring_current, light=self.light, cryojet_K=self.__devs.cryojet_temp, - shutter_open=self.__devs.shutter + shutter_open=self.__devs.shutter, + flux_ph_s=3.0e12 ) @property @@ -723,6 +724,7 @@ class AareDAQ: busy=self.busy, geom=self.sample_geometry, bl=self.beamline_status, - sample=self.sample + sample=self.sample, + session=SessionStatus() ) diff --git a/daq/src/aaredaq/devices.py b/daq/src/aaredaq/devices.py index a2d22670..76b40718 100644 --- a/daq/src/aaredaq/devices.py +++ b/daq/src/aaredaq/devices.py @@ -30,7 +30,7 @@ class BeamlineDevices: self.tell = TellClient(beamline) self.smargon = smargon.Smargon(beamline) - self.__energy_pv = PV(f"{BEAMLINE}-OP_DCCM:ENERGY1") + self.__energy_pv = PV(f"{BEAMLINE}-OP-DCCM:ENERGY1") self.__ring_current_pv = PV(f"ARS07-DPCT-0100:CURR") self.__cryojet_temp = PV(f"{BEAMLINE}-ES-CRSM:TEMP_RBV") diff --git a/gui/src/aaregui/main.py b/gui/src/aaregui/main.py index abe59fff..e6dc2c9b 100644 --- a/gui/src/aaregui/main.py +++ b/gui/src/aaregui/main.py @@ -2,8 +2,8 @@ import sys from PySide6.QtWidgets import QApplication, QDialog -from aaregui import MainWindow -from aaregui import LoginDialog +from aaregui.main_window import MainWindow +from aaregui.widgets.login import LoginDialog if __name__ == "__main__": app = QApplication(sys.argv) diff --git a/gui/src/aaregui/main_window.py b/gui/src/aaregui/main_window.py index 91b0d74f..f36827b3 100644 --- a/gui/src/aaregui/main_window.py +++ b/gui/src/aaregui/main_window.py @@ -13,16 +13,16 @@ from aaredaqlib.coordinate import Coordinate, SmargonCoordinate from aaredaqlib.models import SampleShortInfoList, TokenData from aaredaqlib.sample_geometry import SampleGeometryModel -from aaregui import BeamlineControls -from aaregui import DataCollectionSettings -from aaregui import SampleQueuePanel -from aaregui import StatusPanel -from aaregui import TellSamplePanel -from aaregui import SampleCameraThread -from aaregui import DAQWorker -from aaregui import SampleCameraImageLabel -from aaregui import NoWheelScrollArea -from aaregui import StatusBar +from aaregui.panels.beamline_controls import BeamlineControls +from aaregui.panels.data_collection_settings import DataCollectionSettings +from aaregui.panels.sample_queue_panel import SampleQueuePanel +from aaregui.panels.status_panel import StatusPanel +from aaregui.panels.tell_sample_panel import TellSamplePanel +from aaregui.threads.camera_thread import SampleCameraThread +from aaregui.threads.daq_worker import DAQWorker +from aaregui.widgets.camera_image import SampleCameraImageLabel +from aaregui.widgets.no_wheel_scroll_area import NoWheelScrollArea +from aaregui.widgets.status_bar import StatusBar # Subclass QMainWindow to define the behavior of your application diff --git a/gui/src/aaregui/panels/abr_tweak_panel.py b/gui/src/aaregui/panels/abr_tweak_panel.py index 310f4bee..edebbccb 100644 --- a/gui/src/aaregui/panels/abr_tweak_panel.py +++ b/gui/src/aaregui/panels/abr_tweak_panel.py @@ -4,9 +4,9 @@ from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QPushButton from aaredaqlib.coordinate import Coordinate from aaredaqlib.models import DAQStatusModel -from aaregui import ButtonWithPayload -from aaregui import NumberLineEdit -from aaregui import TitleLabel +from aaregui.widgets.button_with_payload import ButtonWithPayload +from aaregui.widgets.number_line_edit import NumberLineEdit +from aaregui.widgets.title_label import TitleLabel class AbrTweakButtons(QWidget): diff --git a/gui/src/aaregui/panels/beam_center_panel.py b/gui/src/aaregui/panels/beam_center_panel.py index 720befb1..a3506c91 100644 --- a/gui/src/aaregui/panels/beam_center_panel.py +++ b/gui/src/aaregui/panels/beam_center_panel.py @@ -1,7 +1,7 @@ from PySide6.QtCore import Signal, Slot from PySide6.QtWidgets import QWidget, QGridLayout, QPushButton -from aaregui import TitleLabel +from aaregui.widgets.title_label import TitleLabel class BeamCenterWidget(QWidget): diff --git a/gui/src/aaregui/panels/beamline_controls.py b/gui/src/aaregui/panels/beamline_controls.py index 12b08320..03911a2e 100644 --- a/gui/src/aaregui/panels/beamline_controls.py +++ b/gui/src/aaregui/panels/beamline_controls.py @@ -1,13 +1,13 @@ from PySide6.QtWidgets import QFrame, QVBoxLayout -from aaregui import AbrTweakWidget -from aaregui import BeamCenterWidget -from aaregui import BeamlineStatePanel -from aaregui import IlluminationPanel -from aaregui import LoopCenteringPanel -from aaregui import OmegaPanel -from aaregui import SmargonPanel -from aaregui import ZoomPanel +from aaregui.panels.abr_tweak_panel import AbrTweakWidget +from aaregui.panels.beam_center_panel import BeamCenterWidget +from aaregui.panels.beamline_state_panel import BeamlineStatePanel +from aaregui.panels.illumination_panel import IlluminationPanel +from aaregui.panels.loop_centering_panel import LoopCenteringPanel +from aaregui.panels.omega_panel import OmegaPanel +from aaregui.panels.smargon_panel import SmargonPanel +from aaregui.panels.zoom_panel import ZoomPanel class BeamlineControls(QFrame): diff --git a/gui/src/aaregui/panels/beamline_state_panel.py b/gui/src/aaregui/panels/beamline_state_panel.py index 269691de..12064bff 100644 --- a/gui/src/aaregui/panels/beamline_state_panel.py +++ b/gui/src/aaregui/panels/beamline_state_panel.py @@ -1,6 +1,6 @@ from PySide6.QtWidgets import QWidget, QGridLayout, QPushButton -from aaregui import TitleLabel +from aaregui.widgets.title_label import TitleLabel class BeamlineStatePanel(QWidget): diff --git a/gui/src/aaregui/panels/data_collection_settings.py b/gui/src/aaregui/panels/data_collection_settings.py index 3f78866b..171c318b 100644 --- a/gui/src/aaregui/panels/data_collection_settings.py +++ b/gui/src/aaregui/panels/data_collection_settings.py @@ -12,12 +12,12 @@ from aaredaqlib.rotation_scan import RotationScanRequest from aaredaqlib.sample_geometry import SampleGeometryModel from aaredaqlib.screening_scan import ScreeningScanRequest -from aaregui import FilePathPanel -from aaregui import HelicalDataCollectionPanel -from aaregui import RasterDataCollectionPanel -from aaregui import ScreeningDataCollectionPanel -from aaregui import StandardDataCollectionPanel -from aaregui import TitleLabel +from aaregui.panels.file_path_panel import FilePathPanel +from aaregui.panels.helical_scan_panel import HelicalDataCollectionPanel +from aaregui.panels.raster_data_collection import RasterDataCollectionPanel +from aaregui.panels.screening_data_collection import ScreeningDataCollectionPanel +from aaregui.panels.standard_data_collection import StandardDataCollectionPanel +from aaregui.widgets.title_label import TitleLabel class DataCollectionSettings(QFrame): diff --git a/gui/src/aaregui/panels/file_path_panel.py b/gui/src/aaregui/panels/file_path_panel.py index 08fd494f..2c4d26c7 100644 --- a/gui/src/aaregui/panels/file_path_panel.py +++ b/gui/src/aaregui/panels/file_path_panel.py @@ -1,6 +1,6 @@ from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QLineEdit -from aaregui import TitleLabel +from aaregui.widgets.title_label import TitleLabel class FilePathPanel(QWidget): diff --git a/gui/src/aaregui/panels/helical_scan_panel.py b/gui/src/aaregui/panels/helical_scan_panel.py index f1dab84e..3c74d913 100644 --- a/gui/src/aaregui/panels/helical_scan_panel.py +++ b/gui/src/aaregui/panels/helical_scan_panel.py @@ -12,7 +12,7 @@ from aaredaqlib.helical_geometry import HelicalScanRequest from aaredaqlib.models import DAQStatusModel from aaredaqlib.sample_geometry import SampleGeometryModel -from aaregui import NumberLineEdit +from aaregui.widgets.number_line_edit import NumberLineEdit class HelicalDataCollectionPanel(QWidget): diff --git a/gui/src/aaregui/panels/illumination_panel.py b/gui/src/aaregui/panels/illumination_panel.py index 04d4f7e3..ce441fad 100644 --- a/gui/src/aaregui/panels/illumination_panel.py +++ b/gui/src/aaregui/panels/illumination_panel.py @@ -2,7 +2,7 @@ from PySide6.QtCore import Qt, Signal, Slot from PySide6.QtWidgets import QWidget, QGridLayout, QSlider from aaredaqlib.models import DAQStatusModel -from aaregui import TitleLabel +from aaregui.widgets.title_label import TitleLabel class IlluminationPanel(QWidget): @@ -35,4 +35,4 @@ class IlluminationPanel(QWidget): @Slot(DAQStatusModel) def update_daq_status(self, s: DAQStatusModel): if not self.is_sliding: # Update only if not sliding - self.slider.setValue(round(s.light)) + self.slider.setValue(round(s.bl.light)) diff --git a/gui/src/aaregui/panels/loop_centering_panel.py b/gui/src/aaregui/panels/loop_centering_panel.py index 92c5f768..c113b53a 100644 --- a/gui/src/aaregui/panels/loop_centering_panel.py +++ b/gui/src/aaregui/panels/loop_centering_panel.py @@ -1,6 +1,6 @@ from PySide6.QtWidgets import QWidget, QGridLayout, QPushButton -from aaregui import TitleLabel +from aaregui.widgets.title_label import TitleLabel class LoopCenteringPanel(QWidget): diff --git a/gui/src/aaregui/panels/omega_panel.py b/gui/src/aaregui/panels/omega_panel.py index 1017ba2b..682ccc50 100644 --- a/gui/src/aaregui/panels/omega_panel.py +++ b/gui/src/aaregui/panels/omega_panel.py @@ -2,9 +2,9 @@ from PySide6.QtCore import Signal, Slot from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QHBoxLayout from aaredaqlib.models import DAQStatusModel -from aaregui import ButtonWithPayload -from aaregui import NumberLineEdit -from aaregui import TitleLabel +from aaregui.widgets.button_with_payload import ButtonWithPayload +from aaregui.widgets.number_line_edit import NumberLineEdit +from aaregui.widgets.title_label import TitleLabel class OmegaEntryWidget(QWidget): diff --git a/gui/src/aaregui/panels/raster_data_collection.py b/gui/src/aaregui/panels/raster_data_collection.py index 3f5e063f..f81e2968 100644 --- a/gui/src/aaregui/panels/raster_data_collection.py +++ b/gui/src/aaregui/panels/raster_data_collection.py @@ -1,7 +1,7 @@ from PySide6.QtCore import Signal, Slot from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QSizePolicy, QSpacerItem -from aaregui import NumberLineEdit +from aaregui.widgets.number_line_edit import NumberLineEdit class RasterDataCollectionPanel(QWidget): diff --git a/gui/src/aaregui/panels/sample_queue_panel.py b/gui/src/aaregui/panels/sample_queue_panel.py index d3af5fbd..ce09011a 100644 --- a/gui/src/aaregui/panels/sample_queue_panel.py +++ b/gui/src/aaregui/panels/sample_queue_panel.py @@ -3,8 +3,8 @@ from PySide6.QtWidgets import QFrame, QVBoxLayout, QHBoxLayout, QPushButton, QHe QTableView from aaredaqlib.models import SampleShortInfoList, SampleShortInfo -from aaregui import SampleQueueSpreadsheet -from aaregui import TitleLabel +from aaregui.models.sample_queue_model import SampleQueueSpreadsheet +from aaregui.widgets.title_label import TitleLabel class SampleQueuePanel(QFrame): diff --git a/gui/src/aaregui/panels/screening_data_collection.py b/gui/src/aaregui/panels/screening_data_collection.py index 7c1d64ed..a0a02fb1 100644 --- a/gui/src/aaregui/panels/screening_data_collection.py +++ b/gui/src/aaregui/panels/screening_data_collection.py @@ -7,7 +7,7 @@ from PySide6.QtWidgets import ( QSpacerItem, ) -from aaregui import NumberLineEdit +from aaregui.widgets.number_line_edit import NumberLineEdit class ScreeningDataCollectionPanel(QWidget): diff --git a/gui/src/aaregui/panels/smargon_panel.py b/gui/src/aaregui/panels/smargon_panel.py index 883ca2d3..571a9cef 100644 --- a/gui/src/aaregui/panels/smargon_panel.py +++ b/gui/src/aaregui/panels/smargon_panel.py @@ -2,9 +2,9 @@ from PySide6.QtCore import Signal, Slot from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QPushButton from aaredaqlib.models import DAQStatusModel -from aaregui import ButtonWithPayload -from aaregui import NumberLineEdit -from aaregui import TitleLabel +from aaregui.widgets.button_with_payload import ButtonWithPayload +from aaregui.widgets.number_line_edit import NumberLineEdit +from aaregui.widgets.title_label import TitleLabel from aaredaqlib.coordinate import SmargonCoordinate, Coordinate from aaredaqlib.sample_geometry import SampleGeometryModel diff --git a/gui/src/aaregui/panels/standard_data_collection.py b/gui/src/aaregui/panels/standard_data_collection.py index 2bc315fe..cdb0609d 100644 --- a/gui/src/aaregui/panels/standard_data_collection.py +++ b/gui/src/aaregui/panels/standard_data_collection.py @@ -1,6 +1,6 @@ from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QSpacerItem, QSizePolicy -from aaregui import NumberLineEdit +from aaregui.widgets.number_line_edit import NumberLineEdit class StandardDataCollectionPanel(QWidget): diff --git a/gui/src/aaregui/panels/status_panel.py b/gui/src/aaregui/panels/status_panel.py index de52627c..13c232ab 100644 --- a/gui/src/aaregui/panels/status_panel.py +++ b/gui/src/aaregui/panels/status_panel.py @@ -4,8 +4,8 @@ from PySide6.QtWidgets import QFrame, QGridLayout, QLabel, QSpacerItem, QSizePol from aaredaqlib.models import DAQStatusModel from aaredaqlib.sample_geometry import SampleGeometryModel -from aaregui import StatusLabel -from aaregui import TitleLabel +from aaregui.widgets.status_label import StatusLabel +from aaregui.widgets.title_label import TitleLabel class StatusPanel(QFrame): @@ -62,3 +62,5 @@ class StatusPanel(QFrame): self.beam_size.setText( f"{s.geom.beam_size_mm.x * 1000.0} x {s.geom.beam_size_mm.y * 1000.0}" ) + self.ring_current.setText(f"{s.bl.ring_current_mA:.1f}") + self.flux.setText(f"{(s.bl.flux_ph_s / 1e9):.2f}") diff --git a/gui/src/aaregui/panels/tell_sample_panel.py b/gui/src/aaregui/panels/tell_sample_panel.py index 207d45e5..dbc81d9c 100644 --- a/gui/src/aaregui/panels/tell_sample_panel.py +++ b/gui/src/aaregui/panels/tell_sample_panel.py @@ -11,8 +11,8 @@ from PySide6.QtWidgets import ( ) from aaredaqlib.models import BeamlineStateEnum, SampleShortInfo, SampleShortInfoList, DAQStatusModel -from aaregui import UserSampleSpreadsheet -from aaregui import TitleLabel +from aaregui.models.user_sample_model import UserSampleSpreadsheet +from aaregui.widgets.title_label import TitleLabel class TellSamplePanel(QFrame): diff --git a/gui/src/aaregui/panels/zoom_panel.py b/gui/src/aaregui/panels/zoom_panel.py index dcf4434f..ee228638 100644 --- a/gui/src/aaregui/panels/zoom_panel.py +++ b/gui/src/aaregui/panels/zoom_panel.py @@ -1,8 +1,8 @@ from PySide6.QtCore import Slot, Signal from PySide6.QtWidgets import QWidget, QGridLayout -from aaregui import ButtonWithPayload -from aaregui import TitleLabel +from aaregui.widgets.button_with_payload import ButtonWithPayload +from aaregui.widgets.title_label import TitleLabel class ZoomPanel(QWidget): diff --git a/gui/src/aaregui/widgets/camera_image.py b/gui/src/aaregui/widgets/camera_image.py index c7a340b9..8f2f7c85 100644 --- a/gui/src/aaregui/widgets/camera_image.py +++ b/gui/src/aaregui/widgets/camera_image.py @@ -22,7 +22,7 @@ from PySide6.QtWidgets import ( ) from aaredaqlib.models import DAQStatusModel -from aaregui import SmargonBookmarkList +from aaregui.models.bookmark import SmargonBookmarkList from aaredaqlib.coordinate import Coordinate, SmargonCoordinate from aaredaqlib.raster_grid import RasterGridRequest from aaredaqlib.sample_geometry import SampleGeometryModel @@ -52,7 +52,7 @@ class SampleCameraImageLabel(QGraphicsView): self.__pixmap = QPixmap("/home/leonarski_f/loop200.jpg") self.__geom = geom - self.__bookmarks: SmargonBookmarkList = SmargonBookmarkList(b=[]) + self.__bookmarks: SmargonBookmarkList = SmargonBookmarkList() self.__autoscale = True self.__show_coords = False self.__helical_start = SmargonCoordinate() diff --git a/gui/src/aaregui/widgets/status_bar.py b/gui/src/aaregui/widgets/status_bar.py index 6eeecdae..ffefaa34 100644 --- a/gui/src/aaregui/widgets/status_bar.py +++ b/gui/src/aaregui/widgets/status_bar.py @@ -2,8 +2,8 @@ from PySide6.QtCore import Signal, Slot, QPoint from PySide6.QtWidgets import QStatusBar, QDialog, QMenu from aaredaqlib.models import TokenData, BeamlineStateEnum, DAQStatusModel, SessionsStateEnum -from aaregui import ClickableLabel -from aaregui import PGroupDialog +from aaregui.widgets.clickable_label import ClickableLabel +from aaregui.widgets.pgroup_dialog import PGroupDialog class StatusBar(QStatusBar): @@ -38,8 +38,8 @@ class StatusBar(QStatusBar): @Slot(DAQStatusModel) def update_daq_status(self, status: DAQStatusModel): - if status.current_pgroup is not None: - self.pgroup_label.setText(f"""p-group: {status.current_pgroup} """) + if status.session.current_pgroup is not None: + self.pgroup_label.setText(f"""p-group: {status.session.current_pgroup} """) else: self.pgroup_label.setText(f"Inactive p-group ") @@ -73,11 +73,11 @@ class StatusBar(QStatusBar): self.busy_label.setText(html_content) session_flag = "" - if status.session == SessionsStateEnum.Vacant: + if status.session.session == SessionsStateEnum.Vacant: session_flag = """ Vacant ⬤ """ - elif status.session == SessionsStateEnum.OwnedByYou: + elif status.session.session == SessionsStateEnum.OwnedByYou: session_flag = """ Owned ⬤ """ - elif status.session == SessionsStateEnum.OwnedByElse: + elif status.session.session == SessionsStateEnum.OwnedByElse: session_flag = """ Other ⬤ """ html_content_session = f"""Session: {session_flag}"""