13 #ifndef QmitkMultiLabelManager_h
14 #define QmitkMultiLabelManager_h
31 class QmitkMultiLabelManagerControls;
138 void OnRenameLabelShortcutActivated();
144 void OnCreateDetailedSurface(
bool);
145 void OnCreateSmoothedSurface(
bool);
147 void OnCreateMask(
bool);
149 void OnCreateCroppedMask(
bool);
155 void OnLabelRenameRequested(
mitk::Label* label,
bool rename,
bool& canceled)
const;
156 void OnModelUpdated();
157 void OnSegmentationChanged();
170 void WaitCursorOff();
172 void RestoreOverrideCursor();
174 void OnThreadedCalculationDone();
176 void AddSegmentationObserver();
177 void RemoveSegmentationObserver();
182 Ui::QmitkMultiLabelManagerControls* m_Controls;
184 QStringList m_OrganColors;
186 QStringList m_LabelStringList;
188 QShortcut* m_AddLabelInstanceShortcut;
190 bool m_ProcessingManualSelection;
201 mitk::LabelSuggestionHelper::ConstPointer m_SuggestionHelper;
#define MITKSEGMENTATIONUI_EXPORT
QmitkMultiLabelManager(QWidget *parent=nullptr)
void SetSelectedLabel(mitk::MultiLabelSegmentation::LabelValueType selectedLabel)
Selects the passed label instance and sets a new selection of the view.
LabelValueVectorType GetSelectedLabels() const
Retrieve the currently selected labels (equals the last CurrentSelectionChanged values).
void SetMultiLabelSegmentation(mitk::MultiLabelSegmentation *segmentation)
Sets the segmentation that will be used /monitored by the widget.
void SetMultiLabelNode(mitk::DataNode *node)
Sets the segmentation node that will be used /monitored by the widget.
void SetLabelSuggestionHelper(const mitk::LabelSuggestionHelper *suggestionHelper)
void CurrentSelectionChanged(const LabelValueVectorType &labels)
A signal that will be emitted if the selected labels change.
QStringList & GetLabelStringList()
void GoToLabel(mitk::MultiLabelSegmentation::LabelValueType label, const mitk::Point3D &point) const
A signal that will be emitted if the user has requested to "go to" a certain label.
void LabelRenameRequested(mitk::Label *label, bool rename, bool &canceled) const
Signal that is emitted, if a label should be (re)named and default label naming is deactivated.
~QmitkMultiLabelManager() override
virtual void setEnabled(bool enabled)
void SetSelectedLabels(const LabelValueVectorType &selectedLabels)
Transform a list label values into a model selection and set this as a new selection of the view.
const mitk::LabelSuggestionHelper * GetLabelSuggestionHelper() const
mitk::MultiLabelSegmentation::LabelValueVectorType LabelValueVectorType
void SetDataStorage(mitk::DataStorage *storage)
mitk::MultiLabelSegmentation * GetMultiLabelSegmentation() const
void SetDefaultLabelNaming(bool defaultLabelNaming)
mitk::DataNode * GetMultiLabelNode() const
Class for nodes of the DataTree.
Data management class that handles 'was created by' relations.
Convenience class that helps to manage the lifetime of itk event observers.
Helper class for handling label suggestions with constraint checking.
A data structure describing a label.
MultiLabelSegmentation class for handling labels and layers in a segmentation session.
std::size_t GroupIndexType
std::vector< LabelValueType > LabelValueVectorType
mitk::Label::PixelType LabelValueType
Find image slices visible on a given plane.