diff --git a/src/libs/utils/treemodel.cpp b/src/libs/utils/treemodel.cpp index 0493a67a4a8..d17174a0246 100644 --- a/src/libs/utils/treemodel.cpp +++ b/src/libs/utils/treemodel.cpp @@ -1028,6 +1028,14 @@ QVariant BaseTreeModel::headerData(int section, Qt::Orientation orientation, return QVariant(); } +bool BaseTreeModel::hasChildren(const QModelIndex &idx) const +{ + if (idx.column() > 0) + return false; + TreeItem *item = itemForIndex(idx); + return !item || item->hasChildren(); +} + Qt::ItemFlags BaseTreeModel::flags(const QModelIndex &idx) const { if (!idx.isValid()) diff --git a/src/libs/utils/treemodel.h b/src/libs/utils/treemodel.h index fd299bd9455..930f6f5e2ec 100644 --- a/src/libs/utils/treemodel.h +++ b/src/libs/utils/treemodel.h @@ -193,6 +193,7 @@ protected: QModelIndex sibling(int row, int column, const QModelIndex &idx) const override; Qt::ItemFlags flags(const QModelIndex &idx) const override; QVariant headerData(int section, Qt::Orientation orientation, int role) const override; + bool hasChildren(const QModelIndex &idx) const override; bool canFetchMore(const QModelIndex &idx) const override; void fetchMore(const QModelIndex &idx) override;