Home · All Classes · Main Classes · Annotated · Grouped Classes · Functions

treeitem.cpp Example File
itemviews/simpletreemodel/treeitem.cpp

    /****************************************************************************
    **
    ** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
    **
    ** This file is part of an example program for Qt.
    ** EDITIONS: NOLIMITS
    **
    ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    **
    ****************************************************************************/

    /*
        treeitem.cpp

        A container for items of data supplied by the simple tree model.
    */

    #include <QStringList>

    #include "treeitem.h"

    TreeItem::TreeItem(QList<QVariant> data, TreeItem *parent)
    {
        parentItem = parent;
        itemData = data;
    }

    TreeItem::~TreeItem()
    {
        qDeleteAll(childItems);
    }

    void TreeItem::appendChild(TreeItem *item)
    {
        childItems.append(item);
    }

    TreeItem *TreeItem::child(int row)
    {
        return childItems.value(row);
    }

    int TreeItem::childCount() const
    {
        return childItems.count();
    }

    int TreeItem::childRow(TreeItem *item) const
    {
        return childItems.indexOf(item);
    }

    int TreeItem::columnCount() const
    {
        return itemData.count();
    }

    QVariant TreeItem::data(int column) const
    {
        return itemData.value(column);
    }

    TreeItem *TreeItem::parent()
    {
        return parentItem;
    }

    int TreeItem::row() const
    {
        if (parentItem)
            return parentItem->childRow(const_cast<TreeItem*>(this));

        return 0;
    }


Copyright © 2005 Trolltech Trademarks
Qt 4.0.0-b2