--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneapp/phoneuiview/inc/cphonenotecontroller.h Mon Jan 18 20:18:27 2010 +0200
@@ -0,0 +1,150 @@
+/*
+* Copyright (c) 2005 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: PhoneUI Note Controller
+*
+*/
+
+/*
+*/
+#ifndef CPHONENOTECONTROLLER_H
+#define CPHONENOTECONTROLLER_H
+
+
+// INCLUDES
+#include "cphoneprogressnote.h"
+#include "mphonetimer.h"
+
+// FORWARD DECLARATIONS
+class TPhoneCommandParam;
+class CPhoneTimer;
+class CEikonEnv;
+class CPhoneNote;
+class CPhoneUIDisabledNote;
+
+class CPhoneNoteController : public CBase, public MPhoneTimer
+ {
+ public:
+
+ /**
+ * Two-phased constructor.
+ */
+ static CPhoneNoteController* NewL( CEikonEnv& aEikEnv );
+
+ /**
+ * Destructor.
+ */
+ virtual ~CPhoneNoteController();
+
+ void CreateNoteL( TPhoneCommandParam* aCommandParam );
+
+ void DestroyNote();
+
+ void DestroyDTMFNote();
+
+ void DestroyGlobalNoteL();
+
+ void CreateGlobalNoteL( TPhoneCommandParam* aCommandParam );
+
+ void CreateProgressNoteL( TPhoneCommandParam* aCommandParam );
+
+ void DestroyProgressNote();
+
+ /**
+ * This function is called after on timeout.
+ */
+ void HandleTimeOutL();
+
+ /**
+ * Writes information is note visible or not
+ * to the given command parameter.
+ * @param aCommandParam - boolean param
+ */
+ void IsNoteVisible( TPhoneCommandParam* aCommandParam );
+
+ /**
+ * Writes information is progress note visible or not
+ * to the given command parameter.
+ * @param aCommandParam - boolean param
+ */
+ void IsProgressNoteVisible( TPhoneCommandParam* aCommandParam );
+
+ /**
+ * Writes information is note or not
+ * to the given command parameter.
+ * @param aCommandParam - boolean param
+ */
+ void IsNoteActive( TPhoneCommandParam* aCommandParam );
+
+ /**
+ * Returns true if active note is dismissable by key event, else false.
+ * @param aCommandParam - boolean param
+ */
+ void IsActiveNoteDissmissableByKeyEvent( TPhoneCommandParam* aCommandParam );
+
+ /**
+ * Updates softkeys to note
+ * @param aCommandParam - integer param for resolved resource id
+ */
+ void UpdateNoteSoftkeysL( TPhoneCommandParam* aCommandParam );
+
+ private:
+
+ /**
+ * C++ default constructor.
+ */
+ CPhoneNoteController( CEikonEnv& aEikEnv );
+
+ /**
+ * Updates information text to ongoing note
+ * @param aCommandParam - note param
+ */
+ void UpdateNoteTextL( TPhoneCommandParam* aCommandParam );
+
+ private: // Data
+
+ // Actual note
+ CPhoneNote* iNote;
+
+ CPhoneProgressNote* iProgressNote;
+
+ // Owned timer instance.
+ CPhoneTimer* iProgressUpdateTimer;
+
+ // Interval of progress updates.
+ TInt iInterval;
+
+ // Current progress.
+ TInt iProgressBarCount;
+
+ // Time to wait until next attempt.
+ TInt iWaitTime;
+
+ TTime iStartTime;
+
+ /**
+ * ID of global note.
+ */
+ TInt iGlobalNoteId;
+
+ // Eikon environment delivered from CPhoneViewController
+ CEikonEnv& iEikEnv;
+
+ // Note's text
+ TDesC* iNoteText;
+
+ };
+
+#endif // CPHONENOTECONTROLLER_H
+
+// End of File