phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchermenuhandler.cpp
branchRCL_3
changeset 85 38bb213f60ba
parent 74 6b5524b4f673
equal deleted inserted replaced
74:6b5524b4f673 85:38bb213f60ba
   371         case ECCAppCommLauncherDefaultsCmd:
   371         case ECCAppCommLauncherDefaultsCmd:
   372             DoSetDefaultCmdL();
   372             DoSetDefaultCmdL();
   373             break;
   373             break;
   374         case ECCAppCommLauncherDeleteCmd:
   374         case ECCAppCommLauncherDeleteCmd:
   375             DoDeleteCmdL();
   375             DoDeleteCmdL();
   376             break;
       
   377         case ECCAppCommLauncherSendBCardCmd:
       
   378             DoSendBCardCmdL();
       
   379             break;
   376             break;
   380         default:
   377         default:
   381             break;
   378             break;
   382         }
   379         }
   383 
   380 
   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 )