Signals | Public Member Functions | Protected Slots | Protected Attributes

QmitkStandardViews Class Reference

#include <QmitkStandardViews.h>

Collaboration diagram for QmitkStandardViews:
Collaboration graph
[legend]

List of all members.

Signals

void StandardViewDefined (mitk::CameraController::StandardView view)

Public Member Functions

 QmitkStandardViews (QWidget *parent=0, Qt::WindowFlags f=0)
virtual ~QmitkStandardViews ()
void SetCameraController (mitk::CameraController *controller)
void SetCameraControllerFromRenderWindow (vtkRenderWindow *window)

Protected Slots

void hotspotClicked (const QString &s)

Protected Attributes

QClickableLabelm_ClickablePicture
mitk::CameraController::Pointer m_CameraController

Detailed Description

Definition at line 30 of file QmitkStandardViews.h.


Constructor & Destructor Documentation

QmitkStandardViews::QmitkStandardViews ( QWidget *  parent = 0,
Qt::WindowFlags  f = 0 
)

Definition at line 27 of file QmitkStandardViews.cpp.

References QClickableLabel::AddHotspot(), hotspotClicked(), and m_ClickablePicture.

:QWidget(parent, f)
{
  QVBoxLayout *vlayout = new QVBoxLayout(this);
  QWidget *labelContainer = new QWidget(this);
  vlayout->addStretch(1);
  vlayout->addWidget(labelContainer);
  vlayout->addStretch(1);
  
  QHBoxLayout *hlayout = new QHBoxLayout(labelContainer);
  
  // find embedded picture
  QPixmap pixmap(":QmitkStandardViews.png");
  
  // set picture for label
  m_ClickablePicture = new QClickableLabel(labelContainer);

  // set hotspots specific for this image
  m_ClickablePicture->setPixmap( pixmap );

  m_ClickablePicture->AddHotspot( "Left", QRect(QPoint(0,64), 
                                                QPoint(21, 83)) );

  m_ClickablePicture->AddHotspot( "Right", QRect(QPoint(128, 64), 
                                                 QPoint(149, 83)) );

  m_ClickablePicture->AddHotspot( "Top", QRect(QPoint(66, 0), 
                                               QPoint(83, 75)) );

  m_ClickablePicture->AddHotspot( "Bottom", QRect(QPoint(66, 128), 
                                                  QPoint(83, 149)) );

  m_ClickablePicture->AddHotspot( "Front", QRect(QPoint(10, 102), 
                                                 QPoint(29, 119)) );

  m_ClickablePicture->AddHotspot( "Back", QRect(QPoint(119, 30), 
                                                QPoint(138, 48)) );

  connect( m_ClickablePicture, SIGNAL( mouseReleased(const QString&)), this, SLOT(hotspotClicked(const QString&)) );

  hlayout->addStretch(1);
  hlayout->addWidget( m_ClickablePicture );
  hlayout->addStretch(1);
}
QmitkStandardViews::~QmitkStandardViews (  ) [virtual]

Definition at line 74 of file QmitkStandardViews.cpp.

{

}

Member Function Documentation

void QmitkStandardViews::hotspotClicked ( const QString &  s ) [protected, slot]

Definition at line 102 of file QmitkStandardViews.cpp.

References mitk::CameraController::ANTERIOR, mitk::CameraController::CAUDAL, mitk::CameraController::CRANIAL, mitk::CameraController::DEXTER, m_CameraController, mitk::CameraController::POSTERIOR, mitk::CameraController::SINISTER, and StandardViewDefined().

Referenced by QmitkStandardViews().

{
  mitk::CameraController::StandardView view;
  bool good(true);

       if ( s == "Left"    ) view = mitk::CameraController::DEXTER;
  else if ( s == "Right"   ) view = mitk::CameraController::SINISTER;
  else if ( s == "Top"     ) view = mitk::CameraController::CRANIAL;
  else if ( s == "Bottom"  ) view = mitk::CameraController::CAUDAL;
  else if ( s == "Front"   ) view = mitk::CameraController::ANTERIOR;
  else if ( s == "Back"    ) view = mitk::CameraController::POSTERIOR;
  else
  {
    std::cerr << "Warning in "<<__FILE__<<", "<<__LINE__<<": unknown standard view '" << s.toStdString() << "'" << std::endl;  
    view = mitk::CameraController::ANTERIOR;
    good = false;
  }

  if (good)
  {
    if ( m_CameraController.IsNotNull() )
    {
      m_CameraController->SetStandardView( view );
    }

    emit StandardViewDefined( view );
  }
}
void QmitkStandardViews::SetCameraController ( mitk::CameraController controller )

Definition at line 81 of file QmitkStandardViews.cpp.

References m_CameraController.

{
  m_CameraController = controller;
}
void QmitkStandardViews::SetCameraControllerFromRenderWindow ( vtkRenderWindow *  window )

Definition at line 87 of file QmitkStandardViews.cpp.

References mitk::BaseRenderer::GetInstance(), and m_CameraController.

{
  if ( window != NULL )
  {
    if ( mitk::BaseRenderer::GetInstance(window) != NULL )
      if ( mitk::BaseRenderer::GetInstance(window)->GetCameraController() != NULL )
        m_CameraController = mitk::BaseRenderer::GetInstance(window)->GetCameraController();
    
  }
  else
  {
    std::cerr << "Warning in "<<__FILE__<<", "<<__LINE__<<": render window is NULL!" << std::endl;  
  } 
}
void QmitkStandardViews::StandardViewDefined ( mitk::CameraController::StandardView  view ) [signal]

Referenced by hotspotClicked().


Member Data Documentation

Definition at line 54 of file QmitkStandardViews.h.

Referenced by QmitkStandardViews().


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