--- 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