williamr@2: /* williamr@2: * Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: #ifndef MCLFOPERATIONOBSERVER_H williamr@2: #define MCLFOPERATIONOBSERVER_H williamr@2: williamr@2: // INCLUDES williamr@2: #include williamr@2: williamr@2: // DATA TYPES williamr@2: /** williamr@2: * Content Listing Framework list model operation events williamr@2: */ williamr@2: enum TCLFOperationEvent williamr@2: { williamr@2: /// Refresh operation is completed williamr@2: ECLFRefreshComplete = 0x0, williamr@2: /// Model content is obsolated and should be refreshed williamr@2: ECLFModelOutdated = 0x1 williamr@2: }; williamr@2: williamr@2: // FORWARD DECLARATIONS williamr@2: class MCLFOperationObserverExt; williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * Operation Observer is for observing operation events of the Content Listing williamr@2: * Framework. Client application gets notified when asynchronous operations williamr@2: * are completed. For example, ECLFRefreshComplete event is received when the williamr@2: * asynchronous refresh operation is compeleted. williamr@2: * williamr@2: * @lib ContentListingFramework.lib williamr@2: * @since S60 3.1 williamr@2: */ williamr@2: class MCLFOperationObserver williamr@2: { williamr@2: public: // New functions williamr@2: williamr@2: /** williamr@2: * Abstract method to get list model operation events. This method is williamr@2: * called when an event is received. williamr@2: * @since S60 3.1 williamr@2: * @param aOperationEvent Operation event code of the event williamr@2: * @param aError System wide error code if the operation did not williamr@2: * succeed. williamr@2: */ williamr@2: virtual void HandleOperationEventL( TCLFOperationEvent aOperationEvent, williamr@2: TInt aError ) = 0; williamr@2: williamr@2: protected: williamr@2: williamr@2: /** williamr@2: * Destructor. williamr@2: */ williamr@2: virtual ~MCLFOperationObserver() {} williamr@2: williamr@2: private: // Extension interface williamr@2: williamr@2: /** williamr@2: * This member is internal and not intended for use. williamr@2: */ williamr@2: virtual MCLFOperationObserverExt* Extension() { return NULL; } williamr@2: williamr@2: williamr@2: }; williamr@2: williamr@2: #endif // MCLFOPERATIONOBSERVER_H williamr@2: williamr@2: // End of File