Fix: high resolution is updated when energy changes, dtz stays constant #228

Merged
perl_d merged 1 commits from fix/wvl-dtz into main 2026-09-16 01:14:41 +02:00
@@ -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)
)