diff --git a/src/phonedirectorymodel.cpp b/src/phonedirectorymodel.cpp index 766d2cdfe04558afdf6625b5ca3288463e5cb698..f6b6df06a22c628a59759d438c9b86250774978e 100644 --- a/src/phonedirectorymodel.cpp +++ b/src/phonedirectorymodel.cpp @@ -104,7 +104,15 @@ QVariant PhoneDirectoryModel::data(const QModelIndex& index, int role ) const const ContactMethod* number = d_ptr->m_lNumbers[index.row()]; switch (static_cast<PhoneDirectoryModelPrivate::Columns>(index.column())) { case PhoneDirectoryModelPrivate::Columns::URI: - return number->roleData(role); + switch (role) { + case Qt::DisplayRole: + return number->uri(); + case Qt::DecorationRole : + return GlobalInstances::pixmapManipulator().decorationRole(number); + case (int) Role::Object: + return QVariant::fromValue(const_cast<ContactMethod*>(number)); + } + break; case PhoneDirectoryModelPrivate::Columns::TYPE: switch (role) { case Qt::DisplayRole: