diff --git a/csaxs_bec/bec_widgets/widgets/tomo_params/tomo_params.py b/csaxs_bec/bec_widgets/widgets/tomo_params/tomo_params.py index 58ccfb8..e1b2c25 100644 --- a/csaxs_bec/bec_widgets/widgets/tomo_params/tomo_params.py +++ b/csaxs_bec/bec_widgets/widgets/tomo_params/tomo_params.py @@ -116,6 +116,7 @@ QUEUE_PARAM_NAMES = ( "golden_projections_at_0_deg_for_damage_estimation", "zero_deg_reference_at_each_subtomo", "corridor_size", + "at_each_angle_hook", ) DEFAULTS: dict[str, Any] = { @@ -139,6 +140,7 @@ DEFAULTS: dict[str, Any] = { "golden_ratio_bunch_size": 20, "golden_max_number_of_projections": 1000.0, "golden_projections_at_0_deg_for_damage_estimation": 0, + "at_each_angle_hook": None, } @@ -931,6 +933,13 @@ class TomoParamsWidget(BECWidget, QWidget): would silently ignore an in-progress edit. """ params = self._read_fields() + # _read_fields() only covers widget-backed params (self._pw); there's + # no editable widget for at_each_angle_hook yet, so it would + # otherwise be silently absent from this job's params -- which would + # make the executor leave whatever hook the *previous* queued job + # left active in place for this one too. Pass the current live value + # through unchanged instead of dropping it. + params["at_each_angle_hook"] = self._gv_get("at_each_angle_hook") error = self._validate(params) if error: QMessageBox.warning(self, "Validation error", error)