make deletion hotkey configurable (fixes #10)

This commit is contained in:
Martin Baeuml
2011-06-17 09:31:10 +02:00
parent 717d11f82b
commit 65830b4b7b
3 changed files with 11 additions and 13 deletions
-8
View File
@@ -530,14 +530,6 @@ class AnnotationTreeView(QTreeView):
QTreeView.setModel(self, model)
self.resizeColumns()
def keyPressEvent(self, event):
## handle deletions of items
if event.key() == Qt.Key_Delete:
self.model().itemFromIndex(self.currentindex()).delete()
## it is important to use the keyPressEvent of QAbstractItemView, not QTreeView
QAbstractItemView.keyPressEvent(self, event)
def rowsInserted(self, index, start, end):
QTreeView.rowsInserted(self, index, start, end)
self.resizeColumns()
+6 -5
View File
@@ -61,11 +61,12 @@ LABELS = (
# third entry -- if present -- is expected to be a string describing the
# action.
HOTKEYS = (
('PgDown', lambda lt: lt.gotoNext(), 'Next image/frame'),
('PgUp', lambda lt: lt.gotoPrevious(), 'Previous image/frame'),
('Tab', lambda lt: lt.selectNextAnnotation(), 'Select next annotation'),
('Shift+Tab', lambda lt: lt.selectPreviousAnnotation(), 'Select previous annotation'),
('ESC', lambda lt: lt.exitInsertMode(), 'Exit insert mode'),
('PgDown', lambda lt: lt.gotoNext(), 'Next image/frame'),
('PgUp', lambda lt: lt.gotoPrevious(), 'Previous image/frame'),
('Tab', lambda lt: lt.selectNextAnnotation(), 'Select next annotation'),
('Shift+Tab', lambda lt: lt.selectPreviousAnnotation(), 'Select previous annotation'),
('Del', lambda lt: lt.deleteSelectedAnnotations(), 'Delete selected annotations'),
('ESC', lambda lt: lt.exitInsertMode(), 'Exit insert mode'),
)
# CONTAINERS
+5
View File
@@ -347,6 +347,11 @@ class LabelTool(QObject):
if self._mainwindow is not None:
return self._mainwindow.scene.selectNextItem(reverse=True)
def deleteSelectedAnnotations(self):
if self._mainwindow is not None:
for item in self._mainwindow.scene.selectedItems():
item.modelItem().delete()
def exitInsertMode(self):
if self._mainwindow is not None:
return self._mainwindow.buttonarea.exitInsertMode()