idlehomescreen/widgetmanager/inc/wmwidgetloaderao.h
branchRCL_3
changeset 28 d721605b30d0
parent 26 1b758917cafc
--- a/idlehomescreen/widgetmanager/inc/wmwidgetloaderao.h	Wed Jun 09 09:29:04 2010 +0300
+++ b/idlehomescreen/widgetmanager/inc/wmwidgetloaderao.h	Mon Jun 21 15:27:11 2010 +0300
@@ -32,6 +32,17 @@
 
 // CLASS DECLARATIONS
 
+class MWmWidgetloaderObserver
+    {
+public:
+    /**
+     * Notifies client when widget list is succesfully loaded
+     *
+     * @param aWidgetListChanged true if widget list changed
+     */
+    virtual void LoadDoneL( TBool aWidgetListChanged ) = 0;
+    };
+    
 /**
  * Active object to load widgets into list
  */
@@ -39,17 +50,17 @@
     {
     
 public:
-	/**
+    /**
      * Static constructor
      */
-	static CWmWidgetLoaderAo* NewL(
-	        CWmPlugin& aWmPlugin,
-	        CWmListBox& aTargetList );
-	
+    static CWmWidgetLoaderAo* NewL(
+            CWmPlugin& aWmPlugin,
+            CWmListBox& aTargetList );
+    
     /**
      * Destructor.
      */
-	~CWmWidgetLoaderAo();
+    ~CWmWidgetLoaderAo();
 
     /**
      * Starts the load process by activating the AO
@@ -61,6 +72,10 @@
      */
     TBool IsLoading();
 
+    /**
+     * Set MWmWidgetloaderObserver observer
+      */
+    void SetObserver( MWmWidgetloaderObserver* aObserver );
 private:
     
     /**
@@ -150,11 +165,17 @@
     /** persistent widget order */
     CWmPersistentWidgetOrder* iWidgetOrder;
     
-	/** uid of currently unistalled widget */
+    /** uid of currently unistalled widget */
     TUid iUninstallUid;
     
     /** switch for loading operation */
     TBool iLoading;
+    
+    /** Notifies client when widget list is fully loaded */
+    MWmWidgetloaderObserver* iObserver;
+    
+    /** tells if widgetlist has changed */
+    TBool iWidgetListChanged;
     };
 
 #endif // WMWIDGETLOADERAO_H_