Currently the DisplayInteractor : public EventStateMachine, public InteractionEventObserver is the current interactor to handle mouse events on render windows.
Providing different functions for specific mouse interactions (zoom, scroll, move, ...) it computes some values that are needed for a certain action (e.g. zoom factor by looking at the current and previous display coordinate).
We could move those calculations out of the DisplayInteractor to a base class and later extend this class with the current DisplayInteractor and a new DisplayInteractionBroadcaster.
Such a Broadcaster does not contain any call to modify the camera controller or slice navigation controller of a render window but sends events in order to inform others that a certain event has been triggered by the user (mouse event on render window).