appinstaller/AppinstUi/Plugin/SisxUI/Inc/SisxUI.h
changeset 80 9dcba1ee99f7
parent 77 d1838696558c
equal deleted inserted replaced
77:d1838696558c 80:9dcba1ee99f7
     1 /*
       
     2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:   This file contains the header file of the CSisxUI class.
       
    15 *
       
    16 *                This class implements the ECom SWInstUIPluginAPI interface 
       
    17 *                for native installation.
       
    18 *
       
    19 */
       
    20 
       
    21 
       
    22 #ifndef SISXUI_H
       
    23 #define SISXUI_H
       
    24 
       
    25 //  INCLUDES
       
    26 #include <e32base.h>
       
    27 
       
    28 #include "SWInstUIPluginAPI.h"
       
    29 
       
    30 namespace SwiUI
       
    31 {
       
    32 
       
    33 class CSisxUIOperationWatcher;
       
    34 
       
    35 /**
       
    36 * This class implements the ECom SWInstUIPluginAPI interface for sisx 
       
    37 * installation.
       
    38 *
       
    39 * @lib sisxui
       
    40 * @since 3.0 
       
    41 */
       
    42 class CSisxUI : public CSWInstUIPluginAPI
       
    43     {
       
    44     public:  // Constructors and destructor
       
    45         
       
    46         /**
       
    47         * Two-phased constructor.
       
    48         */
       
    49         static CSisxUI* NewL();
       
    50         
       
    51         /**
       
    52         * Destructor.
       
    53         */
       
    54         virtual ~CSisxUI();
       
    55 
       
    56     public:  // From base classes
       
    57 
       
    58         /**
       
    59         * From SWInstUIPlugin, Perform installation.
       
    60         * @since 3.0
       
    61         */
       
    62         void InstallL( RFile& aFile,
       
    63                        TInstallReq& aInstallParams, 
       
    64                        TBool aIsDRM,
       
    65                        TRequestStatus& aStatus );
       
    66         
       
    67         /**
       
    68         * From SWInstUIPlugin, Perform silent installation.
       
    69         * @since 3.0
       
    70         */
       
    71         void SilentInstallL( RFile& aFile,
       
    72                              TInstallReq& aInstallParams, 
       
    73                              TBool aIsDRM, 
       
    74                              TInstallOptions& aOptions,
       
    75                              TRequestStatus& aStatus );
       
    76         
       
    77         /**
       
    78         * From SWInstUIPlugin, Perform uninstallation.
       
    79         * @since 3.0
       
    80         */
       
    81         void UninstallL( const TUid& aUid, 
       
    82                          const TDesC8& aMIME,
       
    83                          TRequestStatus& aStatus );
       
    84         
       
    85         /**
       
    86         * From SWInstUIPlugin, Perform silent uninstallation.
       
    87         * @since 3.0
       
    88         */
       
    89         void SilentUninstallL( const TUid& aUid, 
       
    90                                const TDesC8& aMIME, 
       
    91                                TUninstallOptions& aOptions,
       
    92                                TRequestStatus& aStatus );
       
    93         
       
    94         /**
       
    95         * From SWInstUIPlugin, Indicates if the application shell must be updated.
       
    96         * @since 3.0
       
    97         */
       
    98         TBool IsAppShellUpdate();
       
    99 
       
   100         /**
       
   101         * Cancel the current operation.
       
   102         * @since 3.0
       
   103         */
       
   104         void Cancel();
       
   105         
       
   106         /**
       
   107         * Informs the plugin about completed operation. Called when all tasks are completed.
       
   108         * @since 3.0
       
   109         */
       
   110         void CompleteL();
       
   111 
       
   112         /**
       
   113         *
       
   114         */
       
   115         CErrDetails* GetErrorDetails();
       
   116 
       
   117         /**
       
   118         * From SWInstUIPlugin, Perform a custom uninstallation.
       
   119         * @since 3.0
       
   120         */        
       
   121         void CustomUninstallL( TOperation aOperation, 
       
   122                                const TDesC8& aParams, 
       
   123                                TRequestStatus& aStatus );
       
   124         
       
   125         /**
       
   126         * From SWInstUIPlugin, Perform a silent custom uninstallation.
       
   127         * @since 3.0
       
   128         */      
       
   129         void SilentCustomUninstallL( TOperation aOperation,
       
   130                                      TUninstallOptions& aOptions,
       
   131                                      const TDesC8& aParams, 
       
   132                                      TRequestStatus& aStatus );
       
   133         
       
   134     private:
       
   135 
       
   136         /**
       
   137         * Constructor.
       
   138         */  
       
   139         CSisxUI();
       
   140          
       
   141         /**
       
   142         * 2nd phase constructor.
       
   143         */
       
   144         void ConstructL();
       
   145 
       
   146 
       
   147     private: //  Data
       
   148             
       
   149         TInt iResourceFileOffset;
       
   150 
       
   151         CSisxUIOperationWatcher* iWatcher;   
       
   152     };
       
   153 }
       
   154 
       
   155 #endif      // SISXUI_H   
       
   156             
       
   157 // End of File