23 #ifndef __qMRMLSegmentSelectorWidget_h 24 #define __qMRMLSegmentSelectorWidget_h 28 #include "qMRMLWidgetsExport.h" 32 #include <ctkVTKObject.h> 35 class qMRMLSegmentSelectorWidgetPrivate;
36 class QTableWidgetItem;
49 Q_PROPERTY(
bool noneEnabled READ noneEnabled WRITE setNoneEnabled)
50 Q_PROPERTY(
bool editEnabled READ editEnabled WRITE setEditEnabled)
51 Q_PROPERTY(
bool segmentationNodeSelectorVisible READ segmentationNodeSelectorVisible WRITE setSegmentationNodeSelectorVisible)
52 Q_PROPERTY(
bool multiSelection READ multiSelection WRITE setMultiSelection)
53 Q_PROPERTY(
bool horizontalLayout READ horizontalLayout WRITE setHorizontalLayout)
54 Q_PROPERTY(
bool selectNodeUponCreation READ selectNodeUponCreation WRITE setSelectNodeUponCreation)
68 Q_INVOKABLE QString currentNodeID();
72 Q_INVOKABLE QString currentSegmentID();
75 Q_INVOKABLE QStringList selectedSegmentIDs();
79 bool noneEnabled()const;
82 void setNoneEnabled(
bool enable);
86 bool editEnabled()const;
89 void setEditEnabled(
bool enable);
93 bool segmentationNodeSelectorVisible()const;
96 void setSegmentationNodeSelectorVisible(
bool visible);
100 bool multiSelection()const;
103 void setMultiSelection(
bool multi);
107 bool horizontalLayout()const;
110 void setHorizontalLayout(
bool horizontal);
115 bool selectNodeUponCreation()const;
116 void setSelectNodeUponCreation(
bool value);
120 Q_INVOKABLE
void setCurrentNode(
vtkMRMLNode* node);
122 Q_INVOKABLE
void setCurrentNodeID(const QString& nodeID);
126 Q_INVOKABLE
void setCurrentSegmentID(QString segmentID);
129 Q_INVOKABLE
void setSelectedSegmentIDs(QStringList segmentIDList);
133 Q_INVOKABLE
void onCurrentNodeChanged(
vtkMRMLNode* node);
135 void onCurrentSegmentChanged(
int index);
137 void onSegmentMultiSelectionChanged();
140 void populateSegmentCombobox();
144 void currentSegmentChanged(QString);
145 void segmentSelectionChanged(QStringList);
153 void currentNodeChanged(
bool validNode);
156 QScopedPointer<qMRMLSegmentSelectorWidgetPrivate> d_ptr;
Abstract Superclass for all specific types of MRML nodes.