Public Member Functions | Protected Member Functions | Protected Attributes

mitk::RenderWindowBase Class Reference
[Renderer and RenderWindow Classes]

Base class of MITK RenderWindows. More...

#include <mitkRenderWindowBase.h>

Inheritance diagram for mitk::RenderWindowBase:
Inheritance graph
[legend]
Collaboration diagram for mitk::RenderWindowBase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~RenderWindowBase ()
void InitRenderer ()
virtual
mitk::SliceNavigationController
GetSliceNavigationController ()
virtual
mitk::CameraRotationController
GetCameraRotationController ()
virtual mitk::BaseControllerGetController ()
virtual mitk::VtkPropRendererGetRenderer ()
virtual vtkRenderWindow * GetVtkRenderWindow ()=0
virtual vtkRenderWindowInteractor * GetVtkRenderWindowInteractor ()=0
void SetProcessWheelEvents (bool state)
bool GetProcessWheelEvents ()
virtual void mousePressMitkEvent (mitk::MouseEvent *me)
virtual void mouseReleaseMitkEvent (mitk::MouseEvent *me)
virtual void mouseMoveMitkEvent (mitk::MouseEvent *me)
virtual void wheelMitkEvent (mitk::WheelEvent *we)
virtual void keyPressMitkEvent (mitk::KeyEvent *mke)
virtual void resizeMitkEvent (int width, int height)

Protected Member Functions

 RenderWindowBase ()
void Initialize (mitk::RenderingManager *renderingManager=NULL, const char *name="unnamed renderer")
void Destroy ()

Protected Attributes

mitk::VtkPropRenderer::Pointer m_Renderer
vtkMitkRenderPropm_RenderProp
bool m_InResize
bool m_ProcessWheelEvents

Detailed Description

Base class of MITK RenderWindows.

This class sets up the MITK rendering mechanism and it's integration into VTK.

Currently, there are two specific implementations of this abstract class: QmitkRenderWindow, inerhits from the QVTKWidget and is the matured way for MITK rendering mitkRenderWindow is a new, QT-independent RenderWindow implementation

Definition at line 43 of file mitkRenderWindowBase.h.


Constructor & Destructor Documentation

mitk::RenderWindowBase::~RenderWindowBase (  ) [virtual]

Definition at line 77 of file mitkRenderWindowBase.cpp.

{

}
mitk::RenderWindowBase::RenderWindowBase (  ) [protected]

Definition at line 26 of file mitkRenderWindowBase.cpp.

                                        : m_ProcessWheelEvents(true)
{

}

Member Function Documentation

void mitk::RenderWindowBase::Destroy (  ) [protected]

Definition at line 69 of file mitkRenderWindowBase.cpp.

References mitk::BaseRenderer::RemoveInstance().

Referenced by QmitkRenderWindow::~QmitkRenderWindow().

{
  m_Renderer->GetRenderingManager()->RemoveRenderWindow(GetVtkRenderWindow());
  mitk::BaseRenderer::RemoveInstance(GetVtkRenderWindow());
  m_Renderer->GetVtkRenderer()->RemoveViewProp(m_RenderProp);
  m_RenderProp->Delete();
}
mitk::CameraRotationController * mitk::RenderWindowBase::GetCameraRotationController (  ) [virtual]
mitk::BaseController * mitk::RenderWindowBase::GetController (  ) [virtual]
bool mitk::RenderWindowBase::GetProcessWheelEvents (  )

Definition at line 191 of file mitkRenderWindowBase.cpp.

mitk::VtkPropRenderer * mitk::RenderWindowBase::GetRenderer (  ) [virtual]
mitk::SliceNavigationController * mitk::RenderWindowBase::GetSliceNavigationController (  ) [virtual]
virtual vtkRenderWindow* mitk::RenderWindowBase::GetVtkRenderWindow (  ) [pure virtual]

Implemented in mitk::RenderWindow, and QmitkRenderWindow.

