diff options
Diffstat (limited to 'src/libs/utils/treemodel.cpp')
-rw-r--r-- | src/libs/utils/treemodel.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libs/utils/treemodel.cpp b/src/libs/utils/treemodel.cpp index b4684eedfe..2b94d56311 100644 --- a/src/libs/utils/treemodel.cpp +++ b/src/libs/utils/treemodel.cpp @@ -689,6 +689,13 @@ void TreeItem::insertChild(int pos, TreeItem *item) } } +void TreeItem::insertOrderedChild(TreeItem *item, + const std::function<bool (const TreeItem *, const TreeItem *)> &cmp) +{ + auto where = std::lower_bound(begin(), end(), item, cmp); + insertChild(int(where - begin()), item); +} + void TreeItem::removeChildAt(int pos) { QTC_ASSERT(0 <= pos && pos < m_children.count(), return); |