View Issue Details

IDProjectCategoryView StatusLast Update
0004347Slicer4Module DICOMpublic2018-03-02 11:02
Reporterpieper Assigned Topieper  
PriorityhighSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product VersionSlicer 4.7.0 
Target VersionFixed in VersionSlicer 4.7.0 
Summary0004347: add confirmation dialog on dicom warnings
Description

When the dicom browser is used in the default (non-Advanced) mode, any warnings generated by the DICOMLoadable is not shown to the user.

Andrey, Christian and I discussed that this can be problematic, since warnings about inconsistent geometry can mean incorrect quantitative results.

We suggest that in non-Advanced mode that if the highest priority loadable has warnings then the user be prompted to confirm that they want to load anyway.

Additional Information

In Slicer core the only plugin that uses the warning field is the ScalarVolume (which is the most common case). The warnings are for things like missing slices, missing pixel data, a mix of different slice orientations, etc. These are all pretty serious and users should be made aware of the issues.

TagsNo tags attached.

Activities

pieper

pieper

2017-02-27 09:53

administrator   ~0014349

Posted notices to slicer-devel Feb 16:

http://massmail.spl.harvard.edu/public-archives/slicer-devel/2017/041438.html

No objections, so we'll take that to mean go ahead (people can complain later if they don't like it).

pieper

pieper

2017-02-28 13:00

administrator   ~0014350

Fix committed in r25734

pinter

pinter

2017-03-08 12:10

developer   ~0014360

There are problems with this change when loading RT dose for example, because the scalar volume plugin logs warning, but then the RT plugin can load it without problems. I think we should only show this confirmation if the plugin returning the highest confidence logs warnings.

pinter

pinter

2017-03-08 12:13

developer   ~0014361

(Actually this seems to have been suggested by Andrey as well: "...if the highest priority loadable has warnings...")

Steve, if you agree then I'll commit a fix.

pieper

pieper

2017-03-08 13:29

administrator   ~0014362

Good point - I missed that case. Yes, if you want to address that go ahead or I can do it in a bit.

pinter

pinter

2017-03-08 13:41

developer   ~0014365

I made a commit (25768) that should address this. Thanks!

pinter

pinter

2017-03-08 15:05

developer   ~0014366

It would also be great if I could disable the popup in Applicaiton Settings or similar, because some of my test data gives warnings, and the popup stops the test script from finishing, but I'd like it to use that data throughout the test.

pieper

pieper

2017-03-08 15:40

administrator   ~0014367

Thanks for the fix Csaba!

Regarding not having the popup, I thought about adding a special flag for that but there's already a conditional for self.advancedView and I thought that anyone who wants to bypass the dialog could just put the window into advancedView model to save having yet another configuration option. What do you think of that solution?

BTW, looking at it now that class has gotten pretty huge and it would probably make sense to refactor out the load logic from the widget.

pinter

pinter

2017-03-08 15:44

developer   ~0014368

If I can just enable advancedView it's fine! Do I have to then make extra calls (like examine) in that case? Thanks!

Issue History

Date Modified Username Field Change
2017-02-16 12:16 pieper New Issue
2017-02-16 12:16 pieper Status new => assigned
2017-02-16 12:16 pieper Assigned To => pieper
2017-02-27 09:53 pieper Note Added: 0014349
2017-02-28 13:00 pieper Note Added: 0014350
2017-02-28 13:00 pieper Status assigned => resolved
2017-02-28 13:00 pieper Fixed in Version => Slicer 4.7.0
2017-02-28 13:00 pieper Resolution open => fixed
2017-03-08 12:10 pinter Note Added: 0014360
2017-03-08 12:13 pinter Note Added: 0014361
2017-03-08 12:15 pinter Status resolved => feedback
2017-03-08 12:15 pinter Resolution fixed => reopened
2017-03-08 13:29 pieper Note Added: 0014362
2017-03-08 13:29 pieper Status feedback => assigned
2017-03-08 13:41 pinter Note Added: 0014365
2017-03-08 14:33 pinter Status assigned => resolved
2017-03-08 14:33 pinter Resolution reopened => fixed
2017-03-08 15:05 pinter Note Added: 0014366
2017-03-08 15:40 pieper Note Added: 0014367
2017-03-08 15:44 pinter Note Added: 0014368
2018-03-02 11:02 jcfr Status resolved => closed