62 bool hasIndex = this->hasIndex(row, column, parent);
65 return this->createIndex(row, column);
98 if (!index.isValid() || index.model() !=
this)
103 if(index.row() < 0 || index.row() >=
static_cast<int>(
m_DataNodes.size()))
109 QString nodeName = QString::fromStdString(dataNode->GetName());
110 if (nodeName.isEmpty())
111 nodeName =
"unnamed";
113 if (role == Qt::DisplayRole)
115 else if (role == Qt::ToolTipRole)
117 else if (role == Qt::DecorationRole)
120 return nodeDescriptor->
GetIcon(dataNode);
128 return QVariant::fromValue<mitk::DataNode *>(dataNode);
136 return QVariant(tr(
"Nodes"));
141 if (index.isValid() && index.model() ==
this)
143 return Qt::ItemIsEnabled | Qt::ItemIsSelectable;
146 return Qt::NoItemFlags;
151 mitk::DataStorage::SetOfObjects::ConstPointer dataNodes;
161 dataNodes = dataStorage->GetAll();
170 if (dataNodes !=
nullptr)
172 for (
auto& node : *dataNodes)
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
void NodePredicateChanged() override
itk::SmartPointer< T > Lock() const
Decorator class for mitk::DataNode.
int columnCount(const QModelIndex &parent=QModelIndex()) const override
QmitkDataStorageDefaultListModel(QObject *parent)
int rowCount(const QModelIndex &parent=QModelIndex()) const override
virtual void UpdateModelData()
std::vector< mitk::DataNode::Pointer > m_DataNodes
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
itk::SmartPointer< Self > Pointer
QmitkNodeDescriptor * GetDescriptor(const mitk::DataNode *node) const
mitk::NodePredicateBase::ConstPointer m_NodePredicate
void NodeChanged(const mitk::DataNode *node) override
bool IsExpired() const noexcept
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
Qt::ItemFlags flags(const QModelIndex &index) const override
QModelIndex parent(const QModelIndex &child) const override
void NodeRemoved(const mitk::DataNode *node) override
virtual QIcon GetIcon(const mitk::DataNode *node) const
void DataStorageChanged() override
static QmitkNodeDescriptorManager * GetInstance()
Class for nodes of the DataTree.
void NodeAdded(const mitk::DataNode *node) override
mitk::WeakPointer< mitk::DataStorage > m_DataStorage