41 TPhoneCallHeaderParam::TPhoneCallHeaderParam( |
41 TPhoneCallHeaderParam::TPhoneCallHeaderParam( |
42 MPhoneCallHeaderManagerUtility& aManagerUtility, |
42 MPhoneCallHeaderManagerUtility& aManagerUtility, |
43 MPhoneStateMachine& aStateMachine ) |
43 MPhoneStateMachine& aStateMachine ) |
44 : iManagerUtility ( aManagerUtility ), |
44 : iManagerUtility ( aManagerUtility ), |
45 iStateMachine ( aStateMachine ), |
45 iStateMachine ( aStateMachine ), |
46 iCallHeaderType ( CBubbleManager::ENormal ), |
46 iCallHeaderType ( CBubbleManager::ENormal ) |
47 iSetDivertIndication ( EFalse ) |
|
48 { |
47 { |
49 } |
48 } |
50 |
49 |
51 // ----------------------------------------------------------- |
50 // ----------------------------------------------------------- |
52 // TPhoneCallHeaderParam::SetCallHeaderTexts |
51 // TPhoneCallHeaderParam::SetCallHeaderTexts |
224 // TPhoneCallHeaderParam::SetBasicCallHeaderParamsL |
223 // TPhoneCallHeaderParam::SetBasicCallHeaderParamsL |
225 // --------------------------------------------------------------------------- |
224 // --------------------------------------------------------------------------- |
226 // |
225 // |
227 void TPhoneCallHeaderParam::SetBasicCallHeaderParamsL( |
226 void TPhoneCallHeaderParam::SetBasicCallHeaderParamsL( |
228 const TInt aCallId, |
227 const TInt aCallId, |
229 TPhoneCmdParamCallHeaderData* aCallHeaderData, |
228 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
230 TBool aInitializing ) |
|
231 { |
229 { |
232 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetBasicCallHeaderParamsL( ) "); |
230 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetBasicCallHeaderParamsL( ) "); |
233 // Set call header call state |
231 // Set call header call state |
234 if( aInitializing ) |
232 aCallHeaderData->SetCallState( |
235 { |
233 iStateMachine.PhoneEngineInfo()->CallState( aCallId ) ); |
236 // fake state to initializing call this way we get correct bubble to screen. |
234 // Set call header type |
237 aCallHeaderData->SetCallState( EPEStateDialing ); |
|
238 } |
|
239 else |
|
240 { |
|
241 aCallHeaderData->SetCallState( |
|
242 iStateMachine.PhoneEngineInfo()->CallState( aCallId ) ); |
|
243 } |
|
244 |
|
245 // Set call header type. |
|
246 aCallHeaderData->SetCallType( GetCallType( aCallId, aCallHeaderData ) ); |
235 aCallHeaderData->SetCallType( GetCallType( aCallId, aCallHeaderData ) ); |
247 aCallHeaderData->SetCallFlag( CallHeaderType() ); |
236 aCallHeaderData->SetCallFlag( CallHeaderType() ); |
248 |
237 |
249 // Set call header voice privacy status |
238 // Set call header voice privacy status |
250 aCallHeaderData->SetCiphering( |
239 aCallHeaderData->SetCiphering( |
496 void TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader( |
485 void TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader( |
497 const TInt aCallId, |
486 const TInt aCallId, |
498 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
487 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
499 { |
488 { |
500 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader( ) "); |
489 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader( ) "); |
501 if( iSetDivertIndication ) |
490 TBool forwarded = iStateMachine.PhoneEngineInfo()->CallForwarded( aCallId ); |
|
491 if ( forwarded ) |
502 { |
492 { |
503 aCallHeaderData->AddCallFlag( CBubbleManager::EDiverted ); |
493 aCallHeaderData->AddCallFlag( CBubbleManager::EDiverted ); |
504 } |
494 } |
505 |
495 |
506 if ( iStateMachine.PhoneEngineInfo()->CallALSLine( aCallId ) == CCCECallParameters::ECCELineTypeAux ) |
496 if ( iStateMachine.PhoneEngineInfo()->CallALSLine( aCallId ) == CCCECallParameters::ECCELineTypeAux ) |
507 { |
497 { |
508 __PHONELOG( EBasic, EPhoneControl, |
498 __PHONELOG( EBasic, EPhoneControl, |
509 "TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader - CallALSLine() == CCCECallParameters::ECCELineTypeAux"); |
499 "TPhoneCallHeaderParam::SetDivertIndicatorToCallHeader - CallALSLine() == CCCECallParameters::ECCELineTypeAux"); |
510 aCallHeaderData->SetLine2( ETrue ); |
500 aCallHeaderData->SetLine2( ETrue ); |
511 } |
501 } |
512 } |
|
513 |
|
514 // --------------------------------------------------------------------------- |
|
515 // TPhoneCallHeaderParam::SetDivertIndication |
|
516 // --------------------------------------------------------------------------- |
|
517 // |
|
518 void TPhoneCallHeaderParam::SetDivertIndication( const TBool aDivertIndication ) |
|
519 { |
|
520 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetDivertIndication( ) "); |
|
521 iSetDivertIndication = aDivertIndication; |
|
522 __PHONELOG1( EBasic, EPhoneControl, |
|
523 "TPhoneCallHeaderParam::SetDivertIndication() - iSetDivertIndication: %d ", |
|
524 iSetDivertIndication ) |
|
525 } |
502 } |
526 |
503 |
527 // --------------------------------------------------------------------------- |
504 // --------------------------------------------------------------------------- |
528 // TPhoneCallHeaderParam::SetIncomingCallHeaderParamsL |
505 // TPhoneCallHeaderParam::SetIncomingCallHeaderParamsL |
529 // --------------------------------------------------------------------------- |
506 // --------------------------------------------------------------------------- |
534 const TBool aVideoCall, |
511 const TBool aVideoCall, |
535 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
512 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
536 { |
513 { |
537 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetIncomingCallHeaderParamsL( ) "); |
514 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetIncomingCallHeaderParamsL( ) "); |
538 // Set basic params must be called before update is called. |
515 // Set basic params must be called before update is called. |
539 SetBasicCallHeaderParamsL( aCallId, aCallHeaderData, EFalse ); |
516 SetBasicCallHeaderParamsL( aCallId, aCallHeaderData ); |
540 |
517 |
541 // Set call header labels |
518 // Set call header labels |
542 SetCallHeaderTexts( |
519 SetCallHeaderTexts( |
543 aCallId, |
520 aCallId, |
544 aWaitingCall, |
521 aWaitingCall, |
559 const TInt aCallId, |
536 const TInt aCallId, |
560 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
537 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
561 { |
538 { |
562 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetOutgoingCallHeaderParamsL( ) "); |
539 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetOutgoingCallHeaderParamsL( ) "); |
563 // Set basic params must be called before update is called. |
540 // Set basic params must be called before update is called. |
564 SetBasicCallHeaderParamsL( aCallId, aCallHeaderData, EFalse ); |
541 SetBasicCallHeaderParamsL( aCallId, aCallHeaderData ); |
565 // Set call header labels |
542 // Set call header labels |
566 SetCallHeaderLabels( aCallHeaderData ); |
543 SetCallHeaderLabels( aCallHeaderData ); |
567 SetCliParamatersL( aCallId, aCallHeaderData ); |
544 SetCliParamatersL( aCallId, aCallHeaderData ); |
568 } |
|
569 |
|
570 // --------------------------------------------------------------------------- |
|
571 // TPhoneCallHeaderParam::SetIniticalizingCallHeaderParamsL |
|
572 // --------------------------------------------------------------------------- |
|
573 // |
|
574 void TPhoneCallHeaderParam::SetIniticalizingCallHeaderParamsL( |
|
575 const TInt aCallId, |
|
576 TPhoneCmdParamCallHeaderData* aCallHeaderData ) |
|
577 { |
|
578 __LOGMETHODSTARTEND(EPhoneControl, "TPhoneCallHeaderParam::SetIniticalizingCallHeaderParamsL( ) "); |
|
579 // Set basic params must be called before update is called. |
|
580 SetBasicCallHeaderParamsL( aCallId, aCallHeaderData, ETrue ); |
|
581 // Set call header labels |
|
582 SetCallHeaderLabels( aCallHeaderData ); |
|
583 } |
545 } |
584 |
546 |
585 // --------------------------------------------------------------------------- |
547 // --------------------------------------------------------------------------- |
586 // TPhoneCallHeaderParam::SetCallHeaderLabels |
548 // TPhoneCallHeaderParam::SetCallHeaderLabels |
587 // --------------------------------------------------------------------------- |
549 // --------------------------------------------------------------------------- |
633 aCallHeaderData->SetCNAPText( remoteInfoText, CBubbleManager::ERight ); |
595 aCallHeaderData->SetCNAPText( remoteInfoText, CBubbleManager::ERight ); |
634 } |
596 } |
635 else |
597 else |
636 { |
598 { |
637 aCallHeaderData->SetCNAPText( iStateMachine.PhoneEngineInfo()-> |
599 aCallHeaderData->SetCNAPText( iStateMachine.PhoneEngineInfo()-> |
638 RemotePhoneNumber( aCallId ), CBubbleManager::ELeft ); |
600 RemotePhoneNumber( aCallId ), CBubbleManager::ELeft ); |
|
601 |
|
602 // No contact name, use phonenumber when available. |
|
603 if ( iStateMachine.PhoneEngineInfo()->RemotePhoneNumber( aCallId ).Length() |
|
604 && !ContactInfoAvailable( aCallId ) ) |
|
605 { |
|
606 aCallHeaderData->SetParticipantListCLI( |
|
607 TPhoneCmdParamCallHeaderData::EPhoneParticipantCNAPText ); |
|
608 } |
639 } |
609 } |
640 } |
610 } |
641 else |
611 else |
642 { |
612 { |
643 aCallHeaderData->SetCLIText( |
613 aCallHeaderData->SetCLIText( |
673 |
643 |
674 // Update caller image |
644 // Update caller image |
675 SetCallerImage( |
645 SetCallerImage( |
676 aCallId, |
646 aCallId, |
677 aCallHeaderData ); |
647 aCallHeaderData ); |
|
648 |
|
649 // Update divert indication |
|
650 SetDivertIndicatorToCallHeader( aCallId, aCallHeaderData ); |
678 } |
651 } |
679 |
652 |
680 // --------------------------------------------------------------------------- |
653 // --------------------------------------------------------------------------- |
681 // TPhoneCallHeaderParam::IsCallPrivateOrPayPhone |
654 // TPhoneCallHeaderParam::IsCallPrivateOrPayPhone |
682 // --------------------------------------------------------------------------- |
655 // --------------------------------------------------------------------------- |