diff -r 89c329efa980 -r e48454f237ca hgcacheproxymodel/tsrc/fute/HgCacheProxyModelTestApp/src/mydataprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hgcacheproxymodel/tsrc/fute/HgCacheProxyModelTestApp/src/mydataprovider.h Mon May 03 13:32:54 2010 +0300 @@ -0,0 +1,79 @@ +/* +* Copyright (c) 2009 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: +* +* Version : %version: 1 % +*/ +#ifndef MYDATAPROVIDER2_H +#define MYDATAPROVIDER2_H + +#include + +#include +#include +#include +#include +#include +#include +#include "flogger.h" + +class HbIcon; +class CMdESession; +class CActiveSchedulerWait; +class QEventLoop; + +class MyDataProvider : public HgDataProviderModel, public MMdESessionObserver, public MMdEQueryObserver +{ + Q_OBJECT + +public: + MyDataProvider(QObject *parent = 0); + ~MyDataProvider(); + void changeIconSize(ThumbnailManager::ThumbnailSize aThumbnailsize); + +//from MMdESessionObserver and MMdEQueryObserver + virtual void HandleSessionOpened(CMdESession& aSession, TInt aError); + virtual void HandleSessionError(CMdESession& , TInt ){}; + virtual void HandleQueryNewResults(CMdEQuery& , TInt ,TInt ){}; + virtual void HandleQueryCompleted(CMdEQuery& aQuery, TInt aError); + +//from HgDataProviderModel + virtual void doReleaseData(QList list, bool silent); + virtual void doRequestData(QList list, bool silent); + virtual QVariant defaultIcon() const; + +protected: + virtual void doResetModel(); + +public slots: + void thumbnailReady( QPixmap , void* , int, int ); + +private: + void getNextThumbnail(); + void readMDSData(); + +private: + HbIcon* mDefaultIcon; + CActiveSchedulerWait* mScheduler; + ThumbnailManager* mWrapper; + QList mWaitingThumbnails; + bool mThumbnailRequestPending; + int mThumbnailRequestIndex; + int mThumbnailRequestID; + ThumbnailManager::ThumbnailSize mThumbnailsize; + bool mMDSLoadInProgress; +}; + +#endif // MYDATAPROVIDER2_H +