TreeModel: (Partially) separate header data from root item

Full separation does not seem possible as QTreeView assumes
all items to have equal column count.

Change-Id: Ia260924fe13ea62789923af8484f9838295355b6
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This commit is contained in:
hjk
2015-01-16 15:24:53 +01:00
parent c0c9a83409
commit ec187241e5
10 changed files with 62 additions and 67 deletions

View File

@@ -65,8 +65,6 @@ class DebuggerTreeItem : public TreeItem
public:
DebuggerTreeItem(const DebuggerItem &item, bool changed) : m_item(item), m_changed(changed) {}
int columnCount() const { return 3; }
QVariant data(int column, int role) const
{
switch (role) {
@@ -119,10 +117,9 @@ private:
DebuggerItemModel::DebuggerItemModel()
: m_currentTreeItem(0)
{
auto root = new TreeItem(QStringList() << tr("Name") << tr("Location") << tr("Type"));
root->appendChild(new TreeItem(QStringList() << tr("Auto-detected") << QString() << QString()));
root->appendChild(new TreeItem(QStringList() << tr("Manual") << QString() << QString()));
setRootItem(root);
setHeader(QStringList() << tr("Name") << tr("Location") << tr("Type"));
rootItem()->appendChild(new TreeItem(QStringList() << tr("Auto-detected") << QString() << QString()));
rootItem()->appendChild(new TreeItem(QStringList() << tr("Manual") << QString() << QString()));
foreach (const DebuggerItem &item, DebuggerItemManager::debuggers())
addDebugger(item, false);