Public Member Functions | |
berryObjectMacro (SelListenerRigidRegistration) | |
SelListenerRigidRegistration (QmitkRigidRegistrationView *view) | |
void | DoSelectionChanged (ISelection::ConstPointer selection) |
void | SelectionChanged (IWorkbenchPart::Pointer part, ISelection::ConstPointer selection) |
Public Attributes | |
QmitkRigidRegistrationView * | m_View |
Definition at line 42 of file QmitkRigidRegistrationView.cpp.
SelListenerRigidRegistration::SelListenerRigidRegistration | ( | QmitkRigidRegistrationView * | view ) | [inline] |
Definition at line 46 of file QmitkRigidRegistrationView.cpp.
{ m_View = view; }
SelListenerRigidRegistration::berryObjectMacro | ( | SelListenerRigidRegistration | ) |
void SelListenerRigidRegistration::DoSelectionChanged | ( | ISelection::ConstPointer | selection ) | [inline] |
Definition at line 51 of file QmitkRigidRegistrationView.cpp.
References berry::SmartPointer< TObjectType >::Cast(), and QmitkRigidRegistrationView::m_CurrentSelection.
{ // if (!m_View->IsVisible()) // return; // save current selection in member variable m_View->m_CurrentSelection = selection.Cast<const IStructuredSelection>(); // do something with the selected items if(m_View->m_CurrentSelection) { if (m_View->m_CurrentSelection->Size() != 2) { if (m_View->m_FixedNode.IsNull() || m_View->m_MovingNode.IsNull()) { m_View->m_Controls.m_StatusLabel->show(); m_View->m_Controls.TextLabelFixed->hide(); m_View->m_Controls.m_FixedLabel->hide(); m_View->m_Controls.TextLabelMoving->hide(); m_View->m_Controls.m_MovingLabel->hide(); m_View->m_Controls.m_OpacityLabel->setEnabled(false); m_View->m_Controls.m_OpacitySlider->setEnabled(false); m_View->m_Controls.label->setEnabled(false); m_View->m_Controls.label_2->setEnabled(false); m_View->m_Controls.m_ShowRedGreenValues->setEnabled(false); m_View->m_Controls.m_SwitchImages->hide(); } } else { m_View->m_Controls.m_StatusLabel->hide(); bool foundFixedImage = false; mitk::DataNode::Pointer fixedNode; // iterate selection for (IStructuredSelection::iterator i = m_View->m_CurrentSelection->Begin(); i != m_View->m_CurrentSelection->End(); ++i) { // extract datatree node if (mitk::DataNodeObject::Pointer nodeObj = i->Cast<mitk::DataNodeObject>()) { mitk::DataNode::Pointer node = nodeObj->GetDataNode(); // only look at interesting types if(QString("Image").compare(node->GetData()->GetNameOfClass())==0) { if (dynamic_cast<mitk::Image*>(node->GetData())->GetDimension() == 4) { m_View->m_Controls.m_StatusLabel->show(); QMessageBox::information( NULL, "RigidRegistration", "Only 2D or 3D images can be processed.", QMessageBox::Ok ); return; } if (foundFixedImage == false) { fixedNode = node; foundFixedImage = true; } else { m_View->SetImagesVisible(selection); m_View->FixedSelected(fixedNode); m_View->MovingSelected(node); m_View->m_Controls.m_StatusLabel->hide(); m_View->m_Controls.TextLabelFixed->show(); m_View->m_Controls.m_FixedLabel->show(); m_View->m_Controls.TextLabelMoving->show(); m_View->m_Controls.m_MovingLabel->show(); m_View->m_Controls.m_OpacityLabel->setEnabled(true); m_View->m_Controls.m_OpacitySlider->setEnabled(true); m_View->m_Controls.label->setEnabled(true); m_View->m_Controls.label_2->setEnabled(true); m_View->m_Controls.m_ShowRedGreenValues->setEnabled(true); } } else { m_View->m_Controls.m_StatusLabel->show(); return; } } } } } else if (m_View->m_FixedNode.IsNull() || m_View->m_MovingNode.IsNull()) { m_View->m_Controls.m_StatusLabel->show(); } }
void SelListenerRigidRegistration::SelectionChanged | ( | IWorkbenchPart::Pointer | part, |
ISelection::ConstPointer | selection | ||
) | [inline, virtual] |
Implements berry::ISelectionListener.
Definition at line 137 of file QmitkRigidRegistrationView.cpp.
{ // check, if selection comes from datamanager if (part) { QString partname(part->GetPartName().c_str()); if(partname.compare("Datamanager")==0) { // apply selection DoSelectionChanged(selection); } } }
Definition at line 151 of file QmitkRigidRegistrationView.cpp.