void JabberPersonalInfoWidget::personalInfoAvailable(Contact contact) { NickName->setText(contact.nickName()); FirstName->setText(contact.firstName()); LastName->setText(contact.lastName()); Sex->setCurrentIndex((int)contact.gender()); FamilyName->setText(contact.familyName()); BirthYear->setText(QString::number(contact.birthYear())); City->setText(contact.city()); FamilyCity->setText(contact.familyCity()); }
QVariant ContactTableModel::data(const QModelIndex& index, int role) const { if (!index.isValid()) return QVariant(); if (index.row() >= list.count() || index.row() < 0) return QVariant(); if (role == Qt::DisplayRole) { Contact *c = list.at(index.row()); if (index.column() == 0) return c->firstName(); else if (index.column() == 1) return c->lastName(); else if (index.column() == 2) return c->mailAddress(); } return QVariant(); }
//! [7] void AddressBook::filterContacts() { QList<Contact> contacts; if (m_filter.isEmpty()) { // No filter has been specified, so just list all contacts ContactListFilters filter; contacts = m_contactService->contacts(filter); } else { // Use the entered filter string as search value ContactSearchFilters filter; filter.setSearchValue(m_filter); contacts = m_contactService->searchContacts(filter); } // Clear the old contact information from the model m_model->clear(); // Iterate over the list of contact IDs foreach (const Contact &idContact, contacts) { // Fetch the complete details for this contact ID const Contact contact = m_contactService->contactDetails(idContact.id()); // Copy the data into a model entry QVariantMap entry; entry["contactId"] = contact.id(); entry["firstName"] = contact.firstName(); entry["lastName"] = contact.lastName(); const QList<ContactAttribute> emails = contact.emails(); if (!emails.isEmpty()) entry["email"] = emails.first().value(); // Add the entry to the model m_model->insert(entry); } }