add support to goto image by index

This commit is contained in:
Martin Baeuml
2012-03-10 13:08:25 +01:00
parent 68e355d14a
commit 10afed2005
2 changed files with 20 additions and 5 deletions
+8 -5
View File
@@ -46,6 +46,9 @@ class ModelItem:
def childHasChildren(self, row):
return self.childAt(row).hasChildren()
def row(self):
return self._row
def rowCount(self):
return len(self._children)
@@ -91,15 +94,15 @@ class ModelItem:
return self._children[pos]
def getPreviousSibling(self):
if self._parent is not None:
if self._row > 0:
return self._parent.childAt(self._row-1)
return None
return self.getSibling(self._row-1)
def getNextSibling(self):
return self.getSibling(self._row+1)
def getSibling(self, row):
if self._parent is not None:
try:
return self._parent.childAt(self._row+1)
return self._parent.childAt(row)
except:
pass
return None
+12
View File
@@ -281,6 +281,18 @@ class LabelTool(QObject):
def model(self):
return self._model
def gotoIndex(self, idx):
if self._model is None:
return
current = self._current_image
if current is None:
current = self._model.iterator(ImageModelItem).next()
next_image = current.getSibling(idx)
if next_image is not None:
self.setCurrentImage(next_image)
def gotoNext(self, step=1):
if self._model is not None:
if self._current_image is not None: