phonebookui/pbkcommonui/src/cntgroupactionsview.cpp
changeset 53 e6aff7b69165
parent 50 77bc263e1626
child 54 47627ab5d7a4
--- a/phonebookui/pbkcommonui/src/cntgroupactionsview.cpp	Wed Jul 21 11:37:51 2010 +0300
+++ b/phonebookui/pbkcommonui/src/cntgroupactionsview.cpp	Fri Jul 23 12:43:48 2010 +0300
@@ -125,7 +125,8 @@
     mGroupContact = new QContact(aArgs.value(ESelectedGroupContact).value<QContact>());
     mViewManager = aMgr;
 
-    QString groupName = mGroupContact->displayLabel();
+    QContactName contactName = mGroupContact->detail( QContactName::DefinitionName );
+    QString groupName = contactName.value( QContactName::FieldCustomLabel );        
     if (groupName.isEmpty())
     {
         groupName = hbTrId("txt_phob_list_unnamed");
@@ -194,7 +195,8 @@
     if (index.isValid()) {
         //reset flags
         mPopupCount=0;
-        mActionParams.clear();
+        mEmailActionParams.clear();
+        mMessageActionParams.clear();
         
         QString action = mModel->item(index.row())->data(Qt::UserRole+1).toString();
         
@@ -219,11 +221,11 @@
                 if (!preferredDetail.isEmpty()) {
                     if(action.compare("message", Qt::CaseInsensitive) == 0) {
                         QContactPhoneNumber phoneNumber = contact.detail<QContactPhoneNumber>();
-                        mActionParams.append(phoneNumber.number());
+                        mMessageActionParams.insert(phoneNumber.number(),QVariant(contact.displayLabel()));
                     }
                     else {
                         QContactEmailAddress email = contact.detail<QContactEmailAddress>();
-                        mActionParams.append(email.emailAddress());
+                        mEmailActionParams.append(email.emailAddress());
                     }
                 }
                 else {
@@ -245,7 +247,12 @@
             if (mPopupCount==0) {
                 QVariantMap map;
                 QVariant params;
-                params.setValue(mActionParams);
+                if (action.compare("message", Qt::CaseInsensitive) == 0) {
+                    params.setValue(mMessageActionParams);
+                }
+                else if (action.compare("email", Qt::CaseInsensitive) == 0) {
+                    params.setValue(mEmailActionParams);
+                }
                 map.insert(action,params);
                 CntActionLauncher* other = new CntActionLauncher(*mViewManager->contactManager(SYMBIAN_BACKEND), action);
                 connect(other, SIGNAL(actionExecuted(CntActionLauncher*)), this, SLOT(actionExecuted(CntActionLauncher*)));
@@ -261,11 +268,11 @@
     
     if (action.compare("message", Qt::CaseInsensitive) == 0) {
         QContactPhoneNumber phoneNumber = static_cast<QContactPhoneNumber>(detail);
-        mActionParams.append(phoneNumber.number());
+        mMessageActionParams.insert(phoneNumber.number(),QVariant(contact.displayLabel()));
     }
     else if (action.compare("email", Qt::CaseInsensitive) == 0) {
         QContactEmailAddress email = static_cast<QContactEmailAddress>(detail);
-        mActionParams.append(email.emailAddress());
+        mEmailActionParams.append(email.emailAddress());
     }
     
     //actionpopup executed, decrement counter
@@ -273,7 +280,12 @@
     if (mPopupCount==0) {
         QVariantMap map;
         QVariant params;
-        params.setValue(mActionParams);
+        if (action.compare("message", Qt::CaseInsensitive) == 0) {
+            params.setValue(mMessageActionParams);
+        }
+        else if (action.compare("email", Qt::CaseInsensitive) == 0) {
+            params.setValue(mEmailActionParams);
+        }
         map.insert(action,params);
         
         CntActionLauncher* other = new CntActionLauncher(*mViewManager->contactManager(SYMBIAN_BACKEND), action);