IconEditor/IconEditorGrid.py

changeset 2334
fc69ad77e18a
parent 2302
f29e9405c851
child 2404
cba0ff902c2b
--- a/IconEditor/IconEditorGrid.py	Thu Jan 10 19:15:10 2013 +0100
+++ b/IconEditor/IconEditorGrid.py	Sat Jan 12 18:44:39 2013 +0100
@@ -73,6 +73,7 @@
     @signal previewChanged(QPixmap) emitted to signal a new preview pixmap
     @signal selectionAvailable(bool) emitted to signal a change of the selection
     @signal sizeChanged(int, int) emitted after the size has been changed
+    @signal zoomChanged(int) emitted to signal a change of the zoom value
     """
     canRedoChanged = pyqtSignal(bool)
     canUndoChanged = pyqtSignal(bool)
@@ -83,6 +84,7 @@
     previewChanged = pyqtSignal(QPixmap)
     selectionAvailable = pyqtSignal(bool)
     sizeChanged = pyqtSignal(int, int)
+    zoomChanged = pyqtSignal(int)
     
     Pencil = 1
     Rubber = 2
@@ -102,6 +104,12 @@
     MarkColor = QColor(255, 255, 255, 255)
     NoMarkColor = QColor(0, 0, 0, 0)
     
+    ZoomMinimum = 100
+    ZoomMaximum = 10000
+    ZoomStep = 100
+    ZoomDefault = 1200
+    ZoomPercent = True
+    
     def __init__(self, parent=None):
         """
         Constructor
@@ -352,24 +360,25 @@
     
     def setZoomFactor(self, newZoom):
         """
-        Public method to set the zoom factor.
+        Public method to set the zoom factor in percent.
         
-        @param newZoom zoom factor (integer >= 1)
+        @param newZoom zoom factor (integer >= 100)
         """
-        newZoom = max(1, newZoom)   # must not be less than 1
+        newZoom = max(100, newZoom)   # must not be less than 100
         if newZoom != self.__zoom:
-            self.__zoom = newZoom
+            self.__zoom = newZoom // 100
             self.update()
             self.updateGeometry()
             self.resize(self.sizeHint())
+            self.zoomChanged.emit(int(self.__zoom * 100))
     
     def zoomFactor(self):
         """
-        Public method to get the current zoom factor.
+        Public method to get the current zoom factor in percent.
         
         @return zoom factor (integer)
         """
-        return self.__zoom
+        return self.__zoom * 100
     
     def setGridEnabled(self, enable):
         """

eric ide

mercurial