appinstall_plat/sifui_api/inc/sifuiprivate.h
changeset 42 d17dc5398051
parent 37 6e7b00453237
child 55 ac7f90a6ff4c
child 60 245df5276b97
equal deleted inserted replaced
37:6e7b00453237 42:d17dc5398051
    18 #ifndef C_SIFUIPRIVATE_H
    18 #ifndef C_SIFUIPRIVATE_H
    19 #define C_SIFUIPRIVATE_H
    19 #define C_SIFUIPRIVATE_H
    20 
    20 
    21 #include <e32base.h>                            // CActive
    21 #include <e32base.h>                            // CActive
    22 #include <hb/hbcore/hbdevicedialogsymbian.h>    // MHbDeviceDialogObserver
    22 #include <hb/hbcore/hbdevicedialogsymbian.h>    // MHbDeviceDialogObserver
       
    23 #include <hb/hbcore/hbindicatorsymbian.h>       // MHbIndicatorSymbianObserver
    23 #include <bamdesca.h>                           // MDesCArray
    24 #include <bamdesca.h>                           // MDesCArray
       
    25 #include <sifui.h>                              // CSifUi::TOptionalButtons
       
    26 #include <sifuidefs.h>                          // TSifUiDeviceDialogType
    24 
    27 
    25 class CHbDeviceDialog;
       
    26 class CHbSymbianVariantMap;
    28 class CHbSymbianVariantMap;
    27 class CHbSymbianVariant;
    29 class CHbSymbianVariant;
    28 class CActiveSchedulerWait;
    30 class CActiveSchedulerWait;
    29 class CApaMaskedBitmap;
       
    30 class CSifUiCertificateInfo;
       
    31 class CSifUiAppInfo;
       
    32 
    31 
    33 namespace Swi {
    32 namespace Swi {
    34     class CAppInfo;
    33     class CAppInfo;
    35     class CCertificateInfo;
    34     class CCertificateInfo;
    36 }
    35 }
    37 
    36 
    38 /**
    37 /**
    39  * Private part of the SIF UI API.
    38  * Private part of the SIF UI API.
    40  * Only CSifUi class should use CSifUiPrivate class.
    39  * Only CSifUi class should use CSifUiPrivate class.
    41  */
    40  */
    42 class CSifUiPrivate : public CActive, public MHbDeviceDialogObserver
    41 class CSifUiPrivate : public CActive, public MHbDeviceDialogObserver,
       
    42         public MHbIndicatorSymbianObserver
    43     {
    43     {
    44     public:     // constructor and destructor
    44     public:     // constructor and destructor
    45         static CSifUiPrivate* NewL();
    45         static CSifUiPrivate* NewL();
    46         CSifUiPrivate::~CSifUiPrivate();
    46         ~CSifUiPrivate();
    47 
    47 
    48     public:     // new functions
    48     public:     // new functions
    49         TBool ShowConfirmationL( const CSifUiAppInfo& aAppInfo );
    49         TBool ShowConfirmationL( const CSifUiAppInfo& aAppInfo );
    50         void SetMemorySelectionL( const RArray<TInt>& aDriveNumbers );
    50         void SetMemorySelectionL( const RArray<TInt>& aDriveNumbers );
    51         TInt SelectedDrive( TInt& aDriveNumber );
    51         TInt SelectedDrive( TInt& aDriveNumber );
    52         void SetCertificateInfoL( const RPointerArray<CSifUiCertificateInfo>& aCertificates );
    52         void SetCertificateInfoL( const RPointerArray<CSifUiCertificateInfo>& aCertificates );
    53         void ShowProgressL( const CSifUiAppInfo& aAppInfo, TInt aProgressBarFinalValue );
    53         void ShowProgressL( const CSifUiAppInfo& aAppInfo, TInt aProgressBarFinalValue );
    54         void IncreaseProgressBarValueL( TInt aIncrement );
    54         void IncreaseProgressBarValueL( TInt aIncrement );
       
    55         TBool IsCancelled();
       
    56         void SetButtonVisible( CSifUi::TOptionalButton aButton, TBool aIsVisible );
    55         void ShowCompleteL();
    57         void ShowCompleteL();
    56         void ShowFailedL( TInt aErrorCode, const TDesC& aErrorMessage,
    58         void ShowFailedL( TInt aErrorCode, const TDesC& aErrorMessage,
    57                 const TDesC& aErrorDetails );
    59                 const TDesC& aErrorDetails );
    58 
    60 
    59     protected:  // from CActive
    61     protected:  // from CActive
    62 
    64 
    63     private:    // from MHbDeviceDialogObserver
    65     private:    // from MHbDeviceDialogObserver
    64         void DataReceived( CHbSymbianVariantMap& aData );
    66         void DataReceived( CHbSymbianVariantMap& aData );
    65         void DeviceDialogClosed( TInt aCompletionCode );
    67         void DeviceDialogClosed( TInt aCompletionCode );
    66 
    68 
       
    69     private:    // from MHbIndicatorSymbianObserver
       
    70         void IndicatorUserActivated( const TDesC& aType, CHbSymbianVariantMap& aData );
       
    71 
    67     private:    // new functions
    72     private:    // new functions
    68         CSifUiPrivate();
    73         CSifUiPrivate();
    69         void ConstructL();
    74         void ConstructL();
    70         void ClearParams();
    75         void ClearParams();
    71         CHbSymbianVariantMap* VariantMapL();
    76         CHbSymbianVariantMap* VariantMapL();
    72         void ChangeNoteTypeL( TInt aType );
    77         void ChangeNoteTypeL( TInt aType );
    73         void AddParamL( const TDesC& aKey, TInt aValue );
    78         void AddParamL( const TDesC& aKey, TInt aValue );
    74         void AddParamL( const TDesC& aKey, const TDesC& aValue );
    79         void AddParamL( const TDesC& aKey, const TDesC& aValue );
    75         void AddParamListL( const TDesC& aKey, const MDesCArray& aList );
    80         void AddParamListL( const TDesC& aKey, const MDesCArray& aList );
    76         void AddParamsAppInfoL( const CSifUiAppInfo& aAppInfo );
    81         void AddParamsAppInfoL( const CSifUiAppInfo& aAppInfo );
    77         void AddParamsIconL( const CApaMaskedBitmap* aIcon );
    82         void AddParamsCertificatesL();
       
    83         void AddParamsHiddenButtonsL();
       
    84         void ResendAllInstallationDetailsL();
       
    85         void ActivateInstallIndicatorL();
       
    86         void UpdateInstallIndicatorProgressL();
       
    87         void CloseInstallIndicator();
       
    88         TBool IsIndicatorActive();
       
    89         void ShowInstallIndicatorCompleteL( TInt aErrorCode );
       
    90         void UpdateDialogAndWaitForResponseL();
       
    91         void UpdateDialogOrIndicatorWithoutWaitingL();
       
    92         void CompleteDialogOrIndicatorAndWaitForResponseL( TInt aErrorCode );
    78         void DisplayDeviceDialogL();
    93         void DisplayDeviceDialogL();
    79         TInt WaitForResponse();
    94         void WaitForResponseL();
    80         void ResponseReceived( TInt aCompletionCode );
    95         void WaitedResponseReceived( TInt aCompletionCode );
    81 
    96 
    82     private:    // data
    97     private:    // data
    83         CHbDeviceDialogSymbian* iDeviceDialog;
    98         CHbDeviceDialogSymbian* iDeviceDialog;
       
    99         CHbIndicatorSymbian* iIndicator;
    84         CHbSymbianVariantMap* iVariantMap;
   100         CHbSymbianVariantMap* iVariantMap;
    85         CActiveSchedulerWait* iWait;
   101         CActiveSchedulerWait* iWait;
    86         TBool iIsDisplayingDialog;
   102         TBool iIsDisplayingDialog;
    87         TInt iCompletionCode;
   103         TBool iIsFirstTimeToDisplay;
    88         TInt iReturnValue;
   104         TInt iWaitCompletionCode;
    89         CApaMaskedBitmap* iBitmap;
   105         TInt iDialogReturnValue;
       
   106         TSifUiDeviceDialogType iDialogType;
       
   107         CSifUiAppInfo* iAppInfo;
       
   108         CBufBase* iCertificateBuffer;
    90         HBufC* iSelectableDrives;
   109         HBufC* iSelectableDrives;
    91         TBool iSelectedDriveSet;
   110         TBool iSelectedDriveSet;
    92         TChar iSelectedDrive;
   111         TChar iSelectedDrive;
    93         CHbSymbianVariant* iCertificateInfo;
   112         TInt iProgressBarFinalValue;
       
   113         TInt iProgressBarCurrentValue;
       
   114         TBool iNoHideProgressButton;
       
   115         TBool iNoCancelProgressButton;
       
   116         TBool iNoShowInAppLibButton;
       
   117         TBool iNoErrorDetailsButton;
    94     };
   118     };
    95 
   119 
    96 
   120 
    97 #endif  // C_SIFUIPRIVATE_H
   121 #endif  // C_SIFUIPRIVATE_H
    98 
   122