58 if (role != Qt::DisplayRole)
79 return QAbstractItemModel::flags(
index) & (~Qt::ItemIsEnabled);
83 return QAbstractItemModel::flags(
index) | (Qt::ItemIsEnabled);
90 if (orientation == Qt::Horizontal && role == Qt::DisplayRole)
101 if (!hasIndex(row, column,
parent))
103 return QModelIndex();
111 QModelIndex result = createIndex(row, column, childItem);
116 return QModelIndex();
123 if (!
index.isValid())
125 return QModelIndex();
131 if (parentItem ==
rootItem || parentItem ==
nullptr)
133 return QModelIndex();
136 return createIndex(parentItem->
row(), 0, parentItem);
173 beginInsertColumns(
parent, position, position);
185 beginRemoveColumns(
parent, position, position);
186 success =
rootItem->removeColumn(position);
203 beginInsertRows(
parent, position, position);
216 beginRemoveRows(
parent, position, position);
virtual QVariant data(int column) const
bool removeChild(int position)
bool insertChild(int position, TreeItem *child)
TreeItem * child(int row)
bool insertColumn(int position, QVariant data, const QModelIndex &parent=QModelIndex())
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
bool insertRow(int position, TreeItem *item, const QModelIndex &parent=QModelIndex())
int rowCount(const QModelIndex &parent=QModelIndex()) const override
TreeModel(QObject *parent=0)
Qt::ItemFlags flags(const QModelIndex &index) const override
bool removeRow(int position, const QModelIndex &parent=QModelIndex())
bool removeColumn(int position, const QModelIndex &parent=QModelIndex())
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
int columnCount(const QModelIndex &parent=QModelIndex()) const override
QModelIndex parent(const QModelIndex &index) const override
TreeItem * getItem(const QModelIndex &index) const
QVariant data(const QModelIndex &index, int role) const override