diff --git a/src/Model/BoundaryCondition/BoundaryCondition.py b/src/Model/BoundaryCondition/BoundaryCondition.py index 5bd261892bf705d14caa40c9e60b08968687220f..800bed8e0c4baad22e64f52503f6123fc4ab0f37 100644 --- a/src/Model/BoundaryCondition/BoundaryCondition.py +++ b/src/Model/BoundaryCondition/BoundaryCondition.py @@ -13,7 +13,7 @@ class BoundaryCondition(object): self._node = None self._data = [] self._header = [] - self._types = [int, float] + self._types = [float, float] def __len__(self): return len(self._data) diff --git a/src/Model/BoundaryCondition/BoundaryConditionTypes.py b/src/Model/BoundaryCondition/BoundaryConditionTypes.py index 85113389a84eaad7c68463b589a26e97965b3d0a..a7db88ff5fdce299f5cdcd5296ba59cf4ab72dc8 100644 --- a/src/Model/BoundaryCondition/BoundaryConditionTypes.py +++ b/src/Model/BoundaryCondition/BoundaryConditionTypes.py @@ -10,7 +10,11 @@ class NotDefined(BoundaryCondition): super(NotDefined, self).__init__(name=name) self._type = "ND" - self._header = ["", ""] + self._header = ["x", "y"] + + @property + def _default_0(self): + return 0.0 class PonctualContribution(BoundaryCondition): def __init__(self, name:str = ""): @@ -18,6 +22,7 @@ class PonctualContribution(BoundaryCondition): self._type = "PC" self._header = ["time", "debit"] + self._types = [int, float] @classmethod def compatibility(cls): @@ -29,6 +34,7 @@ class TimeOverZ(BoundaryCondition): self._type = "TZ" self._header = ["time", "z"] + self._types = [int, float] @classmethod def compatibility(cls): @@ -40,6 +46,7 @@ class TimeOverDebit(BoundaryCondition): self._type = "TD" self._header = ["time", "debit"] + self._types = [int, float] @classmethod def compatibility(cls): diff --git a/src/View/BoundaryCondition/BoundaryConditionWindow.py b/src/View/BoundaryCondition/BoundaryConditionWindow.py index c14ef005e04971382e3bd8b3465ef84d03664f79..b9f754799f07ae0a11983c0004d7860330463461 100644 --- a/src/View/BoundaryCondition/BoundaryConditionWindow.py +++ b/src/View/BoundaryCondition/BoundaryConditionWindow.py @@ -51,7 +51,7 @@ class BoundaryConditionWindow(ASubMainWindow, ListedSubWindow): ) self._study = study - self._lst = self._study.river.boundary_condition + self._bcs = self._study.river.boundary_condition self.setup_sc() self.setup_table() @@ -154,7 +154,7 @@ class BoundaryConditionWindow(ASubMainWindow, ListedSubWindow): def add(self): tab = self.current_tab() rows = self.index_selected_rows() - if self._lst.len(tab) == 0 or len(rows) == 0: + if self._bcs.len(tab) == 0 or len(rows) == 0: self._table[tab].add(0) else: self._table[tab].add(rows[0]) @@ -196,10 +196,11 @@ class BoundaryConditionWindow(ASubMainWindow, ListedSubWindow): self._table[tab].redo() def edit(self): + tab = self.current_tab() rows = self.index_selected_rows() for row in rows: win = EditBoundaryConditionWindow( - data=self._lst[row], + data=self._bcs.get(tab, row), parent=self ) win.show() diff --git a/src/View/BoundaryCondition/Edit/translate.py b/src/View/BoundaryCondition/Edit/translate.py index e3fa75135617dce4859d6e05dc0845d78842a373..9ab28f9c5f68c323b6ebb9c4405cdef40adc8911 100644 --- a/src/View/BoundaryCondition/Edit/translate.py +++ b/src/View/BoundaryCondition/Edit/translate.py @@ -5,6 +5,8 @@ from PyQt5.QtCore import QCoreApplication _translate = QCoreApplication.translate table_headers = { + "x": _translate("BoundaryCondition", "X"), + "y": _translate("BoundaryCondition", "Y"), "time": _translate("BoundaryCondition", "Time"), "debit": _translate("BoundaryCondition", "Debit"), "z": _translate("BoundaryCondition", "Z (m)")