18 |
18 |
19 #ifndef C_CPHONECUSTOMIZATIONVOIP_H |
19 #ifndef C_CPHONECUSTOMIZATIONVOIP_H |
20 #define C_CPHONECUSTOMIZATIONVOIP_H |
20 #define C_CPHONECUSTOMIZATIONVOIP_H |
21 |
21 |
22 // INCLUDES |
22 // INCLUDES |
23 #include <settingsinternalcrkeys.h> |
23 #include <settingsinternalcrkeys.h> |
24 #include <telmenuextension.h> |
24 #include <telmenuextension.h> |
25 #include <spdefinitions.h> |
25 #include <spdefinitions.h> |
26 #include "mphonecustomization.h" |
26 #include "mphonecustomization.h" |
27 #include "mphonebuttoncustomization.h" |
27 #include "mphonebuttoncustomization.h" |
28 |
28 |
35 class CPhoneStateUtilsVoip; |
35 class CPhoneStateUtilsVoip; |
36 class CPhoneUnattendedTransferCmdHandler; |
36 class CPhoneUnattendedTransferCmdHandler; |
37 class CPhoneNewCallCmdHandler; |
37 class CPhoneNewCallCmdHandler; |
38 class CEikMenuPaneItem; |
38 class CEikMenuPaneItem; |
39 class CCoeEnv; |
39 class CCoeEnv; |
40 class CPhoneVccHandler; |
|
41 class CPhoneCallForwardQueryHandler; |
40 class CPhoneCallForwardQueryHandler; |
42 |
41 |
43 // CONSTANTS |
42 // CONSTANTS |
44 |
43 |
45 const TInt KMaxVoIPServiceName = 100; |
44 const TInt KMaxVoIPServiceName = 100; |
75 * @return an instance of class CPhoneCustomizationVoip |
74 * @return an instance of class CPhoneCustomizationVoip |
76 */ |
75 */ |
77 static CPhoneCustomizationVoip* NewL( |
76 static CPhoneCustomizationVoip* NewL( |
78 MPhoneStateMachine& aStateMachine, |
77 MPhoneStateMachine& aStateMachine, |
79 MPhoneViewCommandHandle& aViewCommandHandle ); |
78 MPhoneViewCommandHandle& aViewCommandHandle ); |
80 |
79 |
81 // from base class MPhoneCustomization |
80 // from base class MPhoneCustomization |
82 |
81 |
83 /** |
82 /** |
84 * From MPhoneCustomization. |
83 * From MPhoneCustomization. |
85 * Customizes menu bar. |
84 * Customizes menu bar. |
86 * @param aResourceId Menu bar resource identifier. |
85 * @param aResourceId Menu bar resource identifier. |
87 * @param aMenuBar Menu bar. |
86 * @param aMenuBar Menu bar. |
167 * @param aNumber Number/Address |
166 * @param aNumber Number/Address |
168 */ |
167 */ |
169 void HandleDialL( const TDesC& aNumber ); |
168 void HandleDialL( const TDesC& aNumber ); |
170 |
169 |
171 // from base class MPhoneButtonCustomization |
170 // from base class MPhoneButtonCustomization |
172 |
|
173 /** |
171 /** |
174 * From MPhoneButtonCustomization. |
172 * From MPhoneButtonCustomization. |
175 * Customizes touch pane buttons. |
173 * Customizes touch pane buttons. |
176 * @param aTouchPane Interface to add and dimm |
174 * @param aTouchPane Interface to add and dimm |
177 * bubble touch pane buttons. |
175 * bubble touch pane buttons. |
178 */ |
176 */ |
179 void CustomizeTouchPaneButtons( |
177 void CustomizeTouchPaneButtons( |
180 MBubbleTouchPaneInterface& aTouchPane ); |
178 /*MBubbleTouchPaneInterface& aTouchPane*/ ); |
181 |
|
182 protected: |
179 protected: |
183 |
180 |
184 CPhoneCustomizationVoip( |
181 CPhoneCustomizationVoip( |
185 MPhoneStateMachine& aStateMachine, |
182 MPhoneStateMachine& aStateMachine, |
186 MPhoneViewCommandHandle& aViewCommandHandle ); |
183 MPhoneViewCommandHandle& aViewCommandHandle ); |
203 * Get the service provider name |
200 * Get the service provider name |
204 * @param aServiceId The service, whose name is requested |
201 * @param aServiceId The service, whose name is requested |
205 * @param aServiceName On return, contains the service name |
202 * @param aServiceName On return, contains the service name |
206 */ |
203 */ |
207 void GetVoipServiceNameL( TServiceId aServiceId, TDes& aServiceName ) const; |
204 void GetVoipServiceNameL( TServiceId aServiceId, TDes& aServiceName ) const; |
208 |
205 |
209 /** |
206 /** |
210 * EasyDialing enabled check |
207 * Modifies menu when there is active call. |
211 */ |
208 * @param aResourceId Menu resource id. |
212 TBool EasyDialingEnabled(); |
209 * @param aMenuPane Menu pane |
213 |
210 */ |
214 /** |
|
215 * Modifies menu when there is active call. |
|
216 * @param aResourceId Menu resource id. |
|
217 * @param aMenuPane Menu pane |
|
218 */ |
|
219 void ModifyInCallMenuL( TInt aResourceId, CEikMenuPane& aMenuPane ); |
211 void ModifyInCallMenuL( TInt aResourceId, CEikMenuPane& aMenuPane ); |
220 |
212 |
221 /** |
213 /** |
222 * Modifies menu when there is dialer/number entry shown. |
214 * Modifies menu when there is dialer/number entry shown. |
223 * |
215 * |
224 * @param aResourceId Menu pane resource identifier. |
216 * @param aResourceId Menu pane resource identifier. |
225 * @param aMenuPane Menu pane. |
217 * @param aMenuPane Menu pane. |
226 */ |
218 */ |
227 void ModifyNumberAcquisitionMenuL( |
219 void ModifyNumberAcquisitionMenuL( |
228 TInt aResourceId, CEikMenuPane& aMenuPane ); |
220 TInt aResourceId, CEikMenuPane& aMenuPane ); |
229 |
221 |
230 /** |
222 /** |
231 * Inserts "Internet call" menu item to the given menu pane. |
223 * Inserts "Internet call" menu item to the given menu pane. |
243 * @param aMenuPane Menu pane. |
235 * @param aMenuPane Menu pane. |
244 */ |
236 */ |
245 void InsertTextInputModeChangeMenuItemL( CEikMenuPane& aMenuPane ); |
237 void InsertTextInputModeChangeMenuItemL( CEikMenuPane& aMenuPane ); |
246 |
238 |
247 /** |
239 /** |
248 * Resolves active calls from phoneengine. |
240 * Resolves active calls from phoneengine. |
249 * @param aArray Active call array. |
241 * @param aArray Active call array. |
250 */ |
242 */ |
251 void GetActiveCallArrayL( |
243 void GetActiveCallArrayL( |
252 RArray<CTelMenuExtension::TCallInfo>& aArray ); |
244 RArray<CTelMenuExtension::TCallInfo>& aArray ); |
253 |
245 |
254 /** |
246 /** |
255 * Resolves most active call. |
247 * Resolves most active call. |
256 * This is used to determine which plug-in customizes menu pane |
248 * This is used to determine which plug-in customizes menu pane |
257 * and handles command. |
249 * and handles command. |
258 * @param aArray Active call array. |
250 * @param aArray Active call array. |
259 */ |
251 */ |
260 TInt ResolveMostActiveCallL( |
252 TInt ResolveMostActiveCallL( |
261 const RArray<CTelMenuExtension::TCallInfo>& aArray ); |
253 const RArray<CTelMenuExtension::TCallInfo>& aArray ); |
262 |
254 |
263 /** |
255 /** |
264 * Returns service id for activest call |
256 * Returns service id for activest call |
286 * @param aFeature A feature to be checked. |
278 * @param aFeature A feature to be checked. |
287 * @return ETrue if feature supported. |
279 * @return ETrue if feature supported. |
288 */ |
280 */ |
289 TBool CheckFeatureSupportByCallTypeL( |
281 TBool CheckFeatureSupportByCallTypeL( |
290 TFeature aFeature ); |
282 TFeature aFeature ); |
291 |
283 |
292 /** |
|
293 * Customizes touch pane buttons by extension. |
|
294 * @leave KErrNotFound if extension not found. |
|
295 * @param aTouchPane Interface to add and dimm |
|
296 * bubble touch pane buttons. |
|
297 */ |
|
298 void CustomizeTouchPaneUsingExtensionL( |
|
299 MBubbleTouchPaneInterface& aTouchPane ); |
|
300 |
|
301 /** |
284 /** |
302 * Shows "Enabling %U service" wait note |
285 * Shows "Enabling %U service" wait note |
303 */ |
286 */ |
304 void LaunchEnablingServiceNoteL(); |
287 void LaunchEnablingServiceNoteL(); |
305 |
288 |
368 /** |
351 /** |
369 * Gets phone number from the phone number entry. |
352 * Gets phone number from the phone number entry. |
370 * @return Phone number |
353 * @return Phone number |
371 */ |
354 */ |
372 HBufC* PhoneNumberFromEntryLC() const; |
355 HBufC* PhoneNumberFromEntryLC() const; |
373 |
|
374 /** |
|
375 * Enables or disables key lock. |
|
376 * @param aEnabled ETrue if keylock is enabled, |
|
377 * EFalse if disabled. |
|
378 */ |
|
379 void SetKeyLockEnabledL( TBool aEnabled ); |
|
380 |
|
381 /** |
|
382 * Keylock was on before and needs to be restored. |
|
383 * @param aRestore ETrue if keylock needs to be restored. |
|
384 */ |
|
385 void SetNeedToRestoreKeyLock( TBool aRestore ); |
|
386 |
|
387 /* Check if keylock was on before and needs to be restored. |
|
388 * @return ETrue if keylock needs to be restored. |
|
389 */ |
|
390 TBool NeedToRestoreKeyLock() const; |
|
391 |
|
392 |
356 |
393 private: // Data |
357 private: // Data |
394 |
358 |
395 /** |
359 /** |
396 * Control environment. |
360 * Control environment. |
397 */ |
361 */ |
398 CCoeEnv& iCoeEnv; |
362 CCoeEnv& iCoeEnv; |
399 |
363 |
427 * New Internet call command handler. |
391 * New Internet call command handler. |
428 */ |
392 */ |
429 CPhoneNewCallCmdHandler* iNewCallCmdHandler; |
393 CPhoneNewCallCmdHandler* iNewCallCmdHandler; |
430 |
394 |
431 /** |
395 /** |
432 * Pointer to VCC handler |
|
433 */ |
|
434 CPhoneVccHandler* iVccHandler; |
|
435 |
|
436 /** |
|
437 * Call forward handler. |
396 * Call forward handler. |
438 */ |
397 */ |
439 CPhoneCallForwardQueryHandler* iCallForwardHandler; |
398 CPhoneCallForwardQueryHandler* iCallForwardHandler; |
440 |
399 |
441 /** |
|
442 * Boolean flag. ETrue if keylock was on before and |
|
443 * needs to be restored. |
|
444 */ |
|
445 TBool iNeedToRestoreKeyLock; |
|
446 |
|
447 }; |
400 }; |
448 |
401 |
449 #endif // C_CPHONECUSTOMIZATIONVOIP_H |
402 #endif // C_CPHONECUSTOMIZATIONVOIP_H |
450 |
403 |
451 // End of File |
404 // End of File |