phonebookui/pbkcommonui/src/cntdetaileditor.cpp
changeset 37 fd64c38c277d
parent 31 2a11b5b00470
child 40 b46a585f6909
--- a/phonebookui/pbkcommonui/src/cntdetaileditor.cpp	Fri May 14 15:42:23 2010 +0300
+++ b/phonebookui/pbkcommonui/src/cntdetaileditor.cpp	Thu May 27 12:45:19 2010 +0300
@@ -90,20 +90,26 @@
         mView->setNavigationAction(mSoftkey);
     }
     
-    QContact selectedContact = aArgs.value(ESelectedContact).value<QContact>();
+    QContact selectedContact;
+    if ( mId == groupEditorView )
+    {
+        selectedContact = aArgs.value(ESelectedGroupContact).value<QContact>();
+        connect( mDataForm, SIGNAL(itemShown(const QModelIndex&)), this, SLOT(handleItemShown(const QModelIndex&)) );
+
+    }
+    else
+    {
+        selectedContact = aArgs.value(ESelectedContact).value<QContact>();
+    }
     mEditorFactory->setupEditorView(*this, selectedContact);
     
     mDataForm->setItemRecycling(true);
 
     // add new field if required
-    if ( aArgs.value(ESelectedAction).toString() == "add" ) {
+    if ( aArgs.value(ESelectedAction).toString() == "add" )
+    {
         mDataFormModel->insertDetailField();
     }
-    
-    if ( mId == groupEditorView )
-    {
-        connect( mDataForm, SIGNAL(itemShown(const QModelIndex&)), this, SLOT(handleItemShown(const QModelIndex&)) );
-    }
 }
 
 void CntDetailEditor::deactivate()
@@ -168,7 +174,15 @@
     QContact selected( *mDataFormModel->contact() );
     QVariant var;
     var.setValue(selected);
-    mArgs.insert(ESelectedContact, var);
+    if ( mId == groupEditorView )
+    {
+       mArgs.insert(ESelectedGroupContact, var);
+    }
+    else
+    {
+        mArgs.insert(ESelectedContact, var);
+    }
+    
     mViewManager->back( mArgs );
 }