--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mobilemessaging/smum/inc/SmumSettingsDialogCDMA.h Thu Dec 17 08:44:11 2009 +0200
@@ -0,0 +1,263 @@
+/*
+* Copyright (c) 2002-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:
+* Main settings dialog for Sms.
+*
+*/
+
+
+
+#ifndef SMUMSETTINGSDIALOGCDMA_H
+#define SMUMSETTINGSDIALOGCDMA_H
+
+// INCLUDES
+#include <SmumSettingsDialog.h> // CSmumSettingsDialog
+#include <bldvariant.hrh>
+#include <CPbkContactEngine.h> // Phonebook Engine
+#include <CPbkContactItem.h> // Phonebook Contact
+#include <RPbkViewResourceFile.h>
+#include <CentralRepository.h>
+#include <MessagingInternalCRKeys.h>
+
+// DATA TYPES
+
+// LBI = ListBoxIndex
+
+enum TSmumMainSmsSettingsSettingLBIndexCDMA
+ {
+ ESmumPriorityLevelLBICDMA = 0,
+ ESmumCallbackNumberLBICDMA = 1,
+ ESmumMessageQueuingLBICDMA = 2,
+ ESmumDeliveryReportLBICDMA = 3
+ };
+
+enum TSmumMainSmsSendingOptSettingLBIndexCDMA
+ {
+ ESmumSendOptPriorityLevelLBICDMA = 0,
+ ESmumSendOptCallbackNumberLBICDMA = 1,
+ ESmumCdmaSendOptDeliveryReportLBICDMA = 2
+ };
+
+enum TSmumSettingsPriorityCDMA
+ {
+ ESmumPriorityNormal = 0,
+ ESmumPriorityUrgent = 1
+ };
+
+enum TSmumCallbackNumberSettingsList
+ {
+ ESmumUseThisPhoneNumber = 0,
+ ESmumAddFromContact = 1,
+ ESmumEnterPhoneNumber = 2,
+ ESmumNoCallbackNumber = 3
+ };
+
+enum TSmumMessageQueuing
+ {
+ ESmumQueuingOn =0,
+ ESmumQueuingOff =1
+ };
+
+// FUNCTION PROTOTYPES
+
+// FORWARD DECLARATIONS
+NONSHARABLE_CLASS(CSmumSettingsArray);
+NONSHARABLE_CLASS(CEikTextListBox);
+NONSHARABLE_CLASS(CAknTitlePane);
+NONSHARABLE_CLASS(CSmsAccount);
+
+// CLASS DECLARATION
+
+/**
+* SMUM's main sms settings dialog.
+*/
+NONSHARABLE_CLASS(CSmumMainSettingsDialogCDMA) : public CSmumMainSettingsDialog
+ {
+ public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor.
+ */
+ static CSmumMainSettingsDialog* NewL(
+ CSmsSettings& aSettings,
+ TInt aTypeOfSettings,
+ TInt& aExitCode,
+ CSmsHeader* aSmsHeader = NULL );
+
+ /**
+ * Destructor.
+ */
+ ~CSmumMainSettingsDialogCDMA();
+
+ protected: // Functions from base classes
+
+ /**
+ * From CAknDialog
+ */
+ void ProcessCommandL(TInt aCommandId);
+
+ /**
+ * From CEikDialog
+ */
+ void PreLayoutDynInitL();
+
+ /**
+ * From CEikDialog
+ */
+ TBool OkToExitL(TInt aButtonId);
+
+ /**
+ * From CEikDialog
+ */
+ void DynInitMenuPaneL(TInt aMenuId, CEikMenuPane* aMenuPane);
+
+ /**
+ * From MEikListBoxObserver
+ */
+ void HandleListBoxEventL(
+ CEikListBox* aListBox,
+ TListBoxEvent aEventType );
+
+ /**
+ * From CAknDialog
+ */
+ TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
+
+ /**
+ * From CCoeControl, returns help context
+ */
+ void GetHelpContext(TCoeHelpContext& aContext) const;
+
+ private: // New functions
+
+ /**
+ * Initializing the values for listboxes in Sms Settings from Sms settings.
+ * @param none
+ * @return nothing
+ */
+ void OpeningDialogL();
+
+ /**
+ * Updating the values from listboxes to Sms settings.
+ * @param none
+ * @return nothing
+ */
+ void ClosingDialogL() const;
+
+ /**
+ * Launch Service Centres dialog.
+ * @param none
+ * @return TInt button id
+ */
+ TInt LaunchServiceCentresDialogL();
+
+ /**
+ * Updating "SC in use" dynamic array.
+ * @param none
+ * @return nothing
+ */
+ void UpdateSCInUseArrayL();
+
+ /**
+ * Check what to open depending the focus of listbox
+ * @param TBool aEnterPressed
+ * @return nothing
+ */
+ void CheckOpeningListBoxItemL(TBool aEnterPressed);
+
+
+ /**
+ * Reads the phone's won number from the NAM
+ * @param TBuf<KSMSCallBackNumberLenght> ownNumber
+ * @return nothing
+ */
+ void ReadOwnNumberL(TDes& aOwnNumber);
+
+ /**
+ * Selects a callback number from the phonebook engine
+ * @param TBuf<KSMSCallbackNumberLength> number
+ * @return nothing
+ */
+ void DoAddressBookDialogL(TDes& aNumber);
+
+
+ /**
+ * Set item to listbox.
+ * @param TInt aSettingLBIndex, TInt aValue
+ * @return nothing
+ */
+ void SetItem(TInt aSettingLBIndex, TInt aValue);// new method
+
+ /**
+ * Get item value from listbox.
+ * @param TInt TInt aSettingLBIndex
+ * @return TInt
+ */
+ TInt Item(TInt aSettingLBIndex) const;// new method
+
+ /**
+ * Launches help application
+ */
+ void LaunchHelpL();
+
+ /*
+ * Checks if message queuing is on
+ * @returns true if queuing is On
+ */
+ TBool IsMsgQueuingOnL();
+
+ /*
+ * Sets Message Queuing On/Off
+ * @param TBool aSetting On/Off setting
+ */
+ void SetMsgQueuingOnL(TBool aSetting) const;
+
+ private :
+
+ /**
+ * C++ default constructor.
+ */
+ CSmumMainSettingsDialogCDMA(
+ CSmsSettings& aSettings,
+ TInt aTypeOfSettings,
+ TInt& aExitCode,
+ CSmsHeader* aSmsHeader = NULL );
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ */
+ void ConstructL();
+
+ private: // Data
+ CSmumSettingsArray* iSettingsArray;
+ CEikTextListBox* iListBox;
+ CSmsSettings& iSettings;
+ TInt iTypeOfSettings; // for knowing the type 0 = sms settings, 1 = send options, 2 = bio
+ TInt& iExitCode;
+ CSmsHeader* iSmsHeader; // for replypath handling
+ CAknTitlePane* iTitlePane; // for handling titlepanes
+ HBufC* iPreviousTitleText; // - " -
+ TBool iLaunchDialog;
+ TBool iHelpFeatureSupported;
+ HBufC* iNoCallbackNumber; // read from loc, to be displayed when there is no callback number set
+ CPbkContactEngine* iPbkEngine;
+ CSmsAccount* iSmsAccount; // For Queuing Settings
+ RPbkViewResourceFile iPhonebookResource;
+ TInt iMaxCallbackLength; // Maximum callback number length
+ TBool iDeliveryAckSupport; // Support for delivery ack
+ };
+
+#endif // SMUMSETTINGSDIALOGCDMA_H
+
+// End of File