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();
81 Q_INVOKABLE QStringList segmentIDs();
85 bool noneEnabled()const;
88 void setNoneEnabled(
bool enable);
92 bool editEnabled()const;
95 void setEditEnabled(
bool enable);
99 bool segmentationNodeSelectorVisible()const;
102 void setSegmentationNodeSelectorVisible(
bool visible);
106 bool multiSelection()const;
109 void setMultiSelection(
bool multi);
113 bool horizontalLayout()const;
116 void setHorizontalLayout(
bool horizontal);
121 bool selectNodeUponCreation()const;
122 void setSelectNodeUponCreation(
bool value);
126 Q_INVOKABLE
void setCurrentNode(
vtkMRMLNode* node);
128 Q_INVOKABLE
void setCurrentNodeID(const QString& nodeID);
132 Q_INVOKABLE
void setCurrentSegmentID(QString segmentID);
135 Q_INVOKABLE
void setSelectedSegmentIDs(QStringList segmentIDList);
139 Q_INVOKABLE
void onCurrentNodeChanged(
vtkMRMLNode* node);
141 void onCurrentSegmentChanged(
int index);
143 void onSegmentMultiSelectionChanged();
146 void populateSegmentCombobox();
150 void currentSegmentChanged(QString);
151 void segmentSelectionChanged(QStringList);
159 void currentNodeChanged(
bool validNode);
162 QScopedPointer<qMRMLSegmentSelectorWidgetPrivate> d_ptr;
Abstract Superclass for all specific types of MRML nodes.