diff -r 1fc85118c3ae -r 870918037e16 locationpickerservice/src/hgwidgetdatamodel.cpp --- a/locationpickerservice/src/hgwidgetdatamodel.cpp Tue Aug 31 15:09:25 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,167 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: HgWidgetDataModel implementation -* -*/ - -#include -#include -#include -#include - -#include "locationpickertypes.h" -#include "hgwidgetdatamodel.h" -#include "locationpickerproxymodel.h" - -const int MAPSTROKE(3); -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::HgWidgetDataModel() -// ---------------------------------------------------------------------------- -HgWidgetDataModel::HgWidgetDataModel( LocationPickerProxyModel *aProxyModel, QObject *aParent ) - : QAbstractListModel(aParent), - mImageType(ETypeHbIcon), - mDefaultImage(KDummyImage), - mUseLowResImages(false), - mProxyModel(NULL) -{ - mProxyModel = aProxyModel; - -} - -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::resetModel() -// ---------------------------------------------------------------------------- -void HgWidgetDataModel::resetModel( LocationPickerProxyModel *aProxyModel ) -{ - //reset and update - mProxyModel = aProxyModel; - reset(); - emit beginResetModel(); - emit endResetModel(); -} - - -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::~HgWidgetDataModel() -// ---------------------------------------------------------------------------- -HgWidgetDataModel::~HgWidgetDataModel() -{ - -} - -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::rowCount() -// ---------------------------------------------------------------------------- -int HgWidgetDataModel::rowCount( const QModelIndex &aParent ) const -{ - Q_UNUSED(aParent); - - return mProxyModel->rowCount(QModelIndex()); - -} - -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::data() -// ---------------------------------------------------------------------------- -QVariant HgWidgetDataModel::data(const QModelIndex &aIndex, int aRole) const -{ - int row= aIndex.row(); - int col = aIndex.column(); - //get proxy model index - QModelIndex proxyModelIndex = mProxyModel->index(row,col); - QVariant returnValue = QVariant(); - if ( !aIndex.isValid() ) - { - return returnValue; - } - - if( row >= mProxyModel->rowCount(QModelIndex()) ) - { - return returnValue; - } - - switch ( aRole ) - { - case HgWidget::HgVisibilityRole: - { - returnValue = true; - } - break; - case Qt::DisplayRole: - { - QStringList displayText; - QStringList adressDetail = mProxyModel->data(proxyModelIndex,Qt::DisplayRole).toStringList(); - QString displayString; - if(!adressDetail[0].isEmpty()) - { - displayString = adressDetail[0]+KSeparator+KSpace+adressDetail[1]; - } - else - { - displayString = adressDetail[1]; - } - QString text(""); - displayText <data(proxyModelIndex,Qt::UserRole+1).toString(); - if (iconName.isEmpty()) - { - returnValue = mDefaultImage; - } - else - { - QString adressType = mProxyModel->data(proxyModelIndex,Qt::UserRole+2).toString(); - QPixmap mapPixmap(iconName); - int mapWidth = mapPixmap.width(); - int mapHeight = mapPixmap.height(); - QBrush brush(Qt::black,Qt::SolidPattern); - QPainter painter; - painter.begin(&mapPixmap); - HbIcon adressTypeIcon(adressType); - //draw the adressType Icon over mapTile Icon - adressTypeIcon.paint(&painter,QRectF((mapPixmap.width()-adressTypeIcon.width()),0,adressTypeIcon.width(),adressTypeIcon.height())); - painter.fillRect(QRect(0,0,mapWidth,MAPSTROKE),brush); - painter.fillRect(QRect(0,mapHeight-MAPSTROKE,mapWidth,(mapHeight-MAPSTROKE)),brush); - painter.fillRect(QRect(0,0,MAPSTROKE,mapPixmap.height()),brush); - painter.fillRect(QRect((mapWidth-MAPSTROKE),0,mapWidth,mapHeight),brush); - painter.end(); - QIcon landscape( mapPixmap ); - HbIcon landscapeIcon(landscape); - returnValue = landscapeIcon; - } - break; - } - default: - break; - } - - return returnValue; -} - - -// ---------------------------------------------------------------------------- -// HgWidgetDataModel::setImageDataType() -// ---------------------------------------------------------------------------- -void HgWidgetDataModel::setImageDataType(TImageType type) -{ - mImageType = type; -} - - -