diff -r 5cc91383ab1e -r 7333d7932ef7 iaupdate/IAD/updater/src/iaupdaterdialog.cpp --- a/iaupdate/IAD/updater/src/iaupdaterdialog.cpp Thu Aug 19 10:02:49 2010 +0300 +++ b/iaupdate/IAD/updater/src/iaupdaterdialog.cpp Tue Aug 31 15:21:33 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-2010 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" @@ -17,19 +17,17 @@ -#include -#include -#include -#include -#include -#include -#include //For AknTextUtils - #include "iaupdaterdialog.h" #include "iaupdaterdefs.h" #include "iaupdatercancelobserver.h" #include "iaupdatedebug.h" +#include + + +_LIT(KFilename, "iaupdate.ts"); +_LIT(KPath, "z://data"); +_LIT(KInstalling, "txt_software_info_installing_1"); // ======== LOCAL FUNCTIONS ======== @@ -41,26 +39,23 @@ // C++ default constructor // ----------------------------------------------------------------------------- // -CIAUpdaterDialog::CIAUpdaterDialog( RFs& aFs, - MIAUpdaterCancelObserver& aObserver ) -: CActive( CActive::EPriorityStandard ), - iFs( aFs ), - iObserver ( &aObserver ) +CIAUpdaterDialog::CIAUpdaterDialog( MIAUpdaterCancelObserver& aObserver ) +: iObserver ( &aObserver ) { - CActiveScheduler::Add( this ); + } + // ----------------------------------------------------------------------------- // CIAUpdaterDialog::NewL // Two-phased constructor. // ----------------------------------------------------------------------------- // -CIAUpdaterDialog* CIAUpdaterDialog::NewL( RFs& aFs, - MIAUpdaterCancelObserver& aObserver ) +CIAUpdaterDialog* CIAUpdaterDialog::NewL( MIAUpdaterCancelObserver& aObserver ) { CIAUpdaterDialog* self = - CIAUpdaterDialog::NewLC( aFs, aObserver ); + CIAUpdaterDialog::NewLC( aObserver ); CleanupStack::Pop( self ); return self; } @@ -71,11 +66,10 @@ // Two-phased constructor. // ----------------------------------------------------------------------------- // -CIAUpdaterDialog* CIAUpdaterDialog::NewLC( RFs& aFs, - MIAUpdaterCancelObserver& aObserver ) +CIAUpdaterDialog* CIAUpdaterDialog::NewLC( MIAUpdaterCancelObserver& aObserver ) { CIAUpdaterDialog* self = - new( ELeave ) CIAUpdaterDialog( aFs, aObserver ); + new( ELeave ) CIAUpdaterDialog( aObserver ); CleanupStack::PushL( self ); self->ConstructL(); return self; @@ -92,18 +86,8 @@ IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::ConstructL begin"); // Get resource file path - TFileName fileName; - fileName.Copy( TParsePtrC( RProcess().FileName() ).Drive() ); - fileName.Append( KDC_APP_RESOURCE_DIR ); - fileName.Append( IAUpdaterDefs::KIAUpdaterResourceFile ); + iIsResolverSuccess = HbTextResolverSymbian::Init(KFilename, KPath); - // Get language of resource file - BaflUtils::NearestLanguageFile( iFs, fileName ); - - // Open resource file - iResourceFile.OpenL( iFs, fileName ); - iResourceFile.ConfirmSignatureL(); - IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::ConstructL end"); } @@ -115,9 +99,7 @@ // CIAUpdaterDialog::~CIAUpdaterDialog() { - Cancel(); - delete iNote; - iResourceFile.Close(); + DestroyGlobalWaitNote(); } @@ -126,54 +108,30 @@ // Show global waiting note during installing. // ----------------------------------------------------------------------------- // -void CIAUpdaterDialog::ShowWaitingNoteL( const TDesC& aName, TInt aIndex, TInt aTotalCount ) +void CIAUpdaterDialog::ShowWaitingNoteL( const TDesC& aName, TInt /*aIndex*/, TInt /*aTotalCount*/ ) { IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::ShowWaitingNoteL begin"); - if ( iNoteId == 0 ) - { - IAUPDATE_TRACE("[IAUpdater] Creating global waiting note."); - // Get localiced string from resc. file. - HBufC* string = ReadResourceLC( R_IAUPDATER_INSTALLING ); - - HBufC* temp1 = HBufC::NewLC( string->Length() + aName.Length() ); - TPtr temp1Ptr = temp1->Des(); - - // Add pkg's name to string (U0). - StringLoader::Format( temp1Ptr, *string, 0, aName ); - - // Increase buffer length for the number. - HBufC* temp2 = - HBufC::NewLC( temp1->Length() + IAUpdaterDefs::KIAUpdaterParamLen ); - TPtr temp2Ptr = temp2->Des(); - - // Add index number to string (N1) - StringLoader::Format( temp2Ptr, *temp1, 1, aIndex ); - - // Increase buffer length for the number. - HBufC* finalString = - HBufC::NewLC( temp2->Length() + IAUpdaterDefs::KIAUpdaterParamLen ); - TPtr finalPtr = finalString->Des(); - - // Add max count number to string (N2) - StringLoader::Format( finalPtr, *temp2, 2, aTotalCount ); - - AknTextUtils::DisplayTextLanguageSpecificNumberConversion( finalPtr ); - if ( !iNote ) - { - iNote = CAknGlobalNote::NewL(); - iNote->SetSoftkeys( R_AVKON_SOFTKEYS_CANCEL ); - } - - IAUPDATE_TRACE("[IAUpdater] Showing global waiting note."); - iNoteId = iNote->ShowNoteL( iStatus, EAknGlobalWaitNote, *finalString ); - SetActive(); - - CleanupStack::PopAndDestroy( finalString ); - CleanupStack::PopAndDestroy( temp2 ); - CleanupStack::PopAndDestroy( temp1 ); - CleanupStack::PopAndDestroy( string ); - } + DestroyGlobalWaitNote(); + + iGlobalWaitNote = CHbDeviceProgressDialogSymbian::NewL( + CHbDeviceProgressDialogSymbian::EWaitDialog ); + + // loc: Load string + iGlobalResource = HbTextResolverSymbian::LoadL( KInstalling, aName ); + if ( iGlobalResource ) + iGlobalWaitNote->SetTextL( iGlobalResource->Des() ); + + // Icon ? + //iGlobalWaitNote->SetIconNameL(const TDesC& aIconName); + + // Button ? + iGlobalWaitNote->SetButton(ETrue); + + iGlobalWaitNote->SetObserver( this ); + iGlobalWaitNote->SetAutoClose(EFalse); + iGlobalWaitNote->ShowL(); + IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::ShowWaitingNoteL end"); } @@ -186,65 +144,39 @@ void CIAUpdaterDialog::CancelWaitingNoteL() { IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::CancelWaitingNoteL begin"); - - if ( iNoteId != 0 ) - { - IAUPDATE_TRACE("[IAUpdater] Cancel waiting note."); - iNote->CancelNoteL( iNoteId ); - iNoteId = 0; - } - + + DestroyGlobalWaitNote(); + IAUPDATE_TRACE("[IAUpdater] CIAUpdaterDialog::CancelWaitingNoteL end"); } - -// ----------------------------------------------------------------------------- -// CIAUpdaterDialog::LoadResourceLC -// Read resource string. -// ----------------------------------------------------------------------------- -// -HBufC* CIAUpdaterDialog::ReadResourceLC( TInt aResourceId ) +void CIAUpdaterDialog::ProgressDialogCancelled( + const CHbDeviceProgressDialogSymbian* /*aProgressDialog*/ ) + { + + iObserver->UserCancel(); + + } + +void CIAUpdaterDialog::ProgressDialogClosed( + const CHbDeviceProgressDialogSymbian* /*aProgressDialog*/ ) { - TResourceReader reader; - HBufC8* buff = iResourceFile.AllocReadLC( aResourceId ); - reader.SetBuffer( buff ); - HBufC* text = reader.ReadHBufCL(); - CleanupStack::PopAndDestroy( buff ); - CleanupStack::PushL( text ); + + } - return text; +// ----------------------------------------------------------------------------- +// CIAUpdaterDialog::DestroyGlobalWaitNote +// ----------------------------------------------------------------------------- +void CIAUpdaterDialog::DestroyGlobalWaitNote() + { + if ( iGlobalWaitNote ) + { + iGlobalWaitNote->Close(); + delete iGlobalWaitNote; + iGlobalWaitNote = NULL; + delete iGlobalResource; + iGlobalResource = NULL; + } } - -// --------------------------------------------------------------------------- -// CIAUpdaterDialog:::DoCancel -// -// --------------------------------------------------------------------------- -// -void CIAUpdaterDialog::DoCancel() - { - TRAP_IGNORE( CancelWaitingNoteL() ); - } - -// --------------------------------------------------------------------------- -// CIAUpdateNetworkRegistration::RunL() -// -// --------------------------------------------------------------------------- -// -void CIAUpdaterDialog::RunL() - { - IAUPDATE_TRACE_1("[IAUpdater] CIAUpdaterDialog::RunL() iStatus : %d", iStatus.Int() ); - iNoteId = 0; - if ( iStatus.Int() == EAknSoftkeyCancel ) - { - iObserver->UserCancel(); - } - else - { - iObserver->UserExit(); - } - } - -// ======== GLOBAL FUNCTIONS ======== - // EOF