wip toggles working
All checks were successful
CI for csaxs_bec / test (push) Successful in 1m18s

This commit is contained in:
x01dc
2025-11-12 14:34:58 +01:00
parent 490ef32bb8
commit 128839322b

View File

@@ -140,8 +140,9 @@ class XRayEye(BECWidget, QWidget):
# Connection to redis endpoints
self.bec_dispatcher.connect_slot(self.device_updates, MessageEndpoints.device_readback("omny_xray_gui"))
self.bec_dispatcher.connect_slot(self.getting_shutter_status, MessageEndpoints.device_readback("omnyfsh"))
self.bec_dispatcher.connect_slot(self.getting_camera_status, MessageEndpoints.device_read_configuration(CAMERA[0]))
# self.bec_dispatcher.connect_slot(self.camera_running,MessageEndpoints.device_preview(CAMERA[0],CAMERA[1])) #TODO put better way how to sync property of device
self.connect_motors()
self.resize(800, 600)
QTimer.singleShot(0, self._init_gui_trigger)
@@ -187,11 +188,12 @@ class XRayEye(BECWidget, QWidget):
switch_row.addStretch()
self.camera_running_label = QLabel("Camera running", parent=self)
self.camera_running_toggle = ToggleSwitch(parent=self)
self.camera_running_toggle.checked = False
# self.camera_running_toggle.checked = False
self.camera_running_toggle.enabled.connect(self.camera_running_enabled)
self.shutter_label = QLabel("Shutter open", parent=self)
self.shutter_toggle = ToggleSwitch(parent=self)
self.shutter_toggle.checked = False
# self.shutter_toggle.checked = False
self.shutter_toggle.enabled.connect(self.opening_shutter)
switch_row.addWidget(self.shutter_label, 0, Qt.AlignVCenter)
switch_row.addWidget(self.shutter_toggle, 0, Qt.AlignVCenter)
switch_row.addWidget(self.camera_running_label, 0, Qt.AlignVCenter)
@@ -364,11 +366,29 @@ class XRayEye(BECWidget, QWidget):
@SafeSlot(dict,dict)
def getting_camera_status(self,data,meta):
live_mode_enabled = data.get("signals").get(f"{CAMERA[0]}_live_mode_enabled").get("value")
self.camera_running_toggle.blockSignals(True)
self.camera_running_toggle.checked = live_mode_enabled
self.camera_running_toggle.blockSignals(False)
@SafeSlot(bool)
def opening_shutter(self, enabled: bool):
logger.info(f"Shutter changed from GUI to: {enabled}")
self.shutter_toggle.blockSignals(True)
if enabled:
dev.omnyfsh.fshopen()
else:
dev.omnyfsh.fshclose()
# self.shutter_toggle.checked = enabled
self.shutter_toggle.blockSignals(False)
@SafeSlot(dict,dict)
def camera_running(self,data,meta):
...
def getting_shutter_status(self,data,meta):
shutter_open = bool(data.get("signals").get("omnyfsh_shutter").get("value"))
self.shutter_toggle.blockSignals(True)
self.shutter_toggle.checked = shutter_open
self.shutter_toggle.blockSignals(False)
@SafeSlot(bool, bool)
def on_motors_enable(self, x_enable: bool, y_enable: bool):