Page MenuHomePhabricator

Cleanup DisplayInteractor
Closed, ResolvedPublic

Description

Edit mitkDisplayInteractor has been removed in D690. The task is still valid for the mitkDisplayActionEventBroadcast.

The mitk::DisplayInteractor is responsible for interactively modifying the scene displayed in a RenderWindow. This includes zooming, scrolling, panning, rotating and swivelling. Historically, the DisplayInteractor also implements the code for changing the LevelWindow of an image, although that should not actually be its responsibility.

However, a new 'Function' 'UpdateStatusbar()' has been added that triggers an update of a GUI widget that users that do not use the workbench (but use MITK as a toolkit) actually do not even have.
Even if it uses an abstract interface to communicate with this GUI element, this should not be implemented in this Interactor. It simply isn't its responsibility!!
That's as if a DICOMFileReader would tell the DataManager to show a new entry directly.

I would prefer a solution where a controller (either an existing controller like the SliceNavigationController or a new one) inform the GUI-Element.
If you absolutely want to trigger the update from an interactor, this should at least be new interactor that is responsible for this task only!

Revisions and Commits

rMITK MITK
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision

Event Timeline

This should be part of general refactoring, but is not a priority for this release.

kalali added a revision: Restricted Differential Revision.Jul 12 2022, 3:12 PM