mirror of
https://gitlab.com/pamhyr/pamhyr2.git
synced 2026-10-30 03:20:41 +01:00
SedimentLayer: Add d50, sigma and critical_constraint data.
This commit is contained in:
1 parent
d636f5b637
commit
17d4b15761
4 files changed
+113
-4
No files matched your search
@@ -54,6 +54,12 @@ class TableModel(QAbstractTableModel):
|
||||
return self._sl.get(row).type
|
||||
elif self._headers[column] == "height":
|
||||
return self._sl.get(row).height
|
||||
elif self._headers[column] == "d50":
|
||||
return self._sl.get(row).d50
|
||||
elif self._headers[column] == "sigma":
|
||||
return self._sl.get(row).sigma
|
||||
elif self._headers[column] == "critical_constraint":
|
||||
return self._sl.get(row).critical_constraint
|
||||
|
||||
return QVariant()
|
||||
|
||||
@@ -88,6 +94,24 @@ class TableModel(QAbstractTableModel):
|
||||
self._sl, row, value
|
||||
)
|
||||
)
|
||||
if self._headers[column] == "d50":
|
||||
self._undo.push(
|
||||
SetD50Command(
|
||||
self._sl, row, value
|
||||
)
|
||||
)
|
||||
if self._headers[column] == "sigma":
|
||||
self._undo.push(
|
||||
SetSigmaCommand(
|
||||
self._sl, row, value
|
||||
)
|
||||
)
|
||||
if self._headers[column] == "critical_constraint":
|
||||
self._undo.push(
|
||||
SetCriticalConstraintCommand(
|
||||
self._sl, row, value
|
||||
)
|
||||
)
|
||||
|
||||
self.dataChanged.emit(index, index)
|
||||
return True
|
||||
|
||||
@@ -55,6 +55,51 @@ class SetHeightCommand(QUndoCommand):
|
||||
def redo(self):
|
||||
self._sediment_layers.get(self._index).height = self._new
|
||||
|
||||
class SetD50Command(QUndoCommand):
|
||||
def __init__(self, sediment_layers, index, new_value):
|
||||
QUndoCommand.__init__(self)
|
||||
|
||||
self._sediment_layers = sediment_layers
|
||||
self._index = index
|
||||
self._old = self._sediment_layers.get(self._index).d50
|
||||
self._new = new_value
|
||||
|
||||
def undo(self):
|
||||
self._sediment_layers.get(self._index).d50 = self._old
|
||||
|
||||
def redo(self):
|
||||
self._sediment_layers.get(self._index).d50 = self._new
|
||||
|
||||
class SetSigmaCommand(QUndoCommand):
|
||||
def __init__(self, sediment_layers, index, new_value):
|
||||
QUndoCommand.__init__(self)
|
||||
|
||||
self._sediment_layers = sediment_layers
|
||||
self._index = index
|
||||
self._old = self._sediment_layers.get(self._index).sigma
|
||||
self._new = new_value
|
||||
|
||||
def undo(self):
|
||||
self._sediment_layers.get(self._index).sigma = self._old
|
||||
|
||||
def redo(self):
|
||||
self._sediment_layers.get(self._index).sigma = self._new
|
||||
|
||||
class SetCriticalConstraintCommand(QUndoCommand):
|
||||
def __init__(self, sediment_layers, index, new_value):
|
||||
QUndoCommand.__init__(self)
|
||||
|
||||
self._sediment_layers = sediment_layers
|
||||
self._index = index
|
||||
self._old = self._sediment_layers.get(self._index).critical_constraint
|
||||
self._new = new_value
|
||||
|
||||
def undo(self):
|
||||
self._sediment_layers.get(self._index).critical_constraint = self._old
|
||||
|
||||
def redo(self):
|
||||
self._sediment_layers.get(self._index).critical_constraint = self._new
|
||||
|
||||
class AddCommand(QUndoCommand):
|
||||
def __init__(self, sediment_layers, index):
|
||||
QUndoCommand.__init__(self)
|
||||
|
||||
@@ -8,4 +8,7 @@ table_headers = {
|
||||
"name": _translate("SedimentLayers", "Name"),
|
||||
"type": _translate("SedimentLayers", "Type"),
|
||||
"height": _translate("Sedimentlayers", "Height"),
|
||||
"d50": _translate("Sedimentlayers", "D50"),
|
||||
"sigma": _translate("Sedimentlayers", "Sigma"),
|
||||
"critical_constraint": _translate("Sedimentlayers", "Critical constraint"),
|
||||
}
|
||||
Reference in new issue
Block a user