Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "QmitkImageNavigatorView.h"
00019
00020 #include "mitkNodePredicateDataType.h"
00021
00022 #include "QmitkDataStorageComboBox.h"
00023 #include "QmitkStdMultiWidget.h"
00024
00025 #include "mitkDataStorageEditorInput.h"
00026
00027
00028 #include <berryPlatform.h>
00029 #include <berryIWorkbenchPage.h>
00030 #include <berryConstants.h>
00031
00032 #include <QMessageBox>
00033
00034
00035
00036 const std::string QmitkImageNavigatorView::VIEW_ID = "org.mitk.views.imagenavigator";
00037
00038 QmitkImageNavigatorView::QmitkImageNavigatorView()
00039 : m_MultiWidget(NULL)
00040 {
00041 }
00042
00043 QmitkImageNavigatorView::~QmitkImageNavigatorView()
00044 {
00045
00046
00047
00048
00049 }
00050
00051 void QmitkImageNavigatorView::CreateQtPartControl(QWidget *parent)
00052 {
00053
00054
00055 m_Controls.setupUi(parent);
00056 m_MultiWidget = this->GetActiveStdMultiWidget();
00057 m_Controls.m_SliceNavigatorTransversal->SetInverseDirection(true);
00058 m_TransversalStepper = new QmitkStepperAdapter(m_Controls.m_SliceNavigatorTransversal, m_MultiWidget->mitkWidget1->GetSliceNavigationController()->GetSlice() , "sliceNavigatorTransversalFromSimpleExample");
00059 m_SagittalStepper = new QmitkStepperAdapter(m_Controls.m_SliceNavigatorSagittal, m_MultiWidget->mitkWidget2->GetSliceNavigationController()->GetSlice(), "sliceNavigatorSagittalFromSimpleExample");
00060 m_FrontalStepper = new QmitkStepperAdapter(m_Controls.m_SliceNavigatorFrontal, m_MultiWidget->mitkWidget3->GetSliceNavigationController()->GetSlice(), "sliceNavigatorFrontalFromSimpleExample");
00061 m_TimeStepper = new QmitkStepperAdapter(m_Controls.m_SliceNavigatorTime, m_MultiWidget->GetTimeNavigationController()->GetTime(), "sliceNavigatorTimeFromSimpleExample");
00062 }
00063
00064 void QmitkImageNavigatorView::SetFocus ()
00065 {
00066
00067 }
00068
00069 QmitkStdMultiWidget* QmitkImageNavigatorView::GetActiveStdMultiWidget()
00070 {
00071 QmitkStdMultiWidget* activeStdMultiWidget = 0;
00072 berry::IEditorPart::Pointer editor =
00073 this->GetSite()->GetPage()->GetActiveEditor();
00074
00075 if (editor.Cast<QmitkStdMultiWidgetEditor>().IsNotNull())
00076 {
00077 activeStdMultiWidget = editor.Cast<QmitkStdMultiWidgetEditor>()->GetStdMultiWidget();
00078 }
00079 else
00080 {
00081 mitk::DataStorageEditorInput::Pointer editorInput;
00082 editorInput = new mitk::DataStorageEditorInput();
00083 berry::IEditorPart::Pointer editor = this->GetSite()->GetPage()->OpenEditor(editorInput, QmitkStdMultiWidgetEditor::EDITOR_ID, false);
00084 activeStdMultiWidget = editor.Cast<QmitkStdMultiWidgetEditor>()->GetStdMultiWidget();
00085 }
00086
00087 return activeStdMultiWidget;
00088 }
00089
00090 int QmitkImageNavigatorView::GetSizeFlags(bool width)
00091 {
00092 if(!width)
00093 {
00094 return berry::Constants::MIN | berry::Constants::MAX | berry::Constants::FILL;
00095 }
00096 else
00097 {
00098 return 0;
00099 }
00100 }
00101
00102 int QmitkImageNavigatorView::ComputePreferredSize(bool width, int , int , int preferredResult)
00103 {
00104 if(width==false)
00105 {
00106 return 160;
00107 }
00108 else
00109 {
00110 return preferredResult;
00111 }
00112 }
00113