apengine/apsettingshandlerui/src/ApSelectorDialog.cpp
changeset 61 8b0c979bbe8c
parent 59 2709c04a4af5
child 70 ac5daea24fb0
--- a/apengine/apsettingshandlerui/src/ApSelectorDialog.cpp	Fri Sep 03 09:38:26 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,964 +0,0 @@
-/*
-* Copyright (c) 2002 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: 
-*     Defines dialog CApSelectorDialog for access point selection.
-*
-*/
-
-
-// INCLUDE FILES
-#include "APSettingsHandlerUIVariant.hrh"
-
-#include <aknnavide.h>
-#include <akntitle.h>
-#include <eikmenup.h>
-
-#include <ApListItem.h>
-#include <apsetui.rsg>
-
-#include <featmgr.h>
-
-#include "ApSelectorDialog.h"
-#include "ApSelectorListBoxModel.h"
-#include "ApSelectorListbox.h"
-#include "ApSettingsModel.h"
-#include "ApsettingshandleruiImpl.h"
-#include "ApSettingsHandlerUI.hrh"
-#include "TextOverrides.h"
-
-#include "ApSettingsHandlerLogger.h"
-
-#include <VpnApEngine.h>
-// CONSTANTS
-
-
-
-// ================= MEMBER FUNCTIONS =======================
-// ---------------------------------------------------------
-// CApSelectorDialog::ConstructAndRunLD
-// Constructs the dialog and runs it.
-// ---------------------------------------------------------
-//
-TInt CApSelectorDialog::ConstructAndRunLD( CApSettingsModel& aModel,
-                                          CApSettingsHandlerImpl& aHandler,
-                                          TUint32 aHighLight,
-                                          TUint32& aSelected )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::ConstructAndRunLD")
-    
-    CleanupStack::PushL( this );
-
-    FeatureManager::InitializeLibL();
-    iHelpSupported = FeatureManager::FeatureSupported( KFeatureIdHelp );
-    FeatureManager::UnInitializeLib();
-
-#ifdef __TEST_OOMDEBUG
-    RFs fs;
-    User::LeaveIfError( fs.Connect() );
-    CleanupClosePushL<RFs>( fs );
-    TUint att;
-    if ( fs.Att( KTestFileName, att ) == KErrNone )
-        {
-        iMemTestOn = ETrue;
-        }
-    else
-        {
-        iMemTestOn = EFalse;
-        }
-    CleanupStack::PopAndDestroy(); // fs, will also close it
-#endif // __TEST_OOMDEBUG
-
-
-    TInt retValue = KErrNone;
-
-    iHighLight = aHighLight;
-    iSelected = &aSelected;
-
-    iDataModel = &aModel;
-    iHandler = &aHandler;
-    iVariant = iHandler->iExt->iVariant;
-
-    TInt aMenuTitleResourceId;
-    switch ( iSelMenuType )
-        {
-        case EApSettingsSelMenuSelectOnly:
-            {
-            aMenuTitleResourceId = R_APSETTINGSUI_SELECT_ONLY_MENUBAR;
-            break;
-            }
-        case EApSettingsSelMenuSelectNormal:
-            {
-            aMenuTitleResourceId = R_APSETTINGSUI_SELECT_NORMAL_MENUBAR;
-            break;
-            }
-        case EApSettingsSelMenuNormal:
-        default: // defensive ! treat all error cases like normal!
-            {
-            aMenuTitleResourceId = R_APSETTINGSUI_NORMAL_MENUBAR;
-            break;
-            }
-        }
-    ConstructL( aMenuTitleResourceId );
-
-    TInt aDlgResourceId;
-    switch ( iListType )
-        {
-        case EApSettingsSelListIsPopUp:
-        case EApSettingsSelListIsPopUpWithNone:
-            {
-            aDlgResourceId = R_APSELECTOR_POPUP_DIALOG;
-            break;
-            }
-        case EApSettingsSelListIsListPane:
-        default:// defensive ! treat all error cases like normal!
-            {
-            aDlgResourceId = R_APSELECTOR_PANE_DIALOG;
-            break;
-            }
-        }
-
-    iModel = new( ELeave )CApSelectorListboxModel;
-    
-    TBool islocked;
-    iDataModel->AllListItemDataL( islocked, *iModel, iIspFilter,
-                                  iBearerFilter, iSortType,
-                                  iReqIpvType );
-    
-
-    if ( !iModel->Count() )
-        {
-        // no ap defined, ask query if editable,
-        // show note if not
-        if ( iNoEdit )
-            {
-            // show note first, 
-            ShowNoteL( R_APUI_VIEW_NO_IAP_DEFINED_INFO );
-            // then simply go back:
-            User::Leave(KLeaveWithoutAlert);
-            }
-        else
-            {        
-            // no ap defined, ask query
-            if ( !AskQueryL( R_APUI_IAP_CREATE_NEW ) )
-                { // do not create, simply go back
-                User::Leave(KLeaveWithoutAlert);
-                }
-            else
-                { // create new AP
-                // just ket it pass, later in it will be handled in CheckIfEmptyL()
-                }
-            }
-        }
-    
-    CleanupStack::Pop();  // this, it will be PushL-d by executeLD...
-
-    retValue = ExecuteLD( aDlgResourceId );
-
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::ConstructAndRunLD")
-
-    return retValue;
-    }
-
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::~CApSelectorDialog
-// Destructor
-// ---------------------------------------------------------
-//
-CApSelectorDialog::~CApSelectorDialog()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::~CApSelectorDialog")
-    
-    if ( iDataModel )
-        {
-        if ( iDataModel->Database() )
-            {
-            iDataModel->Database()->RemoveObserver( this );
-            }
-        }
-
-    // iModel is deleted by the ListBox because LB owns the model...
-    // of course only after we passed ownership...
-    if ( !iModelPassed )
-        {
-        delete iModel;
-        }
-    if ( iNaviDecorator )
-        {
-        delete iNaviDecorator;
-        }
-    if ( iTitlePane )
-        {
-        // set old text back, if we have it...
-        if ( iOldTitleText )
-            {
-            if ( iExitReason != EShutDown )
-                {
-                TRAP_IGNORE( iTitlePane->SetTextL( *iOldTitleText ) );
-                }
-            delete iOldTitleText;
-            }
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::~CApSelectorDialog")
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::NewLC
-// Two-phase dconstructor, second phase is ConstructAndRunLD
-// ---------------------------------------------------------
-//
-CApSelectorDialog* CApSelectorDialog::NewL(
-                                        TSelectionListType aListType,
-                                        TSelectionMenuType aSelMenuType,
-                                        TInt aIspFilter,
-                                        TInt aBearerFilter,
-                                        TInt aSortType,
-                                        TUint32& aEventStore,
-                                        TBool aNoEdit,
-                                        TInt aReqIpvType
-                                        )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::NewL")
-    
-    CApSelectorDialog* db =
-        new ( ELeave )CApSelectorDialog( aListType, aSelMenuType,
-                                         aIspFilter, aBearerFilter,
-                                         aSortType, aEventStore,
-                                         aNoEdit,
-                                         aReqIpvType );
-
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::NewL")
-    return db;
-    }
-
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::CApSelectorDialog
-// Constructor
-// ---------------------------------------------------------
-//
-CApSelectorDialog::CApSelectorDialog( TSelectionListType aListType,
-                                      TSelectionMenuType aSelMenuType,
-                                      TInt aIspFilter,
-                                      TInt aBearerFilter,
-                                      TInt aSortType,
-                                      TUint32& aEventStore,
-                                      TBool aNoEdit,
-                                      TInt aReqIpvType
-                                     )
-:iListType( aListType ),
-iSelMenuType( aSelMenuType ),
-iIspFilter( aIspFilter ),
-iBearerFilter( aBearerFilter ),
-iSortType( aSortType ),
-iEventStore( &aEventStore ),
-iNeedUnlock( EFalse ),
-iModelPassed( EFalse ),
-iExitReason( EExitNone ),
-iReqIpvType( aReqIpvType ),
-iInitialised( EFalse ),
-iNoEdit(aNoEdit)
-    {
-
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::InitTextsL
-// called before the dialog is shown
-// to initialize localized textual data
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::InitTextsL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::InitTextsL")
-    
-    // set pane text if neccessary...
-    // pane text needed if not pop-up...
-    __ASSERT_DEBUG( iTextOverrides, Panic( ENullPointer ) );
-    if ( iListType == EApSettingsSelListIsListPane )
-        {
-        iStatusPane = iEikonEnv->AppUiFactory()->StatusPane();
-        iTitlePane =
-            ( CAknTitlePane* )iStatusPane->ControlL(
-                                TUid::Uid( EEikStatusPaneUidTitle ) );
-
-        iOldTitleText = iTitlePane->Text()->AllocL();
-        iTitlePane->SetTextL( 
-                        *iEikonEnv->AllocReadResourceLC( R_APUI_NAVI_AP ) );
-
-        CleanupStack::PopAndDestroy(); // resource R_APUI_NAVI_AP
-
-        iNaviPane = ( CAknNavigationControlContainer* ) 
-                        iStatusPane->ControlL( 
-                                TUid::Uid( EEikStatusPaneUidNavi ) );
-        iNaviDecorator = iNaviPane->CreateNavigationLabelL( KEmpty );
-        iNaviPane->PushL( *iNaviDecorator );
-        }
-        
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::InitTextsL")
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::HandleListboxDataChangeL
-// called before the dialog is shown to initialize listbox data
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::HandleListboxDataChangeL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::HandleListboxDataChangeL")
-    
-    iPreferredLine = iList->CurrentItemIndex();
-    if ( iPreferredLine < 0 )
-        {
-        iPreferredLine = 0;
-        }
-    if ( !iPreferredUid )
-        { // if not specified explicitly, get current and use as 'preferred'
-        if ( iPreferredLine >= 0 )
-            {
-            if ( iModel->Count() )
-                {
-                iPreferredUid = iModel->At( iPreferredLine )->Uid();
-                }
-            }
-        }
-
-
-    TBool isLocked(EFalse);
-    iNeedUnlock = EFalse;
-    iDataModel->AllListItemDataL( isLocked, *iModel, iIspFilter,
-                                  iBearerFilter, iSortType,
-                                  iReqIpvType );
-    if ( isLocked )
-        {
-        iNeedUnlock = ETrue;
-        }
-
-    iList->View()->SetDisableRedraw( ETrue );
-    iList->HandleItemAdditionL();
-
-    SetHighlighted();
-
-    iList->View()->SetDisableRedraw( EFalse );
-    iList->HandleItemAdditionL();
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::HandleListboxDataChangeL")
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::SetTextOverrides
-// called by framework before dialog is shown
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::SetTextOverrides( CTextOverrides *aOverrides )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::SetTextOverrides<->")
-    
-    __ASSERT_DEBUG( aOverrides, Panic( ENullPointer ) );
-    iTextOverrides = aOverrides;
-    }
-
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::CheckIfEmptyL()
-// called on activation and after the db has changed
-// used to handle empty list - query
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::CheckIfEmptyL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::CheckIfEmptyL")
-    
-    if ( !iModel->Count() )
-        {
-        ProcessCommandL( EApSelCmdNewBlank );
-        }
-    iInitialised = ETrue;
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::CheckIfEmptyL")
-    }
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::ActivateL()
-// called after the dialog is shown
-// used to handle empty list - query
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::ActivateL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::ActivateL")
-    
-    CAknDialog::ActivateL();
-    // put empty list checking & required actions here.
-    CheckIfEmptyL();
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::ActivateL")
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::GetHelpContext()
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::GetHelpContext(TCoeHelpContext& aContext) const
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::GetHelpContext<->")
-    
-    aContext.iMajor = iHandler->iHelpMajor;
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::HandleApDbEventLw
-// called by the active access point framework
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::HandleApDbEventL( TEvent anEvent )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::HandleApDbEventL")
-    
-    switch ( anEvent )
-        {
-        case EDbChanged:
-            {
-            HandleListboxDataChangeL();
-            break;
-            }
-        case EDbClosing:
-            {
-            break;
-            }
-        case EDbAvailable:
-            {
-            if ( iNeedUnlock )
-                {
-                HandleListboxDataChangeL();
-                }
-            break;
-            }
-        default:
-            {
-            __ASSERT_DEBUG( EFalse, Panic( EUnknownCase ) );
-            break;
-            }
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::HandleApDbEventL")
-    }
-
-
-
-// From MEikCommandObserver
-void CApSelectorDialog::ProcessCommandL( TInt aCommandId )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::ProcessCommandL")
-    
-    if ( MenuShowing() )
-        {
-        HideMenu();
-        }
-    DoProcessCommandL( aCommandId );
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::ProcessCommandL")
-    }
-
-
-
-
-// From MEikListBoxObserver
-void CApSelectorDialog::HandleListBoxEventL( CEikListBox* /*aListBox*/,
-                                             TListBoxEvent aEventType )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::HandleListBoxEventL")
-    
-    switch ( aEventType )
-        {
-        case EEventItemSingleClicked:            
-        case EEventEnterKeyPressed:
-            // both handled in the same way for now...
-        case EEventItemDoubleClicked:
-            {
-            ProcessCommandL( EApSelCmdOpen );
-            break;
-            }
-        case EEventItemClicked:
-            {
-            break;
-            }
-        case EEventEditingStarted:
-            {
-            break;
-            }
-        case EEventEditingStopped:
-            {
-            break;
-            }
-        default:
-            {
-            };
-        };
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::HandleListBoxEventL")
-    }
-
-
-
-//----------------------------------------------------------
-// CApSelectorDialog::CreateCustomControlL
-//----------------------------------------------------------
-//
-SEikControlInfo CApSelectorDialog::CreateCustomControlL
-( TInt aControlType )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::CreateCustomControlL")
-    
-    SEikControlInfo controlInfo;
-    controlInfo.iTrailerTextId = 0;
-    controlInfo.iFlags = 0;
-    if ( aControlType == KApSelectorListboxType )
-        {
-        controlInfo.iControl = new ( ELeave ) CApSelectorListbox;
-        }
-    else
-        {
-        controlInfo.iControl = NULL;
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::CreateCustomControlL")
-    return controlInfo;
-    }
-
-
-//----------------------------------------------------------
-// CApSelectorDialog::DynInitMenuPaneL
-//----------------------------------------------------------
-//
-void CApSelectorDialog::DynInitMenuPaneL( TInt aResourceId,
-                                         CEikMenuPane* aMenuPane )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::DynInitMenuPaneL")
-    
-    CAknDialog::DynInitMenuPaneL( aResourceId, aMenuPane );
-
-    TInt itemCount = iList->Model()->NumberOfItems();
-//    TUint32 itemUid = iModel->At( iList->CurrentItemIndex() )->Uid();
-
-    TUint32 itemUid(0);
-    if ( itemCount > 0 )
-        {
-        itemUid = iModel->At( iList->CurrentItemIndex() )->Uid();
-        }
-
-    if ( iHandler->iModel->Need2DeleteSelect( aResourceId, itemCount ) )
-        {
-        aMenuPane->DeleteMenuItem( EApSelCmdSelect );
-        }
-    if ( iHandler->iModel->Need2DeleteOpen( aResourceId, itemCount, 
-                                            itemUid, EFalse ) )
-        {
-        aMenuPane->DeleteMenuItem( EApSelCmdOpen );
-        }
-    if ( iHandler->iModel->Need2DeleteDeleteL( aResourceId, itemCount, 
-                                               itemUid, EFalse ) )
-        {
-        aMenuPane->DeleteMenuItem( EApSelCmdDelete );
-        }
-    if ( iHandler->iModel->Need2DeleteNewUseExisting( aResourceId, 
-                                                      itemCount ) )
-        {
-        aMenuPane->DeleteMenuItem( EApSelCmdNewUseExisting );
-        }
-    if ( iHandler->iModel->Need2DeleteNewL( aResourceId ) )
-        {
-        aMenuPane->DeleteMenuItem( EApSelCmdNewBlank );
-        }
-
-    if ( iHandler->iModel->Need2DeleteHelp( aResourceId ) )
-        {
-        aMenuPane->DeleteMenuItem( EAknCmdHelp );
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::DynInitMenuPaneL")
-    }
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::OfferKeyEventL();
-// ---------------------------------------------------------
-//
-TKeyResponse CApSelectorDialog::OfferKeyEventL(const TKeyEvent& aKeyEvent,
-                                               TEventCode aType)
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::OfferKeyEventL")
-    
-    TKeyResponse retval( EKeyWasConsumed );
-    if ( ( aType == EEventKey ) &&
-         ( ( aKeyEvent.iCode == EKeyDelete ) ||
-           ( aKeyEvent.iCode == EKeyBackspace ) ) )
-        {
-        if (!iNoEdit)
-            {
-            ProcessCommandL( EApSelCmdDelete );
-            }
-        }
-    else
-        {
-        if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyOK ) )
-            { // process only if command is available...
-            if ( iList->Model()->NumberOfItems() > 0)
-                {
-                if (!iNoEdit)
-                    {
-                    ProcessCommandL( EApSelCmdOpen );
-                    }
-                }
-            }
-        else
-            {
-            if ( iList )
-                {
-                // as list IS consuming, must handle because
-                // it IS the SHUTDOWN...
-                // or, a view switch is shutting us down...
-                if ( aKeyEvent.iCode == EKeyEscape )
-                    {
-                    ProcessCommandL( EEikCmdExit );
-                    retval = EKeyWasConsumed;
-                    }
-                else
-                    {
-                    retval = iList->OfferKeyEventL( aKeyEvent, aType );
-                    }
-                }
-            else
-                {
-                retval = CAknDialog::OfferKeyEventL( aKeyEvent, aType );
-                }
-            }
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::OfferKeyEventL")
-    return retval;
-    }
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::PreLayoutDynInitL();
-// called by framework before dialog is shown
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::PreLayoutDynInitL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::PreLayoutDynInitL")
-    
-    iList =
-        STATIC_CAST( CApSelectorListbox*, Control( KApSelectorListboxId ) );
-    iList->CreateScrollBarFrameL( ETrue );
-    iList->ScrollBarFrame()->SetScrollBarVisibilityL
-        ( CEikScrollBarFrame::EOff, CEikScrollBarFrame::EAuto );
-    iList->SetListBoxObserver( this );
-
-    iList->Model()->SetItemTextArray( iModel );
-    iModelPassed = ETrue;
-    iList->LoadIconsL();
-    HandleListboxDataChangeL();
-    iList->HandleItemAdditionL();
-    InitTextsL();
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::PreLayoutDynInitL")
-    }
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::PreLayoutDynInitL();
-// called by framework before dialog is shown
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::PostLayoutDynInitL()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::PostLayoutDynInitL")
-    
-    iDataModel->Database()->AddObserverL( this );
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::PostLayoutDynInitL")
-    }
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::OkToExitL( TInt aButtonId )
-// called by framework when the OK button is pressed
-// ---------------------------------------------------------
-//
-TBool CApSelectorDialog::OkToExitL( TInt aButtonId )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::OkToExitL")
-    
-    // Translate the button presses into commands for the appui & current
-    // view to handle
-    TBool retval( EFalse );
-
-    if ( aButtonId == EAknSoftkeyOptions )
-        {
-        if ( iSelMenuType == EApSettingsSelMenuSelectOnly )
-            {
-            *iSelected = iList->CurrentItemUid();
-            retval = ETrue;
-            }
-        else
-            {
-            DisplayMenuL();
-            }
-        }
-    else if (aButtonId == EApSelCmdOpen)
-        {
-        ProcessCommandL(aButtonId);
-        retval = EFalse; // don't exit the dialog
-        }
-    else
-        {
-        retval = ETrue;
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::OkToExitL")
-    return retval;
-    }
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::SetHighlighted()
-// called when needs to change the highlighting
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::SetHighlighted()
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::SetHighlighted")
-    
-    TBool done( EFalse );
-
-    if ( iPreferredUid )
-        {
-        TInt err( KErrNone );
-        TInt idx = iModel->Item4Uid( iPreferredUid, err );
-        // if UID exists, set as current, else set 0 as current.
-        if ( err == KErrNone )
-            {
-            iList->SetCurrentItemIndexAndDraw( idx );
-            iPreferredUid = 0;
-            done = ETrue;
-            }
-        }
-    if ( !done )
-        { // try to use iPreferredLine, as previous selection had been deleted
-        TInt count( iModel->Count() );
-        if ( count <= iPreferredLine )
-            {
-            // less elements, preferred line is out of the screen, 
-            // select last one
-            if ( count )
-                {
-                iList->SetCurrentItemIndexAndDraw( count - 1 );
-                }
-            else
-                {
-                iList->SetCurrentItemIndexAndDraw( 0 );
-                }
-            done = ETrue;
-            }
-        else
-            { // count > iPreferredLine, select preferred line
-            iList->SetCurrentItemIndexAndDraw( iPreferredLine );
-            done = ETrue;
-            }
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::SetHighlighted")
-    }
-
-
-
-
-
-
-// ---------------------------------------------------------
-// CApSelectorDialog::DoProcessCommandL
-// called when needs to change the highlighting
-// ---------------------------------------------------------
-//
-void CApSelectorDialog::DoProcessCommandL( TInt aCommandId )
-    {
-    APSETUILOGGER_ENTERFN( EDialog,"SelDIalog::DoProcessCommandL")
-    
-    switch ( aCommandId )
-        {
-        case EApSelCmdSelect:
-            {
-            *iSelected = iList->CurrentItemUid();
-            *iEventStore |= KApUiEventSelected;
-            iPreferredUid = iList->CurrentItemUid();
-            SetHighlighted();
-            // Can not exit here, as it would delete this,
-            // Exit will be handled at the end of this function!
-            // TryExitL( EAknSoftkeyBack );
-            break;
-            }
-        case EApSelCmdOpen:
-            {
-            // when using __UHEAP_MARK;/MARKEND, TitlePane old text setback is
-            // reported as a mem. leak, but it is not as the lifetime of 
-            // the text is longer than this part.
-            iPreferredUid = iList->CurrentItemUid();
-            iHandler->DoRunViewerL( iPreferredUid );
-            break;
-            }
-        case EApSelCmdNewBlank:
-            { // put the new's UID into iPreferredUid to set highlight onto it
-            // when using __UHEAP_MARK;/MARKEND, TitlePane old text setback is
-            // reported as a mem. leak, but it is not as the lifetime of 
-            // the text is longer than this part.
-            iPreferredUid =
-                    iHandler->HandleApBlankNewL( iBearerFilter, iIspFilter );
-            SetHighlighted();
-            break;
-            }
-        case EApSelCmdNewUseExisting:
-            { // put the new's UID into iPreferredUid to set highlight onto it
-            // when using __UHEAP_MARK;/MARKEND, TitlePane old text setback is
-            // reported as a mem. leak, but it is not as the lifetime of 
-            // the text is longer than this part.
-            iPreferredUid = 
-                    iHandler->HandleDuplicateL( iList->CurrentItemUid() );
-            SetHighlighted();
-            break;
-            }
-        case EApSelCmdDelete:
-            { 
-            // put the UID of the next Ap into iPreferredUid to set 
-            // highlight onto it...
-            // if next does not exists, put it onto prev.
-            // if no next & no prev. exists, set it to 0 (don't care).
-            // As it might have been started by the Clear key,
-            // we must check if there is any...
-            if ( iModel->Count() )
-                {
-                // As we must be standing on an item, it must exist...
-                // So no problem on iModel->At( ...)
-                if ( iList->CurrentItemIndex() < ( iModel->Count()-1 ) )
-                    {
-                    // move to next one if possible
-                    iPreferredUid =
-                        iList->Uid4Item( iList->CurrentItemIndex()+1 );
-                    }
-                else
-                    {
-                    // if it is the last, move to previous if possible.
-                    // if not, set to 0
-                    if ( iModel->Count()> 1 )
-                        {
-                        // move to prev. one if possible
-                        iPreferredUid =
-                            iList->Uid4Item( iList->CurrentItemIndex()-1 );
-                        }
-                    else
-                        {
-                        iPreferredUid = 0;
-                        }
-                    }
-                iHandler->HandleApDeleteCmdL( iList->CurrentItemUid(),
-                                              iModel->Count() == 1 );
-                }
-            break;
-            }
-        case EAknCmdHelp:
-            {
-			if ( iHelpSupported )
-				{
-            	iDataModel->LaunchHelpL();
-				}
-            break;
-            }
-        default:
-            {
-            // silently ignore it
-            break;
-            }
-        }
-    // check if user wants to exit...
-    if ( *iEventStore & KApUiEventExitRequested )
-        {
-        if ( iInitialised )
-            {                        
-            TryExitL( EAknSoftkeyBack );
-            }
-        else
-            {
-            *iEventStore |= KApUiEventInternal;
-            User::Leave(KLeaveWithoutAlert);
-            }
-        }
-    else
-        { // handle possible exit reasons/request here.
-        switch ( aCommandId )
-            {
-            case EApSelCmdSelect:
-                {
-                TryExitL( EAknSoftkeyBack );
-                break;
-                }
-            case EApSelCmdExit:
-                {
-                iExitReason = EExit;
-                *iEventStore |= KApUiEventExitRequested;
-                TryExitL( EAknSoftkeyBack );
-                break;
-                }
-            case EEikCmdExit:
-                {
-                iExitReason = EShutDown;
-                *iEventStore |= KApUiEventShutDownRequested;
-                TryExitL( EAknSoftkeyBack );
-                break;
-                }
-            default:
-                {
-                break;
-                }
-            }
-        }
-    
-    APSETUILOGGER_LEAVEFN( EDialog,"SelDIalog::DoProcessCommandL")
-    }
-
-
-
-// End of File
-