diff --git a/src/aare/gui/panels/scan_settings_panel.py b/src/aare/gui/panels/scan_settings_panel.py index a60c3fc4..e732f3dd 100644 --- a/src/aare/gui/panels/scan_settings_panel.py +++ b/src/aare/gui/panels/scan_settings_panel.py @@ -345,6 +345,8 @@ class ScanSettingsPanel(QWidget): # -- status ------------------------------------------------------------- @Slot(DAQStatusModel) def update_daq_status(self, s: DAQStatusModel): + previous_energy = self._diffraction.energy_keV + self._diffraction = s.diffraction self._beamline_state = s.state self._ring_current = s.bl.ring_current_mA @@ -356,6 +358,14 @@ class ScanSettingsPanel(QWidget): self._dtz_to_res(s.bl.dtz_min), self._dtz_to_res(s.bl.dtz_max) ) + if self._diffraction.energy_keV != previous_energy: + dtz = self.dtz_enter.committed_value + resolution = self._dtz_to_res(dtz) + self.high_res_enter.set_committed_value(resolution) + + if self._show_user_values and self._user_dtz is not None: + self._user_resolution = resolution + self._can_edit_params = (not s.busy) and ( s.session.session in (SessionsStateEnum.OwnedByYou, SessionsStateEnum.PendingElseToYou) )