diff -r 03646e8da489 -r 30f14686fb04 taskswitcherapp/tsdevicedialogplugin/src/tstasksgriditem.cpp --- a/taskswitcherapp/tsdevicedialogplugin/src/tstasksgriditem.cpp Fri Jun 11 13:30:16 2010 +0300 +++ b/taskswitcherapp/tsdevicedialogplugin/src/tstasksgriditem.cpp Wed Jun 23 18:03:36 2010 +0300 @@ -16,10 +16,13 @@ */ #include "tstasksgriditem.h" -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include + #include "tsdataroles.h" /*! @@ -29,51 +32,44 @@ */ -TsTasksGridItem::TsTasksGridItem() : HbAbstractViewItem(), mScreenshotLabel(0), mApplicationNameLabel(0), mDeleteButton(0) +TsTasksGridItem::TsTasksGridItem() : HbAbstractViewItem(), mScreenshotLabel(0), mApplicationNameLabel(0), mDeleteButton(0), mActiveLabelFrame(0), mActiveLabel(0) { + // Register the custom docml and css to provide our own style to the list items + bool widgetmlLoaded = HbStyleLoader::registerFilePath(":/resource/tstasksgriditem.widgetml"); + Q_ASSERT(widgetmlLoaded); + bool cssLoaded = HbStyleLoader::registerFilePath(":/resource/tstasksgriditem.css"); + Q_ASSERT(cssLoaded); } TsTasksGridItem::TsTasksGridItem(const TsTasksGridItem &item) : HbAbstractViewItem(item) { - // add screenshot - mScreenshotLabel = new HbLabel(); - mScreenshotLabel->setAlignment(Qt::AlignHCenter); - - // add application name label - mApplicationNameLabel = new HbLabel(); - mApplicationNameLabel->setAlignment(Qt::AlignCenter); + mScreenshotLabel = new HbIconItem(this); + mApplicationNameLabel = new HbTextItem(this); + mDeleteButton = new HbPushButton(this); + HbFrameItem *screenshotFrame = new HbFrameItem(this); + screenshotFrame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces); + screenshotFrame->frameDrawer().setFrameGraphicsName("qtg_fr_multimedia_trans"); - // add close app button - HbIcon deleteIcon(":/resource/delete.png"); - mDeleteButton = new HbPushButton(); - mDeleteButton->setIcon(deleteIcon); - mDeleteButton->setPreferredSize(48, 48); - mDeleteButton->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum); - mDeleteButton->setEnabled(true); - connect(mDeleteButton, SIGNAL(clicked()), this, SLOT(handleDeleteClicked())); - mDeleteButton->hide(); - - setContentsMargins(5, 5, 5, 5); + HbFrameItem *applicationLabelFrame = new HbFrameItem(this); + applicationLabelFrame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces); + applicationLabelFrame->frameDrawer().setFrameGraphicsName("qtg_fr_multimedia_trans"); - // add all items to layout - HbAnchorLayout *anchorLayout = new HbAnchorLayout(); - anchorLayout->setAnchor(mApplicationNameLabel, Hb::LeftEdge, anchorLayout, Hb::LeftEdge, 0); - anchorLayout->setAnchor(mApplicationNameLabel, Hb::TopEdge, anchorLayout, Hb::TopEdge, 0); - anchorLayout->setAnchor(mApplicationNameLabel, Hb::RightEdge, anchorLayout, Hb::RightEdge, 0); + mActiveLabel = new HbTextItem(hbTrId("txt_tsw_label_active"), this); + mActiveLabelFrame = new HbFrameItem(this); + mActiveLabelFrame->frameDrawer().setFrameType(HbFrameDrawer::NinePieces); + mActiveLabelFrame->frameDrawer().setFrameGraphicsName("qtg_fr_multimedia_trans"); + + mDeleteButton->setIcon(HbIcon("qtg_mono_exit")); - anchorLayout->setAnchor(mScreenshotLabel, Hb::TopEdge, mApplicationNameLabel, Hb::BottomEdge, 0); - anchorLayout->setAnchor(mScreenshotLabel, Hb::LeftEdge, anchorLayout, Hb::LeftEdge, 0); - anchorLayout->setAnchor(mScreenshotLabel, Hb::RightEdge, anchorLayout, Hb::RightEdge, 0); - anchorLayout->setAnchor(mScreenshotLabel, Hb::BottomEdge, anchorLayout, Hb::BottomEdge, 0); - - anchorLayout->setAnchor(mDeleteButton, Hb::RightEdge, mScreenshotLabel, Hb::RightEdge, 0); - anchorLayout->setAnchor(mDeleteButton, Hb::TopEdge, mScreenshotLabel, Hb::TopEdge, 0); - - setLayout(anchorLayout); -} - -TsTasksGridItem::~TsTasksGridItem() -{ + HbStyle::setItemName(mScreenshotLabel, "screenshot"); + HbStyle::setItemName(mApplicationNameLabel, "appname"); + HbStyle::setItemName(mDeleteButton, "closebadge"); + mDeleteButton->setObjectName("closebadge"); + HbStyle::setItemName(screenshotFrame, "screenshotFrame"); + HbStyle::setItemName(applicationLabelFrame, "applicationLabelFrame"); + HbStyle::setItemName(mActiveLabel, "activeLabel"); + HbStyle::setItemName(mActiveLabelFrame, "activeLabelFrame"); + connect(mDeleteButton, SIGNAL(clicked()), this, SLOT(handleDeleteClicked())); } HbAbstractViewItem *TsTasksGridItem::createItem() @@ -91,12 +87,16 @@ void TsTasksGridItem::updateChildItems() { mScreenshotLabel->setIcon(modelIndex().data(Qt::DecorationRole).value()); - mApplicationNameLabel->setPlainText(modelIndex().data(Qt::DisplayRole).toString()); + mApplicationNameLabel->setText(modelIndex().data(Qt::DisplayRole).toString()); QVariant status(modelIndex().data(TsDataRoles::Closable)); const bool isRunning(status.isValid() && status.toBool()); if (isRunning) { mDeleteButton->show(); + mActiveLabel->show(); + mActiveLabelFrame->show(); } else { mDeleteButton->hide(); + mActiveLabel->hide(); + mActiveLabelFrame->hide(); } }