examples/ForumNokia/S60_3rd_Edition_TextMTM_Example/modules/Client/inc/txtfwdop.h

00001 // TXTCPAN.H
00002 //
00003 // � 2004 Nokia Corporation.  All rights reserved.
00004 //
00005 
00006 #ifndef __TXTFWDOP_H__
00007 #define __TXTFWDOP_H__
00008 
00009 #include <msvapi.h>     // CMsvOperation
00010 
00011 _LIT(KTxtMtmFwdPrefix, "Fwd:");
00012 
00013 // Progress information for forward operation
00014 
00015 class TTxtMtmForwardOpProgress
00016     {
00017     public:
00018         enum TState
00019             {
00020             EInit,
00021             ECreateMessage,
00022             EFormatBodyText,
00023             EFinished
00024             };
00025 
00026     public:
00027         TState iState;
00028         TMsvId iFinalMsgId;
00029         TInt iError;
00030     };
00031 
00032 // utility typedef of package buffer
00033 typedef TPckgBuf <TTxtMtmForwardOpProgress> TTxtMtmForwardOpProgressBuf;
00034 
00035 
00036 class CTxtMtmForwardOperation : public CMsvOperation
00037         {       
00038         public:
00039         static CTxtMtmForwardOperation* NewL(TMsvId aSourceMessage, TMsvId aDestinationFolder, CMsvSession& aMsvSession, TRequestStatus& aObserverRequestStatus);
00040         ~CTxtMtmForwardOperation();
00041 
00042         public: // from CMsvOperation           
00043                 virtual const TDesC8& ProgressL();
00044         virtual const TDesC8& FinalProgress();
00045 
00046         public: // from CActive
00047                 virtual void DoCancel();
00048                 virtual void RunL();
00049         virtual TInt RunError(TInt aError);
00050 
00051     private:
00052         void CreateMessageL();
00053         void FormatBodyTextL();
00054 
00055     private:
00056                 CTxtMtmForwardOperation(TMsvId aSourceMessage, TMsvId aDestinationFolder, CMsvSession& aMsvSession, TRequestStatus& aObserverRequestStatus);
00057         void ConstructL();              
00058 
00059         private:
00060                 TTxtMtmForwardOpProgress iProgress;
00061         TTxtMtmForwardOpProgressBuf iProgressBuf;
00062         TMsvId iSourceMessage; 
00063         TMsvId iDestinationFolder;
00064         CMsvEntry* iMsvEntry;
00065         };
00066 
00067 #endif  // __TXTFWDOP_H__

Generated by  doxygen 1.6.2