--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cellular/PsetNotesUi/Inc/PsuiNoteController.h Tue Feb 02 01:11:09 2010 +0200
@@ -0,0 +1,161 @@
+/*
+* Copyright (c) 2007 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:
+* Singleton class for controlling notes.
+*
+*/
+
+
+#ifndef PSUINOTECONTROLLER_H
+#define PSUINOTECONTROLLER_H
+
+// INCLUDES
+#include <coemain.h>
+#include "PsuiNoteMaster.h"
+
+// CLASS DECLARATION
+
+class CPsuiNoteController : public CCoeStatic
+ {
+ public:
+
+ /**
+ * Returns an instance of this class. When called for the first
+ * time, a new instance is created and returned. After that,
+ * calling InstanceL returns the same instance that was created
+ * earlier.
+ *
+ * @return A pointer to a CPsuiNoteController object
+ */
+ static CPsuiNoteController* InstanceL();
+
+ /**
+ * Destructor.
+ */
+ virtual ~CPsuiNoteController();
+
+ /**
+ * Shows the requested note.
+ *
+ * @param aType Type of note to be shown
+ * Error, confirmation, warning and waiting notes are supported.
+ * @param aResourceID Content text's resource ID for the note
+ */
+ void ShowNoteL( TPsuiNoteTypes aType, TInt aResourceID );
+
+ /**
+ * Shows the basic service list assosiated with supplementary service
+ * activation or status check.
+ *
+ * @param aResourceHeading Heading for the list
+ * @param aBsc List of basic service groups
+ */
+ void ShowBscListL(
+ TInt aResourceHeading,
+ TUint8 aBsc[KPSUIMaxBscNumber] );
+
+ /*
+ * Same as above, except intended for CF basic service lists.
+ *
+ * @param aResourceHeading Heading for the list
+ * @param aList List of basic service groups and their statuses
+ * and settings
+ * @param aCFType Type of call forwarding
+ * @param aIndex Index of list item user has selected
+ * @return user action ID, i.e. what kind of list to show next
+ */
+ /*****************************************************
+ * Series 60 Customer / ETel
+ * Series 60 ETel API
+ *****************************************************/
+ TCFType ShowBscCFListL(
+ TInt aResourceHeading,
+ CMobilePhoneCFList& aList,
+ TCFType aCFType,
+ TInt& aIndex );
+
+ /**
+ * Shows detailed info about the selected basic service group.
+ *
+ * @param aCFType Type of Call Forwarding, defines softkeys
+ * @param aSetting List of basic service groups and their statuses
+ * and settings
+ */
+ /*****************************************************
+ * Series 60 Customer / ETel
+ * Series 60 ETel API
+ *****************************************************/
+ void ShowCfInfoL(
+ TCFType& aCFType,
+ const RMobilePhone::TMobilePhoneCFInfoEntryV1& aSetting );
+
+ /*
+ * Returns correct resource ID based on error code.
+ *
+ * @param aErrorCode Error code for which the resource ID is needed
+ * @return Resource ID for the string text in the error note
+ */
+ TInt SetErrorNoteResourceID ( const TInt aErrorCode );
+
+ /**
+ * Removes all notes that are being displayed by us.
+ */
+ void RemoveNotesL();
+
+ /**
+ * Kills waiting note when the request is completed.
+ */
+ void KillStaticNoteL();
+
+ /**
+ * Sets the connection to engine.
+ * This is needed to provide user the possibility to cancel
+ * pending requests. All the pointers are set with same
+ * command, if in the future the amount of parameters comes
+ * too large, redesigning might be worth doing.
+ *
+ * @param aWaitingEngine Reference to Phone Settings' object
+ * @param aBarringEngine Reference to Phone Settings' object
+ * @param aDivertEngine Reference to Phone Settings' object
+ * @param aCliEngine Reference to Phone Settings' object
+ */
+ void SetEngineContacts( MPsetCallWaiting* aWaitingEngine,
+ MPsetCallBarring* aBarringEngine,
+ MPsetCallDiverting* aDivertEngine,
+ MPsetCli* aCliEngine);
+
+
+ private:
+
+ /**
+ * Default constructor is private because we are using the
+ * singleton design pattern.
+ */
+ CPsuiNoteController();
+
+ /**
+ * By default EPOC constructor is private.
+ */
+ void ConstructL();
+
+
+ private:
+
+ // Note Master does the actual showing of notes and lists
+ CPsuiNoteMaster* iNote;
+ };
+
+#endif // PSUINOTECONTROLLER_H
+
+// End of File