diff --git a/sloth/gui/controlbuttons.py b/sloth/gui/controlbuttons.py
new file mode 100644
index 0000000..cabd575
--- /dev/null
+++ b/sloth/gui/controlbuttons.py
@@ -0,0 +1,23 @@
+import sys, os
+from PyQt4.QtGui import *
+from PyQt4.QtCore import *
+
+class ControlButtonWidget(QWidget):
+ def __init__(self, parent=None):
+ QWidget.__init__(self, parent)
+ layout = QHBoxLayout()
+ layout.setSpacing(0)
+ layout.setAlignment(Qt.AlignTop)
+ self.back_button = QPushButton("<")
+ self.forward_button = QPushButton(">")
+ self.label_ = QLabel("
")
+ layout.addWidget(self.back_button)
+ layout.addWidget(self.label_)
+ layout.addWidget(self.forward_button)
+ self.setLayout(layout)
+
+ def setFrameNumAndTimestamp(self, num, timestamp):
+ self.label_.setText("%d / %f" % (num, timestamp))
+
+ def setFilename(self, filename):
+ self.label_.setText("%s" % (filename, ))
diff --git a/sloth/gui/labeltool.py b/sloth/gui/labeltool.py
index 698d90b..43bf6a6 100755
--- a/sloth/gui/labeltool.py
+++ b/sloth/gui/labeltool.py
@@ -11,6 +11,7 @@ from sloth.annotations.model import *
from sloth.annotations.container import AnnotationContainerFactory, AnnotationContainer
from sloth.gui.annotationscene import *
from sloth.gui.frameviewer import *
+from sloth.gui.controlbuttons import *
from sloth.conf import config
from sloth import APP_NAME, ORGANIZATION_NAME, ORGANIZATION_DOMAIN, VERSION
@@ -83,7 +84,16 @@ class MainWindow(QMainWindow):
self.view = GraphicsView(self)
self.view.setSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.MinimumExpanding)
self.view.setScene(self.scene)
- self.setCentralWidget(self.view)
+ self.central_widget = QWidget()
+ self.central_layout = QVBoxLayout()
+ self.controls = ControlButtonWidget()
+ self.controls.back_button.clicked.connect(self.gotoPrevious)
+ self.controls.forward_button.clicked.connect(self.gotoNext)
+
+ self.central_layout.addWidget(self.controls)
+ self.central_layout.addWidget(self.view)
+ self.central_widget.setLayout(self.central_layout)
+ self.setCentralWidget(self.central_widget)
self.buttonarea = ButtonArea(config.LABELS, config.HOTKEYS)
self.ui.dockAnnotationButtons.setWidget(self.buttonarea)
@@ -283,6 +293,11 @@ class MainWindow(QMainWindow):
if newindex.isValid() and newindex != self.current_index_:
self.current_index_ = newindex
self.scene.setRoot(self.current_index_)
+ item = index.model().itemFromIndex(self.current_index_)
+ if isinstance(item, FrameModelItem):
+ self.controls.setFrameNumAndTimestamp(item.framenum(), item.timestamp())
+ elif isinstance(item, ImageFileModelItem):
+ self.controls.setFilename(item.filename())
if index != self.treeview.currentIndex():
self.treeview.setCurrentIndex(self.current_index_)