treeitem.cpp
author insilmaril
Tue, 05 Aug 2008 07:36:53 +0000
changeset 725 7ea31701156e
child 726 7f43b93242aa
permissions -rw-r--r--
Preview: Added QTreeView to mainwindow (not yet functional)
insilmaril@725
     1
#include <QStringList>
insilmaril@725
     2
insilmaril@725
     3
#include "treeitem.h"
insilmaril@725
     4
insilmaril@725
     5
TreeItem::TreeItem(const QList<QVariant> &data, TreeItem *parent)
insilmaril@725
     6
{
insilmaril@725
     7
    parentItem = parent;
insilmaril@725
     8
    itemData = data;
insilmaril@725
     9
}
insilmaril@725
    10
insilmaril@725
    11
TreeItem::~TreeItem()
insilmaril@725
    12
{
insilmaril@725
    13
    qDeleteAll(childItems);
insilmaril@725
    14
}
insilmaril@725
    15
insilmaril@725
    16
void TreeItem::appendChild(TreeItem *item)
insilmaril@725
    17
{
insilmaril@725
    18
    childItems.append(item);
insilmaril@725
    19
}
insilmaril@725
    20
insilmaril@725
    21
TreeItem *TreeItem::child(int row)
insilmaril@725
    22
{
insilmaril@725
    23
    return childItems.value(row);
insilmaril@725
    24
}
insilmaril@725
    25
insilmaril@725
    26
int TreeItem::childCount() const
insilmaril@725
    27
{
insilmaril@725
    28
    return childItems.count();
insilmaril@725
    29
}
insilmaril@725
    30
insilmaril@725
    31
int TreeItem::columnCount() const
insilmaril@725
    32
{
insilmaril@725
    33
    return itemData.count();
insilmaril@725
    34
}
insilmaril@725
    35
insilmaril@725
    36
QVariant TreeItem::data(int column) const
insilmaril@725
    37
{
insilmaril@725
    38
    return itemData.value(column);
insilmaril@725
    39
}
insilmaril@725
    40
insilmaril@725
    41
TreeItem *TreeItem::parent()
insilmaril@725
    42
{
insilmaril@725
    43
    return parentItem;
insilmaril@725
    44
}
insilmaril@725
    45
insilmaril@725
    46
int TreeItem::row() const
insilmaril@725
    47
{
insilmaril@725
    48
    if (parentItem)
insilmaril@725
    49
        return parentItem->childItems.indexOf(const_cast<TreeItem*>(this));
insilmaril@725
    50
insilmaril@725
    51
    return 0;
insilmaril@725
    52
}