securitydialogs/SecUi/SecUiTestQt/dirviewitem.cpp
author hgs
Wed, 20 Oct 2010 14:51:23 +0300
changeset 66 67b3e3c1fc87
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
66
hgs
parents:
diff changeset
     1
#include "dirviewitem.h"
hgs
parents:
diff changeset
     2
hgs
parents:
diff changeset
     3
#include <hbpushbutton.h>
hgs
parents:
diff changeset
     4
#include <hbabstractitemview.h>
hgs
parents:
diff changeset
     5
#include <hbtextitem.h>
hgs
parents:
diff changeset
     6
#include <hbstyle.h>
hgs
parents:
diff changeset
     7
hgs
parents:
diff changeset
     8
const QString KExpandButtonItemName = "subitem-button";
hgs
parents:
diff changeset
     9
hgs
parents:
diff changeset
    10
DirViewItem::DirViewItem(QGraphicsItem* parent) : 
hgs
parents:
diff changeset
    11
    HbTreeViewItem(parent),
hgs
parents:
diff changeset
    12
    mExpandButton(0)
hgs
parents:
diff changeset
    13
{
hgs
parents:
diff changeset
    14
}
hgs
parents:
diff changeset
    15
hgs
parents:
diff changeset
    16
DirViewItem::~DirViewItem()
hgs
parents:
diff changeset
    17
{
hgs
parents:
diff changeset
    18
}
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
int DirViewItem::type() const
hgs
parents:
diff changeset
    21
{
hgs
parents:
diff changeset
    22
    return DirViewItem::Type;
hgs
parents:
diff changeset
    23
}
hgs
parents:
diff changeset
    24
hgs
parents:
diff changeset
    25
HbAbstractViewItem *DirViewItem::createItem()
hgs
parents:
diff changeset
    26
{
hgs
parents:
diff changeset
    27
    return new DirViewItem(*this);
hgs
parents:
diff changeset
    28
}
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
void DirViewItem::buttonReleased()
hgs
parents:
diff changeset
    31
{
hgs
parents:
diff changeset
    32
    if (isExpanded()) {
hgs
parents:
diff changeset
    33
        setExpanded(false);
hgs
parents:
diff changeset
    34
    } else {
hgs
parents:
diff changeset
    35
        setExpanded(true);
hgs
parents:
diff changeset
    36
    }
hgs
parents:
diff changeset
    37
}
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
HbWidgetBase *DirViewItem::updateExpandItem()
hgs
parents:
diff changeset
    40
{
hgs
parents:
diff changeset
    41
    if (!mExpandButton) {
hgs
parents:
diff changeset
    42
        mExpandButton = new HbPushButton(this);
hgs
parents:
diff changeset
    43
        connect(mExpandButton, SIGNAL(released()), this, SLOT(buttonReleased()));
hgs
parents:
diff changeset
    44
        HbStyle::setItemName(mExpandButton, KExpandButtonItemName);
hgs
parents:
diff changeset
    45
    }
hgs
parents:
diff changeset
    46
hgs
parents:
diff changeset
    47
    if (isExpanded()) {
hgs
parents:
diff changeset
    48
        mExpandButton->setText("Close");
hgs
parents:
diff changeset
    49
    } else {
hgs
parents:
diff changeset
    50
        mExpandButton->setText("Open");
hgs
parents:
diff changeset
    51
    }
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
    return mExpandButton;
hgs
parents:
diff changeset
    54
}
hgs
parents:
diff changeset
    55