diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-1E2DB50A-D8D7-595D-8448-77F057655E82.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-1E2DB50A-D8D7-595D-8448-77F057655E82.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,59 @@ + + + + + +Writing +a Client MTM

This section describes the initial steps to be performed to write +a Client MTM. It does not explain the implementation of all Client +MTM functionality. You can refer the Client +MTM example for detailed implementation steps

+

The main function of the Client MTM is to load the entry currently +referred to by the MTM’s context, and save it once any changes have been made +to it. An individual entry’s store is represented by the CMsvStore class. +Finally, after any changes are made to a store that stores the message body, CMsvStore::CommitL() must +be called to commit those changes.

+ + +Derive a class from the CBaseMtm class. + + +Register it using the CRegisteredMtmDll parameter. + + +Create a session with Message Server using the CMsvSession parameter. + + +Create the CMsvOperation -based classes for performing +the different operations that are required for your Messaging protocol. See Client-side +operations. + + +Client MTM example// +// CTextMtmClient +// Implements CBaseMtm to provide Client-side Text MTM +// + +EXPORT_C CTextMtmClient* CTextMtmClient::NewL(CRegisteredMtmDll& aRegisteredMtmDll, CMsvSession& aMsvSession) +// Factory function + { + CTextMtmClient* self = new (ELeave) CTextMtmClient(aRegisteredMtmDll,aMsvSession); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; + }

For more details on implementing all Client +MTM functions, see example +code.

+
+MTM overview + +Client MTM + +
\ No newline at end of file