diff -r 76a2435edfd4 -r de1630741fbe phonebookui/phonebookservices/src/cntservicecontactselectionview.cpp --- a/phonebookui/phonebookservices/src/cntservicecontactselectionview.cpp Fri Apr 16 14:53:18 2010 +0300 +++ b/phonebookui/phonebookservices/src/cntservicecontactselectionview.cpp Mon May 03 12:24:20 2010 +0300 @@ -17,14 +17,19 @@ #include "cntservicecontactselectionview.h" +#include +#include #include "cntservicehandler.h" +#include +#include -CntServiceContactSelectionView::CntServiceContactSelectionView(CntServiceHandler *aServiceHandler, CntViewManager *aViewManager, - QGraphicsItem *aParent, HbAbstractItemView::SelectionMode newMode): - CntBaseSelectionView(aViewManager, aParent, newMode), - mServiceHandler(aServiceHandler) +CntServiceContactSelectionView::CntServiceContactSelectionView(CntServiceHandler *aServiceHandler): +CntBaseSelectionView(), +mServiceHandler(aServiceHandler) { - + connect(mListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(onListViewActivated(const QModelIndex&))); + connect( this, SIGNAL(viewClosed()), this, SLOT(aboutToCloseView()) ); + connect( this, SIGNAL(viewOpened(const CntViewParameters)), this, SLOT(aboutToOpenView(const CntViewParameters)) ); } CntServiceContactSelectionView::~CntServiceContactSelectionView() @@ -34,11 +39,15 @@ void CntServiceContactSelectionView::onListViewActivated(const QModelIndex &aIndex) { - CntViewParameters viewParameters(CntViewParameters::serviceEditView); - QContact contact = contactModel()->contact(aIndex); + QContact contact = mListModel->contact(aIndex); contact.saveDetail(&mDetail); - viewParameters.setSelectedContact(contact); - viewManager()->changeView(viewParameters); + + CntViewParameters params; + params.insert(EViewId, serviceEditView); + QVariant var; + var.setValue(contact); + params.insert(ESelectedContact, var); + mMgr->changeView(params); } void CntServiceContactSelectionView::aboutToCloseView() @@ -47,21 +56,19 @@ mServiceHandler->completeEdit(0); } -void CntServiceContactSelectionView::activateView(const CntViewParameters &viewParameters) +void CntServiceContactSelectionView::aboutToOpenView(const CntViewParameters viewParameters) { QContactDetailFilter filter; filter.setDetailDefinitionName(QContactType::DefinitionName, QContactType::FieldType); QString typeContact = QContactType::TypeContact; filter.setValue(typeContact); - contactModel()->setFilterAndSortOrder(filter); + mListModel->setFilterAndSortOrder(filter); // hide my card if it's not set - if (contactManager()->selfContactId() == 0) + if (mListModel->myCardId() == 0) { - contactModel()->showMyCard(false); + mListModel->showMyCard(false); } - mDetail = viewParameters.selectedDetail(); - - CntBaseSelectionView::activateView(viewParameters); + mDetail = viewParameters.value(ESelectedDetail).value(); } // EOF