2151 if self.Editor.HasCapture(): |
2151 if self.Editor.HasCapture(): |
2152 self.Editor.ReleaseMouse() |
2152 self.Editor.ReleaseMouse() |
2153 event.Skip() |
2153 event.Skip() |
2154 |
2154 |
2155 def OnViewerRightDown(self, event): |
2155 def OnViewerRightDown(self, event): |
2156 self.Editor.CaptureMouse() |
2156 if not self.Editor.HasCapture(): |
|
2157 self.Editor.CaptureMouse() |
2157 if self.Mode == MODE_SELECTION: |
2158 if self.Mode == MODE_SELECTION: |
2158 element = self.FindElement(event) |
2159 element = self.FindElement(event) |
2159 if self.SelectedElement is not None and self.SelectedElement != element: |
2160 if self.SelectedElement is not None and self.SelectedElement != element: |
2160 self.SelectedElement.SetSelected(False) |
2161 self.SelectedElement.SetSelected(False) |
2161 self.SelectedElement = None |
2162 self.SelectedElement = None |
2171 def OnViewerRightUp(self, event): |
2172 def OnViewerRightUp(self, event): |
2172 dc = self.GetLogicalDC() |
2173 dc = self.GetLogicalDC() |
2173 self.rubberBand.Reset() |
2174 self.rubberBand.Reset() |
2174 self.rubberBand.OnLeftDown(event, dc, self.Scaling) |
2175 self.rubberBand.OnLeftDown(event, dc, self.Scaling) |
2175 self.rubberBand.OnLeftUp(event, dc, self.Scaling) |
2176 self.rubberBand.OnLeftUp(event, dc, self.Scaling) |
|
2177 if self.Editor.HasCapture(): |
|
2178 self.Editor.ReleaseMouse() |
2176 if self.SelectedElement is not None: |
2179 if self.SelectedElement is not None: |
2177 if self.Debug: |
2180 if self.Debug: |
2178 Graphic_Element.OnRightUp(self.SelectedElement, event, self.GetLogicalDC(), self.Scaling) |
2181 Graphic_Element.OnRightUp(self.SelectedElement, event, self.GetLogicalDC(), self.Scaling) |
2179 else: |
2182 else: |
2180 self.SelectedElement.OnRightUp(event, self.GetLogicalDC(), self.Scaling) |
2183 self.SelectedElement.OnRightUp(event, self.GetLogicalDC(), self.Scaling) |