diff -r 8173571d354e -r 1fc85118c3ae basiclocationinfodisplay/blid/ui/src/CBlidMainControl.cpp --- a/basiclocationinfodisplay/blid/ui/src/CBlidMainControl.cpp Thu Aug 19 09:48:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,726 +0,0 @@ -/* - * Copyright (c) 2007-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: Provides blid startup view class methods. - * - */ - -// SYSTEM INCLUDES -#include //CAknMessageQueryDialog -#include -#include -#include -#include -#include -#include -#include -#include -#include - -// HTK includes -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "Blid.hrh" - -// USER INCLUDES -#include "CBlidMainControl.h" -#include "CBlidEng.h" -#include "CBlidDocument.h" -#include "MBlidLocation.h" -#include "CBlidBaseView.h" -#include "CBlidBaseContainer.h" -#include "bliduiconsts.h" -#include "BlidNotes.h" -#include "CBlidLocSettingLauncher.h" -#include "Debug.h" - -TInt CBlidMainControl::iPSYTimeoutCount = 0; - -TInt MessageQueryCallBack(TAny* aPtr); - -const TInt KTimerValue = 200000; - -// ================= MEMBER FUNCTIONS ======================= -// --------------------------------------------------------- -// CBlidMainControl::NewL() -// Two phased constructor -// --------------------------------------------------------- -// -CBlidMainControl* CBlidMainControl::NewL(CAlfEnv& aEnv, const TRect& aRect, - CBlidBaseView& aView) - { - CBlidMainControl* self = new (ELeave) CBlidMainControl(aEnv, aView); - CleanupStack::PushL(self); - self->ConstructL(aRect); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------- -//CBlidMainControl::CBlidMainControl() -// First phase constructor, can not leave -// --------------------------------------------------------- -// -CBlidMainControl::CBlidMainControl(CAlfEnv& aEnv, CBlidBaseView& aView) : - CAlfControl(), iEnv(aEnv), iView(aView), isAccessoryRequired(EFalse) - { - iOnlineMode = EFalse; - } - -// --------------------------------------------------------- -// CBlidMainControl::ConstructL() -// Second phase constructor, may leave -// --------------------------------------------------------- -// -void CBlidMainControl::ConstructL(const TRect& /*aRect*/) - { - CAlfControl::ConstructL(iEnv); - - iMainLayout = CAlfAnchorLayout::AddNewL(*this); - iSearchTextVisual = CAlfTextVisual::AddNewL(*this, iMainLayout); - iAnimationVisual = CAlfImageVisual::AddNewL(*this, iMainLayout); - - iDisplayIcon = 1; - iPeriodic = CPeriodic::NewL(0); // neutral priority - if (!iPeriodic->IsActive()) - { - iPeriodic->Start(TTimeIntervalMicroSeconds32(KTimerValue), - TTimeIntervalMicroSeconds32(KTimerValue), TCallBack(Tick, - this)); - } - - UpdateDisplayLayoutL(); - CreateSearchingTextL(); - CreateAnimationL(); - UpdateAnimation(); - - iLauncher = NULL; - isSettingsLaunched = EFalse; - - //start requesting - CBlidEng* engine = iView.BlidDocument()->Engine(); - iLocation = engine->LocationModel(); - } - -// --------------------------------------------------------- -// CBlidMainControl::Tick() -// Timer callback function, to update image in animation -// --------------------------------------------------------- -// -TInt CBlidMainControl::Tick(TAny* aObject) - { - ((CBlidMainControl*) aObject)->UpdateAnimation(); // cast, and call non-static function - return KErrNone; - } - -// --------------------------------------------------------- -// CBlidMainControl::CreateSearchingTextL() -// Function to create search text visual -// --------------------------------------------------------- -// -void CBlidMainControl::CreateSearchingTextL() - { - /* Layout Hierarchy - main_blid2_pane -> blid2_search_pane -> blid2_search_pane_t1 - */ - - // Get the text font - - TInt typefaceStyleId = iEnv.TextStyleManager().CreatePlatformTextStyleL( - EAknLogicalFontPrimarySmallFont, EAlfTextStyleNormal); - CAlfTextStyle* style1 = - iEnv.TextStyleManager().TextStyle(typefaceStyleId); - style1->SetBold(ETrue); - // Set the text font size in pixel - style1->SetTextPaneHeightInPixels(26, ETrue); - - TRgb rgb; - // Fetch the skin color - AknsUtils::GetCachedColor(AknsUtils::SkinInstance(), rgb, - KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG1); - - iSearchTextVisual->SetColor(rgb); - HBufC* noteText = StringLoader::LoadLC(R_BLID_NOTE_SEARCHING_ANIMATION, - CEikonEnv::Static()); - iSearchTextVisual->SetTextL(*noteText); - iSearchTextVisual->SetTextStyle(style1->Id()); - iSearchTextVisual->SetAlign(EAlfAlignHCenter, EAlfAlignVCenter); - CleanupStack::PopAndDestroy(noteText); //noteText - - } - -// --------------------------------------------------------- -// CBlidMainControl::CreateAnimationL() -// Creates image visuals for animation -// --------------------------------------------------------- -// -void CBlidMainControl::CreateAnimationL() - { - /* Layout Hierarchy - main_blid2_pane -> blid2_search_pane -> blid2_search_pane_g1 - */ - - // code to load svg icon - MAlfBitmapProvider* provider = NULL; - - // first creste the image loader utils and then call SetSize. - iView.ImageLoaderUtils()->SetSize(iAnimationRect.Size()); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_01, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_01_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture1 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture1); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_02, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_02_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture2 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture2); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_03, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_03_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture3 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture3); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_04, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_04_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture4 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture4); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_05, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_05_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture5 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture5); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_06, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_06_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture6 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture6); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_07, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_07_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture7 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture7); - - // then create the bitmap provider - provider = iView.ImageLoaderUtils()->CreateImageLoaderL( - KAknsIIDQgnGrafBlidStartup, // svg icon skin constant id defiened in Aknsconstant.h file - iView.ImagePathName(), // mif file name with path. - EMbmBlidQgn_graf_blid_startup_08, // bitmap id defiened in mbg file - EMbmBlidQgn_graf_blid_startup_08_mask); // bitmap mask id defiened in mbg file - // now using that bitmap provider create the texture. - CAlfTexture & texture8 = iEnv.TextureManager().CreateTextureL( - KAlfAutoGeneratedTextureId, provider, EAlfTextureFlagDefault); - iTextures.Append(&texture8); - - } - -// --------------------------------------------------------- -// CBlidMainControl::UpdateAnimation -// updates the animation image -// --------------------------------------------------------- -// -void CBlidMainControl::UpdateAnimation() - { - if (KNumOfStartUpIcon > iDisplayIcon) - { - iDisplayIcon++; - } - else - { - iDisplayIcon = 1; - } - iAnimationVisual->SetImage(TAlfImage(*iTextures[iDisplayIcon - 1]));//N - } - -// ---------------------------------------------------- -// CBlidMainControl::~CBlidMainControl -// Destructor -// Frees reserved resources -// ---------------------------------------------------- -// -CBlidMainControl::~CBlidMainControl() - { - iTextures.Reset(); - iTextures.Close(); - delete iLauncher; - delete iHeadPaneText; - delete iMsgQueryText; - delete iLinkText; - delete iMsgQText; - delete iPeriodic; - } - -// --------------------------------------------------------- -// CBlidMainControl::UpdateL -// Updates the view after getting update from location model -// --------------------------------------------------------- -// -void CBlidMainControl::UpdateL() - { - TInt result = 0; - DEBUG1(" CBlidMainControl::UpdateL iErrorCode ::%d", iErrorCode ); - - if (!iView.IsSatViewActive() && iOnlineMode) - { - - if (iView.IsForeGroundApp()) - { - iView.ActivateSatelliteViewL(); - } - } - TInt retVal = iLocation->CheckGPSAvailability(); - // Check GPS device availability - DEBUG1(" CBlidMainControl::CheckGPSAvailability code ::%d", retVal ); - switch (iErrorCode) - { - case KErrTimedOut: - { - if (retVal == 1) - { - /* - GPS device connected but position information - available but not of good quality - */ - if (iView.IsForeGroundApp()) - { - iView.ActivateSatelliteViewL(); - } - } - break; - } - case KErrNotFound: - // No module (PSY) selected or invalid PSY - { - iOnlineMode = EFalse; - if (iView.IsForeGroundApp()) - { - iLocation->StopRequesting(); - TCallBack callback(MessageQueryCallBack, this); - result - = DispMsgQueryWithLinkL(R_BLID_NOGPS_FOUND, - R_BLID_NOGPS_FOUND_TEXT, - R_BLID_SELECT_POSITIONING_METHOD, ETrue, - callback); - if (result == EBlidSoftkeyRetry) - { - iLocation->StartRequesting(); - } - else if (result == EAknSoftkeyOk) - { - iView.ExitMainApplicationL(EEikCmdExit); - } - } - break; - } - case KPositionPartialUpdate: - { - if (iView.IsForeGroundApp()) - { - iView.ActivateSatelliteViewL(); - } - break; - } - case KErrArgument: - // The positioning module is unable to support the requested type - default: - { - iOnlineMode = EFalse; - - if (retVal == 0) - { - if (iLocation->IsSatCapablePsyAvailable()) - { - iLocation->StopRequesting(); - iOnlineMode = EFalse; - TCallBack callback(MessageQueryCallBack, this); - result = DispMsgQueryWithLinkL(R_BLID_NOPSY_ENABLED, - R_BLID_ERROR_NO_PSY, - R_BLID_SELECT_POSITIONING_METHOD, ETrue, - callback); - if (result == EBlidSoftkeyRetry) - { - iLocation->StartRequesting(); - } - else if (result == EAknSoftkeyOk) - { - iView.ExitMainApplicationL(EEikCmdExit); - } - } - // no GPS device note - // GPS un-available - else if (iView.IsForeGroundApp()) - { - iLocation->StopRequesting(); - TCallBack callback(MessageQueryCallBack, this); - isAccessoryRequired = ETrue; - result = DispMsgQueryWithLinkL(R_BLID_NOGPS_FOUND, - R_BLID_NOGPS_AVAILABLE_TEXT, - R_BLID_SELECT_POSITIONING_METHOD, EFalse, - callback); - if (result == EAknSoftkeyOk) - { - iView.ExitMainApplicationL(EEikCmdExit); - } - } - else - { - BlidNotes::iGPSUnavailableDisplayed = ETrue; - } - CBlidBaseContainer::SetGPSAvailability(EFalse); - } - break; - - } - } - } - -// ---------------------------------------------------- -// CBlidMainControl::MakeTitleL -// Sets the title to string represented by resource -// ---------------------------------------------------- -// -void CBlidMainControl::MakeTitleL(TInt aResourceText) - { - HBufC* buffer = StringLoader::LoadLC(aResourceText); - CAknTitlePane* title = - static_cast (StatusPane()-> ControlL(TUid::Uid( - EEikStatusPaneUidTitle))); - CleanupStack::Pop(); //buffer - title->SetText(buffer); // Takes ownership of buf - } - -// ---------------------------------------------------- -// CBlidMainControl::StatusPane -// Returns the status pane -// ---------------------------------------------------- -// -CEikStatusPane* CBlidMainControl::StatusPane() const - { - return CEikonEnv::Static()->AppUiFactory()->StatusPane(); - } - -// ---------------------------------------------------- -// CBlidMainControl::SetErrorCode -// Sets the error code -// ---------------------------------------------------- -// -void CBlidMainControl::SetErrorCode(const TInt aErrorCode) - { - iErrorCode = aErrorCode; - } - -// ---------------------------------------------------- -// CBlidMainControl::SetOnlineMode -// Sets the online mode -// ---------------------------------------------------- -// -void CBlidMainControl::SetOnlineMode(const TBool aOnlineMode) - { - iOnlineMode = aOnlineMode; - } - -// ---------------------------------------------------- -// CBlidMainControl::DispMsgQueryWithLinkL() -// Displays the message query with a link -// ---------------------------------------------------- -// -TInt CBlidMainControl::DispMsgQueryWithLinkL(TInt aHeadingText, - TInt aMsgQueryText, TInt aLinkText, TBool aLinkShow, - TCallBack aCallBack) - { - CEikonEnv* env = CEikonEnv::Static(); - if (!iHeadPaneText) - { - iHeadPaneText = env->AllocReadResourceL(aHeadingText); - } - - if (!iMsgQueryText) - { - iMsgQueryText = env->AllocReadResourceL(aMsgQueryText); - } - - if (!iLinkText) - { - iLinkText = env->AllocReadResourceL(aLinkText); - } - if (!iMsgQText) - { - if (aLinkShow != EFalse) - { - iMsgQText = HBufC::NewL(iMsgQueryText->Length() - + KNewLine().Length() + KOpeningLinkTag().Length() - + iLinkText->Length() + KClosingLinkTag().Length()); - } - else - { - iMsgQText = HBufC::NewL(iMsgQueryText->Length() - + KNewLine().Length() + KOpeningLinkTag().Length()); - } - } - - iMsgQText->Des().Copy(*iMsgQueryText); - iMsgQText->Des().Append(KNewLine); - if (!isAccessoryRequired) - { - iMsgQText->Des().Append(KOpeningLinkTag); - iMsgQText->Des().Append(*iLinkText); - iMsgQText->Des().Append(KClosingLinkTag); - } - else - { - iMsgQText->Des().Append(_L( " ")); - } - ////////////////////////////////////////////////////// - CAknMessageQueryDialog* msgDlg = CAknMessageQueryDialog::NewL(*iMsgQText); - - // if we remove this if part it will give CONE8 panic - if (iDialog) - { - delete iDialog; - iDialog = NULL; - } - - iDialog = msgDlg; - - msgDlg->PrepareLC(R_BLID_MESSAGE_QUERY_DIALOG); // Pushed dialog is popped inside RunLD - - msgDlg->Heading()->SetTextL(*iHeadPaneText); - - msgDlg->SetLink(aCallBack); - - if (!isAccessoryRequired) - { - msgDlg->ButtonGroupContainer().SetCommandSetL( - R_BLID_INFOPOPUP_SOFTKEYS_RETRY__EXIT); - } - else - { - msgDlg->ButtonGroupContainer().SetCommandSetL( - R_BLID_INFOPOPUP_SOFTKEYS_EXIT); - } - isDialogLaunched = ETrue; - TInt retval = msgDlg->RunLD(); - if (isDialogLaunched) - { - msgDlg = NULL; - iDialog = NULL; - isDialogLaunched = EFalse; - return retval; - } - return -1; - } - -// ---------------------------------------------------- -// CBlidMainControl::CreateNaviPaneL -// Creates navigation pane -// ---------------------------------------------------- -// -void CBlidMainControl::CreateNaviPaneL() - { - CEikStatusPane* sp = CEikonEnv::Static()->AppUiFactory()->StatusPane(); - // Fetch pointer to the default navi pane control - CAknNavigationControlContainer* naviPane = - static_cast (sp->ControlL( - TUid::Uid(EEikStatusPaneUidNavi))); - - naviPane->PushDefaultL(EFalse); - } - -// ---------------------------------------------------- -// CBlidMainControl::LaunchPositioningSettingsViewL -// Launches positioning settings view -// ---------------------------------------------------- -// -void CBlidMainControl::LaunchPositioningSettingsViewL() - { - if (!iLauncher) - { - iLauncher = CBlidLocSettingsLauncher::NewL(); - } - iLauncher->SetControl(this); - isSettingsLaunched = ETrue; - iLauncher->LaunchL(); - } - -// ---------------------------------------------------- -// CBlidMainControl::DeleteDialogResource -// Seletes the dialog resources -// ---------------------------------------------------- -// -void CBlidMainControl::DeleteDialogResource() - { - if (isSettingsLaunched) - { - delete iHeadPaneText; - iHeadPaneText = NULL; - - delete iMsgQueryText; - iMsgQueryText = NULL; - - delete iLinkText; - iLinkText = NULL; - - delete iMsgQText; - iMsgQText = NULL; - } - } - -// ---------------------------------------------------- -// CBlidMainControl::UpdateDisplayLayoutL -// Updates the display layout in response to a change in app resource -// ---------------------------------------------------- -// -void CBlidMainControl::UpdateDisplayLayoutL() - { - /* Layout Hierarchy - main_blid2_pane -> blid2_search_pane -> blid2_search_pane_t1 - - main_blid2_pane -> blid2_search_pane -> blid2_search_pane_g1 - */ - - TAknLayoutRect mainBlid2Pane; - TAknLayoutRect blid2SearchPane; - TAknLayoutRect blid2SearchPaneG1; - TAknLayoutText blid2SearchPaneT1; - //TRect animationRect; - TInt variety; - - if (Layout_Meta_Data::IsLandscapeOrientation()) - { - variety = 1; - } - else - { - variety = 0; - } - /////////////// recalculate text rect ///////////////////////// - TRect rect; - AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, rect); - mainBlid2Pane.LayoutRect(rect, - AknLayoutScalable_Apps::main_blid2_pane().LayoutLine()); - - blid2SearchPane.LayoutRect(mainBlid2Pane.Rect(), - AknLayoutScalable_Apps::blid2_search_pane(variety).LayoutLine()); - - blid2SearchPaneT1.LayoutText( - blid2SearchPane.Rect(), - AknLayoutScalable_Apps::blid2_search_pane_t1(variety).LayoutLine()); - - /////////////// recalculate animation rect ///////////////////////// - blid2SearchPaneG1.LayoutRect( - blid2SearchPane.Rect(), - AknLayoutScalable_Apps::blid2_search_pane_g1(variety).LayoutLine()); - iAnimationRect = blid2SearchPaneG1.Rect(); - - TAlfRealPoint topTextPoint(blid2SearchPaneT1.TextRect().iTl); - TAlfRealPoint bottomTextPoint(blid2SearchPaneT1.TextRect().iBr); - - //Anchor for searching Text - iMainLayout->SetAnchor(EAlfAnchorTopLeft, 0, EAlfAnchorOriginLeft, - EAlfAnchorOriginTop, EAlfAnchorMetricAbsolute, - EAlfAnchorMetricAbsolute, TAlfTimedPoint(topTextPoint.iX, - topTextPoint.iY)); - iMainLayout->SetAnchor(EAlfAnchorBottomRight, 0, EAlfAnchorOriginLeft, - EAlfAnchorOriginTop, EAlfAnchorMetricAbsolute, - EAlfAnchorMetricAbsolute, TAlfTimedPoint(bottomTextPoint.iX, - bottomTextPoint.iY)); - - TAlfRealPoint topAnimationPoint(iAnimationRect.iTl); - TAlfRealPoint bottomAnimationPoint(iAnimationRect.iBr); - - //Anchor for animation - iMainLayout->SetAnchor(EAlfAnchorTopLeft, 1, EAlfAnchorOriginLeft, - EAlfAnchorOriginTop, EAlfAnchorMetricAbsolute, - EAlfAnchorMetricAbsolute, TAlfTimedPoint(topAnimationPoint.iX, - topAnimationPoint.iY)); - iMainLayout->SetAnchor(EAlfAnchorBottomRight, 1, EAlfAnchorOriginLeft, - EAlfAnchorOriginTop, EAlfAnchorMetricAbsolute, - EAlfAnchorMetricAbsolute, TAlfTimedPoint(bottomAnimationPoint.iX, - bottomAnimationPoint.iY)); - - } - -// ----------------------------------------------------------------------------- -// CBlidMainControl::MessageQueryCallBack() -// Called when link is clicked on message query dialog -// ----------------------------------------------------------------------------- -// -TInt MessageQueryCallBack(TAny* aPtr) - { - CBlidMainControl* ptr = static_cast (aPtr); - if (ptr) - { - TRAP_IGNORE( ptr->LaunchPositioningSettingsViewL() ); - if (ptr->iDialog) - { - TRAP_IGNORE( ptr->iDialog->ProcessCommandL( 3001 ) ); - } - } - return KErrNone; - } -//End Of File -