--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/browserutilities/browserdialogsprovider/Inc/BrowserUploadProgressNote.h Mon Mar 30 12:54:55 2009 +0300
@@ -0,0 +1,144 @@
+/*
+* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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:
+* This class creates a progress dialog, which shows the progress of an upload
+*
+*
+*/
+
+
+#ifndef BROWSERUPLOADPROGRESSNOTE_H
+#define BROWSERUPLOADPROGRESSNOTE_H
+
+#include <eikprogi.h>
+#include <AknProgressDialog.h>
+
+class CEikDialog;
+class CEikProgressInfo;
+class MBrowserDialogsProviderObserver;
+
+class CBrowserUploadProgressNote : public CAknProgressDialog,
+ public MProgressDialogCallback
+ {
+ public:
+ /**
+ * Constructor
+ * @param aMaxValue The maximal value of the progress.
+ * @param aObserver Observers of the dialog
+ * @param aSelfPtr self pointer
+ */
+ CBrowserUploadProgressNote( TInt aMaxValue,
+ MBrowserDialogsProviderObserver* aObserver,
+ CEikDialog** aSelfPtr );
+
+ /**
+ * Destructor.
+ */
+ virtual ~CBrowserUploadProgressNote();
+
+ /**
+ * Two-phased constructor. Leaves on failure.
+ * @param aMaxValue The maximal value of the progress.
+ * @param aObserver Observers of the dialog
+ * @param aSelfPtr self pointer
+ * @return The constructed progress note.
+ */
+ static CBrowserUploadProgressNote* NewL( TInt aMaxValue,
+ MBrowserDialogsProviderObserver* aObserver,
+ CEikDialog** aSelfPtr );
+
+ /**
+ * Two-phased constructor. Leaves on failure.
+ * Places the instance on the cleanup stack.
+ * @param aMaxValue The maximal value of the progress.
+ * @param aObserver Observers of the dialog
+ * @param aSelfPtr self pointer
+ * @return The constructed progress note.
+ */
+ static CBrowserUploadProgressNote* NewLC( TInt aMaxValue,
+ MBrowserDialogsProviderObserver* aObserver,
+ CEikDialog** aSelfPtr );
+
+ /**
+ * Updates the progress bar by a given value.
+ * @param aChunkSize The size of chunk of data uploaded this time.
+ */
+ void UpdateL( TInt aChunkSize );
+
+ public: // from MProgressDialogCallback
+
+ /**
+ * Callback which is called when a dialog has beed dismissed
+ * Requires registration with SetCallback( MProgressDialogCallback* )
+ *
+ */
+ void DialogDismissedL( TInt aButtonId );
+
+ private:
+ /**
+ * Two-phased constructor. Leaves on failure.
+ */
+ void ConstructL( );
+
+ /**
+ * Divides the given parameters, and returns the result
+ * as a formatted string.
+ * @param aNumerator The numerator of the division.
+ * @param aDenominator The denominator of the division.
+ * @return A pointer to the created descriptor on the heap.
+ *
+ * The calling program must destroy the heap descriptor when it is no
+ * longer needed.
+ */
+ HBufC* DivisionL( TInt aNumerator, TInt aDenominator );
+
+
+ private:
+ /**
+ * The sum of sizes for all uploaded fields (to be uploaded).
+ */
+ TInt iMaxValue;
+
+ /**
+ * The currently uploaded size of data.
+ */
+ TInt iUploaded;
+
+ /**
+ * Handle of the progress note.
+ */
+ //CAknProgressDialog* iProgressDlg;
+
+ /**
+ * Handle to the progress bar of the progress note.
+ */
+ CEikProgressInfo* iProgressInfo;
+
+ /**
+ * Handle to the "Uploaded:\n %U / %U " decriptor in resource.
+ */
+ HBufC* iStrUploaded;
+
+ /**
+ * Handle to the "kB" / "MB" decriptor in resource.
+ */
+ HBufC* iStrUnit;
+
+ /**
+ * Dialog Observer Pointer
+ */
+ MBrowserDialogsProviderObserver* iObserver;
+ };
+
+#endif
\ No newline at end of file