Contact::Contact(QtTapioca::Contact *contact, QWidget *parent, Qt::WindowFlags f) : QWidget(parent, f) { setAlias(contact->alias() ); // connect to signal to request avatar connect(this , SIGNAL(avatarReceived(const QtTapioca::Avatar &avatar) ), contact->parent(), SLOT(setPicture( const QtTapioca::Avatar &avatar) ) ); // send avatar request now contact->requestAvatar(); } void Contact::onPictureReceived(const QtTapioca::Avatar &avatar) { QMimeData *mimeData = new QMimeData; mimeData->setData( avatar.mimeType() , avatar.data() ); if (mimeData->hasImage()) { picture = qvariant_cast(mimeData->imageData()); } }