diff -r 93bc4c2cf376 -r 86ccc89d7b0b Viewer.py --- 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