From 3397754abc4aaf2c0423ad8379ec2238730393dd Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr> Date: Mon, 24 Jul 2023 16:01:53 +0200 Subject: [PATCH] SL: Fix SL edition command. --- src/View/SedimentLayers/Edit/Table.py | 10 ++++++++-- src/View/SedimentLayers/Edit/UndoCommand.py | 15 +++++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/View/SedimentLayers/Edit/Table.py b/src/View/SedimentLayers/Edit/Table.py index 6bd59387..32790f1b 100644 --- a/src/View/SedimentLayers/Edit/Table.py +++ b/src/View/SedimentLayers/Edit/Table.py @@ -76,9 +76,15 @@ class TableModel(QAbstractTableModel): self._sl, row, value ) ) - if self._headers[column] == "comment": + if self._headers[column] == "type": self._undo.push( - SetCommentCommand( + SetTypeCommand( + self._sl, row, value + ) + ) + if self._headers[column] == "height": + self._undo.push( + SetHeightCommand( self._sl, row, value ) ) diff --git a/src/View/SedimentLayers/Edit/UndoCommand.py b/src/View/SedimentLayers/Edit/UndoCommand.py index 9e630a6e..e6964709 100644 --- a/src/View/SedimentLayers/Edit/UndoCommand.py +++ b/src/View/SedimentLayers/Edit/UndoCommand.py @@ -25,6 +25,21 @@ class SetNameCommand(QUndoCommand): def redo(self): self._sediment_layers.get(self._index).name = self._new +class SetTypeCommand(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).type + self._new = new_value + + def undo(self): + self._sediment_layers.get(self._index).type = self._old + + def redo(self): + self._sediment_layers.get(self._index).type = self._new + class SetHeightCommand(QUndoCommand): def __init__(self, sediment_layers, index, new_value): QUndoCommand.__init__(self) -- GitLab