MCPcopy Create free account
hub / github.com/MITK/MITK / NodeRemoved

Method NodeRemoved

Modules/QtWidgets/src/QmitkDataStorageSimpleTreeModel.cpp:92–120  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

90}
91
92void QmitkDataStorageSimpleTreeModel::NodeRemoved(const mitk::DataNode *node)
93{
94 if (node == nullptr || !m_Root)
95 return;
96
97 TreeItem *treeItem = m_Root->Find(node);
98 if (!treeItem)
99 return; // return because there is no treeitem containing this node
100
101 TreeItem *parentTreeItem = treeItem->GetParent();
102 QModelIndex parentIndex = this->IndexFromTreeItem(parentTreeItem);
103
104 // emit beginRemoveRows event (QModelIndex is empty because we dont have a tree model)
105 this->beginRemoveRows(parentIndex, treeItem->GetIndex(), treeItem->GetIndex());
106
107 // remove node
108 std::vector<TreeItem *> children = treeItem->GetChildren();
109 m_TreeItems.remove(treeItem);
110 delete treeItem; //delete in tree
111 this->endRemoveRows();
112
113 if (!children.empty())
114 {
115 //if not empty we have to rebuild the whole representation,
116 //because the children could be now top level, or at another
117 //source/parent.
118 this->UpdateModelData();
119 }
120}
121
122QModelIndex QmitkDataStorageSimpleTreeModel::index(int row, int column, const QModelIndex &parent) const
123{

Callers

nothing calls this directly

Calls 7

IndexFromTreeItemMethod · 0.95
UpdateModelDataMethod · 0.95
FindMethod · 0.45
GetParentMethod · 0.45
GetIndexMethod · 0.45
GetChildrenMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected