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
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.