screensaver/snsrplugins/snsrbigclockscreensaverplugin/snsrindicators/src/snsrindicatorwidget.cpp
author hgs
Wed, 06 Oct 2010 16:06:24 +0300
changeset 97 66b5fe3c07fd
child 98 e6f74eb7f69f
permissions -rw-r--r--
201039_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
97
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     1
/*
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     3
* All rights reserved.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     8
*
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
     9
* Initial Contributors:
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    11
*
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    12
* Contributors:
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    13
*
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    14
* Description:  Indicator Widget.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    15
*
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    16
*/
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    17
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    18
#include "snsrindicatorwidget.h"
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    19
#include "snsrindicatorinfo.h"
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    20
#include "snsrcolors.h"
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    21
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    22
#include <hbevent.h>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    23
#include <HbColorScheme>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    24
#include <QDebug>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    25
#include <QSizePolicy>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    26
#include <HbStyleLoader>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    27
#include <HbIconItem>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    28
#include <HbIndicatorInterface>
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    29
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    30
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    31
const char *gIndicatorCssFilePath =":/style/snsrindicatorwidget.css";
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    32
const char *gIndicatorWidgetMLFilePath = ":/style/snsrindicatorwidget.widgetml";
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    33
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    34
const int gNumberOfIcons(6);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    35
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    36
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    37
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    38
    \class SnsrIndicatorWidget
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    39
    \ingroup group_snsrbigclockscreensaverprovider
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    40
    \brief Screensaver indicator widget.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    41
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    42
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    43
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    44
    Constructs a new SnsrIndicatorWidget.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    45
    \param parent Parent object.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    46
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    47
SnsrIndicatorWidget::SnsrIndicatorWidget(QGraphicsItem* parent):
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    48
    HbWidget(parent), mLayoutType(IndicatorsCentered), 
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    49
    mIconColorType(ThemedColorForActiveMode),
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    50
    mIconColor(HbColorScheme::color(SnsrColors::WidgetColorRole.latin1()))
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    51
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    52
    HbStyleLoader::registerFilePath(gIndicatorCssFilePath);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    53
    HbStyleLoader::registerFilePath(gIndicatorWidgetMLFilePath);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    54
   
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    55
    setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Preferred);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    56
          
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    57
    createPrimitives();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    58
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    59
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    60
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    61
    Destructs the class.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    62
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    63
SnsrIndicatorWidget::~SnsrIndicatorWidget()
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    64
{    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    65
    // icons within the list are deleted by parent
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    66
    mIcons.clear();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    67
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    68
    HbStyleLoader::unregisterFilePath( gIndicatorCssFilePath );
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    69
    HbStyleLoader::unregisterFilePath( gIndicatorWidgetMLFilePath );
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    70
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    71
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    72
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    73
SnsrIndicatorWidget::IndicatorLayoutType SnsrIndicatorWidget::layoutType() const
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    74
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    75
    return mLayoutType;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    76
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    77
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    78
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    79
    Sets the name of layout definition \a layoutName for selecting 
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    80
    the layout of view items of this view from css/xml files.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    81
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    82
    This layout is accessible from css file as layout property
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    83
    of the view item.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    84
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    85
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    86
void SnsrIndicatorWidget::setLayoutType(IndicatorLayoutType type)
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    87
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    88
    if (mLayoutType != type ) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    89
        mLayoutType = type;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    90
        QSizePolicy::Policy hSizePolicy(QSizePolicy::Expanding);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    91
        if ( mLayoutType == IndicatorsAlignedLeft ) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    92
            hSizePolicy = QSizePolicy::Preferred;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    93
        }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    94
        setSizePolicy(hSizePolicy,QSizePolicy::Preferred);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    95
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    96
} 
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    97
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    98
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
    99
    Set the coloring scheme to be used: fixed color for power save mode (white) or 
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   100
    themed color for active mode.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   101
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   102
void SnsrIndicatorWidget::setIconColorType(const IconColorType &colorType)
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   103
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   104
    mIconColorType = colorType;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   105
    if (mIconColorType==FixedColorForPowerSaveMode) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   106
        mIconColor=SnsrColors::PowerSaveModeWidgetColor;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   107
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   108
    else {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   109
        mIconColor=HbColorScheme::color(SnsrColors::WidgetColorRole.latin1());
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   110
    }   
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   111
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   112
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   113
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   114
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   115
    This is called whenever indicators' status changes: parameter list
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   116
    tells which indicators should be shown at the given moment. All
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   117
    previously shown indicators should be hidden and show only these
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   118
    indicators passed as a parameter. 
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   119
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   120
void SnsrIndicatorWidget::showIndicators(const QList<SnsrIndicatorInfo> &indicators)
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   121
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   122
    // Update icon paths so that shown iconItems have
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   123
    // valid icon path and rest have empty path (->invisible)
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   124
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   125
    int indicatorAmount = indicators.size();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   126
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   127
    removeAllIndicators();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   128
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   129
    // update icon paths for items that are gonna be shown
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   130
    for (int i=0; i < indicatorAmount && i < mIcons.size(); ++i) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   131
        mIcons.at(i)->setIconName(indicators.at(i).iconPath);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   132
        mIcons.at(i)->setFlags(HbIcon::Colorized);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   133
        mIcons.at(i)->setColor(mIconColor);        
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   134
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   135
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   136
    // To recalculate layouts
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   137
    updateGeometry();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   138
    if ( parentLayoutItem() ) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   139
        parentLayoutItem()->updateGeometry(); // clear the cache of the parent
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   140
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   141
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   142
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   143
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   144
    Remove all indicators from UI.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   145
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   146
void SnsrIndicatorWidget::removeAllIndicators()
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   147
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   148
    for (int i=0; i < mIcons.size(); ++i) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   149
        mIcons.at(i)->setIconName(QString());
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   150
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   151
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   152
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   153
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   154
    \reimp
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   155
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   156
void SnsrIndicatorWidget::changeEvent(QEvent * event)
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   157
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   158
    if (event->type() == HbEvent::ThemeChanged &&
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   159
        mIconColorType == ThemedColorForActiveMode) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   160
        mIconColor = HbColorScheme::color(SnsrColors::WidgetColorRole.latin1());
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   161
        for (int i=0; i < mIcons.size(); ++i) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   162
            mIcons.at(i)->setColor(mIconColor);        
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   163
        }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   164
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   165
    return HbWidget::changeEvent(event);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   166
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   167
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   168
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   169
    If indicator pane is going to be centered, then calculate width so that it's
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   170
    exactly the same as visible icons are taking space (+spacers between them).
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   171
    If indicator pane is left aligned, then actual width doesn't matter.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   172
    Assumption is that icons are fixed sized.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   173
    \reimp
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   174
*/
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   175
QSizeF SnsrIndicatorWidget::sizeHint(Qt::SizeHint which, const QSizeF &constraint) const
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   176
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   177
    QSizeF hint = HbWidget::sizeHint(which, constraint);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   178
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   179
    if (which == Qt::PreferredSize && layoutType() == IndicatorsCentered ) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   180
        qreal width(0);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   181
        qreal itemWidth(0);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   182
        qreal iconSpace(0);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   183
        int visibleIconCount(0);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   184
        
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   185
        for (int i=0; i < mIcons.size(); ++i) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   186
               if (!mIcons.at(i)->iconName().isEmpty() ) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   187
                   visibleIconCount++;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   188
                   itemWidth = mIcons.at(i)->iconItemSize().width();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   189
                   width = width + itemWidth;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   190
               }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   191
        }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   192
        if (visibleIconCount > 1) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   193
            style()->parameter("hb-param-margin-gene-middle-horizontal", iconSpace);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   194
            width = width + ((visibleIconCount-1)*iconSpace);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   195
        }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   196
        
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   197
        hint.setWidth(width);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   198
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   199
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   200
    return hint;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   201
}
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   202
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   203
/*!
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   204
    Creates all widget primitives.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   205
    Coloring is handled via CSS.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   206
 */
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   207
void SnsrIndicatorWidget::createPrimitives()
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   208
{
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   209
    if (!mIcons.isEmpty()) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   210
        return;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   211
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   212
    
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   213
    HbIconItem *icon(0);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   214
    QLatin1String itemNameBase("icon");
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   215
    int itemNameEnd(1);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   216
    QString itemName("");
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   217
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   218
    while (mIcons.count() < gNumberOfIcons) {
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   219
        // When created, icon names are left empty -> nothing shown in UI.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   220
        icon = new HbIconItem(this);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   221
        icon->setFlags(HbIcon::Colorized);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   222
        icon->setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   223
            
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   224
        // Create items that are named icon1..icon6.
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   225
        itemName.clear();
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   226
        itemName.append(itemNameBase);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   227
        itemName.append(QString::number(itemNameEnd));
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   228
        HbStyle::setItemName(icon, itemName);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   229
        ++itemNameEnd;
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   230
        
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   231
        mIcons.append(icon);
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   232
    }
66b5fe3c07fd 201039_01
hgs
parents:
diff changeset
   233
}