Item model for subject hierarchy.
More...
#include <Modules/Loadable/SubjectHierarchy/Widgets/qMRMLSubjectHierarchyModel.h>
|
virtual bool | canBeAChild (vtkIdType itemID) const |
|
virtual bool | canBeAParent (vtkIdType itemID) const |
|
int | colorColumn () const |
|
int | descriptionColumn () const |
|
bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override |
|
int | idColumn () const |
|
QModelIndexList | indexes (vtkIdType itemID) const |
| Return all the QModelIndexes (all the columns) for a given subject hierarchy item. More...
|
|
QModelIndex | indexFromSubjectHierarchyItem (vtkIdType itemID, int column=0) const |
|
Q_INVOKABLE bool | isAffiliatedItem (vtkIdType itemA, vtkIdType itemB) const |
|
Q_INVOKABLE bool | isAncestorItem (vtkIdType child, vtkIdType ancestor) const |
|
QStandardItem * | itemFromSubjectHierarchyItem (vtkIdType itemID, int column=0) const |
|
QMimeData * | mimeData (const QModelIndexList &indexes) const override |
|
virtual Q_INVOKABLE bool | moveToRow (vtkIdType itemID, int newRow) |
| Move item in subject hierarchy branch to a new row (re-order) More...
|
|
Q_INVOKABLE vtkMRMLScene * | mrmlScene () const |
|
int | nameColumn () const |
|
QString | noneDisplay () const |
|
bool | noneEnabled () const |
|
virtual Q_INVOKABLE vtkIdType | parentSubjectHierarchyItem (vtkIdType itemID) const |
|
| qMRMLSubjectHierarchyModel (QObject *parent=nullptr) |
|
virtual Q_INVOKABLE bool | reparent (vtkIdType itemID, vtkIdType newParentID) |
| Insert/move item in subject hierarchy under new parent. More...
|
|
void | setColorColumn (int column) |
|
void | setDescriptionColumn (int column) |
|
void | setIDColumn (int column) |
|
virtual Q_INVOKABLE void | setMRMLScene (vtkMRMLScene *scene) |
|
void | setNameColumn (int column) |
|
void | setNoneDisplay (const QString &displayName) |
|
void | setNoneEnabled (bool enable) |
|
void | setTransformColumn (int column) |
|
void | setVisibilityColumn (int column) |
|
vtkIdType | subjectHierarchyItemFromIndex (const QModelIndex &index) const |
|
vtkIdType | subjectHierarchyItemFromItem (QStandardItem *item) const |
|
virtual Q_INVOKABLE int | subjectHierarchyItemIndex (vtkIdType itemID) const |
|
vtkMRMLSubjectHierarchyNode * | subjectHierarchyNode () const |
|
QModelIndex | subjectHierarchySceneIndex () const |
| Invalid until a valid scene is set. More...
|
|
QStandardItem * | subjectHierarchySceneItem () const |
| nullptr until a valid scene is set More...
|
|
Qt::DropActions | supportedDropActions () const override |
|
int | transformColumn () const |
|
int | visibilityColumn () const |
|
| ~qMRMLSubjectHierarchyModel () override |
|
|
virtual QStandardItem * | insertSubjectHierarchyItem (vtkIdType itemID) |
|
virtual QStandardItem * | insertSubjectHierarchyItem (vtkIdType itemID, QStandardItem *parent, int row=-1) |
|
virtual int | maxColumnId () const |
| Must be reimplemented in subclasses that add new column types. More...
|
|
| qMRMLSubjectHierarchyModel (qMRMLSubjectHierarchyModelPrivate *pimpl, QObject *parent=nullptr) |
|
virtual void | rebuildFromSubjectHierarchy () |
|
virtual void | setSubjectHierarchyNode (vtkMRMLSubjectHierarchyNode *shNode) |
| Set the subject hierarchy node found in the given scene. Called only internally. More...
|
|
virtual QFlags< Qt::ItemFlag > | subjectHierarchyItemFlags (vtkIdType itemID, int column) const |
|
virtual void | updateFromSubjectHierarchy () |
|
virtual void | updateItemDataFromSubjectHierarchyItem (QStandardItem *item, vtkIdType shItemID, int column) |
|
virtual void | updateItemFromSubjectHierarchyItem (QStandardItem *item, vtkIdType shItemID, int column) |
|
void | updateModelItems (vtkIdType itemID) |
| Update the model items associated with the subject hierarchy item. More...
|
|
virtual void | updateSubjectHierarchyItemFromItem (vtkIdType shItemID, QStandardItem *item) |
|
virtual void | updateSubjectHierarchyItemFromItemData (vtkIdType shItemID, QStandardItem *item) |
|
|
static void | onEvent (vtkObject *caller, unsigned long event, void *clientData, void *callData) |
|
|
QScopedPointer< qMRMLSubjectHierarchyModelPrivate > | d_ptr |
|
Item model for subject hierarchy.
It is associated to the pseudo-singleton subject hierarchy node, and it creates one model item for each subject hierarchy item. It handles reparenting, reordering, etc. The whole model is regenerated when the Modified event is invoked on the subject hierarchy node, but only the individual items are updated when per-item events are invoked (such as vtkMRMLSubjectHierarchyNode::SubjectHierarchyItemModifiedEvent)
Definition at line 49 of file qMRMLSubjectHierarchyModel.h.
◆ Superclass
◆ ItemDataRole
Enumerator |
---|
SubjectHierarchyItemIDRole | Unique ID of the item, typed vtkIdType.
|
VisibilityRole | Integer that contains the visibility property of an item. It is closely related to the item icon.
|
TransformIDRole | MRML node ID of the parent transform.
|
LastRole | Must stay the last enum in the list.
|
Definition at line 92 of file qMRMLSubjectHierarchyModel.h.
◆ colorColumn
int qMRMLSubjectHierarchyModel::colorColumn |
|
readwrite |
Control in which column data MRML node color is displayed. A value of -1 (default) hides the column
Definition at line 66 of file qMRMLSubjectHierarchyModel.h.
◆ descriptionColumn
int qMRMLSubjectHierarchyModel::descriptionColumn |
|
readwrite |
Control in which column the node descriptions are displayed A value of -1 (default) hides the column
Definition at line 74 of file qMRMLSubjectHierarchyModel.h.
◆ idColumn
int qMRMLSubjectHierarchyModel::idColumn |
|
readwrite |
Control in which column the data MRML node IDs are displayed (Qt::DisplayRole). A value of -1 hides it. Hidden by default (value of -1)
Definition at line 77 of file qMRMLSubjectHierarchyModel.h.
◆ nameColumn
int qMRMLSubjectHierarchyModel::nameColumn |
|
readwrite |
Control in which column the data MRML node names or if not assigned then subject hierarchy item names are displayed (Qt::DisplayRole). The icons corresponding to the role provided by the owner subject hierarchy plugin is also displayed in this column (Qt::DecorationRole). A value of -1 hides it. First column (0) by default. If no property is set in a column, nothing is displayed.
Definition at line 60 of file qMRMLSubjectHierarchyModel.h.
◆ noneDisplay
QString qMRMLSubjectHierarchyModel::noneDisplay |
|
readwrite |
This property controls the name that is displayed for the None item. "None" by default.
- See also
- noneItemEnabled
Definition at line 85 of file qMRMLSubjectHierarchyModel.h.
◆ noneEnabled
bool qMRMLSubjectHierarchyModel::noneEnabled |
|
readwrite |
This property controls whether an extra item is added before any subject hierarchy item under the scene item for indicating 'None' selection. Especially useful for comboboxes.
Definition at line 81 of file qMRMLSubjectHierarchyModel.h.
◆ transformColumn
int qMRMLSubjectHierarchyModel::transformColumn |
|
readwrite |
Control in which column the parent transforms are displayed A MRML node combobox is displayed in the row of the transformable nodes, in which the current transform is selected. The user can change the transform using the combobox. A value of -1 (default) hides the column
Definition at line 71 of file qMRMLSubjectHierarchyModel.h.
◆ visibilityColumn
int qMRMLSubjectHierarchyModel::visibilityColumn |
|
readwrite |
Control in which column data MRML node visibility are displayed (Qt::DecorationRole). A value of -1 (default) hides the column
Definition at line 63 of file qMRMLSubjectHierarchyModel.h.
◆ qMRMLSubjectHierarchyModel() [1/2]
qMRMLSubjectHierarchyModel::qMRMLSubjectHierarchyModel |
( |
QObject * |
parent = nullptr | ) |
|
◆ ~qMRMLSubjectHierarchyModel()
qMRMLSubjectHierarchyModel::~qMRMLSubjectHierarchyModel |
( |
| ) |
|
|
override |
◆ qMRMLSubjectHierarchyModel() [2/2]
qMRMLSubjectHierarchyModel::qMRMLSubjectHierarchyModel |
( |
qMRMLSubjectHierarchyModelPrivate * |
pimpl, |
|
|
QObject * |
parent = nullptr |
|
) |
| |
|
protected |
◆ aboutToReparentByDragAndDrop
void qMRMLSubjectHierarchyModel::aboutToReparentByDragAndDrop |
( |
vtkIdType |
itemID, |
|
|
vtkIdType |
newParentID |
|
) |
| |
|
signal |
This signal is sent when a user is about to reparent an item by drag and drop.
◆ canBeAChild()
virtual bool qMRMLSubjectHierarchyModel::canBeAChild |
( |
vtkIdType |
itemID | ) |
const |
|
virtual |
◆ canBeAParent()
virtual bool qMRMLSubjectHierarchyModel::canBeAParent |
( |
vtkIdType |
itemID | ) |
const |
|
virtual |
◆ colorColumn()
int qMRMLSubjectHierarchyModel::colorColumn |
( |
| ) |
const |
◆ delayedItemChanged
virtual void qMRMLSubjectHierarchyModel::delayedItemChanged |
( |
| ) |
|
|
protectedvirtualslot |
◆ descriptionColumn()
int qMRMLSubjectHierarchyModel::descriptionColumn |
( |
| ) |
const |
◆ dropMimeData()
bool qMRMLSubjectHierarchyModel::dropMimeData |
( |
const QMimeData * |
data, |
|
|
Qt::DropAction |
action, |
|
|
int |
row, |
|
|
int |
column, |
|
|
const QModelIndex & |
parent |
|
) |
| |
|
override |
◆ idColumn()
int qMRMLSubjectHierarchyModel::idColumn |
( |
| ) |
const |
◆ indexes()
QModelIndexList qMRMLSubjectHierarchyModel::indexes |
( |
vtkIdType |
itemID | ) |
const |
Return all the QModelIndexes (all the columns) for a given subject hierarchy item.
◆ indexFromSubjectHierarchyItem()
QModelIndex qMRMLSubjectHierarchyModel::indexFromSubjectHierarchyItem |
( |
vtkIdType |
itemID, |
|
|
int |
column = 0 |
|
) |
| const |
◆ insertSubjectHierarchyItem() [1/2]
virtual QStandardItem* qMRMLSubjectHierarchyModel::insertSubjectHierarchyItem |
( |
vtkIdType |
itemID | ) |
|
|
protectedvirtual |
◆ insertSubjectHierarchyItem() [2/2]
virtual QStandardItem* qMRMLSubjectHierarchyModel::insertSubjectHierarchyItem |
( |
vtkIdType |
itemID, |
|
|
QStandardItem * |
parent, |
|
|
int |
row = -1 |
|
) |
| |
|
protectedvirtual |
◆ invalidateFilter
void qMRMLSubjectHierarchyModel::invalidateFilter |
( |
| ) |
|
|
signal |
Triggers invalidating the sort filter proxy model.
◆ isAffiliatedItem()
Q_INVOKABLE bool qMRMLSubjectHierarchyModel::isAffiliatedItem |
( |
vtkIdType |
itemA, |
|
|
vtkIdType |
itemB |
|
) |
| const |
Utility method that returns true if 2 nodes are child/parent (or any ancestor) for each other
- See also
- isAncestorItem()
◆ isAncestorItem()
Q_INVOKABLE bool qMRMLSubjectHierarchyModel::isAncestorItem |
( |
vtkIdType |
child, |
|
|
vtkIdType |
ancestor |
|
) |
| const |
Utility method that returns true if child has parent as ancestor (parent, grandparent, etc.)
- See also
- isAffiliatedItem()
◆ itemFromSubjectHierarchyItem()
QStandardItem* qMRMLSubjectHierarchyModel::itemFromSubjectHierarchyItem |
( |
vtkIdType |
itemID, |
|
|
int |
column = 0 |
|
) |
| const |
◆ maxColumnId()
virtual int qMRMLSubjectHierarchyModel::maxColumnId |
( |
| ) |
const |
|
protectedvirtual |
Must be reimplemented in subclasses that add new column types.
◆ mimeData()
QMimeData* qMRMLSubjectHierarchyModel::mimeData |
( |
const QModelIndexList & |
indexes | ) |
const |
|
override |
◆ moveToRow()
virtual Q_INVOKABLE bool qMRMLSubjectHierarchyModel::moveToRow |
( |
vtkIdType |
itemID, |
|
|
int |
newRow |
|
) |
| |
|
virtual |
Move item in subject hierarchy branch to a new row (re-order)
◆ mrmlScene()
Q_INVOKABLE vtkMRMLScene* qMRMLSubjectHierarchyModel::mrmlScene |
( |
| ) |
const |
◆ nameColumn()
int qMRMLSubjectHierarchyModel::nameColumn |
( |
| ) |
const |
◆ noneDisplay()
QString qMRMLSubjectHierarchyModel::noneDisplay |
( |
| ) |
const |
◆ noneEnabled()
bool qMRMLSubjectHierarchyModel::noneEnabled |
( |
| ) |
const |
◆ onEvent()
static void qMRMLSubjectHierarchyModel::onEvent |
( |
vtkObject * |
caller, |
|
|
unsigned long |
event, |
|
|
void * |
clientData, |
|
|
void * |
callData |
|
) |
| |
|
staticprotected |
◆ onHardenTransformOnBranchOfCurrentItem
void qMRMLSubjectHierarchyModel::onHardenTransformOnBranchOfCurrentItem |
( |
| ) |
|
|
slot |
Harden transform on branch of current item.
◆ onItemChanged
virtual void qMRMLSubjectHierarchyModel::onItemChanged |
( |
QStandardItem * |
item | ) |
|
|
protectedvirtualslot |
◆ onMRMLNodeRemoved
virtual void qMRMLSubjectHierarchyModel::onMRMLNodeRemoved |
( |
vtkMRMLNode * |
node | ) |
|
|
protectedvirtualslot |
◆ onMRMLSceneClosed
virtual void qMRMLSubjectHierarchyModel::onMRMLSceneClosed |
( |
vtkMRMLScene * |
scene | ) |
|
|
protectedvirtualslot |
◆ onMRMLSceneEndBatchProcess
virtual void qMRMLSubjectHierarchyModel::onMRMLSceneEndBatchProcess |
( |
vtkMRMLScene * |
scene | ) |
|
|
protectedvirtualslot |
◆ onMRMLSceneImported
virtual void qMRMLSubjectHierarchyModel::onMRMLSceneImported |
( |
vtkMRMLScene * |
scene | ) |
|
|
protectedvirtualslot |
◆ onMRMLSceneStartBatchProcess
virtual void qMRMLSubjectHierarchyModel::onMRMLSceneStartBatchProcess |
( |
vtkMRMLScene * |
scene | ) |
|
|
protectedvirtualslot |
◆ onRemoveTransformsFromBranchOfCurrentItem
void qMRMLSubjectHierarchyModel::onRemoveTransformsFromBranchOfCurrentItem |
( |
| ) |
|
|
slot |
Remove transforms from nodes in branch of current item.
◆ onSubjectHierarchyItemAboutToBeRemoved
virtual void qMRMLSubjectHierarchyModel::onSubjectHierarchyItemAboutToBeRemoved |
( |
vtkIdType |
itemID | ) |
|
|
protectedvirtualslot |
◆ onSubjectHierarchyItemAdded
virtual void qMRMLSubjectHierarchyModel::onSubjectHierarchyItemAdded |
( |
vtkIdType |
itemID | ) |
|
|
protectedvirtualslot |
◆ onSubjectHierarchyItemModified
virtual void qMRMLSubjectHierarchyModel::onSubjectHierarchyItemModified |
( |
vtkIdType |
itemID | ) |
|
|
protectedvirtualslot |
◆ onSubjectHierarchyItemRemoved
virtual void qMRMLSubjectHierarchyModel::onSubjectHierarchyItemRemoved |
( |
vtkIdType |
itemID | ) |
|
|
protectedvirtualslot |
◆ parentSubjectHierarchyItem()
virtual Q_INVOKABLE vtkIdType qMRMLSubjectHierarchyModel::parentSubjectHierarchyItem |
( |
vtkIdType |
itemID | ) |
const |
|
virtual |
◆ rebuildFromSubjectHierarchy()
virtual void qMRMLSubjectHierarchyModel::rebuildFromSubjectHierarchy |
( |
| ) |
|
|
protectedvirtual |
Rebuild model from scratch. This is a hard-update that is uses more resources. Use sparingly.
◆ reparent()
virtual Q_INVOKABLE bool qMRMLSubjectHierarchyModel::reparent |
( |
vtkIdType |
itemID, |
|
|
vtkIdType |
newParentID |
|
) |
| |
|
virtual |
Insert/move item in subject hierarchy under new parent.
◆ reparentedByDragAndDrop
void qMRMLSubjectHierarchyModel::reparentedByDragAndDrop |
( |
vtkIdType |
itemID, |
|
|
vtkIdType |
newParentID |
|
) |
| |
|
signal |
This signal is sent after a user dragged and dropped an item in the tree view.
◆ requestCollapseItem
void qMRMLSubjectHierarchyModel::requestCollapseItem |
( |
vtkIdType |
itemID | ) |
|
|
signal |
Signal requesting collapsing of the subject hierarchy tree item belonging to an item.
◆ requestExpandItem
void qMRMLSubjectHierarchyModel::requestExpandItem |
( |
vtkIdType |
itemID | ) |
|
|
signal |
Signal requesting expanding of the subject hierarchy tree item belonging to an item.
◆ requestSelectItems
void qMRMLSubjectHierarchyModel::requestSelectItems |
( |
QList< vtkIdType > |
itemIDs | ) |
|
|
signal |
Signal requesting selecting items in the tree.
◆ setColorColumn()
void qMRMLSubjectHierarchyModel::setColorColumn |
( |
int |
column | ) |
|
◆ setDescriptionColumn()
void qMRMLSubjectHierarchyModel::setDescriptionColumn |
( |
int |
column | ) |
|
◆ setIDColumn()
void qMRMLSubjectHierarchyModel::setIDColumn |
( |
int |
column | ) |
|
◆ setMRMLScene()
virtual Q_INVOKABLE void qMRMLSubjectHierarchyModel::setMRMLScene |
( |
vtkMRMLScene * |
scene | ) |
|
|
virtual |
◆ setNameColumn()
void qMRMLSubjectHierarchyModel::setNameColumn |
( |
int |
column | ) |
|
◆ setNoneDisplay()
void qMRMLSubjectHierarchyModel::setNoneDisplay |
( |
const QString & |
displayName | ) |
|
◆ setNoneEnabled()
void qMRMLSubjectHierarchyModel::setNoneEnabled |
( |
bool |
enable | ) |
|
◆ setSubjectHierarchyNode()
Set the subject hierarchy node found in the given scene. Called only internally.
◆ setTransformColumn()
void qMRMLSubjectHierarchyModel::setTransformColumn |
( |
int |
column | ) |
|
◆ setVisibilityColumn()
void qMRMLSubjectHierarchyModel::setVisibilityColumn |
( |
int |
column | ) |
|
◆ subjectHierarchyAboutToBeUpdated
void qMRMLSubjectHierarchyModel::subjectHierarchyAboutToBeUpdated |
( |
| ) |
|
|
signal |
This signal is sent when the whole subject hierarchy is about to be updated.
◆ subjectHierarchyItemFlags()
virtual QFlags<Qt::ItemFlag> qMRMLSubjectHierarchyModel::subjectHierarchyItemFlags |
( |
vtkIdType |
itemID, |
|
|
int |
column |
|
) |
| const |
|
protectedvirtual |
◆ subjectHierarchyItemFromIndex()
vtkIdType qMRMLSubjectHierarchyModel::subjectHierarchyItemFromIndex |
( |
const QModelIndex & |
index | ) |
const |
◆ subjectHierarchyItemFromItem()
vtkIdType qMRMLSubjectHierarchyModel::subjectHierarchyItemFromItem |
( |
QStandardItem * |
item | ) |
const |
◆ subjectHierarchyItemIndex()
virtual Q_INVOKABLE int qMRMLSubjectHierarchyModel::subjectHierarchyItemIndex |
( |
vtkIdType |
itemID | ) |
const |
|
virtual |
Returns the row model index relative to its parent independently of any filtering or proxy model Must be reimplemented in derived classes
◆ subjectHierarchyNode()
◆ subjectHierarchySceneIndex()
QModelIndex qMRMLSubjectHierarchyModel::subjectHierarchySceneIndex |
( |
| ) |
const |
Invalid until a valid scene is set.
◆ subjectHierarchySceneItem()
QStandardItem* qMRMLSubjectHierarchyModel::subjectHierarchySceneItem |
( |
| ) |
const |
nullptr until a valid scene is set
◆ subjectHierarchyUpdated
void qMRMLSubjectHierarchyModel::subjectHierarchyUpdated |
( |
| ) |
|
|
signal |
This signal is sent after the whole subject hierarchy is updated.
◆ supportedDropActions()
Qt::DropActions qMRMLSubjectHierarchyModel::supportedDropActions |
( |
| ) |
const |
|
override |
◆ transformColumn()
int qMRMLSubjectHierarchyModel::transformColumn |
( |
| ) |
const |
◆ updateColumnCount
void qMRMLSubjectHierarchyModel::updateColumnCount |
( |
| ) |
|
|
protectedslot |
Recompute the number of columns in the model. Called when a [some]Column property is set. Needs maxColumnId() to be reimplemented in subclasses
◆ updateFromSubjectHierarchy()
virtual void qMRMLSubjectHierarchyModel::updateFromSubjectHierarchy |
( |
| ) |
|
|
protectedvirtual |
Updates properties in the model based on subject hierarchy. This is a soft update that is quick. Calls
- See also
- rebuildFromSubjectHierarchy if necessary.
◆ updateItemDataFromSubjectHierarchyItem()
virtual void qMRMLSubjectHierarchyModel::updateItemDataFromSubjectHierarchyItem |
( |
QStandardItem * |
item, |
|
|
vtkIdType |
shItemID, |
|
|
int |
column |
|
) |
| |
|
protectedvirtual |
◆ updateItemFromSubjectHierarchyItem()
virtual void qMRMLSubjectHierarchyModel::updateItemFromSubjectHierarchyItem |
( |
QStandardItem * |
item, |
|
|
vtkIdType |
shItemID, |
|
|
int |
column |
|
) |
| |
|
protectedvirtual |
◆ updateModelItems()
void qMRMLSubjectHierarchyModel::updateModelItems |
( |
vtkIdType |
itemID | ) |
|
|
protected |
Update the model items associated with the subject hierarchy item.
◆ updateSubjectHierarchyItemFromItem()
virtual void qMRMLSubjectHierarchyModel::updateSubjectHierarchyItemFromItem |
( |
vtkIdType |
shItemID, |
|
|
QStandardItem * |
item |
|
) |
| |
|
protectedvirtual |
◆ updateSubjectHierarchyItemFromItemData()
virtual void qMRMLSubjectHierarchyModel::updateSubjectHierarchyItemFromItemData |
( |
vtkIdType |
shItemID, |
|
|
QStandardItem * |
item |
|
) |
| |
|
protectedvirtual |
◆ visibilityColumn()
int qMRMLSubjectHierarchyModel::visibilityColumn |
( |
| ) |
const |
◆ d_ptr
QScopedPointer<qMRMLSubjectHierarchyModelPrivate> qMRMLSubjectHierarchyModel::d_ptr |
|
protected |
The documentation for this class was generated from the following file: