From d27b6d76460fa2b34cae30cd0ace9ce268b28685 Mon Sep 17 00:00:00 2001 From: Gabriel Selzer Date: Tue, 19 Nov 2024 12:45:47 -0600 Subject: [PATCH] Enable abs. positioning post-construction --- src/pymmcore_widgets/control/_stage_widget.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/pymmcore_widgets/control/_stage_widget.py b/src/pymmcore_widgets/control/_stage_widget.py index 5824b081b..66730852f 100644 --- a/src/pymmcore_widgets/control/_stage_widget.py +++ b/src/pymmcore_widgets/control/_stage_widget.py @@ -260,14 +260,12 @@ def __init__( if self._is_2axis: self._pos.addWidget(QLabel("X: ")) self._x_pos = MoveStageSpinBox(label="X") - self._x_pos.setEnabled(absolute_positioning) self._pos.addWidget(self._x_pos) self._x_pos.editingFinished.connect(self._move_x_absolute) self._pos.addWidget(QLabel(f"{self._Ylabel}: ")) self._y_pos = MoveStageSpinBox(label="Y") self._y_pos.editingFinished.connect(self._move_y_absolute) - self._y_pos.setEnabled(absolute_positioning) self._pos.addWidget(self._y_pos) self._pos.setAlignment(Qt.AlignmentFlag.AlignCenter) @@ -330,6 +328,7 @@ def __init__( # INITIALIZATION ---------------------------------------- self._update_position_from_core() + self.enable_absolute_positioning(absolute_positioning) self._set_as_default() def step(self) -> float: @@ -340,6 +339,11 @@ def setStep(self, step: float) -> None: """Set the step size.""" self._step.setValue(step) + def enable_absolute_positioning(self, enabled: bool) -> None: + if self._is_2axis: + self._x_pos.setEnabled(enabled) + self._y_pos.setEnabled(enabled) + def _enable_wdg(self, enabled: bool) -> None: self._step.setEnabled(enabled) self._move_btns.setEnabled(enabled)