Ticket #1826 (new defect)
Opened 2013-04-18T10:37:15-05:00
Last modified 2013-04-18T16:02:06-05:00
Phantom ROIs exist in ROIManager
Reported by: | bdezonia | Owned by: | bdezonia |
---|---|---|---|
Priority: | major | Milestone: | imagej2-b9-rois |
Component: | Legacy Compatibility | Version: | |
Severity: | serious | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | #1484 |
Description
When switching to legacy mode Overlays in the IJ2 OverlayManager end up as ROIs in the IJ1 RoiManager. However it is possible after switching back and forth adding/deleting Overlays/ROIs that there will be no Overlays left but switching to legacy mode will show a RoiManager with a couple ROIs in it. This might be the case that the IJ1 Overlay has not been cleared out correctly. Or something else. Investigate.
Sequence that shows problem
Open Boats
Draw a rect overlay
Switch to legacy mode: rect roi is in RoiManager
Switch to modern mode
Close boats
Switch to legacy mode
Roi is still in RoiManager
Change History
comment:1 Changed 2013-04-18T12:44:53-05:00 by bdezonia
comment:2 Changed 2013-04-18T12:45:10-05:00 by bdezonia
- Component changed from Analysis Plugins to Legacy Compatibility
comment:3 Changed 2013-04-18T16:02:06-05:00 by bdezonia
- Blocking 1484 added; 1661 removed
- Milestone changed from imagej2-b7-ndim-data to imagej2-b9-rois
Note that with commit 00adfda0207987588609617aad77036d8d9d8c1f the ROI mgr sync code is currently disabled. So this bug won't happen. However the approach mentioned in previous comment still applies and should be followed up (in the roi beta?).
In general some thought has to be put into how the RoiManager and OverlayManager should be synced. Right now it is broken as it is done only in OverlayHarmonizer and that gets called once per ImageDisplay I believe. Having two images with overlays open and switching to legacy mode shows probs. I think we need a OverlayManagerHarmonizer class that synchronizes this stuff and is called in one place.