idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h
changeset 2 08c6ee43b396
parent 1 5315654608de
child 9 f966699dea19
--- a/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h	Thu Jan 07 12:39:41 2010 +0200
+++ b/idlehomescreen/hscontentcontrol/inc/hscontentcontrolfactory.h	Mon Jan 18 20:10:36 2010 +0200
@@ -24,9 +24,11 @@
 
 // User includes
 #include "hscontentcontrolecomobserver.h"
+#include "hscontentcontroluninstallobserver.h"
 
 // Forward declarations
 class CHsContentControlEComListener;
+class CHsContentControlUninstallMonitor;
 
 /**
  *  Content control UI base class
@@ -40,7 +42,8 @@
  *  @since S60 v5.0
  */
 NONSHARABLE_CLASS( CHsContentControlFactory ) : public CBase,
-                                                public MHsContentControlEComObserver
+                                                public MHsContentControlEComObserver,
+                                                public MHsContentControlUninstallObserver
     {
 public: // Constructor and destructor
     /**
@@ -53,12 +56,20 @@
      */
     IMPORT_C ~CHsContentControlFactory();
 
-public: // from MHsContentControlEComObserver
+private: // from MHsContentControlEComObserver
     
     /**
      * Notification of Ecom registry change.
      */
      void HandleEComChangeEvent();
+
+private: // from MHsContentControlUninstallObserver
+    
+    /**
+     * Notification of Uninstall event from SWI.
+     * @param aPkgUid The package UID which is being uninstalled.
+     */
+     void HandleUninstallEvent( const TUid& aPkgUid );
     
 private: // Constructors
     /**
@@ -93,7 +104,7 @@
      * Finds plugin implementation info in the ECOM registry.
      * @param aUid The plugin UID which is to be checked.
      * @param aPluginArray The array of plugins which have been implemented.
-     * @return ImplementationInfo of plugin. 
+     * @return ImplementationInfo of plugin.
      */
     CImplementationInformation* FindPluginImplInfo( 
             const TUid& aUid, const RImplInfoPtrArray& aPlugInArray );
@@ -120,7 +131,12 @@
     /**
      * An object of type CHsContentControlEComListener ( Owned ).
      */
-    CHsContentControlEComListener*  iHsContentControlEComListener; 
+    CHsContentControlEComListener*  iHsContentControlEComListener;
+
+    /**
+     * An object of type CHsContentControlUninstallMonitor ( Owned ).
+     */
+    CHsContentControlUninstallMonitor*  iHsContentControlUninstallMonitor;
     };