--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mpxplugins/viewplugins/inc/mpxwaitnotedialog.h Thu Dec 17 08:45:05 2009 +0200
@@ -0,0 +1,219 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Base class for all wait notes
+*
+*/
+
+
+#ifndef C_MPXWAITNOTEDIALOG_H
+#define C_MPXWAITNOTEDIALOG_H
+
+#include <AknWaitDialog.h>
+#include <AknProgressDialog.h>
+#include <mpxcollectionobserver.h>
+#include "mpxwaitnoteobserver.h"
+#include "mpxwaitnotedefs.h"
+
+// FOWARD DECLARATIONS
+class MMPXCollectionUtility;
+class CAknQueryDialog;
+class CAknNoteDialog;
+/*
+* Simple structure to hold icon info
+*/
+class TNoteIconInfo
+ {
+public:
+ TInt bitmapId;
+ TInt maskId;
+ TFileName bmpfile;
+
+ inline TNoteIconInfo( TInt b, TInt m, TFileName f )
+ {
+ bitmapId=b;
+ maskId=m;
+ bmpfile=f;
+ }
+ };
+
+/**
+ * MPXWaitNoteDialog
+ *
+ * Base class for all wait dialogs in MPX
+ *
+ * @lib mpxwaitnotedialog.lib
+ * @since S60 3.1
+ */
+class CMPXWaitNoteDialog : public CBase,
+ public MMPXCollectionObserver,
+ public MProgressDialogCallback
+ {
+
+public:
+
+ /**
+ * Virtual destructor
+ */
+ virtual ~CMPXWaitNoteDialog();
+
+public: // New Functions
+
+ /**
+ * Execute the dialog
+ */
+ virtual void ExecuteLD();
+
+ /**
+ * Cancel the wait note
+ */
+ virtual void CancelNoteL();
+
+ /**
+ * Check the dialog destruction status
+ */
+ virtual TBool ReadyToDestroy();
+
+protected: // New functions
+
+ /**
+ * Initialize the note before executing
+ * The inherited class should set CBA, text, icons etc here
+ */
+ virtual void PreNoteDisplayHandleL() = 0;
+
+ /**
+ * Post note dissmissal handling
+ * @arg aButtonId, button ID that the note was cancelled with
+ */
+ virtual void PostNoteHandleL( TInt aButtonId );
+
+ /**
+ * Set the CBA for the waitnote
+ * @arg aCBAId, button group ID
+ */
+ void SetCBAL( TInt aCBAId );
+
+ /**
+ * Set the Text in the wait note
+ * @arg aText, text to display
+ */
+ void SetTextL( const TDesC& aText );
+
+ /**
+ * Set the icon in the wait note
+ */
+ void SetIconL( TNoteIconInfo& aIconInfo );
+
+protected: // From Base classes
+
+ /**
+ * From MMPXCollectionObserver
+ */
+ void HandleCollectionMediaL(const CMPXMedia& aMedia,
+ TInt aError);
+
+ /**
+ * From MMPXCollectionObserver
+ */
+ void HandleCollectionMessage(
+ CMPXMessage* aMessage, TInt aError );
+
+ /**
+ * From MMPXCollectionObserver
+ */
+ void HandleOpenL(const CMPXMedia& aEntries,
+ TInt aIndex,TBool aComplete,TInt aError);
+
+ /**
+ * From MMPXCollectionObserver
+ */
+ void HandleOpenL(const CMPXCollectionPlaylist& aPlaylist,TInt aError);
+
+ /**
+ * Callback method when a dialog is dismissed.
+ * @param aButtonId Button ID.
+ */
+ void DialogDismissedL( TInt aButtonId );
+
+ /**
+ * Display a confirmation dialog
+ * @param aLabel, label for the popup note
+ */
+ void DisplayConfirmationNoteL( const TDesC& aLabel );
+
+ /**
+ * Display an information dialog
+ * @param aLabel, label for the popup note
+ */
+ void DisplayInformationNoteL( const TDesC& aLabel );
+
+ /**
+ * Display a query dialog
+ * @param aLabel, label for the query
+ * @return button that was selected
+ */
+ TInt DisplayQueryNoteL( const TDesC& aQuery );
+
+ /**
+ * Dismiss the current query note, if any
+ */
+ void DismissQueryNoteL();
+
+ /**
+ * Display a generic CAknNoteDialog
+ * @param aDlgRsc, dialog resource
+ * @param aLabel, text
+ */
+ void DisplayNoteDialogL( TInt aDlgRsc, const TDesC& aLabel,
+ CAknNoteDialog::TTone aTone = CAknNoteDialog::ENoTone );
+// Cover UI start
+//#ifdef __COVER_DISPLAY
+ /**
+ * Display a generic CAknNoteDialog
+ * @param aDlgRsc, dialog resource
+ * @param aLabel, text
+ */
+ void DisplayNoteDialogL( TInt aDlgRsc, TInt aTextRsc,
+ TInt aItemsAdded, const TDesC& aLabel,
+ CAknNoteDialog::TTone aTone = CAknNoteDialog::ENoTone );
+//#endif // __COVER_DISPLAY
+// Cover UI end
+
+protected:
+
+ /**
+ * Constructor
+ */
+ CMPXWaitNoteDialog( MMPXWaitNoteObserver* aObs,
+ TWaitNoteType aType,
+ TBool aVisibilityDelayOff = ETrue );
+
+ /**
+ * Two-phased constructor
+ */
+ void BaseConstructL();
+
+protected: // data
+ MMPXCollectionUtility* iCollection;
+
+ MMPXWaitNoteObserver* iObserver;
+ TWaitNoteType iWaitNoteType;
+ TBool iVisDelayOff; // VisibilityDelayOff
+ CAknWaitDialog* iWaitDialog;
+ TInt iResourceOffset;
+ CAknQueryDialog* iQueryDialog; // Not Owned
+ CAknNoteDialog* iNoteDialog; // Not Owned
+ };
+
+#endif // C_MPXWAITNOTEDIALOG_H