|
@@ -258,6 +258,14 @@ class MainWindow(QtWidgets.QMainWindow, WindowMixin):
|
|
|
shortcuts['edit_fill_color'], 'color',
|
|
|
'Choose polygon fill color')
|
|
|
|
|
|
+ toggle_keep_prev_mode = action(
|
|
|
+ 'Keep Previous Annotation',
|
|
|
+ self.toggleKeepPrevMode,
|
|
|
+ shortcuts['toggle_keep_prev_mode'], None,
|
|
|
+ 'Toggle "keep pevious annotation" mode',
|
|
|
+ checkable=True)
|
|
|
+ toggle_keep_prev_mode.setChecked(self._config['keep_prev'])
|
|
|
+
|
|
|
createMode = action(
|
|
|
'Create Polygons',
|
|
|
lambda: self.toggleDrawMode(False, createMode='polygon'),
|
|
@@ -411,6 +419,7 @@ class MainWindow(QtWidgets.QMainWindow, WindowMixin):
|
|
|
changeOutputDir=changeOutputDir,
|
|
|
save=save, saveAs=saveAs, open=open_, close=close,
|
|
|
lineColor=color1, fillColor=color2,
|
|
|
+ toggleKeepPrevMode=toggle_keep_prev_mode,
|
|
|
delete=delete, edit=edit, copy=copy,
|
|
|
undoLastPoint=undoLastPoint, undo=undo,
|
|
|
addPoint=addPoint,
|
|
@@ -428,7 +437,7 @@ class MainWindow(QtWidgets.QMainWindow, WindowMixin):
|
|
|
fileMenuActions=(open_, opendir, save, saveAs, close, quit),
|
|
|
tool=(),
|
|
|
editMenu=(edit, copy, delete, None, undo, undoLastPoint,
|
|
|
- None, color1, color2),
|
|
|
+ None, color1, color2, None, toggle_keep_prev_mode),
|
|
|
# menu shown at right click
|
|
|
menu=(
|
|
|
createMode,
|
|
@@ -1435,6 +1444,9 @@ class MainWindow(QtWidgets.QMainWindow, WindowMixin):
|
|
|
self.canvas.update()
|
|
|
self.setDirty()
|
|
|
|
|
|
+ def toggleKeepPrevMode(self):
|
|
|
+ self._config['keep_prev'] = not self._config['keep_prev']
|
|
|
+
|
|
|
def deleteSelectedShape(self):
|
|
|
yes, no = QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No
|
|
|
msg = 'You are about to permanently delete this polygon, ' \
|