NOTICE! This is a static HTML version of a legacy ImageJ Trac ticket.

The ImageJ project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Ticket #1346 (closed defect: fixed)

Opened 2012-07-18T14:58:23-05:00

Last modified 2012-07-24T15:14:15-05:00

Image label not up to date

Reported by: bdezonia Owned by: bdezonia
Priority: major Milestone: imagej2-b4-plugins
Component: UI Framework Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1345

Description (last modified by bdezonia)

Create a new image
Add a channel axis (size 9)
Image displays fine
Now click on slider arrow as far right as possible
Image label stops on 8/9
Click on left slider arrow and it goes to 9/9
Subsequent clicks will go down to 2/9 but no farther
Click on right slider arrow and it goes to 1/9
Repeat ad nauseum and this issue never rights itself
(Again this may be a publish() versus publishNow() issue with the image label)

Change History

comment:1 Changed 2012-07-18T16:13:12-05:00 by bdezonia

  • Description modified

comment:2 Changed 2012-07-24T14:27:22-05:00 by bdezonia

I understand this bug. There are two places that are handling AxisPositionEvents: AbstractImageDisplayViewer and SwingDisplayPanel. This bug happens because the event is getting processed by the viewer first and the panel second. This order needs to be reversed. I think order is determined somewhat randomly at startup.

A short term fix is to make AbstractImageDisplayViewer::updateLabel() public and have the SwingDisplayPanel AxisPosiitonEvent handler call it directly. This is kludgy but solves the problem.

Ideally we'd come up with a way to specify who has priority in handling certain events at creation time.

comment:3 Changed 2012-07-24T15:14:15-05:00 by bdezonia

  • Status changed from new to closed
  • Resolution set to fixed

With commit fc0fff575dfc4a2dd04b9fe52ad8fcb6594d3b26 this bug is fixed. We are now processing AxisPositionEvents in two steps. This keeps the classes loosely coupled and still solves the bug.