idlehomescreen/xmluicontroller/inc/appui.h
branchRCL_3
changeset 9 f966699dea19
parent 0 f72a12da539e
child 15 ff572dfe6d86
--- a/idlehomescreen/xmluicontroller/inc/appui.h	Tue Feb 02 00:04:13 2010 +0200
+++ b/idlehomescreen/xmluicontroller/inc/appui.h	Fri Feb 19 22:42:37 2010 +0200
@@ -19,12 +19,15 @@
 #ifndef C_APPUI_H
 #define C_APPUI_H
 
+// System includes
 #include <coeview.h>
+
+// User includes
+#include <hspublisherinfo.h>
 #include "xnappuiadapter.h"
 
-
+// Forward declarations
 class CAiUiIdleIntegration;
-class MAiUiFrameworkObserver;
 
 namespace AiXmlUiController
 {        
@@ -40,7 +43,7 @@
  *
  *  @lib AiXmlUiMain
  */
-NONSHARABLE_CLASS( CAppUi ) : public CXnAppUiAdapter, 
+NONSHARABLE_CLASS( CAppUi ) : public CXnAppUiAdapter,
     public MCoeViewActivationObserver
     {    
 public:   // Constructors and destructor
@@ -55,37 +58,28 @@
             
 private:  
     // from CXnAppUiAdapter
+    
     void PrepareToExit();
-    
-    void HandleForegroundEventL( TBool aForeground );
-    
+           
     void HandleCommandL( TInt aCommand );
-    
-    void HandleResourceChangeL( TInt aType );
 
     void HandleXuikonEventL( CXnNodeAppIf& aOrigin, CXnNodeAppIf& aTrigger,  
-         CXnDomNode& aTriggerDefinition, CXnDomNode& aEvent ); 
+         CXnDomNode& aTriggerDefinition, CXnDomNode& aEvent );
+    
+    void HandleEventL( const TDesC& aEvent, CXnNodeAppIf& aDestination );
                                                           
     void HandleWsEventL( const TWsEvent& aEvent, 
             CCoeControl* aDestination );
 
-    void LoadDataPluginsL( RPointerArray< CXnNodeAppIf >& aList );
-          
-    void DestroyDataPluginsL( RPointerArray< CXnNodeAppIf >& aList );
-           
-    void SetOnlineStateL( RPointerArray< CXnNodeAppIf >& aList );
-    
+    TInt LoadPublisher( CXnNodeAppIf& aPublisher, TInt aReason );
+                      
+    TInt DestroyPublisher( CXnNodeAppIf& aPublisher, TInt aReason );
+                           
     TBool DynInitMenuItemL( const TDesC& aItemType, 
         RPointerArray< CXnNodeAppIf >* aList = NULL );
-
-    void HandlePageSwitch();
     
     void HandleEnterEditModeL( TBool aEnter );
-	
-private:
-    // new functions
-    void LoadNativeDataPluginsL();
-    void DestroyNativeDataPluginsL();
+	    
     
 private:
     // from MCoeViewActivationObserver
@@ -95,7 +89,7 @@
      */
     void HandleViewActivation( const TVwsViewId& aNewlyActivatedViewId, 
         const TVwsViewId& aViewIdToBeDeactivated );
-           
+               
 public: 
     // new functions
     
@@ -115,6 +109,14 @@
      * @return Ui Controller
      */
     CXmlUiController& UiController() const;
+    
+    /**
+     * Gets online/offline helper object
+     *
+     * @since S60 5.0
+     * @return online/offline helper
+     */
+    COnlineOfflineHelper* Helper() const;
                
 private: 
     // Constructors
@@ -126,45 +128,22 @@
 private:     
     // data
 
-    /**
-     * UI Controller implementation. Not own.
-     */
+    /** UI Controller implementation, not owned */
     CXmlUiController& iUiCtl;
-
-    /**
-     * Event handler. Own.
-     */
-    CAIXuikonEventHandler* iEventHandler;
-    
-    /**
-     * Content renderer. Own.
-     */
-    CContentRenderer* iContentRenderer;
-    
-    /**
-     * Ui framework event observer. Not own.
-     */
-    MAiUiFrameworkObserver* iUiFwObserver;
-    
-    /**
-     * Idle Integration helper object. Own.
-     */
+    /** Event handler, owned */
+    CAIXuikonEventHandler* iEventHandler;    
+    /** Content renderer, owned */
+    CContentRenderer* iContentRenderer;              
+    /** Idle Integration helper object, owed */
     CAiUiIdleIntegration* iIdleIntegration;
-
-    /**
-     * Online/Offline helper object. Own.
-     */
-    COnlineOfflineHelper* iHelper;    
-    
-    /**
-     * Flag to indicate whether native plugins are loaded.
-     */
-    TBool iNativePluginsLoaded;
-    
-    /**
-     * Flag to indicate whether edit mode is active.
-     */
-    TBool iIsEditModeActive;
+    /** Online/Offline helper object, owned */
+    COnlineOfflineHelper* iHelper;
+    /** DeviceStatus publisher info */
+    THsPublisherInfo iDeviceStatusInfo;
+    /** Flag to indicate whether edit mode is active */
+    TBool iInEditMode;
+    /** Flag to indicate UI shutdown sequence is ongoing */
+    TBool iUiShutdown;
     };
     
 }  // namespace AiXmlUiController