virtual vtkRenderWindowInteractor* mitk::RenderWindowBase::GetVtkRenderWindowInteractor (  ) [pure virtual]

Implemented in mitk::RenderWindow, and QmitkRenderWindow.

void mitk::RenderWindowBase::Initialize ( mitk::RenderingManager renderingManager = NULL,
const char *  name = "unnamed renderer" 
) [protected]
void mitk::RenderWindowBase::InitRenderer (  )
void mitk::RenderWindowBase::keyPressMitkEvent ( mitk::KeyEvent mke ) [virtual]

Definition at line 131 of file mitkRenderWindowBase.cpp.

Referenced by QmitkRenderWindow::keyPressEvent().

{
  if (m_Renderer.IsNotNull())
    m_Renderer->KeyPressEvent(mke);
}
void mitk::RenderWindowBase::mouseMoveMitkEvent ( mitk::MouseEvent me ) [virtual]

Definition at line 94 of file mitkRenderWindowBase.cpp.

Referenced by QmitkRenderWindow::mouseMoveEvent().

{
  if (m_Renderer.IsNotNull()) 
     m_Renderer->MouseMoveEvent(me);
}
void mitk::RenderWindowBase::mousePressMitkEvent ( mitk::MouseEvent me ) [virtual]

Definition at line 82 of file mitkRenderWindowBase.cpp.

Referenced by QmitkRenderWindow::mousePressEvent().

{
  if (m_Renderer.IsNotNull())
    m_Renderer->MousePressEvent(me);
}
void mitk::RenderWindowBase::mouseReleaseMitkEvent ( mitk::MouseEvent me ) [virtual]

Definition at line 88 of file mitkRenderWindowBase.cpp.

Referenced by QmitkRenderWindow::mouseReleaseEvent().

{
  if(m_Renderer.IsNotNull())
    m_Renderer->MouseReleaseEvent(me);
}
void mitk::RenderWindowBase::resizeMitkEvent ( int  width,
int  height 
) [virtual]

Definition at line 138 of file mitkRenderWindowBase.cpp.

Referenced by QmitkRenderWindow::resizeEvent().

{
  if(m_InResize) //@FIXME CRITICAL probably related to VtkSizeBug
    return;
  m_InResize = true;

  if(m_Renderer.IsNotNull())
  {
    m_Renderer->Resize(width, height);
  }

  m_InResize = false;
}
void mitk::RenderWindowBase::SetProcessWheelEvents ( bool  state )

Definition at line 186 of file mitkRenderWindowBase.cpp.

{
  m_ProcessWheelEvents = state;
}
void mitk::RenderWindowBase::wheelMitkEvent ( mitk::WheelEvent we ) [virtual]

Definition at line 100 of file mitkRenderWindowBase.cpp.

References mitk::WheelEvent::GetDelta(), mitk::Stepper::GetSteps(), mitk::Stepper::Next(), and mitk::Stepper::Previous().

Referenced by QmitkRenderWindow::wheelEvent().

{
  if ( !m_ProcessWheelEvents )
    return;
 
  if ( !GetSliceNavigationController()->GetSliceLocked() )
  {
    mitk::Stepper* stepper = GetSliceNavigationController()->GetSlice();

    if (stepper->GetSteps() <= 1)
    {
      stepper = GetSliceNavigationController()->GetTime();
    }

    //if (we->orientation() * we->GetDelta()  > 0)
    if (we->GetDelta()  > 0)
    {
      stepper->Next();
    }
    else
    {
      stepper->Previous();
    }

    //also send to Renderer to send if to MITK interaction mechanism
    if(m_Renderer.IsNotNull()) 
      m_Renderer->WheelEvent(we);
    
  }
}

Member Data Documentation

Definition at line 87 of file mitkRenderWindowBase.h.

Definition at line 89 of file mitkRenderWindowBase.h.

Definition at line 85 of file mitkRenderWindowBase.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines