00001 #ifndef QMITK_TOOLROIDATASELECTIONBOX_H 00002 #define QMITK_TOOLROIDATASELECTIONBOX_H 00003 00004 #include "QmitkExtExports.h" 00005 #include "mitkToolManager.h" 00006 #include "QmitkBoundingObjectWidget.h" 00007 #include <QComboBox> 00008 00009 class QmitkExt_EXPORT QmitkToolRoiDataSelectionBox : public QWidget 00010 { 00011 Q_OBJECT 00012 00013 public: 00014 00015 QmitkToolRoiDataSelectionBox(QWidget* parent = 0, mitk::DataStorage* storage = 0); 00016 virtual ~QmitkToolRoiDataSelectionBox(); 00017 00018 mitk::DataStorage* GetDataStorage(); 00019 void SetDataStorage(mitk::DataStorage& storage); 00020 00021 mitk::ToolManager* GetToolManager(); 00022 void SetToolManager(mitk::ToolManager& manager); 00023 00024 void OnToolManagerRoiDataModified(); 00025 00026 mitk::ToolManager::DataVectorType GetSelection(); 00027 00028 void UpdateComboBoxData(); 00029 00030 void setEnabled(bool); 00031 00032 signals: 00033 void RoiDataSelected(const mitk::DataNode* node); 00034 protected slots: 00035 void OnRoiDataSelectionChanged(const QString& name); 00036 00037 protected: 00038 00039 QmitkBoundingObjectWidget* m_boundingObjectWidget; 00040 QComboBox* m_segmentationComboBox; 00041 00042 mitk::ToolManager::Pointer m_ToolManager; 00043 bool m_SelfCall; 00044 00045 mitk::DataNode::Pointer m_lastSelection; 00046 QString m_lastSelectedName; 00047 }; 00048 #endif