equal
deleted
inserted
replaced
168 if self.GetDrawingMode() == FREEDRAWING_MODE: |
168 if self.GetDrawingMode() == FREEDRAWING_MODE: |
169 Viewer.OnViewerLeftDown(self, event) |
169 Viewer.OnViewerLeftDown(self, event) |
170 elif self.Mode == MODE_SELECTION: |
170 elif self.Mode == MODE_SELECTION: |
171 dc = self.GetLogicalDC() |
171 dc = self.GetLogicalDC() |
172 pos = event.GetLogicalPosition(dc) |
172 pos = event.GetLogicalPosition(dc) |
173 if event.ShiftDown(): |
173 if event.ShiftDown() and not event.ControlDown() and self.SelectedElement is not None: |
174 element = self.FindElement(pos, True) |
174 element = self.FindElement(pos, True) |
175 if element and not self.IsWire(element): |
175 if element and not self.IsWire(element): |
176 if isinstance(self.SelectedElement, Graphic_Group): |
176 if isinstance(self.SelectedElement, Graphic_Group): |
177 self.SelectedElement.SelectElement(element) |
177 self.SelectedElement.SelectElement(element) |
178 else: |
178 else: |
184 elements = self.SelectedElement.GetElements() |
184 elements = self.SelectedElement.GetElements() |
185 if len(elements) == 0: |
185 if len(elements) == 0: |
186 self.SelectedElement = element |
186 self.SelectedElement = element |
187 elif len(elements) == 1: |
187 elif len(elements) == 1: |
188 self.SelectedElement = elements[0] |
188 self.SelectedElement = elements[0] |
|
189 self.SelectedElement.SetSelected(True) |
189 else: |
190 else: |
190 element = self.FindElement(pos) |
191 element = self.FindElement(pos) |
191 if self.SelectedElement and self.SelectedElement != element: |
192 if self.SelectedElement and self.SelectedElement != element: |
192 if self.IsWire(self.SelectedElement): |
193 if self.IsWire(self.SelectedElement): |
193 self.SelectedElement.SetSelectedSegment(None) |
194 self.SelectedElement.SetSelectedSegment(None) |