locationsystemui/locationsysui/locsuplsettingsui/src/locsuplsessioncontainer.cpp
branchRCL_3
changeset 44 2b4ea9893b66
parent 42 02ba3f1733c6
child 45 6b6920c56e2f
--- a/locationsystemui/locationsysui/locsuplsettingsui/src/locsuplsessioncontainer.cpp	Thu Aug 19 10:20:18 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,712 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  SUPL session UI View's container
-*
-*/
-
-
-// System Includes
-#include <eikspane.h> 						// Status pane
-#include <akntitle.h>   					// CAknTitlePane
-#include <aknlists.h>
-#include <StringLoader.h>
-#include <locsuplsettingsui.rsg>
-#include <csxhelp/locsupl.hlp.hrh>          // Help File
-#include <aknview.h>
-#include <eikmenub.h>
-#include <gulicon.h>
-#include <AknIconUtils.h>
-#include <AknIconArray.h>
-#include <eikclbd.h>
-#include <avkon.mbg>						// for select session (mark) icon
-#include <avkon.rsg>
-#include <eiklbx.h>
-#include <ErrorUI.h>
-#include <AknsUtils.h> 
-#include <aknapp.h>
-#include <locsuplsettings.mbg>				// for session NI/TI icon
-
-// User Includes
-#include "locsuplsettings.hrh"
-#include "locsuplsettingsuid.hrh"
-#include "locsuplsessioncontainer.h"
-#include "locsuplsessionview.h"
-#include "locsuplsessionlbmodel.h"
-#include "locsuplsettingsuiengine.h"
-#include "locsuplsettingseventhandler.h"
-#include "locsupldebug.h"
-
-// CONSTANT DEFINITIONS
-const TInt KIconArrayGranularity = 2; // The number of default icons
-_LIT( KLocSuplSettingsIconFileName, "locsuplsettings.mif" );
-
-
-// ========================= MEMBER FUNCTIONS ================================
-
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::CLocSUPLSessionContainer
-// Overloaded Constructor
-//
-// ---------------------------------------------------------------------------
-//	
-CLocSUPLSessionContainer::CLocSUPLSessionContainer( CLocSUPLSessionView* aView )
-    : iView( aView )
-	{
-	}
-	
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::~CLocSUPLSessionContainer
-// Destructor
-//
-// ---------------------------------------------------------------------------	
-//
-CLocSUPLSessionContainer::~CLocSUPLSessionContainer()
-	{
-	DEBUG( + CLocSUPLSessionContainer::~CLocSUPLSessionContainer );	
-	// Delete the List box model only after deleting the list box
-	delete iListBox;
-	iListBox = NULL;
-	
-	delete iListBoxModel;
-	iListBoxModel = NULL;
-	DEBUG( - CLocSUPLSessionContainer::~CLocSUPLSessionContainer );	
-	}
-	
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer* CLocSUPLSessionContainer::NewL
-// Static Two phase constructor that instantiates the CLocSUPLSessionContainer
-//
-// @param aRect							Client rectangle
-// @param aEngine                       Reference to the SUPL Settings
-//                                      engine 
-// @param aEventHandler                 Reference to the parent view
-// @return CLocSUPLSessionContainer*	Reference to the object created
-// ---------------------------------------------------------------------------    
-//
-CLocSUPLSessionContainer* CLocSUPLSessionContainer::NewL( 
-                    		const TRect&               	aRect,
-                          	CLocSUPLSettingsUiEngine&	aEngine,
-                          	CLocSUPLSessionView* 		aView )
-	{	
-	DEBUG( + CLocSUPLSessionContainer::NewL );	
-    CLocSUPLSessionContainer* self = NewLC( aRect, 
-                                           aEngine,
-                                           aView );
-	CleanupStack::Pop( self );
-	DEBUG( - CLocSUPLSessionContainer::NewL );	
-	return self;
-	}
-
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer* CLocSUPLSessionContainer::NewLC
-// Static Two phase contructor that instantiates the CLocSUPLSessionContainer
-//
-// @param aRect							Client rectangle
-// @param aEngine                       Reference to the SUPL Settings
-//                                      engine 
-// @param aEventHandler                 Reference to the parent view
-// @return CLocSUPLSessionContainer*	Reference to the object created
-// ---------------------------------------------------------------------------  
-//  
-CLocSUPLSessionContainer* CLocSUPLSessionContainer::NewLC( 
-                    		const TRect&               	aRect,
-                          	CLocSUPLSettingsUiEngine&	aEngine,
-                          	CLocSUPLSessionView* 		aView )
-	{	
-    CLocSUPLSessionContainer* self = new ( ELeave ) CLocSUPLSessionContainer(
-                                                        aView );
-	CleanupStack::PushL( self );
-	self->ConstructL( aRect, aEngine );
-	return self;
-	}
-
-// --------------------------------------------------------------------------- 
-// void CLocSUPLSessionContainer::ConstructL
-// Second phase of the two phase Construction process
-//
-// @param aRect				 Client rectangle
-// @param aEngine            Reference to the SUPL Settings engine
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::ConstructL( 
-                                    const TRect& 	aRect ,
-                                    CLocSUPLSettingsUiEngine&     aEngine )
-	{
-	DEBUG( + CLocSUPLSessionContainer::ConstructL );	
-	//Make this control a window-owning control
-	CreateWindowL(); 
-	
-	// Create a New Title for the View
-	MakeTitleL( R_LOC_SUPL_SERVICES_TITLE );
-	
-	CreateListboxL( aEngine );
-	
-	// Get the Help context
-	iContextName = KLOC_HLP_SUPL();
-	
-    SetRect( aRect );
-    ActivateL();
-	DEBUG( - CLocSUPLSessionContainer::ConstructL );	
-	}	
-
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::UpdateScreenL
-// Refreshes the screen so that the list box reflects the latest contents
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::UpdateScreenL()
-    {
-	DEBUG( + CLocSUPLSessionContainer::UpdateScreenL );	
-	
-	TInt oldCount 	= SessionIds().Count();	
-	TInt64 sessionId;
-	if( iSelectedIndex != KErrNotFound && SessionIds().Count() > iSelectedIndex )
-		{
-		sessionId = SessionIds()[ iSelectedIndex ];		
-		}
-	
-	if ( iListBoxModel )
-		{
-		iListBoxModel->UpdateSessionIdsL();
-		}    
-		
-    TInt newCount 	= SessionIds().Count();
-    
-    if ( iListBox )
-        {
-    	// Update Listbox items
-        if( newCount <= 0 || newCount == oldCount )
-        	{
-         	TRAP_IGNORE( iListBox->HandleItemAdditionL() );
-	    	TRAP_IGNORE( iListBox->HandleItemRemovalL() );       	
-        	}
-        else if( newCount > oldCount )
-        	{
-        	// notify the listbox for item addition 
-        	TRAP_IGNORE( iListBox->HandleItemAdditionL() );
-
-        	// set focus to newly added item
-			TInt index = iListBox->CurrentItemIndex();	
-			if( index == 0 && newCount == 1 )
-				{
-				iListBox->SetCurrentItemIndex( 0 );	
-				}
-			else
-				{
-				iListBox->SetCurrentItemIndex( newCount - 1 );	
-				}
-        	}
-        else if( newCount < oldCount )
-        	{
-        	// notify the listbox for item deletion 
-	    	TRAP_IGNORE( iListBox->HandleItemRemovalL() );
-			
-        	// set focus at last selected item or index			
-			if( iSelectedIndex > newCount-1 )
-				{
-				iListBox->SetCurrentItemIndex( newCount - 1 );
-				}
-			else
-				{
-				TInt newIndex = SessionIds().Find( sessionId );
-				if( newIndex != KErrNotFound )
-					{
-					iListBox->SetCurrentItemIndex( newIndex );
-					}
-				else
-					{
-					iListBox->SetCurrentItemIndex( iSelectedIndex );				
-					}				
-				}
-        	}
-        }        
-    DrawDeferred();
-	DEBUG( - CLocSUPLSessionContainer::UpdateScreenL );	
-    }
-
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::HandleResourceChange
-//
-// ---------------------------------------------------------------------------	
-void CLocSUPLSessionContainer::HandleResourceChange(TInt aType)
-	{
-	DEBUG( + CLocSUPLSessionContainer::HandleResourceChange );	
-	// Pass the event to the base class
-	CCoeControl::HandleResourceChange(aType);
-    switch( aType )
-    	{
-    	// Dynamic Layout switch
-    	case KEikDynamicLayoutVariantSwitch:
-    		{
-    		SetRect( iView->ClientRect() );
-			break;
-    		}
-    	default:
-    		{
-    		break;
-    		}
-    	}
-	DEBUG( - CLocSUPLSessionContainer::HandleResourceChange );	
-	}
-
-// -----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::GetHelpContext
-//
-// -----------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-	DEBUG( + CLocSUPLSessionContainer::GetHelpContext );	
-    aContext.iContext = iContextName;
-    aContext.iMajor = TUid::Uid( KLOCSUPLSETTINGSUIUID3 );
-	DEBUG( - CLocSUPLSessionContainer::GetHelpContext );	
-    }
-    
-// ---------------------------------------------------------------------------
-// TInt CLocSUPLSessionContainer::CountComponentControls
-//
-// ---------------------------------------------------------------------------
-TInt CLocSUPLSessionContainer::CountComponentControls() const
-	{
-	return 1;
-	}
-
-// ---------------------------------------------------------------------------
-// CCoeControl* CLocSUPLSessionContainer::ComponentControl
-//
-// ---------------------------------------------------------------------------
-CCoeControl* CLocSUPLSessionContainer::ComponentControl( TInt /*aIndex*/ ) const
-	{
-	return iListBox;	
-	}
-
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::OfferKeyEventL
-//
-// ---------------------------------------------------------------------------	
-//
-TKeyResponse CLocSUPLSessionContainer::OfferKeyEventL( const TKeyEvent& aKeyEvent,
-										   					  TEventCode aType )
-	{
-	TKeyResponse keyresponse = EKeyWasNotConsumed;
-	
-    // Now handle the Key Event based on the Key type
-    switch ( aKeyEvent.iScanCode )
-        {            
-        case EStdKeyUpArrow:
-        case EStdKeyDownArrow:
-            {
-            keyresponse = iListBox->OfferKeyEventL( aKeyEvent, aType );
-            iView->ChangeMSKL();
-            return keyresponse;         
-            }
-        case EStdKeyBackspace:
-        case EStdKeyDelete:
-            {
-            if(aType == EEventKey )
-                {
-                keyresponse = iListBox->OfferKeyEventL( aKeyEvent, aType );
-                iView->HandleCommandL( ELocSuplSessionTerminate ); 
-                }
-            return keyresponse;               
-            }
-        case EStdKeyHash:
-            {
-            TBool shiftKeyPressed = ( aKeyEvent.iModifiers & EModifierShift );
-            keyresponse = iListBox->OfferKeyEventL( aKeyEvent, aType );
-            if( aType == EEventKeyUp && ( EKeyWasConsumed == keyresponse || !shiftKeyPressed ) )
-                iView->ChangeMSKL();
-            return keyresponse;    
-            }
-        default:
-            {
-            break;  
-            }
-        }
-
-    // now it's iListBox's job to process the key event
-    return iListBox->OfferKeyEventL( aKeyEvent, aType ); 
-	}
-	    
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::HandleListBoxEventL
-//
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::HandleListBoxEventL( CEikListBox*  /* aListBox */, 
-		 						   					 TListBoxEvent aEventType )
-	{
-	DEBUG( + CLocSUPLSessionContainer::HandleListBoxEventL );	
-	switch ( aEventType )
-        {
-        case EEventItemClicked:
-            {
-            // The item is just selected here. Change the MSK to reflect
-            // the Correct MSK value
-            iView->ChangeMSKL();
-            break;    
-            }
-        // List box Item Selection
-        case EEventEnterKeyPressed:
-        case EEventItemSingleClicked:
-            {
-            if( SelectedCount() )
-                {
-                //display menu specific to editor
-                ShowContextMenuL();
-                }
-            else
-                {
-                iView->HandleCommandL( ELocSuplSessionOpen );   
-                }
-            break;	
-            }
-        default:
-           break;
-        }
-	DEBUG( - CLocSUPLSessionContainer::HandleListBoxEventL );	
-	}
-	         		 	
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::FocusChanged
-//
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::FocusChanged( TDrawNow aDrawNow )
-	{
-	CCoeControl::FocusChanged( aDrawNow );
-	// The focus event has to be explicitly handed over to all the compound
-	// controls since CCoeControl does not do that implicitly
-	if ( iListBox )
-		{
-		iListBox->SetFocus( IsFocused(), aDrawNow );				
-		}
-	}
-		
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::SizeChanged
-// 
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::SizeChanged()
-	{
-	if ( iListBox )
-		{
-		iListBox->SetRect( Rect() );
-		}
-	}
-	
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::MakeTitleL
-// Sets the Title text
-//
-// @param aResourceText Resource to create title
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::MakeTitleL( TInt aResourceText )
-	{
-	DEBUG( + CLocSUPLSessionContainer::MakeTitleL );	
-	// Obtain the title from the Status Pane
-	CAknTitlePane* title = static_cast < CAknTitlePane* >( StatusPane()->
-        ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );
-       
-    // Set the Title's buffer    
-    HBufC* buf = StringLoader::LoadL( aResourceText );
-    title->SetText( buf ); // Takes ownership of buf
-	DEBUG( - CLocSUPLSessionContainer::MakeTitleL );	
-	}
-
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::StatusPane
-// Returns the Appui's status pane
-//
-// @return CEikStatusPane* Statuspane pointer
-// ---------------------------------------------------------------------------
-//
-CEikStatusPane* CLocSUPLSessionContainer::StatusPane()
-	{
-	return iEikonEnv->AppUiFactory()->StatusPane();	
-	}
-
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::CreateListboxL
-// Creates the List box and the Listbox model. Associates the list box model 
-// with the list box
-//
-// @param aEngine                       Reference to the SUPL Settings
-//                                      engine 
-// ---------------------------------------------------------------------------	
-//
-void CLocSUPLSessionContainer::CreateListboxL( 
-                                    CLocSUPLSettingsUiEngine&     aEngine )
-	{
-	DEBUG( + CLocSUPLSessionContainer::CreateListboxL );	
-	// Create the Listbox model
-    iListBoxModel = CLocSUPLSessionLBModel::NewL( aEngine );
-	
-	// CAknSingleGraphicStyleListBox	"0\tTextLabel\t1\t2"
-	
-    iListBox = new ( ELeave ) CAknSingleGraphicStyleListBox;
-	iListBox->ConstructL( 
-						this, 
-						#ifdef RD_SCALABLE_UI_V2
-						EAknListBoxStylusMarkableList
-						#else
-						EAknListBoxMarkableList
-						#endif //RD_SCALABLE_UI_V2
-						);
-    // Set the container control.
-	iListBox->SetContainerWindowL( *this );
-    // Add scrollbars to listbox
-	iListBox->CreateScrollBarFrameL( ETrue );
-	iListBox->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff,
-														 CEikScrollBarFrame::EAuto );
-    // Icon array, needed only if listbox style is single number with graphic.
-    CAknIconArray* icons = new( ELeave ) CAknIconArray( KIconArrayGranularity );
-    CleanupStack::PushL( icons );
-
-    TFileName avkonIconFile = AknIconUtils::AvkonIconFileName();
-	
-    TRAP_IGNORE( AddIconL(   *icons, 
-                avkonIconFile,
-                KAknsIIDQgnIndiMarkedAdd, 
-                EMbmAvkonQgn_indi_marked_add, 
-                EMbmAvkonQgn_indi_marked_add_mask ) );
- 	
-	TFileName *iconFile = IconFileNameLC();
-    
-    TRAP_IGNORE( AddIconL(   *icons, 
-                *iconFile,
-                KAknsIIDQgnPropRadiobuttOff, 
-                EMbmLocsuplsettingsQgn_loc_server_disabled, 
-                EMbmLocsuplsettingsQgn_loc_server_disabled_mask ) );
-    
-    TRAP_IGNORE( AddIconL(   *icons, 
-                *iconFile,
-                KAknsIIDQgnPropRadiobuttOff, 
-                EMbmLocsuplsettingsQgn_loc_server_disabled, 
-                EMbmLocsuplsettingsQgn_loc_server_disabled_mask ) );
- 	
- 	CleanupStack::PopAndDestroy( iconFile );
-	
-    iListBox->ItemDrawer()->ColumnData()->SetIconArray( icons );
-    CleanupStack::Pop( icons );        
-    
-    // Set the model & observer
-    iListBox->SetListBoxObserver( this  );
-
-    iListBox->Model()->SetItemTextArray( iListBoxModel );
-    iListBox->Model()->SetOwnershipType( ELbmDoesNotOwnItemArray );									
-    iListBox->ActivateL();   
-	DEBUG( - CLocSUPLSessionContainer::CreateListboxL );	
-	}
-
-// -----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::AddIconL
-// -----------------------------------------------------------------------------
-void CLocSUPLSessionContainer::AddIconL( CAknIconArray&  aIcons,
-                                           const TDesC&    aIconFileWithPath,
-                                           TAknsItemID     aSkinID,
-                                           TInt            aIconGraphicsIndex,
-                                           TInt            aIconGraphicsMaskIndex )
-    {
-	DEBUG( + CLocSUPLSessionContainer::AddIconL );	
-    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-  
-    CFbsBitmap* bitmap = NULL;
-    CFbsBitmap* bitmapMask = NULL;
-    
-    TRAPD( err, AknsUtils::CreateIconL( skin,
-                            aSkinID,
-                            bitmap,
-                            bitmapMask,
-                            aIconFileWithPath,
-                            aIconGraphicsIndex,
-                            aIconGraphicsMaskIndex ) );
-
-    if(err != KErrNone)
-        {
-        TRAP( err, AknIconUtils::CreateIconL( bitmap,
-                                bitmapMask,
-                                aIconFileWithPath,
-                                aIconGraphicsIndex,
-                                aIconGraphicsMaskIndex ) );
-        }
-    User::LeaveIfError( err );
-    
-    CleanupStack::PushL( bitmap );
-    CleanupStack::PushL( bitmapMask );
-    
-    CGulIcon* icon = CGulIcon::NewL( bitmap, bitmapMask );
-    
-    // Remove the Bitmap and the Bitmap Icon from the Clean up stack since 
-    // the ownership is taken over by the icon
-    CleanupStack::Pop( bitmapMask );
-    CleanupStack::Pop( bitmap ); 
-    
-    CleanupStack::PushL( icon );
-    aIcons.AppendL( icon );
-    CleanupStack::Pop( icon ); // icon
-	DEBUG( - CLocSUPLSessionContainer::AddIconL );	
-    }
-
-// -----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::IconFileNameLC
-// -----------------------------------------------------------------------------
-TFileName* CLocSUPLSessionContainer::IconFileNameLC() const
-    {
-    TFileName* fileName = new(ELeave) TFileName;
-    CleanupStack::PushL( fileName );
-    
-	TFileName* tmpName = new(ELeave) TFileName;
-    CleanupStack::PushL( tmpName );
-	
-    tmpName->Append( KDC_BITMAP_DIR );
-    tmpName->Append( KLocSuplSettingsIconFileName );
-
-    CEikAppUi *appUi = ( CEikAppUi *)( CEikonEnv::Static()->AppUi());
-    TFileName appDrive = appUi->Application()->AppFullName();
-    
-    TParse parse;
-    User::LeaveIfError( parse.Set( appDrive, NULL, NULL ) );
-    User::LeaveIfError( parse.Set( parse.Drive(), tmpName, NULL ) );
-    
-	fileName->Copy(parse.FullName());
-
-    CleanupStack::PopAndDestroy( tmpName );
-
-    return fileName;
-    }    
-  
-// ----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::ListBoxL()
-// ----------------------------------------------------------------------------
-//
-CEikListBox& CLocSUPLSessionContainer::ListBoxL()
-    {
-    User::LeaveIfNull( iListBox );
-    return *iListBox;
-    }
-
-// -----------------------------------------------------------------------------
-// TInt CLocSUPLSessionContainer::SelectedItemIndex
-// Returns the Selected element. The list box model defines the enumeration that
-// would determine the current element that has been selected
-//
-// @return TInt Index of the item selected
-// -----------------------------------------------------------------------------
-//
-TInt CLocSUPLSessionContainer::SelectedItemIndex()
-    {
-    return iListBox->CurrentItemIndex();
-    }
-    
-// ---------------------------------------------------------------------------
-// void CLocSUPLSessionContainer::FocusToSessionDetailL
-// Focus move to server detail setting item
-//
-// ---------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::FocusToSessionDetailL( TInt aIndex )
-	{
-		iListBox->SetCurrentItemIndex( aIndex );
-	}
-				       
-// ----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::CurrentSessionId()
-// ----------------------------------------------------------------------------
-//
-TInt64 CLocSUPLSessionContainer::CurrentSessionId()
-	{
-	if( SelectedItemIndex() != KErrNotFound && SelectedItemIndex() < SessionCount() )
-		return iListBoxModel->SessionIds()[ SelectedItemIndex() ];
-	else
-		return KErrNotFound;
-	}
-
-// ----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::SelectedCount()
-// ----------------------------------------------------------------------------
-//
-TInt CLocSUPLSessionContainer::SelectedCount()
-	{
-	return iListBox->SelectionIndexes()->Count();
-	}
-
-// ----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::SessionCount()
-// ----------------------------------------------------------------------------
-//
-TInt CLocSUPLSessionContainer::SessionCount()
-	{
-	return iListBox->Model()->NumberOfItems();
-	}
-
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::SessionIds()
-// returns server id array
-//
-// ---------------------------------------------------------------------------
-//  
-RArray<TInt64>& CLocSUPLSessionContainer::SessionIds()
-	{
-	return iListBoxModel->SessionIds();
-	}
-
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::SetIndex()
-// sets the current selected item
-//
-// ---------------------------------------------------------------------------
-//  
-void CLocSUPLSessionContainer::SetSelectedIndex()
-	{
-	iSelectedIndex = SelectedItemIndex();
-	}
-
-// ---------------------------------------------------------------------------
-// CLocSUPLSessionContainer::CurrentSessionName()
-// Get the currently focused session name
-//
-// ---------------------------------------------------------------------------
-//  
-TPtrC CLocSUPLSessionContainer::CurrentSessionName()
-	{
-	if( SelectedCount() == 1 )
-		return iListBoxModel->SessionName( iListBox->SelectionIndexes()->At(0) );
-	else
-		return iListBoxModel->SessionName( SelectedItemIndex() );
-	}
-
-// -----------------------------------------------------------------------------
-// CLocSUPLSessionContainer::ShowContextMenuL
-// Shows context specific options menu
-// -----------------------------------------------------------------------------
-//
-void CLocSUPLSessionContainer::ShowContextMenuL()
-    {
-	DEBUG( + CLocSUPLSessionContainer::ShowContextMenuL );	
-	
-	// Switch to Context specific options menu,
-	// Show it and switch back to main options menu.
-	CEikMenuBar* menuBar = iView->MenuBar();
-	// TRAP displaying of menu bar.
-	// If it fails, the correct resource is set back before leave.
-	TRAPD( err, menuBar->TryDisplayContextMenuBarL() );
-	User::LeaveIfError( err );
-	
-	DEBUG( - CLocSUPLSessionContainer::ShowContextMenuL );	
-    }
-
-// End of file