examples/Telephony/ETel3rdPartyExample/OutgoingCalls/CMainMenu.h

00001 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
00002 // All rights reserved.
00003 // This component and the accompanying materials are made available
00004 // under the terms of "Eclipse Public License v1.0"
00005 // which accompanies this distribution, and is available
00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
00007 //
00008 // Initial Contributors:
00009 // Nokia Corporation - initial contribution.
00010 //
00011 // Contributors:
00012 //
00013 // Description:
00014 //
00015 
00016 
00017 #ifndef __CMAINMENU_H__
00018 #define __CMAINMENU_H__
00019 
00020 #include <e32base.h>
00021 #include <etel3rdparty.h>
00022 
00023 
00024 #include "CISVAPIAsync.h"
00025 
00026 #include "CBaseMenuAsync.h"
00027 
00028 // Active objects
00029 #include "CPhoneId.h"
00030 #include "CGetLockInfo.h"
00031 #include "CFlightModeInfo.h"
00032 #include "CNetworkRegInfo.h"
00033 #include "CDialCall.h"
00034 #include "CHold.h"
00035 #include "CResume.h"
00036 #include "CSwap.h"
00037 #include "CHangup.h"
00038 #include "CLineStatus.h"
00039 #include "CCallStatus.h"
00040 #include "CCurrentNetworkName.h"
00041 #include "CCurrentNetworkInfo.h"
00042 #include "COperatorName.h"
00043 #include "CCallWaitingStatus.h"
00044 #include "CAnswerIncomingCall.h"
00045 
00046 
00047 _LIT(KPhoneIdMsg, "Phone Id:\n");
00048 _LIT(KNetworkInfoMsg, "Network Info:\n");
00049 _LIT(KNetworkNameMsg, "Network Name:\n");
00050 _LIT(KOperatorNameMsg, "Operator Name:\n");
00051 _LIT(KNetworkRegMsg, "Network Registration Status:\n");
00052 _LIT(KCallWaitingStatusMsg, "Call Waiting Status:\n");
00053 _LIT(KMenuMsg, "*~Outgoing Call~*\nPress E to exit\n");
00054 _LIT(KIncomingMsg, "Press I to simulate an incoming call\n");
00055 _LIT(KHoldMsg, "Press H to put current call on Hold\n");
00056 _LIT(KResumeMsg, "Press R to resume the on hold call\n");
00057 _LIT(KSwapMsg, "Press S to swap the active and on hold calls\n");
00058 _LIT(KHangupMsg, "Press Esc Hangup the active Call\n");
00059 _LIT(KDialMsg, "Press D to Dial a Call\n");
00060 _LIT(KAnswerMsg, "Press A to Answer the incoming Call\n");
00061 
00062 _LIT(KTheNumber, "01123581321");
00063 
00068 class CMainMenu : public CBaseMenuAsync
00069         {
00070 
00071 // Methods
00072 public:
00073         static CMainMenu* NewLC(CConsoleBase& aConsole);
00074         ~CMainMenu();
00075 
00076         void ExecComplete(TTelISVExampleType aDerivedType);
00077         void ExecNotify(TTelISVExampleType aDerivedType);
00078 
00079 private:
00080         CMainMenu(CConsoleBase& aConsole);
00081         void ConstructL();
00082 
00083         void RunL();    // Handles Key presses
00084         void DoCancel();
00085 
00089         void PrintCorrectMenu(CTelephony::TCallCapsV1 callCapsV1);
00090 
00094         CTelephony::TCallCapsV1 GetCurrentDynamicCaps();
00095 
00100         void GetInput();
00101 
00102         // Data
00103 private:
00104 
00105         // Owned active objects
00109         CISVAPIAsync* iPhoneId;
00113         CISVAPIAsync* iNetworkInfo;
00117         CISVAPIAsync* iNetworkName;
00121         CISVAPIAsync* iOperatorName;
00125         CISVAPIAsync* iDialCall;
00129         CISVAPIAsync* iHangup;
00133         CISVAPIAsync* iHold;
00137         CISVAPIAsync* iSwap;
00141         CISVAPIAsync* iResume;
00145         CISVAPIAsync* iFlightModeInfo;
00149         CISVAPIAsync* iNetworkRegInfo;
00153         CISVAPIAsync* iLineStatus;
00157         CISVAPIAsync* iGetLockInfo;
00161         CISVAPIAsync* iCallWaiting;
00165         CISVAPIAsync* iAnswerIncomingCall;
00169         CISVAPIAsync* iCallStatus;
00173         CISVAPIAsync* iCallStatus2;
00177         CISVAPIAsync* iLastCallStatus;
00181         CTelephony::TCallId iCallId;
00185         CTelephony::TCallId iCallId2;
00189         TBool iCallWaitingOn;
00194         TBool iRinging;
00199         TBool iThenAnswer;
00200 
00201         };
00202 
00203 #endif // __CMAINMENU_H__
00204 

Generated by  doxygen 1.6.2