diff -r 453da2cfceef -r 71781823f776 qtmobility/examples/qmlcontacts/qmlcontact.cpp --- a/qtmobility/examples/qmlcontacts/qmlcontact.cpp Fri May 14 16:41:33 2010 +0300 +++ b/qtmobility/examples/qmlcontacts/qmlcontact.cpp Thu May 27 13:42:11 2010 +0300 @@ -43,6 +43,9 @@ #include #include +#include +#include + QT_USE_NAMESPACE QTM_USE_NAMESPACE @@ -72,7 +75,7 @@ emit contactChanged(this); } -QString QmlContact::name() +QString QmlContact::name() const { return m_contact.displayLabel(); } @@ -84,7 +87,7 @@ emit nameChanged(this); } -QString QmlContact::email() +QString QmlContact::email() const { QList allEmails = m_contact.details(QContactEmailAddress::DefinitionName); @@ -102,6 +105,58 @@ emit emailChanged(this); } +QString QmlContact::avatar() const +{ + return m_contact.detail().imageUrl().toString(); +} + +QPixmap QmlContact::thumbnail() const +{ + return QPixmap::fromImage(m_contact.detail().thumbnail()); +} + +bool QmlContact::hasThumbnail() const +{ + return !thumbnail().isNull(); +} + +QString QmlContact::interest() const +{ + // Try a phone number + QString det = m_contact.detail(QContactPhoneNumber::DefinitionName).value(QContactPhoneNumber::FieldNumber); + if (!det.isEmpty()) + return det; + + det = m_contact.detail(QContactEmailAddress::DefinitionName).value(QContactEmailAddress::FieldEmailAddress); + if (!det.isEmpty()) + return det; + + det = m_contact.detail(QContactOnlineAccount::DefinitionName).value(QContactOnlineAccount::FieldAccountUri); + if (!det.isEmpty()) + return det; + + // Well, don't know. + return QString(); +} + +QString QmlContact::interestLabel() const +{ + // Try a phone number + QString det = m_contact.detail(QContactPhoneNumber::DefinitionName).value(QContactPhoneNumber::FieldNumber); + if (!det.isEmpty()) + return tr("Phone number:"); + + det = m_contact.detail(QContactEmailAddress::DefinitionName).value(QContactEmailAddress::FieldEmailAddress); + if (!det.isEmpty()) + return tr("Email:"); + + det = m_contact.detail(QContactOnlineAccount::DefinitionName).value(QContactOnlineAccount::FieldAccountUri); + if (!det.isEmpty()) + return QString("%1:").arg(m_contact.detail(QContactOnlineAccount::DefinitionName).value(QContactOnlineAccount::FieldServiceProvider)); + + // Well, don't know. + return QString(); +} QStringList QmlContact::details() {