|
28 | 28 | QAction, |
29 | 29 | QCheckBox, |
30 | 30 | QComboBox, |
| 31 | + QDoubleSpinBox, |
31 | 32 | QFrame, |
32 | 33 | QGridLayout, |
33 | 34 | QHBoxLayout, |
@@ -139,11 +140,12 @@ def __init__(self, supports_batch=True, parent: QWidget | None = None): |
139 | 140 |
|
140 | 141 | self._seed_label = QLabel(_("Seed"), self) |
141 | 142 | self._layout.addWidget(self._seed_label, 2, 0) |
142 | | - self._seed_input = QSpinBox(self) |
| 143 | + self._seed_input = QDoubleSpinBox(self) |
143 | 144 | self._seed_check = QCheckBox(self) |
144 | 145 | self._seed_check.setText(_("Fixed")) |
145 | 146 | self._seed_input.setMinimum(0) |
146 | | - self._seed_input.setMaximum(2**31 - 1) |
| 147 | + self._seed_input.setMaximum(2**32 - 1) |
| 148 | + self._seed_input.setDecimals(0) |
147 | 149 | self._seed_input.setSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Preferred) |
148 | 150 | self._seed_input.setToolTip( |
149 | 151 | _( |
@@ -205,12 +207,16 @@ def model(self, model: Model): |
205 | 207 | Binding.disconnect_all(self._connections) |
206 | 208 | self._model = model |
207 | 209 | self._randomize_seed.setEnabled(self._model.fixed_seed) |
| 210 | + self._seed_input.setValue(self._model.seed) |
208 | 211 | self._seed_input.setEnabled(self._model.fixed_seed) |
209 | 212 | self._batch_label.setText(str(self._model.batch_count)) |
210 | 213 | self._connections = [ |
211 | 214 | bind(self._model, "batch_count", self._batch_slider, "value"), |
212 | 215 | model.batch_count_changed.connect(lambda v: self._batch_label.setText(str(v))), |
213 | | - bind(self._model, "seed", self._seed_input, "value"), |
| 216 | + self._model.seed_changed.connect(lambda: self._seed_input.setValue(self._model.seed)), |
| 217 | + self._seed_input.valueChanged.connect( |
| 218 | + lambda: setattr(self._model, "seed", int(self._seed_input.value())) |
| 219 | + ), |
214 | 220 | bind(self._model, "fixed_seed", self._seed_check, "checked", Bind.one_way), |
215 | 221 | self._seed_check.toggled.connect(lambda v: setattr(self._model, "fixed_seed", v)), |
216 | 222 | self._model.fixed_seed_changed.connect(self._seed_input.setEnabled), |
|
0 commit comments