Commit 43729e8f097e7fbb3ca8c2c887e9a46512bf39b0
1 parent
155529ac
Exists in
master
and in
26 other branches
Not allowing user to scroll when inserting or moving a measurement
Showing
2 changed files
with
12 additions
and
1 deletions
Show diff stats
invesalius/data/styles.py
| @@ -390,13 +390,14 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | @@ -390,13 +390,14 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | ||
| 390 | 390 | ||
| 391 | if self.selected: | 391 | if self.selected: |
| 392 | self.selected = None | 392 | self.selected = None |
| 393 | + self.viewer.scroll_enabled = True | ||
| 393 | return | 394 | return |
| 394 | 395 | ||
| 395 | if self.creating: | 396 | if self.creating: |
| 396 | n, m, mr = self.creating | 397 | n, m, mr = self.creating |
| 397 | if mr.IsComplete(): | 398 | if mr.IsComplete(): |
| 398 | - print "COMPLETED" | ||
| 399 | self.creating = None | 399 | self.creating = None |
| 400 | + self.viewer.scroll_enabled = True | ||
| 400 | else: | 401 | else: |
| 401 | Publisher.sendMessage("Add measurement point", | 402 | Publisher.sendMessage("Add measurement point", |
| 402 | ((x, y, z), self._type, | 403 | ((x, y, z), self._type, |
| @@ -405,11 +406,13 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | @@ -405,11 +406,13 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | ||
| 405 | n = len(m.points)-1 | 406 | n = len(m.points)-1 |
| 406 | self.creating = n, m, mr | 407 | self.creating = n, m, mr |
| 407 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) | 408 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) |
| 409 | + self.viewer.scroll_enabled = False | ||
| 408 | return | 410 | return |
| 409 | 411 | ||
| 410 | selected = self._verify_clicked_display(mx, my) | 412 | selected = self._verify_clicked_display(mx, my) |
| 411 | if selected: | 413 | if selected: |
| 412 | self.selected = selected | 414 | self.selected = selected |
| 415 | + self.viewer.scroll_enabled = False | ||
| 413 | else: | 416 | else: |
| 414 | if self.picker.GetViewProp(): | 417 | if self.picker.GetViewProp(): |
| 415 | renderer = self.viewer.slice_data.renderer | 418 | renderer = self.viewer.slice_data.renderer |
| @@ -425,6 +428,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | @@ -425,6 +428,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | ||
| 425 | n, (m, mr) = 1, self.measures.measures[self._ori][slice_number][-1] | 428 | n, (m, mr) = 1, self.measures.measures[self._ori][slice_number][-1] |
| 426 | self.creating = n, m, mr | 429 | self.creating = n, m, mr |
| 427 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) | 430 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) |
| 431 | + self.viewer.scroll_enabled = False | ||
| 428 | 432 | ||
| 429 | def OnReleaseMeasurePoint(self, obj, evt): | 433 | def OnReleaseMeasurePoint(self, obj, evt): |
| 430 | if self.selected: | 434 | if self.selected: |
| @@ -434,6 +438,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | @@ -434,6 +438,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | ||
| 434 | Publisher.sendMessage('Change measurement point position', (idx, n, (x, y, z))) | 438 | Publisher.sendMessage('Change measurement point position', (idx, n, (x, y, z))) |
| 435 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) | 439 | Publisher.sendMessage('Reload actual slice %s' % self.orientation) |
| 436 | self.selected = None | 440 | self.selected = None |
| 441 | + self.viewer.scroll_enabled = True | ||
| 437 | 442 | ||
| 438 | def OnMoveMeasurePoint(self, obj, evt): | 443 | def OnMoveMeasurePoint(self, obj, evt): |
| 439 | x, y, z = self._get_pos_clicked() | 444 | x, y, z = self._get_pos_clicked() |
| @@ -466,6 +471,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | @@ -466,6 +471,7 @@ class LinearMeasureInteractorStyle(DefaultInteractorStyle): | ||
| 466 | self.creating = None | 471 | self.creating = None |
| 467 | self.selected = None | 472 | self.selected = None |
| 468 | Publisher.sendMessage('Update slice viewer') | 473 | Publisher.sendMessage('Update slice viewer') |
| 474 | + self.viewer.scroll_enabled = True | ||
| 469 | 475 | ||
| 470 | def CleanUp(self): | 476 | def CleanUp(self): |
| 471 | self.picker.PickFromListOff() | 477 | self.picker.PickFromListOff() |
invesalius/data/viewer_slice.py
| @@ -436,6 +436,7 @@ class Viewer(wx.Panel): | @@ -436,6 +436,7 @@ class Viewer(wx.Panel): | ||
| 436 | 436 | ||
| 437 | self.orientation = orientation | 437 | self.orientation = orientation |
| 438 | self.slice_number = 0 | 438 | self.slice_number = 0 |
| 439 | + self.scroll_enabled = True | ||
| 439 | 440 | ||
| 440 | self.__init_gui() | 441 | self.__init_gui() |
| 441 | 442 | ||
| @@ -1378,6 +1379,8 @@ class Viewer(wx.Panel): | @@ -1378,6 +1379,8 @@ class Viewer(wx.Panel): | ||
| 1378 | evt.Skip() | 1379 | evt.Skip() |
| 1379 | 1380 | ||
| 1380 | def OnScrollForward(self, evt=None, obj=None): | 1381 | def OnScrollForward(self, evt=None, obj=None): |
| 1382 | + if not self.scroll_enabled: | ||
| 1383 | + return | ||
| 1381 | pos = self.scroll.GetThumbPosition() | 1384 | pos = self.scroll.GetThumbPosition() |
| 1382 | min = 0 | 1385 | min = 0 |
| 1383 | 1386 | ||
| @@ -1389,6 +1392,8 @@ class Viewer(wx.Panel): | @@ -1389,6 +1392,8 @@ class Viewer(wx.Panel): | ||
| 1389 | self.OnScrollBar() | 1392 | self.OnScrollBar() |
| 1390 | 1393 | ||
| 1391 | def OnScrollBackward(self, evt=None, obj=None): | 1394 | def OnScrollBackward(self, evt=None, obj=None): |
| 1395 | + if not self.scroll_enabled: | ||
| 1396 | + return | ||
| 1392 | pos = self.scroll.GetThumbPosition() | 1397 | pos = self.scroll.GetThumbPosition() |
| 1393 | max = self.slice_.GetMaxSliceNumber(self.orientation) | 1398 | max = self.slice_.GetMaxSliceNumber(self.orientation) |
| 1394 | 1399 |