From 1ce258d71018ad10b63fb8a37e1b0f16d21b3793 Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 17 Jun 2016 12:38:57 +0200 Subject: [PATCH] Debugger/Utils: Remove TwoLevelTreeModel It's well covered by the more generic Utils::LeveledTreeModel now. Change-Id: I3982ad39a64742b0a0a59433024457db3808bfc7 Reviewed-by: Christian Stenger --- src/libs/utils/treemodel.h | 18 ------------------ src/plugins/debugger/debuggeroptionspage.cpp | 11 +++++------ 2 files changed, 5 insertions(+), 24 deletions(-) diff --git a/src/libs/utils/treemodel.h b/src/libs/utils/treemodel.h index 515947c4a7f..08a302c039a 100644 --- a/src/libs/utils/treemodel.h +++ b/src/libs/utils/treemodel.h @@ -279,24 +279,6 @@ public: } }; -// A two-level model with a first level of static headers and a uniform second level. -template -class TwoLevelTreeModel : public LeveledTreeModel -{ -public: - using FirstLevelItem = StaticTreeItem; - using SecondLevelItem = SecondLevelItemType; - using BaseType = LeveledTreeModel; - - explicit TwoLevelTreeModel(QObject *parent = 0) : BaseType(parent) {} - - FirstLevelItem *appendFirstLevelItem(const QStringList &display) { - auto item = new FirstLevelItem(display); - this->rootItem()->appendChild(item); - return item; - } -}; - // A model where all non-root nodes are the same. template class UniformTreeModel : public LeveledTreeModel diff --git a/src/plugins/debugger/debuggeroptionspage.cpp b/src/plugins/debugger/debuggeroptionspage.cpp index 18be827514f..e9a06c03eb8 100644 --- a/src/plugins/debugger/debuggeroptionspage.cpp +++ b/src/plugins/debugger/debuggeroptionspage.cpp @@ -99,7 +99,7 @@ public: // DebuggerItemModel // -------------------------------------------------------------------------- -class DebuggerItemModel : public TwoLevelTreeModel +class DebuggerItemModel : public LeveledTreeModel { Q_DECLARE_TR_FUNCTIONS(Debugger::DebuggerOptionsPage) @@ -115,18 +115,17 @@ public: void apply(); private: - DebuggerTreeItem *m_currentTreeItem; + DebuggerTreeItem *m_currentTreeItem = nullptr; QStringList removed; QList m_removedItems; }; DebuggerItemModel::DebuggerItemModel() - : m_currentTreeItem(0) { setHeader({ tr("Name"), tr("Location"), tr("Type") }); - appendFirstLevelItem({ tr("Auto-detected") }); - appendFirstLevelItem({ tr("Manual") }); + rootItem()->appendChild(new StaticTreeItem(tr("Auto-detected"))); + rootItem()->appendChild(new StaticTreeItem(tr("Manual"))); foreach (const DebuggerItem &item, DebuggerItemManager::debuggers()) addDebugger(item, false); } @@ -134,7 +133,7 @@ DebuggerItemModel::DebuggerItemModel() void DebuggerItemModel::addDebugger(const DebuggerItem &item, bool changed) { int group = item.isAutoDetected() ? 0 : 1; - rootItem()->child(group)->appendChild(new DebuggerTreeItem(item, changed)); + rootItem()->childAt(group)->appendChild(new DebuggerTreeItem(item, changed)); } void DebuggerItemModel::updateDebugger(const DebuggerItem &item)