--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/wmdrm/camese/wmdrmdlautils/inc/wmdrmdlaui.h Thu Dec 17 08:52:27 2009 +0200
@@ -0,0 +1,148 @@
+/*
+* Copyright (c) 2008 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: Interface class for WMDRM DLA UI
+*
+*/
+
+
+#ifndef C_WMDRMDLAUI_H
+#define C_WMDRMDLAUI_H
+
+#include <e32base.h>
+
+class CCoeEnv;
+class CAknGlobalNote;
+class MDesCArray;
+class CGulIcon;
+
+/**
+ * Interface for wait note callback.
+ */
+class MWmDrmDlaWaitNoteCallback
+ {
+ public:
+
+ /**
+ * Called if user cancels the wait note
+ */
+ virtual void UserWaitNoteCancellation() = 0;
+
+ };
+
+/**
+ * WMDRM DLA UI Interface
+ *
+ * @lib wmdrmdlautils.lib
+ * @since S60 v9.1
+ */
+NONSHARABLE_CLASS( CWmDrmDlaUi ) : public CActive
+ {
+
+ public:
+
+ /**
+ * This class must have an access to CCoeEnv,
+ * otherwise it will leave with KErrNotSupported
+ */
+ IMPORT_C static CWmDrmDlaUi* NewL();
+ IMPORT_C static CWmDrmDlaUi* NewLC();
+
+ /**
+ * Destructor.
+ */
+ virtual ~CWmDrmDlaUi();
+
+ /**
+ * Shows error note
+ *
+ * @param aTextResourceId Resource id of the text to be shown
+ * @leave with standard Symbian error code in case of error
+ */
+ IMPORT_C void ShowErrorNoteL( TInt aTextResourceId );
+
+ /**
+ * Shows wait note
+ *
+ * @param aTextResourceId Resource id of the text to be shown
+ * @param aCallback Callback that will be called,
+ * if user cancels the wait note. Can be NULL.
+ * @leave with KErrInUse, if wait note is already shown, otherwise
+ * standard Symbian error code in case of error.
+ */
+ IMPORT_C void ShowWaitNoteL( TInt aTextResourceId,
+ MWmDrmDlaWaitNoteCallback* aCallback );
+
+ /**
+ * Removes wait note
+ */
+ IMPORT_C void RemoveWaitNote();
+
+ /**
+ * Shows list query
+ *
+ * @param aItems Item array to be shown,
+ * ownership is transferred to the list query.
+ * @param aIcons Icon array to be shown,
+ * ownership is transferred to the list query.
+ * @return Index of the user selection or -1, if user cancelled query.
+ * @leave with KErrArgument, if any parameter is NULL, otherwise
+ * standard Symbian error code in case of error.
+ */
+ IMPORT_C TInt ShowListQueryL( MDesCArray* aItems,
+ CArrayPtr<CGulIcon>* aIcons );
+
+ protected: // from base class CActive
+
+ /**
+ * From CActive Cancels async request.
+ */
+ void DoCancel();
+
+ /**
+ * From CActive Called when async request completes.
+ */
+ void RunL();
+
+ /**
+ * From CActive Called if RunL leaves.
+ */
+ TInt RunError( TInt aError );
+
+ private:
+
+ CWmDrmDlaUi();
+ void ConstructL();
+ void CancelWaitNote();
+
+ private: // data
+
+ //Control environment, not owned
+ CCoeEnv* iCoeEnv;
+
+ // Path of the resource file
+ HBufC* iWmdrmDlaUtilsResourceFile;
+
+ // Resource offsets in CoeEnv
+ TInt iWmdrmDlaUtilsResourceFileOffset;
+
+ CAknGlobalNote* iGlobalNote;
+ TInt iGlobalNoteId;
+ HBufC* iGlobalNoteText;
+
+ //Not owned
+ MWmDrmDlaWaitNoteCallback* iCallback;
+
+ };
+
+#endif // C_WMDRMDLAUI_H