meetingrequest/mrmbutilsextension/inc/cmrmbutilssettings.h
branchRCL_3
changeset 12 4ce476e64c59
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/meetingrequest/mrmbutilsextension/inc/cmrmbutilssettings.h	Wed Mar 31 21:08:33 2010 +0300
@@ -0,0 +1,98 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: MBUtils settings definition
+*
+*/
+
+#ifndef C_MRMBUTILSSETTINGS_H
+#define C_MRMBUTILSSETTINGS_H
+
+#include <e32base.h>
+#include <mmrmbutilssettings.h>
+
+class CFSMailClient;
+class MMRMailboxUtilsObserver;
+
+/**
+ * CMRMBUtilsSettings is class accessing CMAIL specific
+ * mailboxutils settins.
+ * 
+ * Settings include:
+ *   - key to S60 MR Enabler framework settings
+ *   - CMAIL mailbox plug-in UID
+ *   - CMAIL mailbox ID
+ *   
+ *   @see MMRMBUtilsSettings
+ */
+NONSHARABLE_CLASS( CMRMBUtilsSettings ) : 
+        public CBase,
+        public MMRMBUtilsSettings
+    {
+public: // Constructors and destructors
+
+    /**
+    * Symbian two-phased constructor.
+    * @param aMailClient Reference to mail client object
+    * @return instantiated object
+    */
+    static CMRMBUtilsSettings* NewL(
+            CFSMailClient& aMailClient );        
+
+    /**
+    * Destructor.
+    */
+    ~CMRMBUtilsSettings();
+
+public: // From MMRMBUtilsSettings
+    void SetDefaultMailboxSettingL( 
+            TInt aId );
+    void GetDefaultMailboxSettingsL( TInt& aId );
+    
+public: // New functions
+
+    /**
+    * Gets the default CMAIL information from central repository.
+    * @param aDefaultMailbox Link to S60 MR framework setting
+    * @param aMailboxPluginUID CMAIL Mailbox plugin ID
+    * @param aMailboxId CMAIL mailbox ID  
+    */
+    TInt GetDefaultCMailMRMailBoxL( 
+            TInt& aDefaultBox,
+            TUid& aMailboxPluginUID,
+            TInt& aMailboxId );
+
+    /**
+    * Sets the default CMAIL information into central repository.
+    * @param aDefaultMailbox Link to S60 MR framework setting
+    * @param aMailboxPluginUID CMAIL Mailbox plugin ID
+    * @param aMailboxId CMAIL mailbox ID  
+    */       
+    TInt SetDefaultCMailMRMailBoxL( 
+            TInt aDefaultBox,
+            TUid aMailboxPluginUID,
+            TInt aMailboxId );
+    
+private: // Constructors and destructors
+    CMRMBUtilsSettings(
+            CFSMailClient& aMailClient );
+    void ConstructL();
+    
+private:
+    /// Ref: Reference to mail client object
+    CFSMailClient& iMailClient;
+    };
+
+#endif // C_MRMBUTILSSETTINGS_H
+
+// EOF