basiclocationinfodisplay/blid/ui/src/CBlidBaseContainer.cpp
branchRCL_3
changeset 17 1fc85118c3ae
parent 16 8173571d354e
child 18 870918037e16
--- a/basiclocationinfodisplay/blid/ui/src/CBlidBaseContainer.cpp	Thu Aug 19 09:48:36 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,328 +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:  Provides Blid request container class methods.
-*
-*/
-
-
-// INCLUDE FILES
-#include <akncontext.h> 
-#include <aknnavide.h> 
-#include <eikspane.h> 
-#include <barsread.h> 
-#include <akntabgrp.h>
-#include <AknIconArray.h>
-#include <gulicon.h>
-#include <StringLoader.h> 
-#include <akntitle.h> 
-#include <eiklbx.h> 
-#include <avkon.hrh>
-#include <coehelp.h>
-#include <AknsUtils.h>
-#include <akntabgrp.h>
-#include <blid.mbg>
-#include "CBlidBaseContainer.h"
-#include "MKeyProcessor.h"
-#include "BlidUID.h"
-#include "bliduiconsts.h"
-#include "Blidutils.h"
-#include "Blid.hrh"
-#include "CBlidAppUi.h"
-
-TBool CBlidBaseContainer::iGPSAvailability = EFalse;
-// ================= MEMBER FUNCTIONS =======================
-// ----------------------------------------------------
-// CBlidBaseContainer::CBlidBaseContainer
-// First phase constructor, can not leave
-// ----------------------------------------------------
-//
-CBlidBaseContainer::CBlidBaseContainer(
-    MKeyProcessor& aKeyProcessor,
-    const TDesC& aHelpContext )
-    :iKeyProcessor(aKeyProcessor)
-    {
-    iContextName = aHelpContext;
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::~CBlidBaseContainer
-// Destructor, frees allocated resources
-// ----------------------------------------------------
-//
-CBlidBaseContainer::~CBlidBaseContainer()
-    {
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::ActivateTabL
-// Activates a tab specified bt tab id
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::ActivateTabL( 
-                         CAknNavigationDecorator& aNaviDecorator,
-                         TInt aTabId )
-    {
-    CEikStatusPane* sp = iEikonEnv->AppUiFactory()->StatusPane();    
-    CAknNavigationControlContainer* naviPane =
-        static_cast<CAknNavigationControlContainer*>(
-        sp->ControlL(TUid::Uid(EEikStatusPaneUidNavi)));
-    CAknTabGroup* tabGroup = static_cast<CAknTabGroup*>( 
-        aNaviDecorator.DecoratedControl() );
-    tabGroup->SetActiveTabById( aTabId );
-    naviPane->PushL( aNaviDecorator );
-    }
-
-
-// ----------------------------------------------------
-// CBlidBaseContainer::GetHelpContext
-// Get the help context for the application
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::GetHelpContext( TCoeHelpContext& aContext ) const
-    {
-    aContext.iContext = iContextName;
-    aContext.iMajor = TUid::Uid(KBLIDUID3);
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::OfferKeyEventL
-// Handles the key event
-// ----------------------------------------------------
-//
-TKeyResponse CBlidBaseContainer::OfferKeyEventL(
-                    const TKeyEvent& aKeyEvent,
-                    TEventCode aType)
-    {
-    CEikStatusPane* sp = StatusPane();
-    // Fetch pointer to the default navi pane control
-    CAknNavigationControlContainer* naviPane = 
-        static_cast<CAknNavigationControlContainer*>(sp->ControlL( 
-        TUid::Uid(EEikStatusPaneUidNavi)));
-    CAknNavigationDecorator* naviDecorator = naviPane->Top();
-
-    // Check if navigation pane controls exists, because decorator does 
-    // not exist in every cases. E.g. after contact fetch in "new rule" 
-    // command operation naviDecorator is null. 
-    if ( naviDecorator && naviDecorator->ControlType() == 
-        CAknNavigationDecorator::ETabGroup )
-        {
-        if ( naviDecorator->DecoratedControl()->OfferKeyEventL( 
-            aKeyEvent, aType ) == EKeyWasConsumed )
-            {
-            return EKeyWasConsumed;
-            }
-        }    
-
-    if ( iKeyProcessor.ProcessKeyEventL( aKeyEvent, aType ) == 
-        EKeyWasConsumed )
-        {
-        return EKeyWasConsumed;
-        }
-
-    for ( TInt i = 0; i < CountComponentControls(); i++ )
-        {
-        if ( ComponentControl(i)->OfferKeyEventL( aKeyEvent, aType ) == 
-            EKeyWasConsumed )
-            {
-            return EKeyWasConsumed;
-            }
-        }
-    
-    return EKeyWasNotConsumed;    
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::HandleResourceChange
-// Handles the change in app resource
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::HandleResourceChange(TInt aType)
-    {
-    CCoeControl::HandleResourceChange(aType);
-    if( aType == KAknsMessageSkinChange )
-        {        
-        static_cast<CBlidAppUi*>(iCoeEnv->AppUi())->SkinChange();
-        }
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::CreateNaviPaneL
-// Creates the navigation pane
-// ----------------------------------------------------
-//
-CAknNavigationDecorator* CBlidBaseContainer::CreateNaviPaneL( 
-                                             TBool aDefaultNaviPane )
-    {    
-    CEikStatusPane* sp = StatusPane();
-    if( !sp )
-    	{
-    	User::Leave( KErrGeneral );
-    	}
-    // Fetch pointer to the default navi pane control
-    CAknNavigationControlContainer* naviPane = 
-        static_cast<CAknNavigationControlContainer*>(sp->ControlL( 
-        TUid::Uid(EEikStatusPaneUidNavi)));
-    if( !naviPane )
-    	{
-    	User::Leave( KErrGeneral );
-    	}
-    CAknNavigationDecorator* decorator = NULL;
-    if ( aDefaultNaviPane ) // dummy tab
-        {        
-        naviPane->PushDefaultL(EFalse);
-        }
-    else
-        {              
-        decorator = naviPane->CreateTabGroupL(iKeyProcessor.TabObserver());
-        decorator->SetControlType( CAknNavigationDecorator::ETabGroup );
-        CAknTabGroup* tabGroup = 
-        static_cast< CAknTabGroup* > ( decorator->DecoratedControl() );        
-        AddTabsL( *tabGroup );        
-        }
-    return decorator;
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::AddIconL
-// Add icon
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::AddIconL
-        ( CAknIconArray* aIcons,
-          const TAknsItemID aSkinID,
-          const TDesC& aIconFileWithPath,
-          TInt aIconGraphicsIndex,
-          TInt aIconGraphicsMaskIndex )
-    {
-    CFbsBitmap *bitmap = NULL;    
-    CFbsBitmap* mask = NULL; 
-    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-    AknsUtils::CreateIconLC( skin,
-                            aSkinID,
-                            bitmap,
-                            mask,
-                            aIconFileWithPath,
-                            aIconGraphicsIndex,
-                            aIconGraphicsMaskIndex );
-    
-    // Append it to icons array
-	CGulIcon* icon = CGulIcon::NewL( bitmap, mask );
-    CleanupStack::Pop( 2 ); // mask, bitmap. icon has now ownership
-	CleanupStack::PushL( icon );
-	aIcons->AppendL( icon );
-    CleanupStack::Pop( ); // icon
-
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::MakeTitleL
-// Sets the title to text specified by a resource
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::MakeTitleL( TInt aResourceText )
-    {
-    HBufC* buf = StringLoader::LoadLC(aResourceText);       
-    CAknTitlePane* title = static_cast<CAknTitlePane*>( StatusPane()->
-                            ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );
-    CleanupStack::Pop(); //buf
-    title->SetText(buf); // Takes ownership of buf
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::MakeEmptyTextListBoxL
-// 
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::MakeEmptyTextListBoxL( 
-                CEikListBox* aListBox,
-                TInt aResourceText )
-    {
-    HBufC* textFromResourceFile;
-    textFromResourceFile = 
-        StringLoader::LoadLC( aResourceText, iCoeEnv );        
-    aListBox->View()->SetListEmptyTextL( *textFromResourceFile );
-    CleanupStack::PopAndDestroy();  // textFromResourceFile.
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::StatusPane
-// Returns the status pane
-// ----------------------------------------------------
-//
-CEikStatusPane* CBlidBaseContainer::StatusPane()
-    {
-    return iEikonEnv->AppUiFactory()->StatusPane();
-    }
-
-// ----------------------------------------------------
-// CBlidBaseContainer::AddTabsL
-// Adds the tabs
-// ----------------------------------------------------
-//
-void CBlidBaseContainer::AddTabsL(CAknTabGroup& aTabGroup)
-    {
-    aTabGroup.SetTabFixedWidthL(EAknTabWidthWithTwoTabs);
-	MAknsSkinInstance* skin = AknsUtils::SkinInstance(); 
-    HBufC* filename = BlidUtils::GetBitmapFilenameLC();        
-    CFbsBitmap* bitmap = NULL;
-    CFbsBitmap* bitmapMask = NULL;
-        
-    //Add tab icon 1
-    AknsUtils::CreateIconLC( skin,
-                            KAknsIIDQgnPropBlidNavigationTab3,
-                            bitmap,
-                            bitmapMask,
-                            *filename,
-                            EMbmBlidQgn_prop_blid_navigation_tab3,
-                            EMbmBlidQgn_prop_blid_navigation_tab3_mask );             
-    aTabGroup.AddTabL( EBlidNavigationView, bitmap, bitmapMask );
-    CleanupStack::Pop(2); //bitmap, bitmapmask
-
-    //Add tab icon 2
-    AknsUtils::CreateIconLC( skin,
-                            KAknsIIDQgnPropBlidTripTab3,
-                            bitmap,
-                            bitmapMask,
-                            *filename,
-                            EMbmBlidQgn_prop_blid_trip_tab3,
-                            EMbmBlidQgn_prop_blid_trip_tab3_mask );             
-    aTabGroup.AddTabL( EBlidTripMeterView, bitmap, bitmapMask );
-    CleanupStack::Pop(2); //bitmap, bitmapmask
-
-    
-    
-    CleanupStack::PopAndDestroy(); //filename
-    }
-
-// ---------------------------------------------------------
-// CBlidBaseContainer::SetGPSAvailability
-// Sets the GPS availability to ETrue or EFalse
-// ---------------------------------------------------------
-//
-void CBlidBaseContainer::SetGPSAvailability(const TBool aAvailability)
-    {
-    iGPSAvailability = aAvailability;
-    }
-
-// ---------------------------------------------------------
-// CBlidBaseContainer::IsGPSAvailable
-// Checks if GPS is available
-// ---------------------------------------------------------
-//
-TBool CBlidBaseContainer::IsGPSAvailable() 
-    {
-    return iGPSAvailability;
-    }
-
-// End of File