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