mirror of
https://gitlab.com/pamhyr/pamhyr2.git
synced 2026-10-30 03:20:41 +01:00
Ensemble: Add stricklers select from tree view.
This commit is contained in:
1 parent
288713ce5b
commit
5c8b7290ba
2 files changed
+29
-11
No files matched your search
@@ -48,19 +48,24 @@ from PyQt5.QtWidgets import (
|
|||||||
logger = logging.getLogger()
|
logger = logging.getLogger()
|
||||||
|
|
||||||
|
|
||||||
|
class StricklersCoefModelItem(PamhyrModelItem):
|
||||||
|
def get_value(self):
|
||||||
|
return (self._data, self.parent()._data)
|
||||||
|
|
||||||
class StricklersModelItem(PamhyrModelItem):
|
class StricklersModelItem(PamhyrModelItem):
|
||||||
def __init__(self, data=None, trad=None, parent=None):
|
def __init__(self, data=None, trad=None, parent=None):
|
||||||
super(StricklersModelItem, self).__init__(
|
super(StricklersModelItem, self).__init__(
|
||||||
data=data, trad=trad, parent=parent,
|
data=data, trad=trad, parent=parent,
|
||||||
)
|
)
|
||||||
|
|
||||||
def _get_name(self):
|
|
||||||
return str(self._data)
|
|
||||||
|
|
||||||
def _setup_children(self):
|
def _setup_children(self):
|
||||||
self.addChild(PamhyrModelItem(data="Minor", parent=self))
|
for coef in ["strickler_minor", "strickler_medium"]:
|
||||||
self.addChild(PamhyrModelItem(data="Medium", parent=self))
|
self.addChild(
|
||||||
|
StricklersCoefModelItem(data=coef, parent=self)
|
||||||
|
)
|
||||||
|
|
||||||
|
def get_value(self):
|
||||||
|
return self._data
|
||||||
|
|
||||||
class EnsembleEditDialog(PamhyrDialog):
|
class EnsembleEditDialog(PamhyrDialog):
|
||||||
_pamhyr_ui = "EnsembleEditDialog"
|
_pamhyr_ui = "EnsembleEditDialog"
|
||||||
@@ -77,21 +82,22 @@ class EnsembleEditDialog(PamhyrDialog):
|
|||||||
|
|
||||||
self._study = study
|
self._study = study
|
||||||
self._ensemble = ensemble
|
self._ensemble = ensemble
|
||||||
|
self._target_data = None
|
||||||
|
|
||||||
self._init_tree()
|
self._init_tree()
|
||||||
self._init_default_values()
|
self._init_default_values()
|
||||||
self._init_connection()
|
self._init_connection()
|
||||||
|
|
||||||
def _init_tree(self):
|
def _init_tree(self):
|
||||||
tree = self.find(QTreeWidget, "treeWidget_target_data")
|
self._tree = self.find(QTreeWidget, "treeWidget_target_data")
|
||||||
tree.setColumnCount(1)
|
self._tree.setColumnCount(1)
|
||||||
tree.setHeaderLabels(["Name"])
|
self._tree.setHeaderLabels(["Name"])
|
||||||
|
|
||||||
stricklers = PamhyrModelListItem(
|
stricklers = PamhyrModelListItem(
|
||||||
name="Stricklers",
|
name="Stricklers",
|
||||||
lst=self._study.river.stricklers,
|
lst=self._study.river.stricklers,
|
||||||
child_item_ctor=StricklersModelItem,
|
child_item_ctor=StricklersModelItem,
|
||||||
parent=tree
|
parent=self._tree
|
||||||
)
|
)
|
||||||
|
|
||||||
def _init_default_values(self):
|
def _init_default_values(self):
|
||||||
@@ -115,13 +121,20 @@ class EnsembleEditDialog(PamhyrDialog):
|
|||||||
|
|
||||||
self._set_widget(self._ensemble.distribution)
|
self._set_widget(self._ensemble.distribution)
|
||||||
|
|
||||||
|
self._target_data = (
|
||||||
|
self._ensemble.data_type,
|
||||||
|
self._ensemble.target_data
|
||||||
|
)
|
||||||
|
|
||||||
def _init_connection(self):
|
def _init_connection(self):
|
||||||
self.find(QComboBox, "comboBox_distribution")\
|
self.find(QComboBox, "comboBox_distribution")\
|
||||||
.currentTextChanged.connect(self.update_distribution)
|
.currentTextChanged.connect(self.update_distribution)
|
||||||
|
|
||||||
self.find(QComboBox, "comboBox_distribution")\
|
self._tree.itemClicked.connect(self._tree_item_select)
|
||||||
.currentTextChanged.connect(self.update_distribution)
|
|
||||||
|
def _tree_item_select(self, item):
|
||||||
|
if type(item) == StricklersCoefModelItem:
|
||||||
|
self._target_data = item.get_value()
|
||||||
|
|
||||||
def update_distribution(self, txt):
|
def update_distribution(self, txt):
|
||||||
# txt = self.get_combobox_text("comboBox_distribution")
|
# txt = self.get_combobox_text("comboBox_distribution")
|
||||||
|
|||||||
@@ -58,6 +58,8 @@ class PamhyrModelItem(QTreeWidgetItem):
|
|||||||
def _setup_children(self):
|
def _setup_children(self):
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def get_value(self):
|
||||||
|
return self._data
|
||||||
|
|
||||||
class PamhyrModelListItem(QTreeWidgetItem):
|
class PamhyrModelListItem(QTreeWidgetItem):
|
||||||
def __init__(self, name=None, lst=None,
|
def __init__(self, name=None, lst=None,
|
||||||
@@ -81,3 +83,6 @@ class PamhyrModelListItem(QTreeWidgetItem):
|
|||||||
data=el, trad=self._trad, parent=self
|
data=el, trad=self._trad, parent=self
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def get_value(self):
|
||||||
|
return None
|
||||||
Reference in new issue
Block a user