--- a/hgcacheproxymodel/tsrc/fute/HgCacheProxyModelTestApp/src/mydataprovider.cpp Fri Sep 17 15:55:58 2010 +0300
+++ b/hgcacheproxymodel/tsrc/fute/HgCacheProxyModelTestApp/src/mydataprovider.cpp Wed Oct 06 14:53:41 2010 +0300
@@ -26,7 +26,6 @@
MyDataProvider::MyDataProvider(QObject *parent) :
HgDataProviderModel(parent),
-mDefaultIcon(QIcon(QPixmap(":/icons/default.png"))),
mScheduler(new CActiveSchedulerWait()),
mWrapper( new ThumbnailManager() ),
mThumbnailRequestPending(false),
@@ -34,11 +33,21 @@
mThumbnailRequestID(-1),
mThumbnailsize(ThumbnailManager::ThumbnailMedium),
mMDSLoadInProgress(false),
-mMode(0),
-mNoIcon(QIcon(QPixmap(":/icons/noIcon.png")))
+mMode(0)
{
// TX_ENTRY
Q_UNUSED(parent);
+ QPixmap defaultPixmap(":/icons/default.png");
+ mDefaultIcon.insert(HgDataProviderIconHbIcon, HbIcon(":/icons/default.png"));
+ mDefaultIcon.insert(HgDataProviderIconQIcon, QIcon(defaultPixmap));
+ mDefaultIcon.insert(HgDataProviderIconQImage, defaultPixmap.toImage());
+ mDefaultIcon.insert(HgDataProviderIconQPixmap, defaultPixmap);
+
+ QPixmap noIconPixmap(":/icons/noIcon.png");
+ mNoIcon.insert(HgDataProviderIconHbIcon, HbIcon(":/icons/noIcon.png"));
+ mNoIcon.insert(HgDataProviderIconQIcon, QIcon(noIconPixmap));
+ mNoIcon.insert(HgDataProviderIconQImage, noIconPixmap.toImage());
+ mNoIcon.insert(HgDataProviderIconQPixmap, noIconPixmap);
mWrapper->setThumbnailSize( mThumbnailsize );
mWrapper->setQualityPreference( ThumbnailManager::OptimizeForPerformance );
@@ -108,7 +117,7 @@
mThumbnailRequestIndex = i;
mThumbnailRequestPending = true;
} else {
- updateIcon(i, mNoIcon, true);
+ updateIcon(i, mNoIcon[iconMode()], true);
getNextThumbnail();
}
}
@@ -124,14 +133,13 @@
{
// TX_ENTRY
Q_UNUSED(id);
+ int idx = reinterpret_cast<int>(data);
if (!error && pixmap.rect().height()>0 && pixmap.rect().width()>0 ) {
- int idx = reinterpret_cast<int>(data);
TX_LOG_ARGS(QString("thumbnailReady idx = %0").arg(idx));
-// updateIcon(idx, HbIcon( QIcon( pixmap ) ) );
-// update(idx, HbIcon( QIcon( pixmap ) ), Qt::DecorationRole, false);
updateIcon(idx, createIcon(idx, pixmap));
} else {
- TX_LOG_ARGS(QString("error:%0 id:%0").arg(error).arg(id));
+ updateIcon(idx, mNoIcon[iconMode()], true);
+ TX_LOG_ARGS(QString("error:%0 id:%0").arg(error).arg(idx));
}
mThumbnailRequestIndex = -1;
mThumbnailRequestID = -1;
@@ -167,7 +175,8 @@
QVariant MyDataProvider::defaultIcon() const
{
- return mDefaultIcon;
+ MyDataProvider* me = const_cast<MyDataProvider*>(this);
+ return mDefaultIcon[me->iconMode()];
}
void MyDataProvider::HandleSessionOpened(CMdESession& aSession, TInt aError)