Commit 84688482 authored by Pierre-Antoine Rouby's avatar Pierre-Antoine Rouby
Browse files

Sections: Fix section stricklers set command.

Showing with 42 additions and 11 deletions
+42 -11
......@@ -77,6 +77,19 @@ class River(Graph):
def stricklers(self):
return self._stricklers
def strickler(self, name):
ret = list(
filter(
lambda s: s.name == name or str(s) == name,
self._stricklers.stricklers
)
)
if len(ret) == 0:
return None
return ret[0]
@property
def sections(self):
return self._sections
......
......@@ -81,7 +81,7 @@ class Section(object):
return self._begin_strickler
@begin_strickler.setter
def begin_strickler(self, stricklers):
def begin_strickler(self, strickler):
self._begin_strickler = strickler
self._status.modified()
......@@ -90,6 +90,6 @@ class Section(object):
return self._end_strickler
@end_strickler.setter
def end_strickler(self, stricklers):
def end_strickler(self, strickler):
self._end_strickler = strickler
self._status.modified()
......@@ -27,7 +27,7 @@ class SectionList(object):
self._status.modified()
def new(self, index):
n = Section(self._status)
n = Section(status = self._status)
self._sections.insert(index, n)
self._status.modified()
return n
......@@ -47,7 +47,7 @@ class SectionList(object):
lambda x: x[1],
filter(
lambda x: x[0] in indexes,
enumerate(self._tabs[lst])
enumerate(self._sections)
)
)
)
......
......@@ -14,6 +14,12 @@ class Stricklers(object):
self._minor = 35
self._medium = 15
def __str__(self):
if self._name != "":
return f"{self._name} ({self._minor}, {self._medium})"
return f"({self._minor}, {self._medium})"
@property
def name(self):
return self._name
......
......@@ -42,7 +42,7 @@ class ComboBoxDelegate(QItemDelegate):
[_translate("Sections", "Not defined")] +
list(
map(
lambda s: s.name,
lambda s: str(s),
self._data.stricklers.stricklers
)
)
......@@ -116,9 +116,15 @@ class TableModel(QAbstractTableModel):
elif self._headers[column] == "end_kp":
return self._sections.get(row).end_kp
elif self._headers[column] == "begin_strickler":
return self._sections.get(row).begin_strickler
value = self._sections.get(row).begin_strickler
if value == None:
return _translate("Sections", "Not defined")
return str(value)
elif self._headers[column] == "end_strickler":
return self._sections.get(row).end_strickler
value = self._sections.get(row).end_strickler
if value == None:
return _translate("Sections", "Not defined")
return str(value)
return QVariant()
......@@ -159,16 +165,16 @@ class TableModel(QAbstractTableModel):
self._sections, row, value
)
)
elif self._headers[column] == "begin_stricklers":
elif self._headers[column] == "begin_strickler":
self._undo.push(
SetBeginStricklerCommand(
self._sections, row, value
self._sections, row, self._data.strickler(value)
)
)
elif self._headers[column] == "end_stricklers":
elif self._headers[column] == "end_strickler":
self._undo.push(
SetEndStricklerCommand(
self._sections, row, value
self._sections, row, self._data.strickler(value)
)
)
......
......@@ -65,6 +65,9 @@ class SetBeginStricklerCommand(QUndoCommand):
self._old = self._sections.get(self._index).begin_strickler
self._new = new_value
print(self._old)
print(self._new)
def undo(self):
self._sections.get(self._index).begin_strickler = self._old
......@@ -80,6 +83,9 @@ class SetEndStricklerCommand(QUndoCommand):
self._old = self._sections.get(self._index).end_strickler
self._new = new_value
print(self._old)
print(self._new)
def undo(self):
self._sections.get(self._index).end_strickler = self._old
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment