Просмотр исходного кода

Keep text as empty string and flags as empty dict as much as possible

Kentaro Wada 6 лет назад
Родитель
Сommit
4d2fe2ddca
2 измененных файлов с 9 добавлено и 9 удалено
  1. 8 8
      labelme/app.py
  2. 1 1
      labelme/label_file.py

+ 8 - 8
labelme/app.py

@@ -1055,8 +1055,8 @@ class MainWindow(QtWidgets.QMainWindow):
         position MUST be in global coordinates.
         """
         items = self.uniqLabelList.selectedItems()
-        text = None
-        flags = None
+        text = ''
+        flags = {}
         if items:
             text = items[0].text()
         if self._config['display_label_popup'] or not text:
@@ -1069,20 +1069,20 @@ class MainWindow(QtWidgets.QMainWindow):
                     text = '-'.join(split)
             text, flags = self.labelDialog.popUp(text)
 
-        if text is not None and not self.validateLabel(text):
+        if text and not self.validateLabel(text):
             self.errorMessage('Invalid label',
                               "Invalid label '{}' with validation type '{}'"
                               .format(text, self._config['validate_label']))
-            text = None
-        if text is None:
-            self.canvas.undoLastLine()
-            self.canvas.shapesBackups.pop()
-        else:
+            text = ''
+        if text:
             self.addLabel(self.canvas.setLastLabel(text, flags))
             self.actions.editMode.setEnabled(True)
             self.actions.undoLastPoint.setEnabled(False)
             self.actions.undo.setEnabled(True)
             self.setDirty()
+        else:
+            self.canvas.undoLastLine()
+            self.canvas.shapesBackups.pop()
 
     def scrollRequest(self, delta, orientation):
         units = - delta * 0.1  # natural scroll

+ 1 - 1
labelme/label_file.py

@@ -73,7 +73,7 @@ class LabelFile(object):
                 # relative path from label file to relative path from cwd
                 imagePath = osp.join(osp.dirname(filename), data['imagePath'])
                 imageData = self.load_image_file(imagePath)
-            flags = data.get('flags')
+            flags = data.get('flags') or {}
             imagePath = data['imagePath']
             self._check_image_height_and_width(
                 base64.b64encode(imageData).decode('utf-8'),