Skip to content

Commit 32ce13d

Browse files
authored
Merge pull request #210 from robotools/list2EditCellIndex
2 parents b9a88e1 + 3dad8f2 commit 32ce13d

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

Lib/vanilla/vanillaList2.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ def initWithTableView_(self, tableView):
3434
self._cellToValueConverters = {} # { identifier : function }
3535
self._groupRowCellClass = None
3636
self._groupRowCellClassKwargs = {}
37+
self._editedRowIndex = None
3738
self._cellWrappers = {} # { nsView : vanilla wrapper } for view + wrapper reuse purposes
3839
self._valueGetters = {} # { identifier : options (see below) }
3940
self._valueSetters = {} # { identifier : options (see below) }
@@ -246,8 +247,14 @@ def cellEditCallback(self, sender):
246247
value = sender.get()
247248
self.setItemValueForColumnAndRow(value, identifier, row)
248249
wrapper = self.vanillaWrapper()
250+
self._editedRowIndex = row
249251
if wrapper._editCallback is not None:
250252
wrapper._editCallback(wrapper)
253+
self._editedRowIndex = None
254+
255+
@python_method
256+
def getEditedRowIndex(self):
257+
return self._editedRowIndex
251258

252259
# Drag
253260

@@ -876,6 +883,18 @@ def setSelectedIndexes(self, indexes):
876883
rowIndexes = makeIndexSet(rowIndexes)
877884
self._tableView.selectRowIndexes_byExtendingSelection_(rowIndexes, False)
878885

886+
def getEditedIndex(self):
887+
"""
888+
Return the index of the edited row.
889+
"""
890+
return self._dataSourceAndDelegate.getEditedRowIndex()
891+
892+
def getEditedItem(self):
893+
"""
894+
Return the item of the edited row.
895+
"""
896+
return self.get()[self.getEditedIndex()]
897+
879898
def scrollToSelection(self):
880899
"""
881900
Scroll the selected rows to visible.

0 commit comments

Comments
 (0)