545 if (param) |
542 if (param) |
546 { |
543 { |
547 TPtrC8 contactLink = param->Value().AsData(); |
544 TPtrC8 contactLink = param->Value().AsData(); |
548 |
545 |
549 // Update the CCA parameter contact data |
546 // Update the CCA parameter contact data |
550 TInt length = contactLink.Length(); |
547 HBufC16* link16 = HBufC16::NewLC( contactLink.Length() ); |
551 if ( length > 0 ) |
548 link16->Des().Copy( contactLink ); |
552 { |
549 iPlugin.AppEngine()->Parameter().SetContactDataL( link16->Des() ); |
553 HBufC16* link16 = HBufC16::NewLC( length ); |
550 // Set contact data flag to EContactLink, because the parameters returned from |
554 link16->Des().Copy( contactLink ); |
551 // phonebook AIW provider have conatct link but not contact id. |
555 iPlugin.AppEngine()->Parameter().SetContactDataL( link16->Des() ); |
552 iPlugin.AppEngine()->Parameter().SetContactDataFlag( MCCAParameter::EContactLink ); |
556 // Set contact data flag to EContactLink, because the parameters returned from |
553 CleanupStack::PopAndDestroy(1); // link16 |
557 // phonebook AIW provider have conatct link but not contact id. |
554 |
558 iPlugin.AppEngine()->Parameter().SetContactDataFlag( MCCAParameter::EContactLink ); |
555 // Inform the app engine of the contact event |
559 CleanupStack::PopAndDestroy(1); // link16 |
556 iPlugin.AppEngine()->CCAppContactEventL(); |
560 |
557 |
561 // Inform the app engine of the contact event |
558 // Update the commlauncher the UI contact data |
562 iPlugin.AppEngine()->CCAppContactEventL(); |
559 iPlugin.ContactHandler().RefetchContactL(); |
563 |
560 iPlugin.Container().ContactsChangedL(); |
564 // Update the commlauncher the UI contact data |
561 |
565 iPlugin.ContactHandler().RefetchContactL(); |
562 //Update the Store |
566 iPlugin.Container().ContactsChangedL(); |
563 SetContactStore(iPlugin.ContactHandler().ContactStore()); |
567 |
|
568 //Update the Store |
|
569 SetContactStore(iPlugin.ContactHandler().ContactStore()); |
|
570 } |
|
571 } |
564 } |
572 |
565 |
573 if (errParam) |
566 if (errParam) |
574 { |
567 { |
575 TInt32 err; |
568 TInt32 err; |
648 |
641 |
649 CleanupStack::PopAndDestroy( 1 ); // ContactIdentifierLC |
642 CleanupStack::PopAndDestroy( 1 ); // ContactIdentifierLC |
650 } |
643 } |
651 |
644 |
652 // --------------------------------------------------------------------------- |
645 // --------------------------------------------------------------------------- |
653 // CCCAppCommLauncherMenuHandler::DoSendBCardCmdL |
|
654 // --------------------------------------------------------------------------- |
|
655 // |
|
656 void CCCAppCommLauncherMenuHandler::DoSendBCardCmdL() |
|
657 { |
|
658 if( !iPbkCmd ) |
|
659 { |
|
660 iPbkCmd = CCCAppCommLauncherPbkCmd::NewL( iPlugin ); |
|
661 } |
|
662 iPbkCmd->ExecutePbk2CmdSendBCardL( |
|
663 *iPlugin.ContactHandler().ContactIdentifierLC() ); |
|
664 |
|
665 CleanupStack::PopAndDestroy( 1 ); // ContactIdentifierLC |
|
666 } |
|
667 |
|
668 // --------------------------------------------------------------------------- |
|
669 // CCCAppCommLauncherMenuHandler::XspContactDynInitMenuPaneL |
646 // CCCAppCommLauncherMenuHandler::XspContactDynInitMenuPaneL |
670 // --------------------------------------------------------------------------- |
647 // --------------------------------------------------------------------------- |
671 // |
648 // |
672 void CCCAppCommLauncherMenuHandler::XspContactDynInitMenuPaneL( |
649 void CCCAppCommLauncherMenuHandler::XspContactDynInitMenuPaneL( |
673 CEikMenuPane* aMenuPane ) |
650 CEikMenuPane* aMenuPane ) |