I have multiple renderers each rendering in a different portion of the same QmitkRenderWindow. I would like to be able to use mouse interaction with all my renderers but the QmitkRenderWindow and mitkRenderWindowBase seems to be designed with a single renderer philosophy in mind.
For example, in mitkRenderWindowBase's wheelMitkevent, the SliceNavigationController to be updated is acquired using mitk::BaseRenderer::GetInstance which uses a 1:1 map between a vtkRenderWindow and a BaseRenderer.
Also, in mitkRenderWindowBase all events are passed down to a single renderer (m_Renderer) which shows that multiple renderers isnt considered an option in the actual design of QmitkRenderWindow.
My precise need was that I wanted a way to trigger mousewheel slice navigation for any of my renderers. I got around by using mitk::BaseRenderer::AddInstance(renderwin, renderer) to 'set focus' on this renderer's navigation controller by crushing the old renderer in the 1:1 map.
So is this a bug or is the QmitkRenderWindow designed to ever just handle 1 renderer? If that's the case, would it be interesting to prevent multiple renderer usage for QmitkRenderWindow?