From 5a900578c8affba5485606dcf774fe14c86452d8 Mon Sep 17 00:00:00 2001
From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr>
Date: Tue, 30 May 2023 17:31:40 +0200
Subject: [PATCH] IC: Fix row display.

---
 src/Model/InitialConditions/InitialConditions.py     | 6 +++---
 src/Model/InitialConditions/InitialConditionsDict.py | 1 +
 src/View/InitialConditions/UndoCommand.py            | 5 +++--
 src/View/InitialConditions/Window.py                 | 2 +-
 4 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/Model/InitialConditions/InitialConditions.py b/src/Model/InitialConditions/InitialConditions.py
index 3b89089f..9c62b69a 100644
--- a/src/Model/InitialConditions/InitialConditions.py
+++ b/src/Model/InitialConditions/InitialConditions.py
@@ -5,7 +5,7 @@ from tools import trace, timer
 
 class Data(object):
     def __init__(self, status = None):
-        super(Data, self).__init()
+        super(Data, self).__init__()
 
         self._status = status
 
@@ -17,7 +17,7 @@ class Data(object):
         self._cote = 0.0
         self._tiran = 0.0
 
-    def __getitems__(self, key):
+    def __getitem__(self, key):
         val = None
 
         if key == "name":
@@ -35,7 +35,7 @@ class Data(object):
 
         return val
 
-    def __setitems__(self, key, value):
+    def __setitem__(self, key, value):
         if key == "name":
             self._name = str(value)
         elif key == "comment":
diff --git a/src/Model/InitialConditions/InitialConditionsDict.py b/src/Model/InitialConditions/InitialConditionsDict.py
index dedabac2..71d707d0 100644
--- a/src/Model/InitialConditions/InitialConditionsDict.py
+++ b/src/Model/InitialConditions/InitialConditionsDict.py
@@ -34,3 +34,4 @@ class InitialConditionsDict(object):
     def new(self, reach):
         new = InitialConditions(reach = reach, status = self._status)
         self.set(reach, new)
+        return new
diff --git a/src/View/InitialConditions/UndoCommand.py b/src/View/InitialConditions/UndoCommand.py
index 32bff726..8482bd9a 100644
--- a/src/View/InitialConditions/UndoCommand.py
+++ b/src/View/InitialConditions/UndoCommand.py
@@ -16,14 +16,15 @@ class SetCommand(QUndoCommand):
 
         self._ics = ics
         self._row = row
+        self._column = column
         self._old = self._ics.get(self._row)[column]
         self._new = new_value
 
     def undo(self):
-        self._ics.get(self._row)[column] = self._old
+        self._ics.get(self._row)[self._column] = self._old
 
     def redo(self):
-        self._ics.get(self._row)[column] = self._new
+        self._ics.get(self._row)[self._column] = self._new
 
 class AddCommand(QUndoCommand):
     def __init__(self, ics, index):
diff --git a/src/View/InitialConditions/Window.py b/src/View/InitialConditions/Window.py
index dbf22ec4..3a52b1ed 100644
--- a/src/View/InitialConditions/Window.py
+++ b/src/View/InitialConditions/Window.py
@@ -131,7 +131,7 @@ class InitialConditionsWindow(ASubMainWindow, ListedSubWindow):
 
     def add(self):
         rows = self.index_selected_rows()
-        if self._ics.len(tab) == 0 or len(rows) == 0:
+        if len(self._ics) == 0 or len(rows) == 0:
             self._table.add(0)
         else:
             self._table.add(rows[0])
-- 
GitLab