diff --git a/src/View/Ensembles/Table.py b/src/View/Ensembles/Table.py index e4006ece..be8a75f3 100644 --- a/src/View/Ensembles/Table.py +++ b/src/View/Ensembles/Table.py @@ -71,12 +71,28 @@ class ComboBoxDelegate(QItemDelegate): ] ) elif self._mode == "stricklers": + used = list( + map( + lambda e: (e.data_type, e._target_data), + self._data.lst + ) + ) + current = self._data.get(index.row()) + self.editor.addItems( [self._trad["not_defined"]] + list( map( lambda s: str(s), - self._study.river.stricklers.stricklers + filter( + # Exclude target data already used for + # this data type + lambda s: ( + current.target_data == s or + (current.data_type, s) not in used + ), + self._study.river.stricklers.stricklers + ) ) ) )