--- a/appinstall_plat/sifui_api/src/sifui.cpp Fri Apr 16 15:05:20 2010 +0300
+++ b/appinstall_plat/sifui_api/src/sifui.cpp Mon May 03 12:38:03 2010 +0300
@@ -16,11 +16,7 @@
*/
#include "sifui.h" // CSifUi
-#include "sifuidefs.h" // SIF UI device dialog parameters
-#include <hb/hbcore/hbsymbiandevicedialog.h> // CHbDeviceDialog
-#include <hb/hbcore/hbsymbianvariant.h> // CHbSymbianVariantMap
-#include <swi/msisuihandlers.h> // Swi::CAppInfo
-#include <apgicnfl.h> // CApaMaskedBitmap
+#include "sifuiprivate.h" // CSifUiPrivate
// ======== MEMBER FUNCTIONS ========
@@ -54,29 +50,7 @@
//
CSifUi::~CSifUi()
{
- Cancel();
- delete iWait;
- delete iDeviceDialog;
- delete iVariantMap;
- delete iBitmap;
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::SetMode()
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CSifUi::SetMode( TMode aMode )
- {
- iMode = aMode;
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::Mode()
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CSifUi::TMode CSifUi::Mode()
- {
- return iMode;
+ delete iPrivate;
}
// ---------------------------------------------------------------------------
@@ -84,28 +58,38 @@
// ---------------------------------------------------------------------------
//
EXPORT_C TBool CSifUi::ShowConfirmationL( const Swi::CAppInfo& aAppInfo,
- TInt aAppSize, const CApaMaskedBitmap* aAppIcon,
- const RPointerArray<Swi::CCertificateInfo>& aCertificates )
- {
- ChangeNoteTypeL( ESifUiConfirmationQuery );
+ TInt aAppSize, const CApaMaskedBitmap* aAppIcon )
+ {
+ return iPrivate->ShowConfirmationL( aAppInfo, aAppSize, aAppIcon );
+ }
+
+// ---------------------------------------------------------------------------
+// CSifUi::SetMemorySelectionL()
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CSifUi::SetMemorySelectionL( const RArray<TInt>& aDriveNumbers )
+ {
+ iPrivate->SetMemorySelectionL( aDriveNumbers );
+ }
- AddParamsAppInfoAndSizeL( aAppInfo, aAppSize );
- if( aAppIcon )
- {
- AddParamsIconL( aAppIcon );
- }
- if( aCertificates.Count() )
- {
- AddParamsCertificatesL( aCertificates );
- }
+// ---------------------------------------------------------------------------
+// CSifUi::SelectedDrive()
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CSifUi::SelectedDrive( TInt& aDriveNumber )
+ {
+ return iPrivate->SelectedDrive( aDriveNumber );
+ }
- // TODO: send drive list for drive selection, get selected drive
- AddParamL( KSifUiMemorySelection, ETrue );
-
- DisplayDeviceDialogL();
- User::LeaveIfError( WaitForResponse() );
- return( iReturnValue == KErrNone );
- }
+// ---------------------------------------------------------------------------
+// CSifUi::SetCertificateInfoL()
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CSifUi::SetCertificateInfoL(
+ const RPointerArray<Swi::CCertificateInfo>& aCertificates )
+ {
+ iPrivate->SetCertificateInfoL( aCertificates );
+ }
// ---------------------------------------------------------------------------
// CSifUi::ShowProgressL()
@@ -114,12 +98,7 @@
EXPORT_C void CSifUi::ShowProgressL( const Swi::CAppInfo& aAppInfo,
TInt aAppSize, TInt aProgressBarFinalValue )
{
- ChangeNoteTypeL( ESifUiProgressNote );
-
- AddParamsAppInfoAndSizeL( aAppInfo, aAppSize );
- AddParamL( KSifUiProgressNoteFinalValue, aProgressBarFinalValue );
-
- DisplayDeviceDialogL();
+ iPrivate->ShowProgressL( aAppInfo, aAppSize, aProgressBarFinalValue );
}
// ---------------------------------------------------------------------------
@@ -128,11 +107,7 @@
//
EXPORT_C void CSifUi::IncreaseProgressBarValueL( TInt aNewValue )
{
- ChangeNoteTypeL( ESifUiProgressNote );
-
- AddParamL( KSifUiProgressNoteValue, aNewValue );
-
- DisplayDeviceDialogL();
+ iPrivate->IncreaseProgressBarValueL( aNewValue );
}
// ---------------------------------------------------------------------------
@@ -141,89 +116,25 @@
//
EXPORT_C void CSifUi::ShowCompleteL()
{
- ChangeNoteTypeL( ESifUiCompleteNote );
- DisplayDeviceDialogL();
- User::LeaveIfError( WaitForResponse() );
+ iPrivate->ShowCompleteL();
}
// ---------------------------------------------------------------------------
// CSifUi::ShowFailedL()
// ---------------------------------------------------------------------------
//
-EXPORT_C void CSifUi::ShowFailedL( TInt aErrorCode )
- {
- ChangeNoteTypeL( ESifUiErrorNote );
-
- AddParamL( KSifUiErrorCode, aErrorCode );
-
- DisplayDeviceDialogL();
- User::LeaveIfError( WaitForResponse() );
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::DoCancel()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::DoCancel()
- {
- if( iWait && iWait->IsStarted() && iWait->CanStopNow() )
- {
- iCompletionCode = KErrCancel;
- iWait->AsyncStop();
- }
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::RunL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::RunL()
+EXPORT_C void CSifUi::ShowFailedL( TInt aErrorCode, const TDesC& aErrorMessage,
+ const TDesC& aErrorDetails )
{
- if( iWait )
- {
- iWait->AsyncStop();
- }
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::DataReceived()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::DataReceived( CHbSymbianVariantMap& aData )
- {
- const CHbSymbianVariant* acceptedVariant = aData.Get( KSifUiQueryAccepted );
- if( acceptedVariant )
- {
- TBool* acceptedValue = acceptedVariant->Value<TBool>();
- if( acceptedValue && *acceptedValue )
- {
- iReturnValue = KErrNone;
- }
- else
- {
- iReturnValue = KErrCancel;
- }
- ResponseReceived( KErrNone );
- }
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::DeviceDialogClosed()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::DeviceDialogClosed( TInt aCompletionCode )
- {
- iIsDisplayingDialog = EFalse;
- ResponseReceived( aCompletionCode );
+ iPrivate->ShowFailedL( aErrorCode, aErrorMessage, aErrorDetails );
}
// ---------------------------------------------------------------------------
// CSifUi::CSifUi()
// ---------------------------------------------------------------------------
//
-CSifUi::CSifUi() : CActive( CActive::EPriorityStandard )
+CSifUi::CSifUi()
{
- CActiveScheduler::Add( this );
}
// ---------------------------------------------------------------------------
@@ -232,162 +143,29 @@
//
void CSifUi::ConstructL()
{
- iWait = new( ELeave ) CActiveSchedulerWait;
- // iDeviceDialog is allocated later, first call of DisplayDeviceDialogL()
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::ClearParamsL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::ClearParamsL()
- {
- if( iVariantMap )
- {
- delete iVariantMap;
- iVariantMap = NULL;
- }
- iVariantMap = CHbSymbianVariantMap::NewL();
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::ChangeNoteTypeL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::ChangeNoteTypeL( TInt aType )
- {
- ClearParamsL();
- AddParamL( KSifUiDialogType, aType );
- AddParamL( KSifUiDialogMode, iMode );
+ iPrivate = CSifUiPrivate::NewL();
}
-// ---------------------------------------------------------------------------
-// CSifUi::AddParamL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::AddParamL( const TDesC& aKey, TInt aValue )
- {
- CHbSymbianVariant* variant = NULL;
- variant = CHbSymbianVariant::NewL( &aValue, CHbSymbianVariant::EInt );
- iVariantMap->Add( aKey, variant );
- }
+
+
-// ---------------------------------------------------------------------------
-// CSifUi::AddParamL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::AddParamL( const TDesC& aKey, const TDesC& aValue )
+// DEPRECATED FUNCTIONS -- TO BE REMOVED
+
+EXPORT_C void CSifUi::SetMode( TMode /*aMode*/ )
{
- CHbSymbianVariant* variant = NULL;
- variant = CHbSymbianVariant::NewL( &aValue, CHbSymbianVariant::EDes );
- iVariantMap->Add( aKey, variant );
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::AddParamsAppInfoAndSizeL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::AddParamsAppInfoAndSizeL( const Swi::CAppInfo& aAppInfo, TInt aAppSize )
- {
- AddParamL( KSifUiApplicationName, aAppInfo.AppName() );
- const TVersion& version( aAppInfo.AppVersion() );
- if( version.iBuild || version.iMajor || version.iMinor )
- {
- AddParamL( KSifUiApplicationVersion, version.Name() );
- }
- if( aAppInfo.AppVendor().Length() )
- {
- AddParamL( KSifUiApplicationDetails, aAppInfo.AppVendor() );
- }
- if( aAppSize > 0 )
- {
- AddParamL( KSifUiApplicationSize, aAppSize );
- }
+ User::Invariant();
}
-// ---------------------------------------------------------------------------
-// CSifUi::AddParamsIconL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::AddParamsIconL( const CApaMaskedBitmap* aIcon )
+EXPORT_C CSifUi::TMode CSifUi::Mode()
{
- if( aIcon )
- {
- if( iBitmap )
- {
- delete iBitmap;
- iBitmap = NULL;
- }
- iBitmap = CApaMaskedBitmap::NewL( aIcon );
-
- CHbSymbianVariant* variant = NULL;
- TInt bitmapHandle = iBitmap->Handle();
- variant = CHbSymbianVariant::NewL( &bitmapHandle, CHbSymbianVariant::EInt );
- iVariantMap->Add( KSifUiApplicationIconHandle, variant );
- TInt bitmapMaskHandle = iBitmap->Mask()->Handle();
- variant = CHbSymbianVariant::NewL( &bitmapMaskHandle, CHbSymbianVariant::EInt );
- iVariantMap->Add( KSifUiApplicationIconMaskHandle, variant );
- }
- }
-
-// ---------------------------------------------------------------------------
-// CSifUi::AddParamsCertificatesL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::AddParamsCertificatesL( const RPointerArray<Swi::CCertificateInfo>& /*aCertificates*/ )
- {
- // TODO: implement
+ User::Invariant();
+ return EUnspecified;
}
-// ---------------------------------------------------------------------------
-// CSifUi::DisplayDeviceDialogL()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::DisplayDeviceDialogL()
+EXPORT_C void CSifUi::ShowFailedL( TInt /*aErrorCode*/ )
{
- if( iDeviceDialog && iIsDisplayingDialog )
- {
- iDeviceDialog->Update( *iVariantMap );
- }
- else
- {
- if( !iDeviceDialog )
- {
- iDeviceDialog = CHbDeviceDialog::NewL();
- }
- iDeviceDialog->Show( KSifUiDeviceDialog, *iVariantMap, this );
- iIsDisplayingDialog = ETrue;
- }
+ User::Invariant();
}
-// ---------------------------------------------------------------------------
-// CSifUi::WaitForResponse()
-// ---------------------------------------------------------------------------
-//
-TInt CSifUi::WaitForResponse()
- {
- iCompletionCode = KErrInUse;
- iReturnValue = KErrUnknown;
- if( !IsActive() && iWait && !iWait->IsStarted() )
- {
- iStatus = KRequestPending;
- SetActive();
- iWait->Start();
- }
- return iCompletionCode;
- }
-// ---------------------------------------------------------------------------
-// CSifUi::ResponseReceived()
-// ---------------------------------------------------------------------------
-//
-void CSifUi::ResponseReceived( TInt aCompletionCode )
- {
- if( IsActive() )
- {
- iCompletionCode = aCompletionCode;
- TRequestStatus* status( &iStatus );
- User::RequestComplete( status, KErrNone );
- }
- }