diff -r 2a11b5b00470 -r fd64c38c277d phonebookui/pbkcommonui/src/cntdetaileditor.cpp --- 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 selectedContact; + if ( mId == groupEditorView ) + { + selectedContact = aArgs.value(ESelectedGroupContact).value(); + connect( mDataForm, SIGNAL(itemShown(const QModelIndex&)), this, SLOT(handleItemShown(const QModelIndex&)) ); + + } + else + { + selectedContact = aArgs.value(ESelectedContact).value(); + } 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 ); }