--- a/omads/omadsappui/AspSyncUtil/inc/AspScheduleDialog.h Thu Aug 19 09:41:17 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,686 +0,0 @@
-/*
-* Copyright (c) 2005 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: Scheduled sync UI
-*
-*/
-
-
-
-#ifndef ASPSCHEDULEDIALOG_H
-#define ASPSCHEDULEDIALOG_H
-
-
-// INCLUDES
-
-#include "AspDialogUtil.h"
-
-#include <e32base.h>
-#include <aknlists.h>
-#include <AknDialog.h>
-
-
-// FORWARD DECLARATIONS
-
-class CAspSchedule;
-class CAspProfileWizard;
-
-
-// CLASS DECLARATION
-/**
-* MAuotSyncEditorPageObserver
-*
-* Observer interface function.
-*/
-
-NONSHARABLE_CLASS (MAutoSyncEditorPageObserver)
- {
-
- public:
- /**
- * Editor page call this when editor is about to close.
- * @param aText Editor text.
- * @return ETrue if input is ok, EFalse otherwise.
- */
- virtual TBool CheckValidityL() = 0;
-
- /**
- *Return the index of email item in provider list
- */
- virtual TInt EmailIndex() = 0;
-
- };
-
-
-/**
-* TAutoSyncSettingPageParam
-*
-* This class is used as general parameter type.
-*/
-NONSHARABLE_CLASS (TAutoSyncSettingPageParam)
- {
- public:
- TInt iCommandId;
- TBuf<KBufSize> iPageText;
- MAutoSyncEditorPageObserver* iObserver;
- TInt iSettingType;
- };
-
-
-/**
-* CAspAutoCheckBoxSettingPage
-*
-* Setting page that returns command button id.
-*/
-NONSHARABLE_CLASS (CAutoSyncCheckBoxSettingPage) : public CAknCheckBoxSettingPage,public MEikListBoxObserver
- {
- public:
- CAutoSyncCheckBoxSettingPage(TInt aResourceID, CSelectionItemList* aItemArray, TAutoSyncSettingPageParam& aParam);
-
- ~CAutoSyncCheckBoxSettingPage();
-
- public:
-
- void UpdateCbaL(TInt aResourceId);
- void DynamicInitL();
-
- protected: // From CCoeControl
- void ProcessCommandL(TInt aCommandId);
-
- TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);
- //from MEikListBoxObserver for touch event handling
- void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType);
-
- private:
- TAutoSyncSettingPageParam& iParam;
- TInt iSelectionCount;
- CSelectionItemList* iSelectionItemList;
-
- };
-
-
-
-/**
-* CAspScheduleDialog
-*
-* CAspScheduleDialog is used for editing sync connection data.
-*/
-NONSHARABLE_CLASS (CAspScheduleDialog) : public CAknDialog, public MEikListBoxObserver,
- public MAutoSyncEditorPageObserver
- {
- private:
-
- enum TRepositoryKey
- {
- EKeySyncFrequency = 2,
- EKeyPeakSyncInterval,
- EKeyOffPeakSyncInterval
- };
-
-
- public:
- /**
- * Launches dialog.
- * @param aParam Class that contains dialog parameters.
- * @return Completion code.
- */
- static TBool ShowDialogL(const TAspParam& aParam);
-
- public:// Constructors and destructor
-
- /**
- * Two-phased constructor.
- */
- static CAspScheduleDialog* NewL(const TAspParam& aParam);
-
- /**
- * Destructor.
- */
- virtual ~CAspScheduleDialog();
-
- private:
-
- /**
- * C++ default constructor.
- */
- CAspScheduleDialog(const TAspParam& aParam);
-
- /**
- * By default Symbian OS constructor is private.
- */
- void ConstructL();
-
- private:
- /**
- * From MEikListBoxObserver, called by framework.
- * @param aListBox.
- * @param aEventType.
- * @return None
- */
- void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType);
-
- /**
- * From the base class.
- * Called by framework before the dialog is shown.
- * @param None
- * @return None
- */
- void PreLayoutDynInitL();
-
- /**
- * From the base class.
- * Called by framework before exiting the dialog.
- * @param aButtonId Button id.
- * @return ETrue to exit\ EFalse to not to exit.
- */
- TBool OkToExitL(TInt aButtonId);
-
- /**
- * From the base class.
- * Called by framework for key event handling.
- * @param aKeyEvent.
- * @param aType.
- * @return Return code.
- */
- TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
-
- /**
- * From the base class.
- * Called by framework when dialog is activated.
- * @param None.
- * @return None.
- */
- void ActivateL();
-
- /**
- * Method to get context sensitive help topic.
- * @param aContext Help topic to open.
- * @return None.
- */
- void GetHelpContext(TCoeHelpContext& aContext) const;
-
- /**
- * From the base class.
- * Called by framework before menu is shown.
- * @param aResourceId Menu resource id.
- * @param aMenuPane Pointer to the menu.
- * @return None.
- */
- void DynInitMenuPaneL(TInt aResourceID, CEikMenuPane* aMenuPane);
-
- /**
- * From the base class.
- * Handles menu events.
- * @param aCommandId Command id.
- * @return None.
- */
- void ProcessCommandL(TInt aCommandId);
-
- /**
- * From base class.
- * Called when UI layout changes.
- * @param aType.
- * @return None.
- */
- void HandleResourceChange(TInt aType);
-
- /**
- * From TAutoSyncSettingPageParam
- * Checks validity content selected
- * @param None
- * @return ETrue/EFalse.
- */
-
- TBool CheckValidityL();
-
- TInt EmailIndex();
-
- /**
- * Checks remote databse settings for the profile
- * @param None
- * @return None.
- */
-
- void CheckMandatoryDataL();
-
- /**
- * Checks remote databse settings for the profile
- * @param None
- * @return ETrue/EFalse.
- */
- TBool CheckBearerType();
-
-
-
- private:
- /**
- * Handles setting item editing.
- * @param None.
- * @return None.
- */
- void HandleOKL();
-
- /**
- * Set setting list icons.
- * @param None.
- * @return None.
- */
- void SetIconsL();
-
-
- public: // common editors
-
- /**
- * Shows editor for text type setting.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemTextL(CAspListItemData& aItem);
-
- /**
- * Shows editor for number type setting.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemNumberL(CAspListItemData& aItem);
-
- /**
- * Shows editor for list type setting.
- * @param aItem Setting item data.
- * @return Return code.
- */
- //TBool EditSettingItemListL(CAspListItemData& aItem);
-
- private:
-
- /**
- * Handles setting item editing.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemL(CAspListItemData& aItem);
-
- /**
- * Change Yes/No setting in place without showing editor.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemYesNoL(CAspListItemData& aItem);
-
- /**
- * Shows editor for profile setting.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemProfileL(CAspListItemData& aItem);
-
- /**
- * Shows editor for content setting.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemContentL(CAspListItemData& aItem);
-
- /**
- * Shows setting editor.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemWeekdaysL(CAspListItemData& aItem);
-
- /**
- * Shows setting editor.
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemTimeL(CAspListItemData& aItem);
-
- /**
- * Shows editor for peak schedule selection
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemPeakScheduleL(CAspListItemData& aItem);
-
- /**
- * Shows editor for off-peak schedule selection
- * @param aItem Setting item data.
- * @return Return code.
- */
- TBool EditSettingItemOffPeakScheduleL(CAspListItemData& aItem);
-
- /**
- * Shows editor for sync frequency selection
- * @param aItem Setting item data.
- * @return Return code.
- */
-
- TBool EditSettingItemSyncFrequencyL(CAspListItemData& aItem);
-
-
- private:
-
- /**
- * Checks that all mandatory data is found.
- * @param None.
- * @return Return code.
- */
- TInt CheckMandatoryFields();
-
- /**
- * Saves profile.
- * @param None.
- * @return None.
- */
- void SaveSettingsL();
-
- private:
- /**
- * Create one CNSmlDSProfileData for each setting.
- * @param None.
- * @return None.
- */
- void CreateSettingsListL();
-
- /**
- * Initalizes setting item needed for listbox handling.
- * @param aItem.
- * @return None.
- */
- void InitSettingItemL(CAspListItemData* aItem);
-
- /**
- * Add settings titles into listbox.
- * @param aListBox.
- * @param aItemList List of setting items.
- * @return None.
- */
- void UpdateListBoxL(CEikTextListBox* aListBox, CAspSettingList* aItemList);
-
- /**
- * Adds one setting item into item list.
- * @param aItemId Item id.
- * @param aHeaders Array of item headers.
- * @return None.
- */
- void AddItemL(TInt aItemId, TInt aResourceId);
-
- /**
- * Set setting item visibility (normal/readonly/hidden).
- * @param None.
- * @return None.
- */
- void SetVisibility();
-
- /**
- * Set all settings to read-only state.
- * @param None.
- * @return None.
- */
- void SetAllReadOnly();
-
-
- private:
-
- /**
- * Creates icon.
- * @param aId.
- * @param aFileName.
- * @param aFileIndex.
- * @param aFileMaskIndex.
- * @return Created icon.
- */
- CGulIcon* IconL(TAknsItemID aId, const TDesC& aFileName, TInt aFileIndex, TInt aFileMaskIndex);
-
- /**
- * Returns setting item with listbox position aIndex.
- * @param aIndex Listbox index.
- * @return Pointer to setting item.
- */
- CAspListItemData* GetItemForIndex(TInt aIndex);
-
- /**
- * Returns setting item with id aItemId.
- * @param aItemId Item id.
- * @return Pointer to setting item.
- */
- CAspListItemData* Item(TInt aItemId);
-
- /**
- * Get profile name.
- * @param aProfileId.
- * @param aText.
- * @return None.
- */
- void GetProfileName(TInt& aProfileId, TDes& aText);
-
- /**
- * Get content name.
- * @param aProfileId.
- * @param aText.
- * @return None.
- */
- //void GetContentName(TDes& aText);
-
- /**
- * Get day name.
- * @param aProfileId.
- * @param aText.
- * @return None.
- */
- void GetWeekdayNameL(TDes& aText);
-
- /**
- * Update content list from schedule settings.
- * @param None.
- * @return None.
- */
- //void GetContentSelectionL();
-
- /**
- * Get content list from sync profile.
- * @param aList.
- * @return None.
- */
- //void GetContentSelection2L(CSelectionItemList* aList);
-
- /**
- * Write selected contents into schedule settings.
- * @param None.
- * @return None.
- */
- //void SetContentSelectionL();
-
- /**
- * Construct CSelectionItemList.
- * @param aList.
- * @return None.
- */
- void GetWeekdaySelectionL(CSelectionItemList* aList);
-
- /**
- * Construct CSelectionItemList.
- * @param aList.
- * @return None.
- */
- void SetWeekdaySelectionL(CSelectionItemList* aList);
-
- /**
- * Set default day selection
- * @param None
- * @return None.
- */
- void SetDefaultdaySelectionL();
- /**
- * Construct time text.
- * @param aText.
- * @param aTime.
- * @return None.
- */
- void GetTimeTextL(TDes& aText, TTime aTime);
-
-
- /**
- *Get content name
- * @param aText.
- * @return None.
- */
- void GetContentsNameL(TDes& aText);
-
- /**
- *Get content selection
- * @param aList
- * @return None.
- */
- void GetContentSelectionL(CSelectionItemList* aList);
-
- /**
- *Set content selection
- * @param aList.
- * @return None.
- */
- void SetContentSelectionL(CSelectionItemList* aList);
-
- CDesCArray* GetSyncFrequencyListLC();
- void GetSyncFrequencyValueL(TInt schedule, TDes& aBuf);
- TInt SyncFrequencyL(const TDesC& aBuf);
- TInt GetSyncFrequencyPositionL(CDesCArray* arr, TInt aInterval);
-
- /**
- *Check if the profile has access point selected
- * @param aProfileId
- * @return None.
- */
- void CheckAccessPointSelectionL(TInt aProfileId);
-
- /**
- *Get list of peak schedule intervals
- * @return CDesCArray*
- */
- CDesCArray* GetPeakScheduleListLC();
-
- /**
- *Get list of peak schedule intervals
- * @return CDesCArray*
- */
- CDesCArray* GetOffPeakScheduleListLC();
-
- /**
- *Get time interval string corresponding to a schedule no
- * @return CDesCArray*
- */
- void GetPeakScheduleValueL(TInt schedule, TDes& aBuf);
- void GetOffPeakScheduleValueL(TInt schedule, TDes& aBuf);
-
- /**
- *Get time interval value for the string
- * @return CDesCArray*
- */
- TInt PeakScheduleL(const TDesC& aBuf);
- TInt OffPeakScheduleL(const TDesC& aBuf);
-
- /**
- *Position of selected interval in the list
- * @return CDesCArray*
- */
- TInt GetPeakPositionL(CDesCArray* arr, TInt aInterval);
- TInt GetOffPeakPositionL(CDesCArray* arr, TInt aInterval);
-
- /**
- *Show auto sync info
- * @return CDesCArray*
- */
- void ShowAutoSyncInfoL();
-
- /**
- *Set default content selection
- *
- */
- void SetDefaultContentL();
-
- /**
- *Read cenrep for operator configured sync interval values
- *
- */
- void ReadRepositoryL(TInt aKey, TInt& aValue);
-
- /**
- *Create content list
- *
- */
- void CreateContentListL();
-
- /**
- *Check if time definition is valid.
- *
- */
- TBool CheckPeakTime();
-
- private:
- // setting list
- CAknSettingStyleListBox* iSettingListBox;
-
- // list of setting items
- CAspSettingList *iSettingList;
-
- // list that contains all contents (applications)
- CAspContentList* iContentList;
-
- // sync session
- RSyncMLSession* iSyncSession;
-
- // for title and icon handling
- CStatusPaneHandler* iStatusPaneHandler;
-
- // resource handler
- CAspResHandler* iResHandler;
-
- // dialog edit mode
- TInt iEditMode;
-
- // long buffer for string handling
- TBuf<KBufSize255> iBuf;
-
- // list that contains all profiles
- CAspProfileList* iProfileList;
-
- // for storing auto sync settings
- CAspSchedule* iSchedule;
-
- // profile data
- CAspProfile* iProfile;
-
- // id of the calling application
- TInt iApplicationId;
-
- // weekday names
- CDesCArray* iWeekdayList;
-
- // have settings changed
- TBool iSettingChanged;
-
- // Content names
- CDesCArray* iContentsList;
-
- TBool iDoCleanUp;
-
- // is setting database in read only state
- TBool iSettingEnforcement;
-
-
- };
-
-
-#endif // ASPSCHEDULEDIALOG_H
-
-// End of File