williamr@2: // Copyright (c) 2005-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@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.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: #ifndef __CALPROGRESSCALLBACK_H__ williamr@2: #define __CALPROGRESSCALLBACK_H__ williamr@2: williamr@2: class MCalProgressCallBack williamr@2: /** A call back class to show the progress of long-running operations. williamr@2: williamr@2: When a long-running operation is carried out on the instance view or the entry williamr@2: view, this class is used to signal its progress, and when the function is complete. williamr@2: williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: { williamr@2: public: williamr@2: williamr@2: /** Progress callback. williamr@2: williamr@2: This calls the observing class with the percentage complete of the current operation. williamr@2: williamr@2: @param aPercentageCompleted The percentage complete. */ williamr@2: virtual void Progress(TInt aPercentageCompleted) = 0; williamr@2: williamr@2: /** Progress callback. williamr@2: williamr@2: This calls the observing class when the current operation is finished. williamr@2: williamr@2: @param aError The error if the operation failed, or KErrNone if successful. */ williamr@2: virtual void Completed(TInt aError) = 0; williamr@2: williamr@2: /** williamr@2: Asks the observing class whether progress callbacks are required. This williamr@2: is called once only to check if callbacks are enabled. williamr@2: williamr@2: @return If the observing class returns EFalse, then the Progress() function will not be called. williamr@2: */ williamr@2: virtual TBool NotifyProgress() = 0; williamr@2: }; williamr@2: williamr@2: #endif // __CALPROGRESSCALLBACK_H__