diff --git a/src/ert/gui/simulation/evaluate_ensemble_panel.py b/src/ert/gui/simulation/evaluate_ensemble_panel.py index 47a54e1e80c..e6ad8986777 100644 --- a/src/ert/gui/simulation/evaluate_ensemble_panel.py +++ b/src/ert/gui/simulation/evaluate_ensemble_panel.py @@ -47,6 +47,7 @@ def __init__(self, ensemble_size: int, run_path: str, notifier: ErtNotifier): self._active_realizations_field.setValidator( RangeStringArgument(ensemble_size), ) + self._realizations_from_fs() layout.addRow("Active realizations", self._active_realizations_field) self.setLayout(layout) @@ -55,6 +56,7 @@ def __init__(self, ensemble_size: int, run_path: str, notifier: ErtNotifier): self.simulationConfigurationChanged ) self._ensemble_selector.ensemble_populated.connect(self._realizations_from_fs) + self._ensemble_selector.currentIndexChanged.connect(self._realizations_from_fs) def isConfigurationValid(self): return self._active_realizations_field.isValid() @@ -65,11 +67,3 @@ def getSimulationArguments(self): ensemble_name=self._ensemble_selector.currentText(), realizations=self._active_realizations_field.text(), ) - - def _realizations_from_fs(self): - ensemble = str(self._ensemble_selector.currentText()) - if ensemble: - mask = self.notifier.storage.get_ensemble_by_name( - ensemble - ).get_realization_mask_with_parameters() - self._active_realizations_field.model.setValueFromMask(mask) diff --git a/src/ert/gui/simulation/iterated_ensemble_smoother_panel.py b/src/ert/gui/simulation/iterated_ensemble_smoother_panel.py index 90d825ccc06..b974c2d7241 100644 --- a/src/ert/gui/simulation/iterated_ensemble_smoother_panel.py +++ b/src/ert/gui/simulation/iterated_ensemble_smoother_panel.py @@ -48,8 +48,8 @@ def __init__( self._name_field.setMinimumWidth(250) layout.addRow("Experiment name:", self._name_field) - ensemble_selector = EnsembleSelector(notifier) - layout.addRow("Current ensemble:", ensemble_selector) + self._ensemble_selector = EnsembleSelector(notifier) + layout.addRow("Current ensemble:", self._ensemble_selector) runpath_label = CopyableLabel(text=run_path) layout.addRow("Runpath:", runpath_label) @@ -91,6 +91,7 @@ def __init__( self._active_realizations_model, "config/simulation/active_realizations" ) self._active_realizations_field.setValidator(RangeStringArgument(ensemble_size)) + self._realizations_from_fs() layout.addRow("Active realizations", self._active_realizations_field) self._iterated_target_ensemble_format_field.getValidationSupport().validationChanged.connect( # noqa @@ -100,6 +101,9 @@ def __init__( self.simulationConfigurationChanged ) + self._ensemble_selector.ensemble_populated.connect(self._realizations_from_fs) + self._ensemble_selector.currentIndexChanged.connect(self._realizations_from_fs) + self.setLayout(layout) def setNumberIterations(self, iteration_count): diff --git a/src/ert/gui/simulation/multiple_data_assimilation_panel.py b/src/ert/gui/simulation/multiple_data_assimilation_panel.py index 0ffa023a146..3c0f0bf5106 100644 --- a/src/ert/gui/simulation/multiple_data_assimilation_panel.py +++ b/src/ert/gui/simulation/multiple_data_assimilation_panel.py @@ -86,6 +86,8 @@ def __init__( self._active_realizations_model, "config/simulation/active_realizations" ) self._active_realizations_field.setValidator(RangeStringArgument(ensemble_size)) + self._ensemble_selector = EnsembleSelector(notifier) + self._realizations_from_fs() layout.addRow("Active realizations:", self._active_realizations_field) self._restart_box = QCheckBox("") @@ -94,8 +96,8 @@ def __init__( self._restart_box.setEnabled(False) layout.addRow("Restart run:", self._restart_box) - self._ensemble_selector = EnsembleSelector(notifier) self._ensemble_selector.ensemble_populated.connect(self.restart_run_toggled) + self._ensemble_selector.currentIndexChanged.connect(self._realizations_from_fs) layout.addRow("Restart from:", self._ensemble_selector) self._target_ensemble_format_field.getValidationSupport().validationChanged.connect( # noqa diff --git a/src/ert/gui/simulation/simulation_config_panel.py b/src/ert/gui/simulation/simulation_config_panel.py index 2c1a665e919..7d9fff8a645 100644 --- a/src/ert/gui/simulation/simulation_config_panel.py +++ b/src/ert/gui/simulation/simulation_config_panel.py @@ -22,3 +22,11 @@ def isConfigurationValid(): @staticmethod def getSimulationArguments() -> Dict[str, Any]: return {} + + def _realizations_from_fs(self): + ensemble = str(self._ensemble_selector.currentText()) + if ensemble: + mask = self.notifier.storage.get_ensemble_by_name( + ensemble + ).get_realization_mask_with_parameters() + self._active_realizations_field.model.setValueFromMask(mask)