messagingappbase/mcesettings/mcesettingsgsplugin/inc/MceSettingsGSPluginContainer.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/messagingappbase/mcesettings/mcesettingsgsplugin/inc/MceSettingsGSPluginContainer.h Thu Dec 17 08:44:11 2009 +0200
@@ -0,0 +1,154 @@
+/*
+* Copyright (c) 2006-2007 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: Messaging settings plugin container
+*
+*/
+
+
+
+#ifndef MCESETTINGSGSPLUGINGCONTAINER_H
+#define MCESETTINGSGSPLUGINGCONTAINER_H
+
+// INCLUDES
+// System includes
+#include <gsbasecontainer.h> // CGSBaseContainer
+#include <msvapi.h> // TMsvSessionEvent
+
+// FORWARD DECLARATIONS
+class CMceSettingsSessionObserver;
+class CMtmStore;
+class CMceUidNameArray;
+class CMsvSession;
+class CMtmUiDataRegistry;
+class CUidNameArray;
+class CGSBaseContainer;
+
+// CLASS DECLARATION
+
+/**
+* CMceSettingsGSPluginContainer class
+* @since Series60_5.0
+*/
+class CMceSettingsGSPluginContainer :
+ public CGSBaseContainer,
+ public MMsvSessionObserver
+ {
+ public: // Constructors and destructor
+
+ /**
+ * Default C++ constructor
+ */
+ CMceSettingsGSPluginContainer();
+
+ /**
+ * Destructor.
+ */
+ ~CMceSettingsGSPluginContainer();
+
+ private: // Functions from base classes
+
+
+TBool IsSettingsInUse();
+
+ /**
+ * From CGSBaseContainer
+ * See base class.
+ */
+ void ConstructListBoxL( TInt aResLbxId );
+
+ /**
+ * From CGSBaseContainer
+ * See base class.
+ */
+ TKeyResponse OfferKeyEventL(
+ const TKeyEvent& aKeyEvent,
+ TEventCode aType );
+
+ /**
+ * From CCoeControl
+ * See base class.
+ */
+ void GetHelpContext( TCoeHelpContext& aContext ) const;
+
+ public:
+ /**
+ * From MMsvSessionObserver
+ */
+ virtual void HandleSessionEventL(
+ TMsvSessionEvent aEvent,
+ TAny* aArg1,
+ TAny* aArg2,
+ TAny* aArg3);
+
+ public: // new functions
+
+ /**
+ *
+ */
+ void EditSubSettingsL();
+
+
+ private: // Constructor
+
+ /**
+ * Symbian OS constructor.
+ *
+ * @param aRect Listbox's rect.
+ */
+ void ConstructL( const TRect& aRect );
+
+
+ private: // New functions
+ /**
+ *
+ */
+ void UpdateSettingItemsL();
+
+ /**
+ * Loads mtm
+ * @param aMtmType: mtm type
+ * @param aMtmStore: mtm store
+ */
+ void LoadMtmL( const TUid aMtmType, CMtmStore& aMtmStore );
+
+ /**
+ * Changes array order: sms, mms, email, others...
+ */
+ void SortAndChangeSmsMmsEmailFirstL();
+
+ /**
+ * Places given mtm first in the array.
+ * @param aArray: reference to array
+ * @param aMsgType: mtm to changed to the first.
+ */
+ void ChangeMsgTypeTopL( CUidNameArray& aArray, TUid aMsgType ) const;
+
+ /**
+ * Checks CSP Cell Broadcast bit from SIM
+ */
+ TBool CheckCspBitL() const;
+
+ private: // Data
+ CMsvSession* iMsvSession; // not owed by this class.
+ CMceUidNameArray* iMsgTypesSettings;
+ CMceSettingsSessionObserver* iAccountManager;
+ TBool iEmailFramework;
+ TBool iCbs;
+ TBool iDialogOpen; // To verify dialog is already open
+
+ };
+
+#endif // MCESETTINGSGSPLUGINCONTAINER_H
+
+// End of File