std::ostream& RecordSet::copy(std::ostream& os, std::size_t offset, std::size_t length) const { RowFormatter& rf = const_cast<RowFormatter&>((*_pBegin)->getFormatter()); rf.setTotalRowCount(static_cast<int>(getTotalRowCount())); if (RowFormatter::FORMAT_PROGRESSIVE == rf.getMode()) { os << rf.prefix(); copyNames(os); copyValues(os, offset, length); os << rf.postfix(); } else { formatNames(); formatValues(offset, length); os << rf.toString(); } return os; }
void ContactItem::calculateFields() { // Visible name depend of filled fields if (!fullName.isEmpty()) visibleName = fullName; else if (!names.isEmpty()) visibleName = formatNames(); else if (!organization.isEmpty()) visibleName = organization; else if (!description.isEmpty()) visibleName = description; else if (!emails.isEmpty()) visibleName = emails[0].address; else if (!phones.isEmpty()) visibleName = phones[0].number; else if (!sortString.isEmpty()) visibleName = sortString; else if (!nickName.isEmpty()) visibleName = nickName; else // WTF??? visibleName = QObject::tr("Strange empty contact"); // First or preferred phone number prefPhone.clear(); if (phones.count()>0) { prefPhone = phones[0].number; for (int i=0; i<phones.count();i++) { if (phones[i].tTypes.contains("pref", Qt::CaseInsensitive)) prefPhone = phones[i].number; } } // First or preferred email prefEmail.clear(); if (emails.count()>0) { prefEmail = emails[0].address; for (int i=0; i<emails.count(); i++) if (emails[i].emTypes.contains("pref", Qt::CaseInsensitive)) prefEmail = emails[i].address; } }