diff -r 75a71fdb4c92 -r 7d11f9a6646f omadm/omadmappui/inc/NSmlDMDlgProfileView.h --- a/omadm/omadmappui/inc/NSmlDMDlgProfileView.h Tue Feb 02 00:03:17 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,508 +0,0 @@ -/* -* Copyright (c) 2005-2006 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: Header file for Server Profile settings dialog -* -*/ - - -#ifndef NSMLDMDLGPROFILEVIEW_H -#define NSMLDMDLGPROFILEVIEW_H - -// INCLUDES - -#include //CAknDialog -#include //MEikListBoxObserver -#include -#include "NSmlDMdef.h" - -// FORWARD DECLARATIONS -class CNSmlDMSyncDocument; -class CEikListBox; -class CEikTextListBox; -class CAknSettingStyleListBox; -class CAknNavigationDecorator; -class CAknTabGroup; -class CNSmlDMSyncAppUi; -class CNSmlDMSyncProfile; -class CNSmlDMSyncAppEngine; -class CNSmlDMProfileData; -class CAknNavigationControlContainer; - -typedef CArrayPtr CNSmlDMSettingItemList; - -// CLASS DECLARATION -/** -* CNSmlDMDlgProfileView -* -* PRofile view -*/ -NONSHARABLE_CLASS (CNSmlDMDlgProfileView) : public CAknDialog, - public MEikListBoxObserver - { - public: - enum TNSmlProfile - { - ENSmlProfileName = 0, - ENSmlServerId, - ENSmlProfileDMServerPassword, - ENSmlConnType, - ENSmlAccessPoint, - ENSmlProfileURL, - ENSmlProfilePort, - ENSmlUsername, - ENSmlPassword, - ENSmlServerAlertAllowed, - ENSmlServerAccept, - ENSmlHttpsUsed, - ENSmlHttpsUsername, - ENSmlHttpsPassword - }; - - public:// Constructors and destructor - /** - * Two-phased constructor. - * @param aDoc - pointer to document instance - * @param aMode - edit, new or copy profile mode - * @param aProfileId - profile id - */ - static CNSmlDMDlgProfileView* NewL( CNSmlDMSyncDocument* aDoc, - TNSmlEditMode aMode, - TInt aProfileId ); - - /** - * Destructor - */ - virtual ~CNSmlDMDlgProfileView(); - - private: - - /** - * C++ default constructor. - * @param aDoc - pointer to document instance - * @param aMode - edit, new or copy profile mode - * @param aProfileId - profile id - * @return None. - */ - CNSmlDMDlgProfileView( CNSmlDMSyncDocument* aDoc, - TNSmlEditMode aMode, - TInt aProfileId ); - - public: - /** - * From the base class - * @param aKeyEvent - * @param aType - * @return - - */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, - TEventCode aType ); - - /** - * From base class - * @param CDesCArray* aArray - array of the contacts - * items on the smlcontact - * @return - - */ - virtual void ProcessCommandL( TInt aCommandId ); - - /** - * Called before menu is shown - * @param TInt aResourceId Menu resource id - * @param CEikMenuPane* aMenuPane Pointer to the menu - * @return - - */ - void DynInitMenuPaneL( TInt aResourceID, CEikMenuPane* aMenuPane ); - - /** - * Handle selection key presses - * @param - - * @return - - */ - void HandleOKL(); - - /** - * Add setting items to listbox - * @param aListBox - pointer to listbox - * @param aItemList - pointer to setting item array - * @return - - */ - void AddProfileListItemL( CEikTextListBox* aListBox, - CNSmlDMSettingItemList* aItemList ); - - /** - * Loads setting dialog title from resource - * @param - - * @return - - */ - void SetSettingTitleL(); - - /** - * Checks the type of the setting item - * @param CNSmlDMProfileData& aItem - reference to setting item - * @return ETrue if changed, EFalse otherwise - */ - TBool PrepareToEditSettingItemL( CNSmlDMProfileData& aItem ); - - /** - * Exit application when selected from Options menu - * @param - - * @return - - */ - void DoExitFromMenuL(); - - /** - * Return pointer to CNSmlDMSyncDocument - * @param - - * @return CNSmlDMSyncDocument* - */ - CNSmlDMSyncDocument* Document() const { return iDoc; } - - /** - * Method to get context sensitive help topic - * @param TCoeHelpContext& aContext - Help topic to open - * @return - - */ - void GetHelpContext( TCoeHelpContext& aContext ) const; - - private: - - /** - * From CEikDialog OkToExitL( TInt aButtonId ); - * Called by framework before exiting the dialog - * @param TInt aButtonId - id of the pressed button - * @return TBool (ETrue to exit\ EFalse to not to exit yet - */ - TBool OkToExitL( TInt aButtonId ); - - /** - * From CEikDialog PreLayoutDynInitL() - * Called by framework before the dialog is shown - * @param - - * @return - - */ - void PreLayoutDynInitL(); - - /** - * HandleListBoxEventL MEikListBoxObserver - * @param aListBox Pointer to used listbox - * @param aEventType Event type - * @return - - */ - void HandleListBoxEventL( CEikListBox* aListBox, - TListBoxEvent aEventType ); - - /** - * Build list items - * @param - - * @return - - */ - void CreateProfileSettingsListL(); - - /** - * Launch access point dialog - * @param aItem Profile item - * @return Boolean - */ - TBool EditSettingItemAccessPointL( CNSmlDMProfileData& aItem ); - - /** - * Check access point - * @param TUint aId - id of the access point - * @return - - */ - void SetAccessPointInfoL( TUint aId ); - - /** - * Get access point info - * @param TUint aId - id of the access point - * @return - - */ - void GetAccessPointInfoL( TInt aId ); - - /** - * Handle text type setting items - * @param aItem - reference to setting item - * @return ETrue if changed, EFalse otherwise - */ - TBool EditSettingItemTextL( CNSmlDMProfileData& aItem ); - - /** - * Handle password type setting items - * @param aItem - reference to setting item - * @return ETrue if changed, EFalse otherwise - */ - TBool EditSettingItemSecretL(CNSmlDMProfileData& aItem); - - /** - * Handle number type setting items - * @param aItem - reference to setting item - * @return ETrue if changed, EFalse otherwise - */ - TBool EditSettingItemNumberL(CNSmlDMProfileData& aItem); - - /** - * Handle list type setting items - * @param aItem - reference to setting item - * @return ETrue if changed, EFalse otherwise - */ - TBool EditSettingItemListL(CNSmlDMProfileData& aItem); - - /** - * Handle boolean type setting items - * @param aItem - reference to setting item - * @return ETrue to refresh list - */ - TBool EditSettingItemListYesNoL(CNSmlDMProfileData& aItem); - - /** - * Handle boolean type setting items - * @param aItem - reference to setting item - * @return ETrue to refresh list - */ - TBool EditHttpSettingItemListYesNoL(CNSmlDMProfileData& aItem); - - /** - * Saves profile - * @param - - * @return - - */ - void SaveProfileL(); - - /** - * Sets default values for new profile - * @param - - * @return - - */ - void FillProfileWithDefaultsL(); - - /** - * Check that mandatory fields are filled correctly - * @param - - * @return Index of the invalid setting item, -1 if ok. - */ - TInt CheckMandatoryFieldsL(); - - /** - * Check that mandatory fields are filled correctly - * @param - - * @return Index of the invalid setting item, -1 if ok. - */ - TInt CheckUniqueFieldsL(); - - /** - * Launch Confirmation note - * @param aResource - resource id - * @return ETrue if accepted, otherwise EFalse - */ - TBool ShowConfirmationNoteL(TInt aResource); - - /** - * Is edited profile just edited - * @param - - * @return ETrue if Edit mode - */ - inline TBool EditMode() { return iEditMode == ESmlEditProfile; } - - /** - * Is edited profile copied - * @param - - * @return ETrue if Copy profile - */ - inline TBool CopyMode() { return iEditMode == ESmlCopyProfile; } - - /** - * Show confirmation note to user before editing setting item - * @param - - * @return - return prompt id if warning needed, 0 otherwise - */ - TInt WarnUserOfChangeL(); - - /** - * Get item for current index - * @param aIndex index of item - * @return ProfileData from item list - */ - CNSmlDMProfileData* Item( TInt aItemId ); - - /** - * Get item for current index - * @param aIndex index of item - * @return ProfileData from item list - */ - CNSmlDMProfileData* IndexItem( TInt aItemId ); - - /** - * Get item for current index - * @param aIndex index of item - * @return ProfileData from item list - */ - CNSmlDMProfileData* GetItemForIndex( TInt aIndex ); - - /** - * Utility function - * @param aHeaders - * @return None - */ - void BuildHeaders( CDesCArray* aHeaders ); - - /** - * Utility function - * @param None - * @return None - */ - void BuildItemIds(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileNameItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileServerIdItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileServerPasswordItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileConnectionTypeItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileAccessPointItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileUrlItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfilePortItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileUserNameandPassWordItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileActiveAcceptedItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileHttpsUsedItemL(); - - /** - * Utility function - * @param None - * @return None - */ - void BuildProfileHttpsUserNameAndPasswordItemL(); - - /** - * Handle connection setting item selection - * @param aItem - reference to setting item - * @return boolean to refresh list - */ - TBool EditConnectionSettingItemL(CNSmlDMProfileData& aItem ); - - private: - // Non owned data members - CNSmlDMSyncAppEngine* iSyncAppEngine; - CNSmlDMSyncDocument* iDoc; - CNSmlDMSettingItemList* iProfileList; - CNSmlDMSyncProfile* iProfile; - CAknSettingStyleListBox* iProfileListBox; - CAknNavigationDecorator* iNaviDecorator; - CAknTabGroup* iTabGroup; - TNSmlEditMode iEditMode; - TInt iProfileId; - TInt iOldProfileId; - TBool iServerIdChanged; - TBuf iBuf; - CAknNavigationControlContainer* iNaviPane; - TInt iResourceOffset; - TInt iConnUtilResourceOffset; - }; - -// CLASS DECLARATION -/** -* CNSmlDMTextEditor -* -* For Handling Enter keys in Editors -*/ - -NONSHARABLE_CLASS (CNSmlDMTextEditor) : public CAknTextSettingPage - { - public: - - /** - * Constructor - * @param resource id - * @param text - * @param flag - */ - CNSmlDMTextEditor(TInt aResourceID,TDes& aText,TInt aTextSettingPageFlags); - - /** - * Destructor - */ - ~CNSmlDMTextEditor(); - - /** - * From the base class - * @param aKeyEvent - * @param aType - * @return -Key response - */ - - TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType); - }; - - - - -#endif //NSMLDMDLGPROFILEVIEW_H - -// End of File