2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * 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
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
15 * Defines sdk extended capabilities
21 #ifndef __EXTENDEDMTMIDS_HRH__
22 #define __EXTENDEDMTMIDS_HRH__
25 * UIDs for quering capabilities from MTMs (CBaseMtmUiData)
30 * #include <ExtendedMTMIDS.hrh>
32 * TInt CMyMtmUiData::QueryCapability( TUid aFunctionId, TInt& aResponse ) const
35 * switch ( aFunctionId.iUid )
37 * // MTM supports linked attachments:
38 * case KUidMsvMtmQuerySupportLinks:
43 * // MTM supports service validation:
44 * case KUidMsvMtmQuerySupportValidateService:
49 * // MTM supports editor:
50 * case KUidMsvMtmQuerySupportEditor:
62 #define KUidMsvMtmQuerySupportLinks 0x100059D4 // response true/false
63 #define KUidMsvMtmQuerySupportValidateService 0x10005A11 // response true/false
64 #define KUidMsvMtmQuerySupportEditor 0x101FD692 // response true/false
68 * Function ids for custom MTM commands
70 * For MTM specific command ids use consecutive numbering starting from
71 * KMtmUiFirstFreeMtmSpecificFunction.
75 * Define custom commands in resources:
79 * RESOURCE MTUD_FUNCTION_ARRAY r_my_mtm_function_array
83 * // Settings to be shown in Message Center
86 * functiontext = "My settings";
87 * command = KMtmUiMceSettings;
88 * flags = EMtudCommandTransferSend;
90 * // Settings wizard to be shown in Email Wizard UI
93 * functiontext = "My wizard";
94 * command = KMtmUiFunctionSettingsWizard;
95 * flags = EMtudCommandTransferSend;
103 * Implement functionality in the UI MTM (CBaseMtmUi)
106 * void CMyMtmUi::InvokeSyncFunctionL( TInt aFunctionId,
107 * const CMsvEntrySelection& aSelection,
110 * switch ( aFunctionId )
112 * case KMtmUiFunctionValidateService:
114 * // Validate service
117 * TPckgBuf<TInt> resultPackage( KErrNone );
118 * aParameter.Copy( resultPackage );
121 * case KMtmUiFunctionSettingsWizard:
123 * // Show settings wizard
125 * // Wizard completed successfully
126 * TPckgBuf<TInt> resultPackage( 1 );
127 * aParameter.Copy( resultPackage );
135 * "KMtmUiMceSettings" command is handled in a special way. The MTUD_FUNCTION is only
136 * used for registration purposes. The actual settings dialog is launched by
137 * calling "CBaseMtmUi::EditL" for the service entry of the corresponding MTM.
141 * CMsvOperation* CMyMtmUi::EditL( TRequestStatus& aStatus )
143 * switch ( iBaseMtm.Entry().Entry().iType.iUid )
145 * case KUidMsvServiceEntryValue:
147 * // Open settings dialog
148 * return OpenServiceSettingsDialogOperationL( aStatus );
156 #define KMtmUiMceSettings 0x00203004
157 #define KMtmUiFunctionValidateService 0x00203006
158 #define KMtmUiFunctionSettingsWizard 0x00203013
159 #define KMtmUiFirstFreeMtmSpecificFunction 0x00300000
161 #endif // __EXTENDEDMTMIDS_HRH__