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();
231 void OnCopyToGroup();
233 void SetVisibilityOfAffectedLabels(
bool visible)
const;
234 void SetLockOfAffectedLabels(
bool visible)
const;
239 void OnDataChanged(
const QModelIndex& topLeft,
const QModelIndex& bottomRight,
240 const QList<int>& roles = QList<int>());
268 void keyPressEvent(QKeyEvent* event)
override;
269 void keyReleaseEvent(QKeyEvent* event)
override;
281 void OnChangeModelSelection(
const QItemSelection& selected,
const QItemSelection& deselected);
283 void OnContextMenuRequested(
const QPoint&);
286 void OnAddLabelInstance();
287 void OnDeleteGroup();
288 void OnDeleteAffectedLabel();
289 void OnDeleteLabels(
bool);
290 void OnClearLabels(
bool);
291 void OnMergeLabels(
bool);
293 void OnRenameGroup();
294 void OnRenameLabel(
bool);
295 void OnClearLabel(
bool);
297 void OnUnlockAffectedLabels();
298 void OnLockAffectedLabels();
300 void OnSetAffectedLabelsVisible();
301 void OnSetAffectedLabelsInvisible();
302 void OnSetOnlyActiveLabelVisible(
bool);
304 void OnItemDoubleClicked(
const QModelIndex& index);
306 void WaitCursorOn()
const;
307 void WaitCursorOff()
const;
308 void RestoreOverrideCursor()
const;
312 void OnEntered(
const QModelIndex& index);
315 QWidgetAction* CreateOpacityAction();
318 bool m_ShowVisibility =
true;
319 bool m_ShowLock =
true;
320 bool m_ShowOther =
false;
326 bool m_AllowVisibilityModification =
true;
330 bool m_AllowLockModification =
true;
334 bool m_AllowLabelModification =
false;
336 bool m_DefaultLabelNaming =
true;
338 bool m_ModelManipulationOngoing =
false;
340 bool m_AboutToShowContextMenu =
false;
342 unsigned long m_SegmentationNodeDataMTime;