View Issue Details

IDProjectCategoryView StatusLast Update
0003556Slicer4Module Markupspublic2017-06-10 08:51
Reporterlassoan Assigned Tonicole  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product VersionSlicer 4.3.1-2 
Target VersionSlicer 4.4.0Fixed in VersionSlicer 4.4.0 
Summary0003556: Jumping to an incorrect slice when a new markup is added
Description

If the "Click to jump slicer" option is enabled and a markup is added then the markup is added to the correct location, but it disappears immediately, as the module jumps to the (0,0,0) slice.

TagsNo tags attached.

Activities

nicole

nicole

2014-03-03 13:04

administrator   ~0010663

The base issue is that when fiducials are added by clicking with the mouse, an unitialised markup is added to the markups list first, then the coordinates are set by a second call. This first triggers the markup added to list event which adds a row to the table in thte GUI with coordinates of 0,0,0, then triggers a point modified event. UpdateRow is called in both cases, but the jump is only triggered when a "select" is made on the row, aka after the new row is added, it's selected (while the point is still at 0,0,0).

Some possible solutions:

  • on mouse click to add in the displayable manager, add a fully initialised point to the list of points (this would be cleanest, but check for side effects - Laurent may have been working around it)
  • in the onActiveMarkupsNodePointModifiedEvent method on the widget, if jump to slices is clicked, jump; this will mean that if a user is click+drag moving a fiducial and the GUI has the jump optiion clicked, all the slices will jump (this might fix the shift click drag bug, but it would expand the notion of the click in the table to jump slices check box to include jumping slices when fiducials are moved).
  • try to set up a conditional event in onActiveMarkupsNodeMarkupAddedEvent to do the jump to slices after the point has been modified (would rather not, but it's an option)
lassoan

lassoan

2014-03-03 18:21

developer   ~0010674

I think the cleanest would be to only jump if the active point is changed because the user clicked on one of the rows in the markups table. When the active point is modified due to any other reason (e.g., when the widget updates itself from the MRML; or when the user clicks on a fiducial in the slice viewer) the "jump" feature should not be activated.

nicole

nicole

2014-03-04 06:15

administrator   ~0010675

Disabled jumping to new fiducials:
http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=22921

lassoan

lassoan

2014-03-06 06:08

developer   ~0011228

Thanks Nicole, it works well!

Related Changesets

Import 2017-06-07 23:51:09: master ac265f6c

2014-03-04 11:13:37

naucoin

Details Diff
BUG: disable selecting new fiducial if jump slices on

When new fiducials are added to a list, by default that row
in the GUI table was selected. If jump slices is checked,
that would result in the slices jumping to the coordinates
of the new fiducial, which is at the origin when it's first
added. The calculated coordinates are set by a second call
(and produce a second event) in the displayable manager
that was not triggering a second jump to the correct
coordinates. Disable jumping to the newly added
fiducial location when jump slices is on, this limits
the jumping to user clicks in the table.

Issue 0003556


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22921 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/Loadable/Markups/qSlicerMarkupsModuleWidget.cxx Diff File

Issue History

Date Modified Username Field Change
2014-01-13 13:36 lassoan New Issue
2014-01-13 13:36 lassoan Status new => assigned
2014-01-13 13:36 lassoan Assigned To => nicole
2014-03-03 13:04 nicole Note Added: 0010663
2014-03-03 18:21 lassoan Note Added: 0010674
2014-03-04 06:15 nicole Note Added: 0010675
2014-03-04 06:15 nicole Status assigned => resolved
2014-03-04 06:15 nicole Fixed in Version => Slicer 4.4.0
2014-03-04 06:15 nicole Resolution open => fixed
2014-03-06 05:23 jcfr Status resolved => closed
2014-03-06 06:08 lassoan Note Added: 0011228
2014-03-06 06:15 jcfr Target Version => Slicer 4.4.0
2017-06-10 08:51 Changeset attached => Slicer master ac265f6c