00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef __CMAINMENU_H__
00033 #define __CMAINMENU_H__
00034
00035 #include <e32base.h>
00036 #include <etel3rdparty.h>
00037
00038
00039 #include "CISVAPIAsync.h"
00040
00041 #include "CBaseMenuAsync.h"
00042
00043
00044 #include "CPhoneId.h"
00045 #include "CGetLockInfo.h"
00046 #include "CFlightModeInfo.h"
00047 #include "CNetworkRegInfo.h"
00048 #include "CDialCall.h"
00049 #include "CHold.h"
00050 #include "CResume.h"
00051 #include "CSwap.h"
00052 #include "CHangup.h"
00053 #include "CLineStatus.h"
00054 #include "CCallStatus.h"
00055 #include "CCurrentNetworkName.h"
00056 #include "CCurrentNetworkInfo.h"
00057 #include "COperatorName.h"
00058 #include "CCallWaitingStatus.h"
00059 #include "CAnswerIncomingCall.h"
00060
00061
00062 _LIT(KPhoneIdMsg, "Phone Id:\n");
00063 _LIT(KNetworkInfoMsg, "Network Info:\n");
00064 _LIT(KNetworkNameMsg, "Network Name:\n");
00065 _LIT(KOperatorNameMsg, "Operator Name:\n");
00066 _LIT(KNetworkRegMsg, "Network Registration Status:\n");
00067 _LIT(KCallWaitingStatusMsg, "Call Waiting Status:\n");
00068 _LIT(KMenuMsg, "*~Outgoing Call~*\nPress E to exit\n");
00069 _LIT(KIncomingMsg, "Press I to simulate an incoming call\n");
00070 _LIT(KHoldMsg, "Press H to put current call on Hold\n");
00071 _LIT(KResumeMsg, "Press R to resume the on hold call\n");
00072 _LIT(KSwapMsg, "Press S to swap the active and on hold calls\n");
00073 _LIT(KHangupMsg, "Press Esc Hangup the active Call\n");
00074 _LIT(KDialMsg, "Press D to Dial a Call\n");
00075 _LIT(KAnswerMsg, "Press A to Answer the incoming Call\n");
00076
00077 _LIT(KTheNumber, "01123581321");
00078
00083 class CMainMenu : public CBaseMenuAsync
00084 {
00085
00086
00087 public:
00088 static CMainMenu* NewLC(CConsoleBase& aConsole);
00089 ~CMainMenu();
00090
00091 void ExecComplete(TTelISVExampleType aDerivedType);
00092 void ExecNotify(TTelISVExampleType aDerivedType);
00093
00094 private:
00095 CMainMenu(CConsoleBase& aConsole);
00096 void ConstructL();
00097
00098 void RunL();
00099 void DoCancel();
00100
00104 void PrintCorrectMenu(CTelephony::TCallCapsV1 callCapsV1);
00105
00109 CTelephony::TCallCapsV1 GetCurrentDynamicCaps();
00110
00115 void GetInput();
00116
00117
00118 private:
00119
00120
00124 CISVAPIAsync* iPhoneId;
00128 CISVAPIAsync* iNetworkInfo;
00132 CISVAPIAsync* iNetworkName;
00136 CISVAPIAsync* iOperatorName;
00140 CISVAPIAsync* iDialCall;
00144 CISVAPIAsync* iHangup;
00148 CISVAPIAsync* iHold;
00152 CISVAPIAsync* iSwap;
00156 CISVAPIAsync* iResume;
00160 CISVAPIAsync* iFlightModeInfo;
00164 CISVAPIAsync* iNetworkRegInfo;
00168 CISVAPIAsync* iLineStatus;
00172 CISVAPIAsync* iGetLockInfo;
00176 CISVAPIAsync* iCallWaiting;
00180 CISVAPIAsync* iAnswerIncomingCall;
00184 CISVAPIAsync* iCallStatus;
00188 CISVAPIAsync* iCallStatus2;
00192 CISVAPIAsync* iLastCallStatus;
00196 CTelephony::TCallId iCallId;
00200 CTelephony::TCallId iCallId2;
00204 TBool iCallWaitingOn;
00209 TBool iRinging;
00214 TBool iThenAnswer;
00215
00216 };
00217
00218 #endif // __CMAINMENU_H__
00219