phonebookui/pbkcommonui/src/cntimportsview.cpp
changeset 47 7cbcb2896f0e
parent 46 efe85016a067
child 50 77bc263e1626
child 59 a642906a277a
--- a/phonebookui/pbkcommonui/src/cntimportsview.cpp	Wed Jun 23 18:02:44 2010 +0300
+++ b/phonebookui/pbkcommonui/src/cntimportsview.cpp	Tue Jul 06 14:05:47 2010 +0300
@@ -479,6 +479,7 @@
                 }
                
                contact.setType(QContactType::TypeContact);
+               setPreferredDetails(&contact);
                mSaveSimContactsList.append(contact);
                 
             }
@@ -646,6 +647,7 @@
               }
               
                contact.setType(QContactType::TypeContact);
+               setPreferredDetails(&contact);
                mSaveSimContactsListSDN.append(contact);
                 
             }
@@ -711,4 +713,25 @@
     }
 }
 
+void CntImportsView::setPreferredDetails( QContact *aContact )
+{
+    QList<QContactPhoneNumber> numberList( aContact->details<QContactPhoneNumber>() );
+    //set preferred number for call if there is only one phone number
+    if ( aContact->preferredDetail("call").isEmpty() && numberList.count() == 1 )
+    {
+        aContact->setPreferredDetail( "call", numberList.first() );
+    }
+    //set preferred number for message if there is only one mobile phone number
+    if ( aContact->preferredDetail("message").isEmpty() && numberList.count() == 1 )
+    {      
+        aContact->setPreferredDetail( "message", numberList.first() );
+    }
+    //set preferred number for message if there is only one email address
+    QList<QContactEmailAddress> emailList( aContact->details<QContactEmailAddress>() );
+    if ( aContact->preferredDetail("email").isEmpty() && emailList.count() == 1 )
+    {      
+        aContact->setPreferredDetail( "email", emailList.first() );
+    }
+}
+
 // EOF