omads/omadsappui/AspSyncUtil/src/AspSettingDialog.cpp
branchRCL_3
changeset 24 8e7494275d3a
parent 23 2bb96f4ecad8
child 25 4f0867e42d62
--- a/omads/omadsappui/AspSyncUtil/src/AspSettingDialog.cpp	Thu Aug 19 09:41:17 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2949 +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:  
-*
-*/
-
-
-// INCLUDE FILES
-#include <AknIconArray.h>   // for GulArray
-#include <aknconsts.h>      // for KAvkonBitmapFile
-
-#include "AspSettingDialog.h"
-#include "AspProfileDialog.h"
-#include "AspScheduleDialog.h"
-#include "AspSchedule.h"
-#include "AspDialogUtil.h"
-#include "AspLogDialog.h"
-#include "AspUtil.h"
-#include "AspProfileWizardDialog.h"
-#include "AspDebug.h"
-#include "AspSyncUtil.rh"
-#include "AspAdvanceSettingsDialog.h"
-
-#include <aknsettingitemlist.h>
-
-#include <csxhelp/ds.hlp.hrh>  // for help text ids
-
-#ifndef RD_DSUI_TIMEDSYNC 
-#include <avkon.mbg>
-#else
-#include "AspSettingViewDialog.h"
-#endif
-#include <DataSyncInternalPSKeys.h>
-#include "AspAutoSyncHandler.h"
-#include <featmgr.h>   // FeatureManager
-
-const TInt KMSKControlId( CEikButtonGroupContainer::EMiddleSoftkeyPosition );
-
-
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-
-
-
-/******************************************************************************
- * class CAspSettingDialog
- ******************************************************************************/
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowDialogL
-// 
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::ShowDialogL(TAspParam& aParam)
-	{
-    CAspSettingDialog* dialog = CAspSettingDialog::NewL(aParam);
-
-	TBool ret = dialog->ExecuteLD(R_ASP_SETTING_DIALOG);
-
-	return ret;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::NewL
-//
-// -----------------------------------------------------------------------------
-//
-CAspSettingDialog* CAspSettingDialog::NewL(TAspParam& aParam)
-    {
-    FLOG( _L("CAspSettingDialog::NewL START") );
-
-    CAspSettingDialog* self = new (ELeave) CAspSettingDialog(aParam);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-
-    FLOG( _L("CAspSettingDialog::NewL END") );
-    return self;
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CAspSettingDialog
-// 
-// -----------------------------------------------------------------------------
-//
-CAspSettingDialog::CAspSettingDialog(TAspParam& aParam) 
-    {
-	iApplicationId = aParam.iApplicationId;
-	iSyncSession = aParam.iSyncSession;
-	iDialogMode = aParam.iMode;
-	
-	iCurrentProfileId = KErrNotFound;
-	iCurrentProfileName = KNullDesC;
-	
-	__ASSERT_ALWAYS(iSyncSession, TUtil::Panic(KErrGeneral));
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ConstructL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ConstructL()
-    {
-    FLOG( _L("CAspSettingDialog::ConstructL START") );
-
-    CAknDialog::ConstructL(R_ASP_SETTING_DIALOG_MENU);
-    
-    iSettingEnforcement = TUtil::SettingEnforcementState();
-
-	TAspParam param(iApplicationId, iSyncSession);
-	iProfileList = CAspProfileList::NewL(param);
-	iProfileList->ReadAllProfilesL(CAspProfileList::ENoMandatoryCheck);
-	iProfileList->Sort();
-	
-    param.iMode = CAspContentList::EInitDataProviders;
-	iContentList = CAspContentList::NewL(param);
-	
-	// get previous title so it can be restored
-	iStatusPaneHandler = CStatusPaneHandler::NewL(iAvkonAppUi);
-	iStatusPaneHandler->StoreOriginalTitleL();
-	
-	iAutoSyncDialog = EFalse;
-	
-#ifdef RD_DSUI_TIMEDSYNC 
-
-    iTabHandler = new (ELeave) CAspTabbedNaviPaneHandler(iAvkonAppUi->StatusPane() ,this);
-	iUpdateTabGroup = ETrue;
-
-#else
-	// store current navi pane
-	iStatusPaneHandler->StoreNavipaneL();
-	
-#endif
-	
-	
-
-	iResHandler = CAspResHandler::NewL();
-
-	// start listening sync database events
-	iDbNotifier = CAspDbNotifier::NewL(param, this);
-	iDbNotifier->RequestL();
-	
-	iPopupNote = CAknInfoPopupNoteController::NewL();
-    iBearerHandler = CAspBearerHandler::NewL(param);
-
-	SetCurrentProfileL();
-	
-	FLOG( _L("CAspSettingDialog::ConstructL END") );
-    } 
-
-
-// -----------------------------------------------------------------------------
-// Destructor
-//
-// -----------------------------------------------------------------------------
-//
-CAspSettingDialog::~CAspSettingDialog()
-    {
-    FLOG( _L("CAspSettingDialog::~CAspSettingDialog START") );
-
-	delete iProfileList;
-	delete iContentList;
-	
-	delete iStatusPaneHandler;
-	delete iResHandler;
-	
-	delete iDbNotifier;
-	iDbNotifier = NULL;
-	
-	delete iSyncHandler;   // created when sync is started
-	
-	if (iAvkonAppUi)
-		{
-		iAvkonAppUi->RemoveFromStack(this);
-		}
-
-	if (iPopupNote)
-		{
-    	iPopupNote->HideInfoPopupNote();
-	    delete iPopupNote;
-		}
-
-	delete iBearerHandler;
-
-#ifdef RD_DSUI_TIMEDSYNC
-
-	delete iTabHandler;
-#endif
-
-	FLOG( _L("CAspSettingDialog::~CAspSettingDialog END") );
-    }
-
-
-//------------------------------------------------------------------------------
-// CAspSettingDialog::ActivateL (from CCoeControl)
-//
-// Called by system when dialog is activated
-//------------------------------------------------------------------------------
-//
-void CAspSettingDialog::ActivateL()
-	{
-    CAknDialog::ActivateL();
-
-	// this cannot be in ConstructL which is executed before dialog is launched
-	iAvkonAppUi->AddToStackL(this);
-    }
-
-
-//------------------------------------------------------------------------------
-// CAspSettingDialog::GetHelpContext
-//
-//
-//------------------------------------------------------------------------------
-//
-void CAspSettingDialog::GetHelpContext(TCoeHelpContext& aContext) const
-	{
-	aContext.iMajor = KUidSmlSyncApp;
-	aContext.iContext = KDS_HLP_MAIN_VIEW;    
-	}
-
-
-//------------------------------------------------------------------------------
-// CAspSettingDialog::ProcessCommandL
-//
-// Handle commands from menu.
-//------------------------------------------------------------------------------
-//
-void CAspSettingDialog::ProcessCommandL(TInt aCommandId)
-	{
-	TInt err = KErrNone;
-
-    // prevent db notifications while processing menu command
-	//Notifier()->SetDisabled(ETrue);
-	TRAP(err, DoProcessCommandL(aCommandId));
-	//Notifier()->SetDisabled(EFalse);
-	
-	if (err != KErrNone)
-		{
-		iDbNotifier->CheckUpdateEventL();
-		FLOG( _L("### CAspSettingDialog::ProcessCommandL failed (%d) ###"), err );
-		User::Leave(err);
-		}
-	}
-
-
-//------------------------------------------------------------------------------
-// CAspSettingDialog::DoProcessCommandL
-//
-// Handle commands from menu.
-//------------------------------------------------------------------------------
-//
-void CAspSettingDialog::DoProcessCommandL(TInt aCommandId)
-	{
-	HideMenu();
-
-	switch (aCommandId)
-		{
-        case EAspMenuCmdSync:
-			{
-			SyncProfileL();
-			break;
-			}
-		case EAspMenuCmdCopyFromServer:
-			{
-			CopyFromServerL();
-			break;
-			}
-        case EAspMenuCmdChangeProfile:
-			{
-			ChangeProfileL();
-			break;
-			}
-        case EAspMenuCmdEdit:
-			{
-			EditProfileL(EDialogModeEdit ,KErrNotFound);
-			break;
-			}
-        case EAspMenuCmdNewSet:
-			{
-			CreateProfileL();
-			break;
-			}
-		case EAspMenuCmdDelete:
-			{
-			DeleteProfileL();
-	   		break;
-			}
-		case EAspMenuCmdViewLog:
-			{
-			ShowLogDialogL();
-			break;
-			}
-		case EAspMenuCmdAutoSync:
-			{
-			ShowAutoSyncDialogL();
-			break;
-			}
-		case EAspMenuCmdAdvanceSettings:
-		    {
-		    //CAspAdvanceSettingsDialog* dialog = CAspAdvanceSettingsDialog::NewL();
-		    //CleanupStack::PushL(dialog);
-		        
-		    CAspAdvanceSettingsDialog::ShowDialogL();
-		        
-		    //CleanupStack::PopAndDestroy(dialog);
-
-		    //ShowContextMenuL(R_ASP_ROAMING_SETTINGS_CONTEXT_MENU);
-		    break;
-		    }
-        case EAspMenuCmdRoamingSettings:
-            {
-            ShowContextMenuL(R_ASP_ROAMING_SETTINGS_CONTEXT_MENU);
-            break;
-            }		
-
-		case EAspMenuCmdMark:
-		case EAspMenuCmdUnmark:
-			{
-			SaveSelectionL();
-			break;	
-			}
-    case EAknCmdHelp:
-			{
-            TUtil::LaunchHelpAppL(iEikonEnv);
-			break;
-		  }
-
-        case EAspMenuCmdExit:
-        case EAknCmdExit:
-        case EEikCmdExit:
-			{
-   		
-            //
-			// Exit dialog
-			//
-			// CEikAppUi::ProcessCommandL starts CAknAppShutter that 
-			// closes all dialogs and finally calling application. Before 
-			// dialog is closed (deleted) it's OkToExitL(EEikBidCancel)
-			// is called. EEikBidCancel means OkToExitL must silently
-			// save and return ETrue.
-			//
-			iAvkonAppUi->ProcessCommandL(EAknCmdExit);
-
-			break;
-			}
-
-		default:
-			{
-			break;
-			}
-		}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::OkToExitL
-//
-// Called by framework before dialog is closed.
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::OkToExitL(TInt aButtonId)
-    {
-    
-	// Options/Exit, End key, Close key ('c')
-	if (aButtonId == EEikBidCancel)
-		{
-		// framework calls this when dialog must shut down
-    	return ETrue;
-		}
-
-	// Back key (cba)
-	if (aButtonId == EAknSoftkeyBack)
-        {
-        if( iAutoSyncDialog )
-            {
-            return EFalse;
-            }
-        else
-            {
-            return ETrue;
-            }
-		}
-
-    // Exit key (cba)
-	if (aButtonId == EAknSoftkeyExit)
-        {
-        if (iDialogMode == EModeDialogNoWait && iApplicationId == EApplicationIdSync)
-        	{
-            //  close sync app
-        	iAvkonAppUi->ProcessCommandL(EAknCmdExit);
-        	}
-
-        return ETrue;
-		}
-		
-	if (aButtonId == EAknSoftkeyMark || aButtonId == EAknSoftkeyUnmark 
-		|| aButtonId == EAknSoftkeyOpen)  // MSK
-        {
-
-		if (iProfileList->Count() == 0)
-			{
-			return EFalse;
-			}
-        
-        if (IsProfileLockedL(iCurrentProfileId))
-        	{
-        	TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-			CancelCheckboxEvent();
-			return EFalse;
-			}
-        
-        if (iSettingEnforcement)
-			{
-			TDialogUtil::ShowInformationNoteL(R_ASP_PROTECTED_SETTING);
-			return EFalse;  // leave dialog open;
-			}
-        
-        if (!CheckEmailSelection())
-        	{
-        	return EFalse;  // leave dialog open;
-        	}
-				
-		TInt ret =  SaveCurrentProfile();
-		if (ret != KErrNone)
-			{
-			CancelCheckboxEvent();
-			}
-			
-		return EFalse;  // leave dialog open
-		}
-		
-
-	return CAknDialog::OkToExitL(aButtonId);
-    }
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::CancelMailBoxForEnterL
-// 
-// ----------------------------------------------------------------------------
-//
-
-void CAspSettingDialog::CancelMailBoxForEnterL()
-{
-	CListBoxView* view = iSettingListBox->View();
-	
-    TInt index = view->CurrentItemIndex();
-    TAspProviderItem& item = iContentList->ProviderItem(index);
-    TBool selected = view->ItemIsSelected(index);
-    
-    if(selected)
-    {
-        view->DeselectItem(index);
-    }
-    else
-    {
-    	view->SelectItemL(index);
-    }   
-    
-}
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::OfferKeyEventL
-// 
-// ----------------------------------------------------------------------------
-//
-TKeyResponse CAspSettingDialog::OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType)
-	{
-	if (aType == EEventKey)
-		{
-		switch (aKeyEvent.iCode)
-			{
-			//case EKeyOK:
-			//	{
-			//	ShowContextMenuL(R_ASP_SETTING_DIALOG_CONTEXT_MENU);
-			//	return EKeyWasConsumed;
-			//	}
-			case EKeyEnter:
-			{
-                   CancelMailBoxForEnterL();
-                   OkToExitL(EAknSoftkeyOpen);
-                   return EKeyWasConsumed;
-			}
-
-			case EKeyEscape:  // framework calls this when dialog must shut
-				{
-				return CAknDialog::OfferKeyEventL(aKeyEvent, aType);
-        		}
-        		
-			//case EStdKeyHome:
-			//	{
-			//	DeleteSelectedProfileL();
-			//	return EKeyWasConsumed;
-			//	}
-
-#ifdef RD_DSUI_TIMEDSYNC 
-
-			case EKeyLeftArrow:
-				{
-				SetPreviousProfileL();
-				return EKeyWasConsumed;
-				}
-
-			case EKeyRightArrow:
-				{
-				SetNextProfileL();
-				return EKeyWasConsumed;
-				}
-
-#endif
-            default:
-			    break;
-			}
-		}
-
-	return CAknDialog::OfferKeyEventL( aKeyEvent, aType);
-	}
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::HandleResourceChange
-// 
-// ----------------------------------------------------------------------------
-//
-
-void CAspSettingDialog::HandleResourceChange(TInt aType)
-    {   
-    if (aType == KEikDynamicLayoutVariantSwitch) //Handle change in layout orientation
-        {
-        TRect mainPaneRect;
-        AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, mainPaneRect);
-        SetRect(mainPaneRect);
-        iSettingListBox->SetSize(mainPaneRect.Size());
-        CCoeControl::HandleResourceChange(aType);
-		DrawDeferred();
-	    return;
-		}
-		
-    if (aType == KAknsMessageSkinChange)
-        {
-        TRAP_IGNORE(SetIconsL());
-        }
-        
-    CCoeControl::HandleResourceChange(aType);
-    }
-
-/*
-void CAspSettingDialog::HandleResourceChange(TInt aType)
-    {   
-    if (aType == KEikDynamicLayoutVariantSwitch) //Handle change in layout orientation
-        {
-  
-        TRect mainPaneRect;
-        AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, mainPaneRect);
-        TBuf<299> buf;
-        buf.Format(_L("(%d,%d) (%d,%d)"), mainPaneRect.iTl.iX, mainPaneRect.iTl.iY, mainPaneRect.iBr.iX, mainPaneRect.iBr.iY);
-
-        SetRect(mainPaneRect);
-        iSettingListBox->HandleResourceChange(aType);
-		DrawNow();
-  
-        
-        CAknDialog::HandleResourceChange(aType);
-        
-        TRect mainPaneRect;
-        AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, mainPaneRect);
-        SetRect(mainPaneRect);
-        
-        iSettingListBox->SetSize(mainPaneRect.Size());
-        //iSettingListBox->HandleResourceChange(aType);
-        CCoeControl::HandleResourceChange(aType);
-		DrawDeferred();
-		
-		
-	    return;
-		}
-		
-    if (aType == KAknsMessageSkinChange)
-        {
-        TRAP_IGNORE(SetIconsL());
-        }
-        
-    CCoeControl::HandleResourceChange(aType);
-    }
-*/
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::SetIconsL
-//
-// ----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetIconsL()
-    {
-    if (!iSettingListBox)
-    	{
-    	return;
-    	}
- 
- 	TFileName bitmapName;
-	CAspResHandler::GetBitmapFileName(bitmapName);
-	CArrayPtr<CGulIcon>* icons = new (ELeave) CAknIconArray(KDefaultArraySize);
-	CleanupStack::PushL(icons);
-	
-	// NOTE: icons must be appended in correct order (TAspSettingDialogIconIndex)
-	icons->AppendL(IconL(KAknsIIDQgnPropCheckboxOn, KAvkonBitmapFile, 
-	                     EMbmAvkonQgn_prop_checkbox_on,
-	                     EMbmAvkonQgn_prop_checkbox_on_mask));
-	                     
-	icons->AppendL(IconL(KAknsIIDQgnPropCheckboxOff, KAvkonBitmapFile,
-	                     EMbmAvkonQgn_prop_checkbox_off,
-	                     EMbmAvkonQgn_prop_checkbox_off_mask));
-	
-    // delete old icons
-    CArrayPtr<CGulIcon>* arr = iSettingListBox->ItemDrawer()->FormattedCellData()->IconArray();
-    if (arr)
-    	{
-    	arr->ResetAndDestroy();
-	    delete arr;
-	    arr = NULL;
-    	}
-
-	iSettingListBox->ItemDrawer()->FormattedCellData()->SetIconArrayL(icons);
-	CleanupStack::Pop(icons);
-    }
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::ShowContextMenuL
-// 
-// ----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowContextMenuL(TInt aResource)
-	{
-	if (SyncRunning())
-		{
-		return;
-		}
-	
-	//
-	// Switch to Context specific options menu,
-	// Show it and switch back to main options menu.
-	// 
-	CEikMenuBar* menuBar = iMenuBar; // from CAknDialog
-	menuBar->SetMenuTitleResourceId(aResource);
-
-
-	// TRAP displaying of menu bar.
-	// If it fails, the correct resource is set back before leave.
-	TRAPD(err, menuBar->TryDisplayMenuBarL());
-	
-	menuBar->SetMenuTitleResourceId(R_ASP_SETTING_DIALOG_MENU);
-		
-	User::LeaveIfError(err);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::PostLayoutDynInitL
-//
-// Called by framework after dialog is shown.
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::PostLayoutDynInitL()
-	{
-	#ifdef RD_DSUI_TIMEDSYNC
-	ShowAutoSyncProfileInfo();
-	#else
-  ShowCurrentProfileInfo();
-  #endif
-	}
-	
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::PreLayoutDynInitL
-//
-// Called by framework before dialog is shown.
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::PreLayoutDynInitL()
-    {
-    iSettingListBox = (CAknDoubleLargeStyleListBox*) ControlOrNull (EAspSettingDialogList);
-    
-   	__ASSERT_ALWAYS(iSettingListBox, TUtil::Panic(KErrGeneral));
-	
-	iSettingListBox->SetListBoxObserver(this);
-	iSettingListBox->CreateScrollBarFrameL(ETrue);
-	iSettingListBox->ScrollBarFrame()->SetScrollBarVisibilityL(
-	                 CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto);
-	
-	SetIconsL();
-	UpdateListBoxL();
-
-#ifdef RD_DSUI_TIMEDSYNC 
-
-	UpdateTabsL();
-#else
-
-	UpdateNavipaneL(iCurrentProfileName);
-#endif
-
-	
-	iSettingListBox->UpdateScrollBarsL();
-	iSettingListBox->ScrollBarFrame()->MoveVertThumbTo(0);
-
-	iStatusPaneHandler->SetTitleL(R_ASP_SETTING_DIALOG_TITLE);
-
-	SetCurrentIndex();
-//#ifdef RD_DSUI_CP_INTEGRATION
-	TBool flag = CEikonEnv::Static()->StartedAsServerApp() ;
-	if (flag || iApplicationId != EApplicationIdSync)
-/*#else
-	if (iApplicationId != EApplicationIdSync)
-#endif */
-		{
-		UpdateCbaL(R_ASP_CBA_OPTIONS_BACK_MARK);
-		}
-		
-	if(iSettingEnforcement)
-	{
-		UpdateMiddleSoftKeyLabelL(EAknSoftkeyOpen,R_TEXT_SOFTKEY_EMPTY);	
-   	}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DynInitMenuPaneL
-//
-// Called by framework before menu is shown.
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DynInitMenuPaneL(TInt aResourceID, 	CEikMenuPane* aMenuPane)
-	{
-	TInt menu1 = R_ASP_SETTING_DIALOG_MENU_PANE;
-	TInt menu2 = R_ASP_SETTING_DIALOG_CONTEXT_MENU_PANE;
-	
-    if (aResourceID != menu1 && aResourceID != menu2)
-		{
-		return; // not one of our menus
-		}
-
-	if (aResourceID == R_ASP_SETTING_DIALOG_CONTEXT_MENU_PANE)
-		{
-		InitContextMenuL(aMenuPane); // separate handling for context menu
-		}
-	else
-		{
-		InitOptionsMenuL(aMenuPane);
-		}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::InitContextMenuL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::InitContextMenuL(CEikMenuPane* /*aMenuPane*/)
-	{
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::InitOptionsMenuL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::InitOptionsMenuL(CEikMenuPane* aMenuPane)
-	{
-	TInt profileCount = iProfileList->Count();
-	TInt providerCount = iContentList->ProviderCount();
-	TInt deletableProfileCount = iProfileList->DeletableProfileCount();
-	
-	if (providerCount == 0)  // no data providers
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdSync);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdNewSet);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdEdit);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdChangeProfile);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdDelete);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdAutoSync);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdViewLog);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdCopyFromServer);
-		return;
-    	}
-	
-	
-	// Options/Sync
-	// Options/Copy all from server
-	if (iCurrentProfileId == KErrNotFound && profileCount > 0)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdSync);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdCopyFromServer);
-		}
-	if (iSettingEnforcement && profileCount == 0)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdSync);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdCopyFromServer);
-		}
-
-	if (iCurrentProfileId == KErrNotFound)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdCopyFromServer);
-		}
-
-	// Options/Change
-	if (profileCount == 0)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdChangeProfile);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdMark);
-	    TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdUnmark);	 
-		}
-	if (profileCount == 1 && iCurrentProfileId != KErrNotFound)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdChangeProfile);
-		}
-	
-	// Options/Edit
-	if (iCurrentProfileId == KErrNotFound)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdEdit);
-		}
-	
-	// Options/Auto sync
-	if (iCurrentProfileId == KErrNotFound)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdAutoSync);
-		}
-
-	// Options/New
-	if (iSettingEnforcement)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdNewSet);
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdMark);
-	    TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdUnmark);	 
-		}
-
-	// Options/Delete   
-   if (IsSyncOnGoingL(iCurrentProfileId) || iSettingEnforcement 
-   										|| deletableProfileCount == 0)
-    	{
-    	TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdDelete);
-     	}
-	
-	// Options/View log
-	if (iCurrentProfileId == KErrNotFound)
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdViewLog);
-		}
-	
-	if (!FeatureManager::FeatureSupported(KFeatureIdHelp))
-		{
-		TDialogUtil::DeleteMenuItem(aMenuPane, EAknCmdHelp);
-		}
-		
-#ifdef RD_DSUI_TIMEDSYNC 
-	if(profileCount)
-		{
-	 	//Delete active profile
-	 	TAspParam param(iApplicationId, iSyncSession);
-	 	TAspProfileItem& currentProfile = CurrentProfileL();
-	 	if(!currentProfile.iDeleteAllowed)
-	 		{
-	    	TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdDelete);
-			}
-	 	//Change profile option is removed
-	 	TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdChangeProfile);
-	 	
-
-	 	CAspSchedule* schedule = CAspSchedule::NewLC();
-	 	TInt asProfileId = schedule->AutoSyncProfileId();
-	 	if (iCurrentProfileId == schedule->ProfileId()
-	 							&& asProfileId != KErrNotFound)
-			{
-			CAspProfile* asProfile = CAspProfile::NewLC(param);
-			asProfile->OpenL(asProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-			if (!asProfile->IsSynced() && !currentProfile.iSynced)
-				{
-				TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdViewLog);
-				}
-			CleanupStack::PopAndDestroy(asProfile);
-			}
-	 	else
-			{
-			if (!currentProfile.iSynced)
-		    	{
-	        	TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdViewLog);
-		    	}
-
-			}
-		 CleanupStack::PopAndDestroy(schedule);
-		}
-#else
-	 
-	 
-	 TAspProfileItem& profile = CurrentProfileL();
-     if (!profile.iSynced)
-		 {
-	         iProfileList->ReadProfileL(iCurrentProfileId);
-	       }
-	  
-	   if (!profile.iSynced)
-	           {
-	     TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdViewLog);
-		 }
-#endif
-if(!iSettingEnforcement)
-{
-	UpdateMarkMenuItem(aMenuPane);
-}
-#ifndef RD_DSUI_TIMEDSYNC
-     TDialogUtil::DeleteMenuItem(aMenuPane, EAspMenuCmdAutoSync);
-#endif
-
-	}
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::IsSyncOnGoing
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::IsSyncOnGoingL(TInt aProfileId)
-	{
-	TInt currentJobId = CAspProfile::CurrentJob(iSyncSession);
-	if (currentJobId != KErrNotFound)
-			{
-			RSyncMLDataSyncJob syncJob;
-			syncJob.OpenL(*iSyncSession, currentJobId);
-			if (syncJob.Profile() == aProfileId)
-				{
-				syncJob.Close();
-				return ETrue;
-				}
-			syncJob.Close();
-			}
-	return EFalse;
-	}
-
-	
-#ifdef RD_DSUI_TIMEDSYNC 
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SetNextProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetNextProfileL()
-	{
-    FLOG( _L("CAspSettingDialog::SetNextProfileL START") );
-
-	if (iProfileList->Count() == 0)
-		{
-		return;
-		}
-    
-    TInt currentIndex = iProfileList->ListIndex(iCurrentProfileId);
-    if (currentIndex == KErrNotFound)
-    	{
-    	FLOG( _L("CAspSettingDialog::SetNextProfileL END") );
-    	
-    	User::Leave(KErrNotFound);
-    	}
-    
-    TInt newIndex = 0;
-    TInt count = iProfileList->Count();
-    if (currentIndex >= count-1)
-        {
-        newIndex = 0;
-        }
-    else
-        {
-        newIndex = currentIndex + 1;
-        }
-    TAspProfileItem& olditem = iProfileList->Item(currentIndex);        
-    TAspProfileItem& item = iProfileList->Item(newIndex);
-
-	if (item.iProfileName.Compare(KAutoSyncProfileName) == 0)
-			{
-			if(newIndex >= count-1)
-				{
-				newIndex = 0;
-				}
-			else
-				{
-				newIndex++;
-				}
-			TAspProfileItem& newItem = iProfileList->Item(newIndex);
-			SetCurrentProfile(newItem.iProfileId);
-			}
-	else 
-		{
-		SetCurrentProfile(item.iProfileId);
-		}
-	
-	//ShowCurrentProfileInfo();
-    UpdateListBoxL();
-	//UpdateNavipaneL(iCurrentProfileName);
-    UpdateTabsL();
-        
-    FLOG( _L("CAspSettingDialog::SetNextProfileL END") );
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SetPreviousProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetPreviousProfileL()
-	{
-    FLOG( _L("CAspSettingDialog::SetPreviousProfileL START") );
-
-	if (iProfileList->Count() == 0)
-		{
-		return;
-		}
-    
-    TInt currentIndex = iProfileList->ListIndex(iCurrentProfileId);
-    if (currentIndex == KErrNotFound)
-    	{
-    	FLOG( _L("CAspSettingDialog::SetNextProfileL END") );
-    	
-    	User::Leave(KErrNotFound);
-    	}
-    
-    TInt newIndex = 0;
-    TInt count = iProfileList->Count();
-    if (currentIndex == 0)
-        {
-        newIndex = count - 1;
-        }
-    else
-        {
-        newIndex = currentIndex - 1;
-        }
-   
-    TAspProfileItem& item = iProfileList->Item(newIndex);
-
-	if (item.iProfileName.Compare(KAutoSyncProfileName) == 0)
-		{
-		if(newIndex == 0)
-			{
-				newIndex = count - 1;
-			}
-		else
-			{
-				newIndex--;
-			}
-			TAspProfileItem& newItem = iProfileList->Item(newIndex);
-			SetCurrentProfile(newItem.iProfileId);
-		}
-	else
-		{
-		 SetCurrentProfile(item.iProfileId);	
-		}
-
-   
-	//ShowCurrentProfileInfo();
-    UpdateListBoxL();
-	//UpdateNavipaneL(iCurrentProfileName);
-	UpdateTabsL();
-
-    FLOG( _L("CAspSettingDialog::SetPreviousProfileL END") );
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateTabsL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateTabsL()
-	{
-    FLOG( _L("CAspSettingDialog::UpdateTabsL START") );
-
-	TInt count = iProfileList->Count();
-	if (count == 0)
-		{
-		//handle no profile condition
-		iTabHandler->DeleteTabsL();
-		_LIT(KEmpty, " ");
-		TBuf<64> tabText(KEmpty);
-		TInt profileId = KMaxProfileCount;
-		iTabHandler->AddTabL(tabText, profileId);
-		iTabHandler->SetActiveTabL(profileId);
-		return;
-		}
-
-	if (iTabHandler->TabIndex(iCurrentProfileId) == KErrNotFound)
-		{
-		iUpdateTabGroup = ETrue;
-		}
-	if (iUpdateTabGroup)
-		{
-		//update changed settings
-	    iProfileList->ReadAllProfilesL(CAspProfileList::ENoMandatoryCheck);
-		iProfileList->Sort();
-    	SetCurrentProfile(iCurrentProfileId);
-		count = iProfileList->Count();
-		iTabHandler->DeleteTabsL();
-        for (TInt i=0; i<count; i++)
-        	{
-        	TAspProfileItem& item = iProfileList->Item(i);
-			iTabHandler->AddTabL(item.iProfileName, item.iProfileId);
-    		}
-    	iTabHandler->SetTabWidthL();
-		iUpdateTabGroup = EFalse;		
-		}
-	if (iCurrentProfileId != KErrNotFound)
-		{
-		iTabHandler->SetTabTextL(iCurrentProfileName, iCurrentProfileId);	
-		}
-	CAspSchedule* schedule = CAspSchedule::NewLC();
-	if (iCurrentProfileId == schedule->ProfileId()
-							 && schedule->IsAutoSyncEnabled())
-		{
-		//show indicator icon for profile that has auto sync ON.
-		_LIT(KSpace,"  ");
-		TBuf<64> tabText;
-		tabText.Append(KClockCharacter);//Unicode character U+F815 (clock)
-		tabText.Append(KSpace);
-		tabText.Append(iCurrentProfileName);
-		iTabHandler->SetTabTextL(tabText, iCurrentProfileId);
-		}
-		
-	if (iCurrentProfileId != KErrNotFound)
-        {
-        iTabHandler->SetActiveTabL(iCurrentProfileId);    
-        }
-
-	CleanupStack::PopAndDestroy(schedule);
-	
-	
-    FLOG( _L("CAspSettingDialog::UpdateTabsL END") );
-	}
-
-#endif
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateMarkMenuItem
-//
-// -----------------------------------------------------------------------------
-//
-
-void CAspSettingDialog::UpdateMarkMenuItem(CEikMenuPane* aMenuPane)
-	{
-	
-	CListBoxView* view = iSettingListBox->View();
-    
-    TInt index = view->CurrentItemIndex();
-    TBool mark = view->ItemIsSelected(index);
-	
-	aMenuPane->SetItemDimmed(EAspMenuCmdMark,mark);
-	aMenuPane->SetItemDimmed(EAspMenuCmdUnmark,!mark);
-		
-	}
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SaveSelection
-// Update Mark/Unmark selected from menu 
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SaveSelectionL()
-{
-    if (IsProfileLockedL(iCurrentProfileId))
-       	{
-       	TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-		return;
-		}
-       
-       if (iSettingEnforcement)
-		{
-		TDialogUtil::ShowInformationNoteL(R_ASP_PROTECTED_SETTING);
-		return; 
-		}
-		
-	//update check box & profile
-    CListBoxView* view = iSettingListBox->View();
-    
-    TInt index = view->CurrentItemIndex();
-    TBool selected = view->ItemIsSelected(index);
-    if (selected)
-    	{
-        view->DeselectItem(index);
-       	}
-    else
-    	{
-    	view->SelectItemL(index);
-    	}
-    iSettingListBox->SetCurrentItemIndex(index);
-    if (!CheckEmailSelection())
-       	{
-       	return; 
-       	}
-	TInt ret =  SaveCurrentProfile();
-	if (ret != KErrNone)
-		{
-		CancelCheckboxEvent();
-		}
-	
-}
-
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DoSetCurrentProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DoSetCurrentProfileL(TInt aProfileId)
-	{
-    FLOG( _L("CAspSettingDialog::DoSetCurrentProfileL START") );
-    
-    iCurrentProfileId = KErrNotFound;
-    iCurrentProfileName = KNullDesC;
-    iContentList->RemoveAllTasks();
-    iProfileList->ReadAllProfilesL(CAspProfileList::ENoMandatoryCheck);
-	iProfileList->Sort();
-	
-	if (iProfileList->Count() == 0)
-		{
-		return;
-		}
-        
-    if (aProfileId == KErrNotFound)
-    	{
-    	FLOG( _L("CAspSettingDialog::DoSetCurrentProfileL END") );
-    	User::Leave(KErrNotFound);
-    	}
-    	
-    TInt index = iProfileList->ListIndex(aProfileId);
-    if (index == KErrNotFound)
-    	{
-    	FLOG( _L("### unknown profile (id=%d) ###"), aProfileId );
-    	FLOG( _L("CAspSettingDialog::DoSetCurrentProfileL END") );
-    	
-    	User::Leave(KErrNotFound);
-    	}
-    
-    TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-	
-	//if profile already locked ,open as read only
-	if (IsProfileLockedL(aProfileId))
-	{
-	   profile->OpenL(aProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-    
-	}
-	else
-	{
-	   profile->OpenL(aProfileId, CAspProfile::EOpenReadWrite, CAspProfile::EAllProperties);
-	}
-	
-    iContentList->SetProfile(profile);
-    
-    // read sync tasks from database into content list
-    iContentList->InitAllTasksL();
-    if (IsProfileLockedL(aProfileId))
-    {
-    	iContentList->UpdateLocalDatabaseL();
-    }
-    
-    if (!iContentList->CheckTaskDirectionsL())
-       	{
-        if (!iSettingEnforcement)
-           	{
-           	iContentList->ModifyTaskDirectionsL(ESyncDirectionTwoWay);
-    	   	}
-    	   	
-    	FLOG( _L("### sync direction conflict ###") );
-    	}
-    
-    //check if mailbox exists
-    CDesCArray* localDataStores = new (ELeave) CDesCArrayFlat(KDefaultArraySize);
-	CleanupStack::PushL(localDataStores);
-	iContentList->GetLocalDatabaseList(KUidNSmlAdapterEMail.iUid, localDataStores);
-
-    TInt num = profile->ProtocolVersion();
-    if (num == EAspProtocol_1_1 || localDataStores->Count() == 0)
-    	{
-    	TInt index = iContentList->FindTaskIdForProvider( KUidNSmlAdapterEMail.iUid);
-		if (index != KErrNotFound)
-			{
-			TAspTaskItem emailItem = iContentList->ReadTaskItemL(profile->Profile(), index);
-			if (emailItem.iEnabled)
-				{
-		    	iContentList->ModifyTaskIncludedL(KUidNSmlAdapterEMail.iUid, EFalse, KNullDesC);
-				}
-			}
-    	}
-	CleanupStack::PopAndDestroy(localDataStores);
-	
-    iContentList->SetProfile(NULL);
-    
-    iCurrentProfileId = aProfileId;
-    
-    profile->GetName(iCurrentProfileName);
-  	if (TUtil::IsEmpty(iCurrentProfileName))
-		{
-		CAspResHandler::ReadL(iCurrentProfileName, R_ASP_UNNAMED_SET);
-		}
-
-  
-    CleanupStack::PopAndDestroy(profile);
-    
-    FLOG( _L("CAspSettingDialog::DoSetCurrentProfileL END") );
-	}
-	
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SetCurrentProfile
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetCurrentProfile(TInt aProfileId)
-	{
-	if (iContentList->IsLocked())
-		{
-		return; // iContentList used by CAspProfileDialog
-		}
-		
-	TInt err = KErrNone;
-	TInt oldCurrentProfileId = iCurrentProfileId;
-	
-	TRAP(err, DoSetCurrentProfileL(aProfileId));
-	
-	iContentList->SetProfile(NULL);
-	
-    if (err != KErrNone)
-    	{
-        iCurrentProfileId = KErrNotFound;
-        iCurrentProfileName = KNullDesC;
-        iContentList->RemoveAllTasks();
-       	}
-       	
-    if (err != KErrNone && oldCurrentProfileId != KErrNotFound)
-    	{
-   		// some error - try restoring old current profile
-   		TRAP(err, DoSetCurrentProfileL(oldCurrentProfileId));
-   		
-   		iContentList->SetProfile(NULL);
-	
-	    if (err != KErrNone)
-    	    {
-            iCurrentProfileId = KErrNotFound;
-    	    iCurrentProfileName = KNullDesC;
-            iContentList->RemoveAllTasks();
-    	    }
-    	}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SetCurrentProfile
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetCurrentProfileL()
-	{
-
-#ifdef RD_DSUI_TIMEDSYNC //display profiles in alphabetic order.
-	TInt index = 0;
-	if (!iProfileList->Count())
-		{
-		index = KErrNotFound;
-		}
-
-#else
-	TInt index = iProfileList->FindLastSyncedProfileIndexL();
-
-#endif
-	if (index != KErrNotFound)
-		{
-		TAspProfileItem& item = iProfileList->Item(index);
-		SetCurrentProfile(item.iProfileId);
-		}
-	else
-		{
-		SetCurrentProfile(KErrNotFound);
-		}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CurrentProfileL
-//
-// -----------------------------------------------------------------------------
-//
-TAspProfileItem& CAspSettingDialog::CurrentProfileL()
-	{
-	TInt index = iProfileList->ListIndex(iCurrentProfileId);
-	if (index == KErrNotFound)
-		{
-		User::Leave(KErrNotFound);
-		}
-		
-	return iProfileList->Item(index);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HasCurrentProfile
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::HasCurrentProfile()
-	{
-	TInt ret = ETrue;
-	
-	if (iCurrentProfileId == KErrNotFound)
-		{
-		ret = EFalse;
-		}
-		
-	if (iProfileList->Count() == 0)
-		{
-		ret = EFalse;
-		}
-		
-	if (ret)
-		{
-	    TInt index = iProfileList->ListIndex(iCurrentProfileId);	
-	    
-	    __ASSERT_DEBUG(index != KErrNotFound, TUtil::Panic(KErrGeneral));
-		}
-	
-	return ret;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::IsCurrentProfile
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::IsCurrentProfile(TInt aProfileId)
-	{
-	if (aProfileId != KErrNotFound && aProfileId == iCurrentProfileId)
-		{
-		return ETrue;
-		}
-		
-	return EFalse;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DoSaveCurrentProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DoSaveCurrentProfileL()
-	{
-	if (iSettingEnforcement)
-		{
-		return;  // read-only profile
-		}
-
-	if (!HasCurrentProfile())
-		{
-		User::Leave(KErrNotFound);
-		}
-
-    TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-    profile->OpenL(iCurrentProfileId, CAspProfile::EOpenReadWrite, 
-                                      CAspProfile::EAllProperties);
-
-	iContentList->SetProfile(profile);
-	// store selected sync tasks into database
-	iContentList->IncludeTasks(iSettingListBox->SelectionIndexes());
-	iContentList->SetProfile(NULL);
-	
-	CleanupStack::PopAndDestroy(profile);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SaveCurrentProfile
-//
-// -----------------------------------------------------------------------------
-//
-TInt CAspSettingDialog::SaveCurrentProfile()
-	{
-	TRAPD(err, DoSaveCurrentProfileL());
-	
-	iContentList->SetProfile(NULL);
-	
-    if (err == KErrLocked)
-   		{
-        TRAP_IGNORE( TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE) );
-        }
-
-	if (err != KErrNone)
-		{
-		FLOG( _L("### CAspSettingDialog::SaveCurrentProfile: err=%d ###"), err );
-    	}
-    	
-    return err;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::EditProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::EditProfileL(TInt aEditMode ,TInt aFocus)
-	{
-	if (iSettingEnforcement)
-		{
-		aEditMode = EDialogModeSettingEnforcement;
-		}
-    
-    if (IsProfileLockedL(iCurrentProfileId))
-		{
-		TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-		return;
-		}
-	TRAPD(err, DoEditProfileL(aEditMode ,aFocus));
-    iContentList->SetProfile(NULL);
-	User::LeaveIfError(err);
-
-#ifdef RD_DSUI_TIMEDSYNC 
-	iUpdateTabGroup = ETrue;
-	UpdateTabsL();
-#endif
-
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DoEditProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DoEditProfileL(TInt aEditMode, TInt aFocus)
-	{
-	if (!HasCurrentProfile())
-		{
-		return;
-		}
-		
-    TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-    
-    iContentList->SetProfile(profile);
-    
-    if (aEditMode == EDialogModeEdit || aEditMode == EDialogModeEditMandatory)
-    	{
-    	profile->OpenL(iCurrentProfileId, CAspProfile::EOpenReadWrite,
-                                          CAspProfile::EAllProperties);
-                                          
-    	}
-    else
-    	{
-    	profile->OpenL(iCurrentProfileId, CAspProfile::EOpenRead,
-                                          CAspProfile::EAllProperties);
-    	}
-
-		
-	TAspParam param2(iApplicationId, iSyncSession);
-	param2.iProfile = profile;
-	param2.iMode = aEditMode;
-    param2.iContentList = iContentList;
-    param2.iProfileList = iProfileList;  // needed for unique server id check
-    param2.iDataProviderId = aFocus;
- 
-#ifdef RD_DSUI_TIMEDSYNC 
-	CAspSettingViewDialog::ShowDialogL(param2);
-#else
-	CAspProfileDialog::ShowDialogL(param2);
-#endif
-
-	iContentList->SetProfile(NULL);
-	CleanupStack::PopAndDestroy(profile);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CheckMandatoryDataL
-//
-// -----------------------------------------------------------------------------
-//
-TInt CAspSettingDialog::CheckMandatoryDataL()
-	{
-	TInt ret = EMandatoryOk;
-	
-	TRAPD(err, ret = DoCheckMandatoryDataL());
-	
-	User::LeaveIfError(err);
-		
-	return ret;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DoCheckMandatoryDataL
-//
-// -----------------------------------------------------------------------------
-//
-TInt CAspSettingDialog::DoCheckMandatoryDataL()
-	{
-	if (!HasCurrentProfile())
-		{
-		User::Leave(KErrNotFound);
-		}
-		
-    TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-    profile->OpenL(iCurrentProfileId, CAspProfile::EOpenReadWrite,
-                                      CAspProfile::EAllProperties);
-    
-    
-    TInt mandatoryConnectionData = CAspProfile::CheckMandatoryConnData(profile);
-    iContentList->SetProfile(profile);	
-	TInt contentCount = 0;
-	TInt mandatoryContentData = iContentList->CheckMandatoryDataL(contentCount);
-	iContentList->SetProfile(NULL);
-	CleanupStack::PopAndDestroy(profile);
-
-	if (mandatoryConnectionData != EMandatoryOk)
-		{
-		return mandatoryConnectionData;
-		}
-		
-	return mandatoryContentData;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DeleteProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DeleteProfileL()
-    {
-
-#ifdef RD_DSUI_TIMEDSYNC 
-	 TAspParam param(iApplicationId, iSyncSession);
-	 CAspProfile* profile = CAspProfile::NewLC(param);
-     TRAPD(err,profile->OpenL(iCurrentProfileId, CAspProfile::EOpenReadWrite,
-                                      CAspProfile::EAllProperties));
-
-	 if (err == KErrLocked)
-   		{
-        TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-		CleanupStack::PopAndDestroy(profile);
-		return;
-	 	}
-	 CAspSchedule* schedule = CAspSchedule::NewLC();
-	
-	 TInt profileId = schedule->ProfileId();
-	 if (profileId == iCurrentProfileId && schedule->IsAutoSyncEnabled())
-	 	{
-		HBufC* hBuf = CAspResHandler::ReadLC(R_ASP_DS_CONF_QUERY_DELETE_AUTO_SYNC_PROFILE);
-		if (!TDialogUtil::ShowConfirmationQueryL(hBuf->Des()))
-			{
-			CleanupStack::PopAndDestroy(hBuf);
-			CleanupStack::PopAndDestroy(schedule);
-	        CleanupStack::PopAndDestroy(profile);
-			return;
-			}
-		CleanupStack::PopAndDestroy(hBuf);
-		schedule->SetProfileId(KErrNotFound);
-		schedule->UpdateSyncScheduleL();
-		schedule->SaveL();
-		}
-	 else
-	 	{
-		TBuf<KBufSize> profileName;
-	 	profile->GetName(profileName);
-	 	HBufC* hBuf1 = CAspResHandler::ReadLC(R_ASP_QUERY_COMMON_CONF_DELETE, profileName);
-
-	 	if (!TDialogUtil::ShowConfirmationQueryL(hBuf1->Des()))
-		    {
-			CleanupStack::PopAndDestroy(hBuf1);
-			CleanupStack::PopAndDestroy(schedule);
-			CleanupStack::PopAndDestroy(profile);
-			return;
-	 		}
-		CleanupStack::PopAndDestroy(hBuf1);
-	 	}
-	CleanupStack::PopAndDestroy(schedule);
-	CleanupStack::PopAndDestroy(profile);
-	if (!IsSyncOnGoingL(iCurrentProfileId))
-		{
-		TRAPD (err1,iSyncSession->DeleteProfileL(iCurrentProfileId));
-		
-		if (err1 == KErrLocked)
-   			{
-       		TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-       		}
-    	User::LeaveIfError(err);
-		}
-	iUpdateTabGroup = ETrue;	
-	SetPreviousProfileL();
-	
-	
-#else
-
-    TAspFilterInfo info;
-    info.iFilterType = TAspFilterInfo::EIncludeDeletableProfile;
-    CAspProfileList* filteredList = iProfileList->FilteredListL(info);
-    CleanupStack::PushL(filteredList);
-    
-	TInt count = filteredList->Count();
-	TInt err = KErrNone;
-
-	if (count == 1)
-		{
-		TAspProfileItem& profile = filteredList->Item(0);
-
-		HBufC* hBuf = CAspResHandler::ReadLC(R_ASP_CONFIRM_DELETE, profile.iProfileName);
-	    if (TDialogUtil::ShowConfirmationQueryL(hBuf->Des()))
-		    {
-		    if (!IsSyncOnGoingL(profile.iProfileId))
-		    	{
-		    	TRAP(err, iSyncSession->DeleteProfileL(profile.iProfileId));
-		    	}
-		    }
-   		
-   		CleanupStack::PopAndDestroy(hBuf);
-    	}
-	
-	else if (count > 0)
-		{
-		TInt profileId = KErrNotFound;
-	    if (TDialogUtil::ShowProfileQueryL(filteredList, profileId,
-	                                       R_ASP_QUERY_TITLE_DELETE_PROFILE))
-		    {
-		    if (!IsSyncOnGoingL(profileId))
-		    	{
-		    	TRAP(err, iSyncSession->DeleteProfileL(profileId));
-		    	}
-		    }
-		}
-
-	if (err == KErrLocked)
-   		{
-        TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-        }
-    User::LeaveIfError(err);
-    
-	CleanupStack::PopAndDestroy(filteredList);
-
-#endif
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowLogDialogL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowLogDialogL()
-    {
-    
-	TAspParam param(iApplicationId, iSyncSession);
-	TAspProfileItem& profile = CurrentProfileL();
-	param.iProfileId = profile.iProfileId;
-
-#ifdef RD_DSUI_TIMEDSYNC 
-   	
-	CAspSchedule* schedule = CAspSchedule::NewLC();
-	if (iCurrentProfileId == schedule->ProfileId())
-		{
-		TInt asProfileId = schedule->AutoSyncProfileId();
-		CAspProfile* asProfile = CAspProfile::NewLC(param);
-		asProfile->OpenL(asProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-
-		/*if (asProfile->LastSync() > profile.iLastSync)
-			{
-			param.iProfileId = asProfileId;
-			}*/	
-		TTime now;
-		now.HomeTime();
-		if (profile.iLastSync == 0)
-			{
-			param.iProfileId = asProfileId;
-			}
-		else if ((asProfile->LastSync()< now && profile.iLastSync < now)
-								|| (asProfile->LastSync() > now && profile.iLastSync > now))
-			{
-			if (asProfile->LastSync() > profile.iLastSync)
-				{
-				param.iProfileId = asProfileId;
-				}
-			}
-		else if	((asProfile->LastSync()< now && profile.iLastSync > now))
-			{
-			param.iProfileId = asProfileId;
-			}
-		CleanupStack::PopAndDestroy(asProfile);
-		}
-	
-	CleanupStack::PopAndDestroy(schedule);
-		
-#endif   
-	
-
-    CAspLogDialog* dialog = CAspLogDialog::NewL(param);
-    CleanupStack::PushL(dialog);
-        
-    dialog->ShowDialogL();
-        
-    CleanupStack::PopAndDestroy(dialog);
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowAutoSyncDialogL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowAutoSyncDialogL()
-    {
-    
-    CAspSchedule* schedule = CAspSchedule::NewLC();
-	if (schedule->IsAutoSyncEnabled())
-		{
-		TInt profileId = schedule->ProfileId();
-		if(profileId != iCurrentProfileId && profileId != KErrNotFound)
-			{
-			if(!TDialogUtil::ShowConfirmationQueryL(R_ASP_QUERY_AUTO_SYNC_ON))
-				{
-				CleanupStack::PopAndDestroy(schedule);
-				return ;
-				}
-			}
-		}
-    CleanupStack::PopAndDestroy(schedule);
-	
-	TAspParam param(iApplicationId, iSyncSession);
-    param.iProfileList = iProfileList;
-	param.iProfile = NULL;
-	param.iContentList = iContentList;
-	iAutoSyncDialog = ETrue;
- 	CAspScheduleDialog::ShowDialogL(param);
- 	iAutoSyncDialog = EFalse;
- 	
-#ifdef RD_DSUI_TIMEDSYNC 
-	UpdateTabsL();
-#endif
-	
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ChangeProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ChangeProfileL()
-    {
-    if (iProfileList->Count() == 0)
-    	{
-    	return;
-    	}
-    	
-	TInt profileId = KErrNotFound;
-	if (TDialogUtil::ShowProfileQueryL(iProfileList, profileId, 
-	                                   R_ASP_QUERY_TITLE_CHANGE_PROFILE))
-		{
-		if (profileId == iCurrentProfileId)
-			{
-			return;
-			}
-			
-		SetCurrentProfile(profileId);
-		//ShowCurrentProfileInfo();
-		UpdateListBoxL();
-		
-#ifdef RD_DSUI_TIMEDSYNC //RD_DSUI_NO_TIMEDSYNC
-
-		UpdateTabsL();
-#else
-		UpdateNavipaneL(iCurrentProfileName);
-#endif
-		}
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CopyFromServerL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::CopyFromServerL()
-	{
-	if (!TDialogUtil::ShowConfirmationQueryL(R_ASP_COPY_FROM_SERVER))
-		{
-		return;
-		}
-
-	TRAPD(err, DoSyncProfileL(ESyncDirectionRefreshFromServer));
-	
-	if (err == KErrLocked)
-		{
-		TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-		}
-	User::LeaveIfError(err);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SyncProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SyncProfileL()
-	{
-		
-	if (IsProfileLockedL(iCurrentProfileId))
-		{
-		TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-		return;
-		}
-	
-	TRAPD(err, DoSyncProfileL(KErrNotFound));
-	User::LeaveIfError(err);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DoSyncProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DoSyncProfileL(TInt aSyncType)
-	{
-    __ASSERT_ALWAYS(iSyncSession, TUtil::Panic(KErrGeneral));
-    	
-	if (iProfileList->Count() == 0)
-		{
-	    if (TDialogUtil::ShowConfirmationQueryL(R_ASP_QUERY_NO_PROFILES))
-		    {
-		    CreateProfileL();
-		    }
-		    
-		return;
-    	}
-    
-    //check PS key
-    TInt keyVal = 0;//EDataSyncNotRunning
-    TInt err = RProperty::Get( KPSUidDataSynchronizationInternalKeys,
-                                 KDataSyncStatus,
-                                 keyVal );
-    if(err == KErrNone && keyVal)
-    	{
-    	TDialogUtil::ShowInformationNoteL(R_ASP_SYNC_ALREADY_RUNNING);
-		return;
-    	}
-    
-	
-	if (CAspProfile::OtherSyncRunning(iSyncSession))
-		{
-		TDialogUtil::ShowInformationNoteL(R_ASP_SYNC_ALREADY_RUNNING);
-		return;
-		}
-
-     // check that valid current profile exists
-    TInt mandatoryCheck = CheckMandatoryDataL();
-    
- 	if (mandatoryCheck == EMandatoryNoContent)
-		{
-		TDialogUtil::ShowErrorNoteL(R_ASP_ERR_NOCONTENT);
-		return;
-        }
-	else if (mandatoryCheck != EMandatoryOk)
-		{
-        if (iSettingEnforcement)
-    	    {
-    	    TDialogUtil::ShowInformationNoteL(R_ASP_NOTE_TARM_MANDATORY_MISSING);
-    	    }    	
-		else if (TDialogUtil::ShowConfirmationQueryL(R_ASP_QUERY_MANDATORY_MISSING))
-			{
-			TInt contentCount = 0;
-			TInt incompleteContent = KErrNotFound;
-			TInt taskIndex = KErrNotFound;
-			if (iContentList->CheckMandatoryDataL(contentCount))
-				{
-				TInt count = iContentList->ProviderCount();
-				for (TInt i=0; i<count; i++)
-					{
-					//data provider ids are sorted before task list creation ,so provider id has to be used
-					//to get the correct position of item
-					TAspProviderItem& providerItem = iContentList->ProviderItem(i);
-					taskIndex = iContentList->FindTaskIndexForProvider(providerItem.iDataProviderId);
-					if (taskIndex == KErrNotFound)
-						{
-						//task is not created
-						continue;	
-						}
-					TAspTaskItem& task = iContentList->TaskItem(taskIndex);
-					if (!task.iEnabled)
-						{
-						continue; // task not part of sync - no need to check remote data base
-						}
-					if (!task.iRemoteDatabaseDefined)
-						{
-						incompleteContent = task.iDataProviderId;
-						break;
-						}
-					}
-				}
-			EditProfileL(EDialogModeEditMandatory ,incompleteContent);
-			}
-			
-		return;
-        }
-
-
-	if (!iSyncHandler)
-		{
-    	TAspParam param(iApplicationId, NULL);
-		iSyncHandler = CAspSyncHandler::NewL(param);
-		}
-	else
-		{
-		if (SyncRunning())
-			{
-			TDialogUtil::ShowInformationNoteL(R_ASP_SYNC_ALREADY_RUNNING);
-    		return;
-			}
-		}
-    	
-    iSyncHandler->SetObserver(this);
-
-   	TAspSyncParam param(iApplicationId);
-	param.iProfileId = iCurrentProfileId;
-	if (aSyncType == ESyncDirectionRefreshFromServer)
-		{
-		param.iSyncDirection = aSyncType;
-		}
-
-#ifdef RD_DSUI_TIMEDSYNC 
-	DeleteAutoSyncHistory();
-#endif
-
-	iSyncHandler->SynchronizeL(param);
-	}
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::DeleteAutoSyncHistory
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::DeleteAutoSyncHistory()
-	{
-	TAspParam param(iApplicationId, iSyncSession);
-	CAspSchedule* schedule = CAspSchedule::NewLC();
-	if (schedule->IsAutoSyncEnabled() && iCurrentProfileId == schedule->ProfileId())
-		{
-		TInt asProfileId = schedule->AutoSyncProfileId();
-		CAspProfile* asProfile = CAspProfile::NewLC(param);
-		asProfile->OpenL(asProfileId, CAspProfile::EOpenReadWrite, CAspProfile::EAllProperties);
-		asProfile->DeleteHistory();
-		CleanupStack::PopAndDestroy(asProfile);
-		}
-	CleanupStack::PopAndDestroy(schedule);
-	}
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CreateProfileL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::CreateProfileL()
-	{
-	TAspParam param(iApplicationId, iSyncSession);
-	param.iProfileList = iProfileList;
-	
-	CAspProfileWizardDialog::ShowDialogL(param);
-
-#ifdef RD_DSUI_TIMEDSYNC 
-	iUpdateTabGroup = ETrue;
-#endif
-
-	if (param.iReturnValue == KErrNone && param.iProfileId != KErrNotFound)
-		{
-		SetCurrentProfile(param.iProfileId);
-		UpdateListBoxL();
-#ifdef RD_DSUI_TIMEDSYNC 
-	
-		UpdateTabsL();
-#else
-		UpdateNavipaneL(iCurrentProfileName);
-#endif
-		}
-	else
-	    {
-#ifdef RD_DSUI_TIMEDSYNC 
-    
-        UpdateTabsL();
-#endif
-	    }
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::IconL
-// 
-// -----------------------------------------------------------------------------
-//
-CGulIcon* CAspSettingDialog::IconL(TAknsItemID aId, const TDesC& aFileName, TInt aFileIndex, TInt aFileMaskIndex)
-	{
-    return TDialogUtil::CreateIconL(aId, aFileName, aFileIndex, aFileMaskIndex);
-	}
-
-	
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateListBoxL
-//	
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateListBoxL()
-	{
-	SetCurrentIndex();
-	
-	CAknDoubleLargeStyleListBox* listBox = ListBox();
-	CDesCArray* items = (CDesCArray*) listBox->Model()->ItemTextArray();
-	items->Reset();
-    listBox->ItemDrawer()->ClearAllPropertiesL();
-   
-	TInt count = iContentList->ProviderCount();
-
-	for (TInt i=0; i<count; i++)
-		{
-		HBufC* firstLine = NULL;
-		HBufC* secondLine = NULL;
-				
-		TAspProviderItem& providerItem = iContentList->ProviderItem(i);
-		
-		firstLine = CAspResHandler::GetContentNameLC(
-		            providerItem.iDataProviderId, providerItem.iDisplayName);
-		
-		TInt index = iContentList->FindTaskIndexForProvider(providerItem.iDataProviderId);
-		if (providerItem.iDataProviderId == KUidNSmlAdapterEMail.iUid )
-		{
-		
-			if(!providerItem.iHasDefaultDataStore)
-			{
-			TInt providerListIndex = iContentList->FindProviderIndex(providerItem.iDataProviderId);
-			
-			CListBoxView* view = iSettingListBox->View();
-
-			view->DeselectItem(providerListIndex);
-			}
-		}
-		if (index != KErrNotFound)
-			{
-			TAspTaskItem& task = iContentList->TaskItem(index);
-	
-		    if (task.iLastSync != 0) // task has been synchronised
-			    {
-			    secondLine = TUtil::SyncTimeLC(task.iLastSync);
-			    }
-		    else
-			    {
-			    secondLine = CAspResHandler::ReadLC(R_ASP_NOT_SYNCED);
-			    }
-			}
-		else
-			{
-			secondLine = CAspResHandler::ReadLC(R_ASP_NOT_SYNCED);
-			}
-		
-		
-		TPtr ptr1 = firstLine->Des();
-		AknTextUtils::DisplayTextLanguageSpecificNumberConversion(ptr1);
-		TPtr ptr2 = secondLine->Des();
-        AknTextUtils::DisplayTextLanguageSpecificNumberConversion(ptr2);
-
-		HBufC* hBuf = NULL;
-		hBuf = TDialogUtil::ConstructListBoxItemLC(firstLine->Des(), secondLine->Des(), 0);
-
-		items->AppendL(hBuf->Des());
-		
-		CleanupStack::PopAndDestroy(hBuf);
-		CleanupStack::PopAndDestroy(secondLine);
-		CleanupStack::PopAndDestroy(firstLine);
-		}
-
-	listBox->HandleItemAdditionL();
-	
-	if (listBox->Model()->NumberOfItems() == 0)
-		{
-	    iStatusPaneHandler->SetNaviPaneTitle(KNullDesC);
-		}
-	else
-		{
-		UpdateContentSelectionL();
-		
-		TInt current = CurrentIndex();
-		if (current != KErrNotFound)
-			{
-			ListBox()->SetCurrentItemIndexAndDraw(current);
-			}
-		}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateContentSelectionL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateContentSelectionL()
-    {
-    // update selected task check boxes from current profile content list
-    CListBoxView::CSelectionIndexArray* arrayOfSelectionIndexes = NULL;
-    arrayOfSelectionIndexes = new (ELeave) CArrayFixFlat<TInt>(KDefaultArraySize);
-    CleanupStack::PushL(arrayOfSelectionIndexes);
-
-	if (HasCurrentProfile())
-		{
-		iContentList->GetIncludedProviders(arrayOfSelectionIndexes);
-		}
-        
-    iSettingListBox->SetSelectionIndexesL(arrayOfSelectionIndexes);
-
-    CleanupStack::PopAndDestroy(arrayOfSelectionIndexes);
-    }
-    
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateNavipaneL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateNavipaneL(const TDesC& aText)
-	{
-	if (iCurrentProfileName.Compare(aText) != 0)
-		{
-		TUtil::StrCopy(iCurrentProfileName, aText);
-		}
-		
-	iStatusPaneHandler->SetNaviPaneTitleL(iCurrentProfileName);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HandleSyncEventL (from MAspSyncObserver)
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::HandleSyncEventL(TInt /*aError*/, TInt aInfo1)
-	{
-    iDbNotifier->CreateUpdateEventL(aInfo1, KErrNone);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HandleDbEventL (from MAspDbEventHandler)
-//
-// This function updates UI when it receives sync profile database
-// events (see AspDbNotifier).
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::HandleDbEventL(TAspDbEvent aEvent)
-	{
-	FLOG( _L("CAspSettingDialog::HandleDbEventL START") );
-
-    switch (aEvent.iType)
-		{
-		case CAspDbNotifier::EClose:
-			{
-			
-#ifdef _DEBUG			
-			LogDatabaseEvent(aEvent);
-#endif		
-	
-			TDialogUtil::ShowErrorNoteL(R_ASP_LOG_ERR_SERVERERROR);
-            iAvkonAppUi->ProcessCommandL(EAknCmdExit); //  close sync app
-			break;
-			}
-		
-		case CAspDbNotifier::EUpdate:
-			{
-			iProfileList->ReadProfileL(aEvent.iProfileId);
-			iProfileList->Sort();
-      	    if (IsCurrentProfile(aEvent.iProfileId))
-            	{
-            	if (!iContentList->IsLocked())
-            		{
-            		SetCurrentProfile(aEvent.iProfileId);
-                    UpdateListBoxL();
-#ifdef RD_DSUI_TIMEDSYNC 
-					UpdateTabsL();
-#else
-                    UpdateNavipaneL(iCurrentProfileName);
-#endif               
-            		}
-            	}
-			
-#ifdef _DEBUG
-            LogDatabaseEvent(aEvent);
-#endif
-			
-			break;
-			}
-
-		case CAspDbNotifier::EDelete:
-			{
-
-#ifdef _DEBUG
-            LogDatabaseEvent(aEvent);
-#endif
-
-            TInt index = iProfileList->ListIndex(aEvent.iProfileId);
-            if (index != KErrNotFound)
-            	{
-            	iProfileList->Remove(aEvent.iProfileId);
-            	if (IsCurrentProfile(aEvent.iProfileId))
-            		{
-            		if (!iContentList->IsLocked())
-            		    {
-            		    SetCurrentProfileL(); // set new current profile
-                        UpdateListBoxL();
-#ifdef RD_DSUI_TIMEDSYNC 
-					UpdateTabsL();
-#else
-                    UpdateNavipaneL(iCurrentProfileName);
-#endif            		 
-						}
-            		}
-            	}
-			break;
-			}
-
-		case CAspDbNotifier::EUpdateAll:
-			{
-
-#ifdef _DEBUG			
-			LogDatabaseEvent(aEvent);
-#endif
-
-			iProfileList->ReadAllProfilesL(CAspProfileList::ENoMandatoryCheck);
-			iProfileList->Sort();
-           	if (!iContentList->IsLocked())
-            	{
-            	SetCurrentProfile(iCurrentProfileId); // set new current profile
-                UpdateListBoxL();
-#ifdef RD_DSUI_TIMEDSYNC 
-					UpdateTabsL();
-#else
-                    UpdateNavipaneL(iCurrentProfileName);
-#endif         	
-				}
-
-			break;
-			}
-
-		default:
-			break;
-		}
-		
-	FLOG( _L("CAspSettingDialog::HandleDbEventL END") );
-	}
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HandleOKL()
-// 
-// -----------------------------------------------------------------------------
-//
-
-void CAspSettingDialog::HandleOKL()
-{
-	
-	if (iProfileList->Count() == 0)
-			{
-			return;
-			}
-        
-        if (IsProfileLockedL(iCurrentProfileId))
-        	{
-        	TDialogUtil::ShowErrorNoteL(R_ASP_LOCKED_PROFILE);
-			CancelCheckboxEvent();
-			return;
-			}
-        
-        if (iSettingEnforcement)
-			{
-			CancelCheckboxEvent();
-			TDialogUtil::ShowInformationNoteL(R_ASP_NOTE_MAIN_LOCKED);
-			return ;  // leave dialog open;
-			}
-        
-        if (!CheckEmailSelection())
-        	{
-        	return ;  // leave dialog open;
-        	}
-				
-		TInt ret =  SaveCurrentProfile();
-		if (ret != KErrNone)
-			{
-			CancelCheckboxEvent();
-			}
-			
-		return ;
-}
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HandleListBoxEventL (from MEikListBoxObserver)
-// 
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::HandleListBoxEventL(CEikListBox* /*aListBox*/, TListBoxEvent aEventType)
-	{
-	   if( AknLayoutUtils::PenEnabled() )  
-	   {
-	   	 switch(aEventType)
-		{
-			case EEventItemSingleClicked :
-			     HandleOKL();
-			     break;
-			default:
-			     break;
-		}
-	   }
-	  
-    }
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::HandleActiveCallL (from MAspActiveCallerObserver)
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::HandleActiveCallL(TInt /*aCallId*/)
-	{
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SetCurrentIndex
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::SetCurrentIndex()
-	{
-	TInt count = ListBox()->Model()->NumberOfItems();
-
-	if (count == 0)
-		{
-		iCurrentListBoxIndex = KErrNotFound;  // empty list
-		}
-	else
-		{
-		iCurrentListBoxIndex = ListBox()->CurrentItemIndex();
-		}
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::CurrentIndex
-//
-// -----------------------------------------------------------------------------
-//
-TInt CAspSettingDialog::CurrentIndex()
-	{
-	TInt count = ListBox()->Model()->NumberOfItems();
-	
-	if (count == 0)
-		{
-		iCurrentListBoxIndex = KErrNotFound;
-		}
-	else if (iCurrentListBoxIndex >= count)
-		{
-		iCurrentListBoxIndex = count-1; // last listbox item
-		}
-	else if (iCurrentListBoxIndex < 0)
-		{
-		iCurrentListBoxIndex = 0; // first listbox item
-		}
-		
-	return iCurrentListBoxIndex;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowCurrentProfileInfoL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowCurrentProfileInfoL()
-	{
-	TAspProfileItem& item = CurrentProfileL();
-	TBuf<KBufSize> buf;
-    iBearerHandler->GetBearerName(buf, item.iBearer);
-    HBufC* hBuf = CAspResHandler::ReadProfileInfoTextLC(item.iProfileName, buf);
-    ShowPopupNoteL(hBuf->Des());
-    CleanupStack::PopAndDestroy(hBuf);
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowCurrentProfileInfo
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowCurrentProfileInfo()
-	{
-	TRAP_IGNORE(ShowCurrentProfileInfoL());
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowAutoSyncProfileInfoL
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::ShowAutoSyncProfileInfo()
-	{
-	TBool ret = EFalse;
-	
-	TRAPD(err, ret = ShowAutoSyncProfileInfoL());
-
-#ifdef RD_DSUI_TIMEDSYNC
-	UpdateTabsL();	
-#endif
-	
-	if (err != KErrNone)
-		{
-		return EFalse;
-		}
-	return ret;
-	}
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowAutoSyncProfileInfoL
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::ShowAutoSyncProfileInfoL()
-	{
-	CAspSchedule* schedule = CAspSchedule::NewLC();
-	
-	if (!schedule->CanSynchronizeL())
-    	{
-   	    CleanupStack::PopAndDestroy(schedule);
-	    return EFalse;
-    	}
-	
-	TInt autoSyncError = schedule->Error();
-	if (autoSyncError != KErrNone)
-		{
-
-		TInt profileId = schedule->ProfileId();
-		TInt asProfileId = schedule->AutoSyncProfileId();
-		TAspParam param(iApplicationId, iSyncSession);
-		CAspProfile* asProfile = CAspProfile::NewLC(param);
-		asProfile->OpenL(asProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-		CAspProfile* profile = CAspProfile::NewLC(param);
-		profile->OpenL(profileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-
-		//display auto sync error query only if profile hasn't been manually synced after last auto sync
-		if (asProfile->LastSync() >= profile->LastSync())
-			{
-			if (autoSyncError == CAspAutoSyncHandler::EOtherSyncRunning)
-				{
-				HBufC* hBuf = CAspResHandler::ReadLC(R_ASP_MANUAL_SYNC_OVERRIDE);
-				_LIT(KEmpty, " ");
-				TDialogUtil::ShowMessageQueryL(KEmpty, hBuf->Des());
-   	   			CleanupStack::PopAndDestroy(hBuf);
-				}
-			else
-				{
-				HBufC* hBuf = CAspResHandler::ReadLC(R_ASP_POPUP_AUTO_SYNC_ERROR);
-				_LIT(KNewLine ,"\n");
-				TBuf<KBufSize> buf(hBuf->Des());
-				buf.Append(KNewLine);
-				CAspResHandler::ReadL(iBuf, R_ASP_MAIN_AUTO_ERROR_LOG_LINK);
-				buf.Append(iBuf);
-				CleanupStack::PopAndDestroy(hBuf);
-				hBuf = HBufC::NewLC(buf.Size());
-				TPtr ptr(hBuf->Des());
-				ptr = buf;
-
-			   	TDialogUtil::ShowAutoSyncMessageQueryL(hBuf->Des());
-	   	   		CleanupStack::PopAndDestroy(hBuf);
-				}
-	  	    
-   	    	schedule->SetError(KErrNone);
-   	    	schedule->SaveL();
-
-			CleanupStack::PopAndDestroy(profile);
-			CleanupStack::PopAndDestroy(asProfile);
-			CleanupStack::PopAndDestroy(schedule);
-   	    	return ETrue;
-			}
-		
-		CleanupStack::PopAndDestroy(profile);
-		CleanupStack::PopAndDestroy(asProfile);
-		
-		schedule->SetError(KErrNone);
-   	    schedule->SaveL();
-		}
-
-    
-    TTime nextSync;
-    schedule->GetStartTimeL(nextSync ,ETrue);
-
-    TInt profileIndex = iProfileList->ListIndex(schedule->ProfileId());
-    TAspProfileItem& item = iProfileList->Item(profileIndex); 
-    
-	HBufC* hBuf1 = CAspResHandler::ReadAutoSyncInfoTextLC( item.iProfileName, nextSync);
-	
-	TDialogUtil::ShowInformationNoteL(hBuf1->Des());
-   	CleanupStack::PopAndDestroy(hBuf1);
-    CleanupStack::PopAndDestroy(schedule);
-	return ETrue;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::ShowPopupNote
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::ShowPopupNoteL(const TDesC& aText) 
-    {
-    iPopupNote->SetTextL(aText);
-    iPopupNote->SetTimePopupInView(KSettingDialogPopupDisplayTime);    
-    iPopupNote->ShowInfoPopupNote();    
-    }
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::Listbox
-//
-// -----------------------------------------------------------------------------
-//
-CAknDoubleLargeStyleListBox* CAspSettingDialog::ListBox()
-	{
-	__ASSERT_DEBUG(iSettingListBox, TUtil::Panic(KErrGeneral));
-
-	return iSettingListBox;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::SyncRunning
-//
-// -----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::SyncRunning()
-	{
-    if (!iSyncHandler)
-		{
-		return EFalse;
-		}
-
-	if (iSyncHandler->SyncRunning())
-		{
-		return ETrue;
-		}
-
-	return EFalse;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateCbaL
-// 
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateCbaL(TInt aResourceId)
-    {
-    CEikButtonGroupContainer& cba = ButtonGroupContainer();
-    cba.SetCommandSetL(aResourceId);
-    cba.DrawDeferred();
-    }
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::CancelCheckboxEvent
-// 
-// ----------------------------------------------------------------------------
-//
-void CAspSettingDialog::CancelCheckboxEventL()
-	{
-	CListBoxView* view = iSettingListBox->View();
-    
-    TInt index = view->CurrentItemIndex();
-    TBool selected = view->ItemIsSelected(index);
-    if (selected)
-       	{
-        view->DeselectItem(index);
-       	}
-    else
-    	{
-    	view->SelectItemL(index);
-    	}
-    	
-    iSettingListBox->SetCurrentItemIndex(index);
-    //view->SetCurrentItemIndex(index);
-	}
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::CancelCheckboxEvent
-// 
-// ----------------------------------------------------------------------------
-//
-void CAspSettingDialog::CancelCheckboxEvent()
-	{
-	TRAP_IGNORE(CancelCheckboxEventL());
-	}
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::CheckEmailSelection
-// 
-// ----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::CheckEmailSelection()
-	{
-	TBool ret = ETrue;
-	
-	TRAPD(err, ret = CheckEmailSelectionL());
-	
-	if (err != KErrNone)
-		{
-		return ETrue;
-		}
-	
-	return ret;
-	}
-
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::CheckEmailSelectionL
-// 
-// ----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::CheckEmailSelectionL()
-	{
-	CListBoxView* view = iSettingListBox->View();
-	
-    TInt index = view->CurrentItemIndex();
-    TAspProviderItem& item = iContentList->ProviderItem(index);
-    TBool selected = view->ItemIsSelected(index);
-    
-    if (item.iDataProviderId != KUidNSmlAdapterEMail.iUid)
-    	{
-    	return ETrue;
-    	}
-        
-    if (!selected)
-    	{
-    	return ETrue;
-    	}
-    
-    iContentList->UpdateDataProviderL(item.iDataProviderId);
-    if (!item.iHasDefaultDataStore)
-    	{
-    	CancelCheckboxEvent();
-    	TDialogUtil::ShowErrorNoteL(R_ASP_NO_MAILBOXES);
-    	return EFalse;
-    	}
-    	
-    if (HasCurrentProfile())
-    	{
-    	TAspParam param(iApplicationId, iSyncSession);
-	    CAspProfile* profile = CAspProfile::NewLC(param);
-        profile->OpenL(iCurrentProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-      
-	    TInt num = profile->ProtocolVersion();
-	    CleanupStack::PopAndDestroy(profile);
-
-    	}
-    
-    	
-    
-    return ETrue;
-	}
-
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::IsProfileLockedL
-// Checks if a particular profile is already opened
-// ----------------------------------------------------------------------------
-//
-TBool CAspSettingDialog::IsProfileLockedL(TInt aProfileId)
-{
-	
-	TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-	
-	
-	TRAPD(err, profile->OpenL(aProfileId, CAspProfile::EOpenReadWrite,
-                                         CAspProfile::EAllProperties));
-                                         
-    
-	if (err == KErrLocked)
-		{
-		CleanupStack::PopAndDestroy(profile);
-		return ETrue;
-		}
-	else
-		{
-		CleanupStack::PopAndDestroy(profile);
-		return EFalse;
-		}
-	
-}
-// ----------------------------------------------------------------------------
-// CAspSettingDialog::UpdateMiddleSoftKeyLabelL
-// Update the MSK Label
-// ----------------------------------------------------------------------------
-//
-void CAspSettingDialog::UpdateMiddleSoftKeyLabelL(TInt aCommandId,TInt aResourceId)
-{
-	ButtonGroupContainer().RemoveCommandFromStack(KMSKControlId,aCommandId );
-	HBufC* middleSKText = StringLoader::LoadLC( aResourceId );
-
-	ButtonGroupContainer().AddCommandToStackL(
-	KMSKControlId,
-	aCommandId,
-	*middleSKText );
-	CleanupStack::PopAndDestroy( middleSKText );
-}
-
-#ifdef _DEBUG
-
-
-// -----------------------------------------------------------------------------
-// LogDatabaseEvent
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::LogDatabaseEvent(TAspDbEvent aEvent)
-	{
-	TBuf<KBufSize> buf;
-	
-    if (aEvent.iType == CAspDbNotifier::EClose)
-    	{
-    	FLOG( _L("### EClose: close setting dialog ###") );
-    	}
-    else if (aEvent.iType == CAspDbNotifier::EUpdate)
-    	{
-        TInt index = iProfileList->ListIndex(aEvent.iProfileId);
-        if (index != KErrNotFound)
-           	{
-           	TAspProfileItem& item = iProfileList->Item(index);
-            FTRACE( RDebug::Print(_L("EUpdate: %S (%d)"), &item.iProfileName, aEvent.iProfileId) );
-               
-            buf.Format(_L("EUpdate: %S"), &item.iProfileName);
-		    TUtil::Print(buf);
-           	}
-        else
-          	{
-           	FTRACE( RDebug::Print(_L("### EUpdate: profile not found (%d) ###"), aEvent.iProfileId) );
-           	TUtil::Print(_L("EUpdate: profile not found"));
-           	}
-    	}
-    else if (aEvent.iType == CAspDbNotifier::EDelete)
-    	{
-        TInt index = iProfileList->ListIndex(aEvent.iProfileId);
-        if (index != KErrNotFound)
-           	{
-           	TAspProfileItem& item = iProfileList->Item(index);
-		    FTRACE( RDebug::Print(_L("EDelete: %S (%d)"), &item.iProfileName, aEvent.iProfileId) );
-
-            buf.Format(_L("EDelete: %S"), &item.iProfileName);
-		    TUtil::Print(buf);
-           	}
-        else
-           	{
-           	FTRACE( RDebug::Print(_L("EDelete: profile not found (%d)"), aEvent.iProfileId) );
-           	TUtil::Print(_L("EDelete: profile not found"));
-           	}
-    	
-    	}
-    else if (aEvent.iType == CAspDbNotifier::EUpdateAll)
-    	{
-     	FLOG( _L("EUpdateAll: read all profiles") );
-     	TUtil::Print(_L("EUpdateAll: read all profiles"));
-    	}
-	}
-
-
-// -----------------------------------------------------------------------------
-// TestL
-//
-// -----------------------------------------------------------------------------
-//
-void CAspSettingDialog::TestL()
-    {
-    TAspParam param(iApplicationId, iSyncSession);
-	CAspProfile* profile = CAspProfile::NewLC(param);
-    profile->OpenL(iCurrentProfileId, CAspProfile::EOpenRead, CAspProfile::EAllProperties);
-      
-	TBuf<128> buf; TBuf<128> buf2;
-	profile->GetPassword(buf);
-	TInt len = buf.Length();
-	buf2.Format(_L("len = %d  text = %S"), len, &buf);
-	TDialogUtil::ShowMessageQueryL(_L("huu"), buf2);
-    CleanupStack::PopAndDestroy(profile);
-    
-    /*
-    CListBoxView* view = iSettingListBox->View();
-    const CListBoxView::CSelectionIndexArray* arr = view->SelectionIndexes();
-    TBuf<128> buf; TBuf<128> buf2;
-    TInt count = arr->Count();
-    for (TInt i=0; i<count; i++)
-     	{
-       	buf2.Format(_L("%d "), (*arr)[i]);
-       	buf.Append(buf2);
-       	}
-    TDialogUtil::ShowMessageQueryL(_L("huu"), buf);
-    */
-    
-    /*
-    HBufC* hBuf = iResHandler->ReadProgressTextLC(_L("qwerty ggggggggggggggggggggggg"), CAspState::EPhaseSending);
-    TDialogUtil::ShowMessageQueryL(_L("huu"), hBuf->Des());
-    CleanupStack::PopAndDestroy(hBuf);
-    
-    hBuf = iResHandler->ReadProgressTextLC(_L("qwerty ggggggggggggggggggggggg"), CAspState::EPhaseReceiving);
-    TDialogUtil::ShowMessageQueryL(_L("huu"), hBuf->Des());
-    CleanupStack::PopAndDestroy(hBuf);
-
-    hBuf = iResHandler->ReadProgressTextLC(_L("qwerty ggggggggggggggggggggggg"), 34);
-    TDialogUtil::ShowMessageQueryL(_L("huu"), hBuf->Des());
-    CleanupStack::PopAndDestroy(hBuf);
-    */
-    }
-
-
-#endif
-
-
-
-
-
-//  End of File