idlehomescreen/xmluirendering/uiengine/inc/xnwallpaperview.h
branchRCL_3
changeset 19 79311d856354
parent 18 d05a55b217df
child 23 7be2816dbabd
--- a/idlehomescreen/xmluirendering/uiengine/inc/xnwallpaperview.h	Wed Apr 14 15:47:59 2010 +0300
+++ b/idlehomescreen/xmluirendering/uiengine/inc/xnwallpaperview.h	Tue Apr 27 16:26:12 2010 +0300
@@ -33,22 +33,11 @@
 class TVwsViewId;
 class CPeriodic;
 class CXnSpBgCleaner;
+class CAknWaitDialog;
 
 // Constants
 const TUid KWallpaperViewUid = { 0x200286DB };
 
-/**
-*  Data structure to be used with timer callback.
-*
-*  @since S60 v5.0
-*/
-NONSHARABLE_STRUCT( TXnWallpaperViewData )
-    {
-    TBool iMultiple;
-    TUid iAppUid;
-    TUid iViewUid;    
-    };
-
 // CLASS DECLARATION
 
 /**
@@ -59,6 +48,13 @@
 */
 NONSHARABLE_CLASS( CXnWallpaperView ) : public CAknView 
     {
+    /** View states */
+    enum TViewState 
+        {
+        EIdle,
+        EImageSelection,
+        EViewDeactivation
+        };
 public:
 
     /**
@@ -103,8 +99,16 @@
     /**
      * Callback function to be used with CPeriodic.
      */
-    static TInt TimerCallbackL( TAny *aPtr );
+    static TInt TimerCallback( TAny *aPtr );
+    void DoHandleCallBackL();
 
+    /**
+     * Show error dialog
+     * 
+     * @param aResourceId Resource id to string to be displayed.
+     */
+    static void ShowErrorDialogL( const TInt aResourceId );
+    
 private: // data
 
     /**
@@ -126,9 +130,19 @@
     CXnAppUiAdapter& iAppUi;
     
     /**
-     * Data structure, that is transferred to TimerCallback.
+     * Switch for multiple image selection.
+     */
+    TBool iMultiple;
+    
+    /**
+     * Previous view id
      */
-    TXnWallpaperViewData iData;
+    TVwsViewId iPreviousViewUid;
+
+    /**
+     * States of wallpaperview
+     */
+    TViewState iViewState;
     
     /**
      * Periodic timer.
@@ -146,7 +160,12 @@
      * Own.
      */
 	CXnSpBgCleaner* iXnSpBgCleaner;
-
+    
+    /** 
+     * Wait dialog. 
+     * Own.
+     */
+	CAknWaitDialog* iWaitDialog;    
     };
 
 #endif      // CXNWALLPAPERVIEW_H