iaupdate/IAD/updater/src/iaupdaterdialog.cpp
branchRCL_3
changeset 65 7333d7932ef7
parent 0 ba25891c3a9e
child 66 8b7f4e561641
--- 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 <AknGlobalNote.h>
-#include <avkon.rsg>
-#include <bautils.h>
-#include <data_caging_path_literals.hrh> 
-#include <iaupdater.rsg>
-#include <StringLoader.h>
-#include <AknUtils.h>   //For AknTextUtils
-
 #include "iaupdaterdialog.h"
 #include "iaupdaterdefs.h"
 #include "iaupdatercancelobserver.h"
 #include "iaupdatedebug.h"
 
+#include <hbtextresolversymbian.h>
+
+
+_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