Jelajahi Sumber

Refactor image code to use resource files

Rename Images directory to icons and make all filenames lowercase.

Add ignore file.
Michael Pitidis 13 tahun lalu
induk
melakukan
2dffe04535
13 mengubah file dengan 51 tambahan dan 16 penghapusan
  1. 8 0
      .gitignore
  2. TEMPAT SAMPAH
      Images/.DS_Store
  3. 6 0
      Makefile
  4. 0 0
      icons/color.png
  5. 0 0
      icons/delete.png
  6. 0 0
      icons/fit.png
  7. 0 0
      icons/new.png
  8. 0 0
      icons/open.png
  9. 0 0
      icons/quit.png
  10. 0 0
      icons/save.png
  11. 0 0
      icons/zoom.png
  12. 23 16
      labelme.py
  13. 14 0
      resources.qrc

+ 8 - 0
.gitignore

@@ -0,0 +1,8 @@
+
+icons/.DS_Store
+
+resources.py
+
+*.pyc
+.*.swp
+

TEMPAT SAMPAH
Images/.DS_Store


+ 6 - 0
Makefile

@@ -0,0 +1,6 @@
+
+all: resources.py
+
+%.py: %.qrc
+	pyrcc4 -o $@ $<
+

+ 0 - 0
Images/Color.png → icons/color.png


+ 0 - 0
Images/delete.png → icons/delete.png


+ 0 - 0
Images/FitSize.png → icons/fit.png


+ 0 - 0
Images/new.png → icons/new.png


+ 0 - 0
Images/open.png → icons/open.png


+ 0 - 0
Images/quit.png → icons/quit.png


+ 0 - 0
Images/save.png → icons/save.png


+ 0 - 0
Images/Zoom.png → icons/zoom.png


+ 23 - 16
labelme.py

@@ -11,10 +11,13 @@ from collections import defaultdict
 from PyQt4.QtGui import *
 from PyQt4.QtCore import *
 
+import resources
+
 from shape import Shape
 from canvas import Canvas
 from zoomwidget import ZoomWidget
 
+
 __appname__ = 'labelme'
 
 # TODO:
@@ -99,37 +102,38 @@ class MainWindow(QMainWindow, WindowMixin):
         self.addDockWidget(Qt.BottomDockWidgetArea, self.dock)
 
         # Actions
-        quit = action(self, '&Quit', self.close, 'Ctrl+Q', u'Exit application')
-        quit.setIcon(QIcon('Images/quit.png'))
-        open = action(self, '&Open', self.openFile, 'Ctrl+O', u'Open file')
-        open.setIcon(QIcon('Images/open.png'))
-        color = action(self, '&Color', self.chooseColor, 'Ctrl+C', u'Choose line color')
-        color.setIcon(QIcon('Images/Color.png'))
-        new_Label=action(self,'&New Label',self.newlabel,'Ctrl+N',u'Add new label')
-        new_Label.setIcon(QIcon('Images/new.png'))
-        delete=action(self,'&delete',self.deleteSelectedShape,'Ctrl+D',u'Delete')
-        delete.setIcon(QIcon('Images/delete.png'))
+        quit = action(self, '&Quit', self.close,
+                'Ctrl+Q', 'quit', u'Exit application')
+        open = action(self, '&Open', self.openFile,
+                'Ctrl+O', 'open', u'Open file')
+        color = action(self, '&Color', self.chooseColor,
+                'Ctrl+C', 'color', u'Choose line color')
+        label = action(self,'&New Label', self.newLabel,
+                'Ctrl+N', 'new', u'Add new label')
+        delete = action(self,'&delete', self.deleteSelectedShape,
+                'Ctrl+D', 'delete', u'Delete')
 
         labl = self.dock.toggleViewAction()
         labl.setShortcut('Ctrl+L')
 
         zoom = QWidgetAction(self)
         zoom.setDefaultWidget(self.zoom_widget)
+
         fit_window = action(self, '&Fit Window', self.setFitWindow,
-                'Ctrl+F', u'Fit image to window', checkable=True)
-        fit_window.setIcon(QIcon('Images/FitSize.png'))
+                'Ctrl+F', 'fit',  u'Fit image to window', checkable=True)
 
         self.menus = struct(
                 file=self.menu('&File'),
                 edit=self.menu('&Image'),
                 view=self.menu('&View'))
         add_actions(self.menus.file, (open, quit))
-        add_actions(self.menus.edit, (new_Label,color, fit_window))
+        add_actions(self.menus.edit, (label, color, fit_window))
 
         add_actions(self.menus.view, (labl,))
 
         self.tools = self.toolbar('Tools')
-        add_actions(self.tools, (open, color, None,new_Label,delete,None, zoom, fit_window, None, quit))
+        add_actions(self.tools, (open, color, None, label, delete, None,
+            zoom, fit_window, None, quit))
 
 
         self.statusBar().showMessage('%s started.' % __appname__)
@@ -273,12 +277,15 @@ class MainWindow(QMainWindow, WindowMixin):
         # Change the color for all shape lines:
         Shape.line_color = self.color
         self.canvas.repaint()
-        
-    def newlabel(self):
+
+    def newLabel(self):
         self.canvas.deSelectShape()
         self.canvas.startLabeling=True
+
     def deleteSelectedShape(self):
         self.canvas.deleteSelected()
+
+
 class Settings(object):
     """Convenience dict-like wrapper around QSettings."""
     def __init__(self, types=None):

+ 14 - 0
resources.qrc

@@ -0,0 +1,14 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource>
+
+<file alias="new">icons/new.png</file>
+<file alias="fit">icons/fit.png</file>
+<file alias="quit">icons/quit.png</file>
+<file alias="open">icons/open.png</file>
+<file alias="save">icons/open.png</file>
+<file alias="color">icons/color.png</file>
+<file alias="zoom">icons/zoom.png</file>
+<file alias="delete">icons/delete.png</file>
+
+</qresource>
+</RCC>