13 #ifndef QmitkMultiLabelInspector_h
14 #define QmitkMultiLabelInspector_h
23 #include <QItemSelectionModel>
26 class QStyledItemDelegate;
46 bool GetMultiSelectionMode()
const;
48 bool GetAllowVisibilityModification()
const;
49 bool GetAllowLockModification()
const;
50 bool GetAllowLabelModification()
const;
53 bool GetModelManipulationOngoing()
const;
83 IndexLevelType GetCurrentLevelType()
const;
91 LabelValueVectorType GetCurrentlyAffactedLabelInstances()
const;
97 LabelValueVectorType GetLabelInstancesOfSelectedFirstLabel()
const;
105 void CurrentSelectionChanged(LabelValueVectorType labels)
const;
114 void GoToLabel(LabelValueType label,
const mitk::Point3D& point)
const;
124 void LabelRenameRequested(
mitk::Label* label,
bool rename,
bool& canceled)
const;
127 void ModelUpdated()
const;
130 void SegmentationChanged()
const;
140 void SetSelectedLabels(
const LabelValueVectorType& selectedLabels);
172 void SetMultiSelectionMode(
bool multiMode);
174 void SetAllowVisibilityModification(
bool visiblityMod);
175 void SetAllowLockModification(
bool lockMod);
176 void SetAllowLabelModification(
bool labelMod);
178 void SetDefaultLabelNaming(
bool defaultLabelNaming);
206 void DeleteLabelInstance();
226 void SetVisibilityOfAffectedLabels(
bool visible)
const;
227 void SetLockOfAffectedLabels(
bool visible)
const;
232 void OnDataChanged(
const QModelIndex& topLeft,
const QModelIndex& bottomRight,
233 const QList<int>& roles = QList<int>());
261 void keyPressEvent(QKeyEvent* event)
override;
262 void keyReleaseEvent(QKeyEvent* event)
override;
274 void OnChangeModelSelection(
const QItemSelection& selected,
const QItemSelection& deselected);
276 void OnContextMenuRequested(
const QPoint&);
279 void OnAddLabelInstance();
280 void OnDeleteGroup();
281 void OnDeleteAffectedLabel();
282 void OnDeleteLabels(
bool);
283 void OnClearLabels(
bool);
284 void OnMergeLabels(
bool);
286 void OnRenameLabel(
bool);
287 void OnClearLabel(
bool);
289 void OnUnlockAffectedLabels();
290 void OnLockAffectedLabels();
292 void OnSetAffectedLabelsVisible();
293 void OnSetAffectedLabelsInvisible();
294 void OnSetOnlyActiveLabelVisible(
bool);
296 void OnItemDoubleClicked(
const QModelIndex& index);
298 void WaitCursorOn()
const;
299 void WaitCursorOff()
const;
300 void RestoreOverrideCursor()
const;
304 void OnEntered(
const QModelIndex& index);
307 QWidgetAction* CreateOpacityAction();
310 bool m_ShowVisibility =
true;
311 bool m_ShowLock =
true;
312 bool m_ShowOther =
false;
318 bool m_AllowVisibilityModification =
true;
322 bool m_AllowLockModification =
true;
326 bool m_AllowLabelModification =
false;
328 bool m_DefaultLabelNaming =
true;
330 bool m_ModelManipulationOngoing =
false;
332 bool m_AboutToShowContextMenu =
false;
334 unsigned long m_SegmentationNodeDataMTime;