--- 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