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 OnRenameGroup();
287 void OnRenameLabel(
bool);
288 void OnClearLabel(
bool);
290 void OnUnlockAffectedLabels();
291 void OnLockAffectedLabels();
293 void OnSetAffectedLabelsVisible();
294 void OnSetAffectedLabelsInvisible();
295 void OnSetOnlyActiveLabelVisible(
bool);
297 void OnItemDoubleClicked(
const QModelIndex& index);
299 void WaitCursorOn()
const;
300 void WaitCursorOff()
const;
301 void RestoreOverrideCursor()
const;
305 void OnEntered(
const QModelIndex& index);
308 QWidgetAction* CreateOpacityAction();
311 bool m_ShowVisibility =
true;
312 bool m_ShowLock =
true;
313 bool m_ShowOther =
false;
319 bool m_AllowVisibilityModification =
true;
323 bool m_AllowLockModification =
true;
327 bool m_AllowLabelModification =
false;
329 bool m_DefaultLabelNaming =
true;
331 bool m_ModelManipulationOngoing =
false;
333 bool m_AboutToShowContextMenu =
false;
335 unsigned long m_SegmentationNodeDataMTime;