Viewer.py
changeset 3 86ccc89d7b0b
parent 2 93bc4c2cf376
child 5 f8652b073e84
--- a/Viewer.py	Wed Feb 07 18:43:32 2007 +0100
+++ b/Viewer.py	Thu Feb 08 17:41:41 2007 +0100
@@ -120,6 +120,7 @@
         
         # Initialize Viewer mode to Selection mode
         self.Mode = MODE_SELECTION
+        self.SavedMode = False
         
         self.Parent = window
         self.Controler = controler
@@ -155,9 +156,13 @@
     
     # Changes Viewer mode
     def SetMode(self, mode):
-        self.Mode = mode
+        if self.Mode != mode or mode == MODE_SELECTION:
+            self.Mode = mode
+            self.SavedMode = False
+        else:
+            self.SavedMode = True
         # Reset selection
-        if self.SelectedElement:
+        if self.Mode != MODE_SELECTION and self.SelectedElement:
             self.SelectedElement.SetSelected(False)
             self.SelectedElement = None
             self.Refresh()
@@ -463,9 +468,9 @@
                 return element
         return None
     
-    def FindBlockConnector(self, pos):
+    def FindBlockConnector(self, pos, exclude = True):
         for block in self.Blocks:
-            result = block.TestConnector(pos)
+            result = block.TestConnector(pos, exclude)
             if result:
                 return result
         return None