本文整理汇总了C++中kabc::Addressee::setRole方法的典型用法代码示例。如果您正苦于以下问题:C++ Addressee::setRole方法的具体用法?C++ Addressee::setRole怎么用?C++ Addressee::setRole使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类kabc::Addressee
的用法示例。
在下文中一共展示了Addressee::setRole方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: importContacts
//.........这里部分代码省略.........
line = gmxStream.readLine();
while (!line.startsWith("####") && !gmxStream.atEnd()) {
while (1) {
strList = QStringList::split('#', line, true);
if (strList.count() >= 11)
break;
line.append('\n');
line.append(gmxStream.readLine());
};
KABC::Addressee *addr = new KABC::Addressee;
addr->setNickName(strList[1]);
addr->setGivenName(strList[2]);
addr->setFamilyName(strList[3]);
addr->setTitle(strList[4]);
if (addr->formattedName().isEmpty())
addr->setFormattedName(addr->realName());
if (checkDateTime(strList[5],dt)) addr->setBirthday(dt);
addr->setNote(strList[6]);
if (checkDateTime(strList[7],dt)) addr->setRevision(dt);
// addr->setStatus(strList[8]); Status
// addr->xxx(strList[9]); Address_link_id
// addr->setCategory(strList[10]); Categories
addrMap[strList[0]] = addr;
line = gmxStream.readLine();
}
// now read the address records
line = gmxStream.readLine();
if (!line.startsWith("AB_ADDRESS_RECORDS:")) {
kdWarning() << "Could not find address records!\n";
return addrList;
}
// Address_id,Record_id,Street,Country,Zipcode,City,Phone,Fax,Mobile,Mobile_type,Email,
// Homepage,Position,Comments,Record_type_id,Record_type,Company,Department,Change_date,Preferred,Status
line = gmxStream.readLine();
line = gmxStream.readLine();
while (!line.startsWith("####") && !gmxStream.atEnd()) {
while (1) {
strList = QStringList::split('#', line, true);
if (strList.count() >= 21)
break;
line.append('\n');
line.append(gmxStream.readLine());
};
KABC::Addressee *addr = addrMap[strList[0]];
if (addr) {
for ( QStringList::Iterator it = strList.begin(); it != strList.end(); ++it )
*it = (*it).simplifyWhiteSpace();
// strList[1] = Record_id (numbered item, ignore here)
int id = strList[14].toInt(); // Record_type_id (0=work,1=home,2=other)
int type = (id==0) ? KABC::Address::Work : KABC::Address::Home;
if (!strList[19].isEmpty() && strList[19].toInt()!=0)
type |= KABC::Address::Pref; // Preferred address (seems to be bitfield for telephone Prefs)
KABC::Address adr = addr->address(type);
adr.setStreet(strList[2]);
adr.setCountry(strList[3]);
adr.setPostalCode(strList[4]);
adr.setLocality(strList[5]);
addr->insertPhoneNumber( KABC::PhoneNumber(strList[6], KABC::PhoneNumber::Home) );
addr->insertPhoneNumber( KABC::PhoneNumber(strList[7], KABC::PhoneNumber::Fax) );
int celltype = KABC::PhoneNumber::Cell;
// strList[9]=Mobile_type // always 0 or -1(default phone).
if (strList[9].toInt()) celltype |= KABC::PhoneNumber::Pref;
addr->insertPhoneNumber( KABC::PhoneNumber(strList[8], celltype) );
addr->insertEmail(strList[10]);
if (!strList[11].isEmpty()) addr->setUrl(strList[11]);
if (!strList[12].isEmpty()) addr->setRole(strList[12]);
// strList[13]=Comments
// strList[14]=Record_type_id (0,1,2) - see above
// strList[15]=Record_type (name of this additional record entry)
if (!strList[16].isEmpty()) addr->setOrganization(strList[16]); // Company
if (!strList[17].isEmpty()) addr->insertCustom(
"KADDRESSBOOK", "X-Department", strList[17]); // Department
if (checkDateTime(strList[18],dt)) addr->setRevision(dt); // Change_date
// strList[19]=Preferred (see above)
// strList[20]=Status (should always be "1")
addr->insertAddress(adr);
} else {
kdWarning() << "unresolved line: " << line << endl;
}
line = gmxStream.readLine();
}
// now add the addresses to to addrList
for ( AddressMap::Iterator it = addrMap.begin(); it != addrMap.end(); ++it ) {
KABC::Addressee *addr = it.data();
addrList.append(*addr);
delete addr;
}
file.close();
return addrList;
}
示例2: tmpZone
//.........这里部分代码省略.........
if((*i).qualifiers.contains(VCARD_TEL_PREF))
type |= PhoneNumber::Pref;
// if ( (*i).qualifiers.contains( VCARD_TEL_VOICE ) )
// type |= PhoneNumber::Voice;
if((*i).qualifiers.contains(VCARD_TEL_FAX))
type |= PhoneNumber::Fax;
if((*i).qualifiers.contains(VCARD_TEL_MSG))
type |= PhoneNumber::Msg;
if((*i).qualifiers.contains(VCARD_TEL_CELL))
type |= PhoneNumber::Cell;
if((*i).qualifiers.contains(VCARD_TEL_PAGER))
type |= PhoneNumber::Pager;
if((*i).qualifiers.contains(VCARD_TEL_BBS))
type |= PhoneNumber::Bbs;
if((*i).qualifiers.contains(VCARD_TEL_MODEM))
type |= PhoneNumber::Modem;
if((*i).qualifiers.contains(VCARD_TEL_CAR))
type |= PhoneNumber::Car;
if((*i).qualifiers.contains(VCARD_TEL_ISDN))
type |= PhoneNumber::Isdn;
if((*i).qualifiers.contains(VCARD_TEL_VIDEO))
type |= PhoneNumber::Video;
if((*i).qualifiers.contains(VCARD_TEL_PCS))
type |= PhoneNumber::Pcs;
}
addressee.insertPhoneNumber(PhoneNumber((*i).parameters[0], type));
}
}
// set the addressee's addresses
for(QValueListIterator< VCardLineX > i = vCard->_vcdata->begin(); i != vCard->_vcdata->end(); ++i)
{
if((*i).name == VCARD_ADR)
{
int type = 0;
if((*i).qualified)
{
if((*i).qualifiers.contains(VCARD_ADR_DOM))
type |= Address::Dom;
if((*i).qualifiers.contains(VCARD_ADR_INTL))
type |= Address::Intl;
if((*i).qualifiers.contains(VCARD_ADR_POSTAL))
type |= Address::Postal;
if((*i).qualifiers.contains(VCARD_ADR_PARCEL))
type |= Address::Parcel;
if((*i).qualifiers.contains(VCARD_ADR_HOME))
type |= Address::Home;
if((*i).qualifiers.contains(VCARD_ADR_WORK))
type |= Address::Work;
if((*i).qualifiers.contains(VCARD_ADR_PREF))
type |= Address::Pref;
}
addressee.insertAddress(readAddressFromQStringList((*i).parameters, type));
}
}
// set the addressee's delivery label
tmpStr = vCard->getValue(VCARD_LABEL);
if(!tmpStr.isEmpty())
{
tmpStr.replace("\r\n", "\n");
Address tmpAddress;
tmpAddress.setLabel(tmpStr);
addressee.insertAddress(tmpAddress);
}
// set the addressee's notes
tmpStr = vCard->getValue(VCARD_NOTE);
tmpStr.replace("\r\n", "\n");
addressee.setNote(tmpStr);
// set the addressee's timezone
tmpStr = vCard->getValue(VCARD_TZ);
TimeZone tmpZone(tmpStr.toInt());
addressee.setTimeZone(tmpZone);
// set the addressee's geographical position
tmpList = vCard->getValues(VCARD_GEO);
if(tmpList.count() == 2)
{
tmpStr = tmpList[0];
float glat = tmpStr.toFloat();
tmpStr = tmpList[1];
float glong = tmpStr.toFloat();
Geo tmpGeo(glat, glong);
addressee.setGeo(tmpGeo);
}
// set the last revision date
tmpStr = vCard->getValue(VCARD_REV);
addressee.setRevision(VCardStringToDate(tmpStr));
// set the role of the addressee
tmpStr = vCard->getValue(VCARD_ROLE);
addressee.setRole(tmpStr);
delete vCard;
return addressee;
}
示例3: msTNEFToVPart
//.........这里部分代码省略.........
QString sSenderSearchKeyEmail( tnefMsg->findProp( 0x0C1D ) );
if ( !sSenderSearchKeyEmail.isEmpty() ) {
int colon = sSenderSearchKeyEmail.indexOf( ':' );
// May be e.g. "SMTP:[email protected]"
if ( sSenderSearchKeyEmail.indexOf( ':' ) == -1 ) {
sSenderSearchKeyEmail.remove( 0, colon+1 );
}
}
QString s( tnefMsg->findProp( 0x8189 ) );
const QStringList attendees = s.split( ';' );
if ( attendees.count() ) {
for ( QStringList::const_iterator it = attendees.begin();
it != attendees.end(); ++it ) {
// Skip all entries that have no '@' since these are
// no mail addresses
if ( (*it).indexOf( '@' ) == -1 ) {
s = (*it).trimmed();
Attendee::Ptr attendee( new Attendee( s, s, true ) );
if ( bIsReply ) {
if ( bCompatMethodAccepted ) {
attendee->setStatus( Attendee::Accepted );
}
if ( bCompatMethodDeclined ) {
attendee->setStatus( Attendee::Declined );
}
if ( bCompatMethodAcceptedCond ) {
attendee->setStatus( Attendee::Tentative );
}
} else {
attendee->setStatus( Attendee::NeedsAction );
attendee->setRole( Attendee::ReqParticipant );
}
event->addAttendee( attendee );
}
}
} else {
// Oops, no attendees?
// This must be old style, let us use the PR_SENDER_SEARCH_KEY.
s = sSenderSearchKeyEmail;
if ( !s.isEmpty() ) {
Attendee::Ptr attendee( new Attendee( QString(), QString(), true ) );
if ( bIsReply ) {
if ( bCompatMethodAccepted ) {
attendee->setStatus( Attendee::Accepted );
}
if ( bCompatMethodAcceptedCond ) {
attendee->setStatus( Attendee::Declined );
}
if ( bCompatMethodDeclined ) {
attendee->setStatus( Attendee::Tentative );
}
} else {
attendee->setStatus( Attendee::NeedsAction );
attendee->setRole( Attendee::ReqParticipant );
}
event->addAttendee( attendee );
}
}
s = tnefMsg->findProp( 0x3ff8 ); // look for organizer property
if ( s.isEmpty() && !bIsReply ) {
s = sSenderSearchKeyEmail;
}
// TODO: Use the common name?
示例4: setFieldText
//.........这里部分代码省略.........
break;
case 15: // "Business Address Locality"
address = addressee.address(Address::Work);
address.setLocality(text);
addressee.insertAddress(address);
break;
case 16: // "Business Address Region"
address = addressee.address(Address::Work);
address.setRegion(text);
addressee.insertAddress(address);
break;
case 17: // "Business Address Postal Code"
address = addressee.address(Address::Work);
address.setPostalCode(text);
addressee.insertAddress(address);
break;
case 18: // "Business Address Country"
address = addressee.address(Address::Work);
address.setCountry(text);
addressee.insertAddress(address);
break;
case 19: // "Business Address Label"
address = addressee.address(Address::Work);
address.setLabel(text);
addressee.insertAddress(address);
break;
case 20: // "Home Phone"
phone = PhoneNumber(text, PhoneNumber::Home);
addressee.insertPhoneNumber(phone);
break;
case 21: // "Business Phone"
phone = PhoneNumber(text, PhoneNumber::Work);
addressee.insertPhoneNumber(phone);
break;
case 22: // "Mobile Phone"
phone = PhoneNumber(text, PhoneNumber::Cell);
addressee.insertPhoneNumber(phone);
break;
case 23: // "Home Fax"
phone = PhoneNumber(text, PhoneNumber::Fax | PhoneNumber::Home);
addressee.insertPhoneNumber(phone);
break;
case 24: // "Business Fax"
phone = PhoneNumber(text, PhoneNumber::Fax | PhoneNumber::Work);
addressee.insertPhoneNumber(phone);
break;
case 25: // "Car Phone"
phone = PhoneNumber(text, PhoneNumber::Car);
addressee.insertPhoneNumber(phone);
break;
case 26: // "Isdn"
phone = PhoneNumber(text, PhoneNumber::Isdn);
addressee.insertPhoneNumber(phone);
break;
case 27: // "Pager"
phone = PhoneNumber(text, PhoneNumber::Pager);
addressee.insertPhoneNumber(phone);
break;
case 28: // "Email Address"
addressee.insertEmail(text);
break;
case 29: // "Mail Client"
addressee.setMailer(text);
break;
case 30: // "Title"
addressee.setTitle(text);
break;
case 31: // "Role"
addressee.setRole(text);
break;
case 32: // "Organization"
addressee.setOrganization(text);
break;
case 33: // "Note"
addressee.setNote(text);
break;
case 34: // "URL"
addressee.setUrl(text);
break;
case 35: // "Department"
break;
case 36: // "Profession"
break;
case 37: // "Assistant's Name"
break;
case 38: // "Manager's Name"
break;
case 39: // "Spouse's Name"
break;
case 40: // "Office"
break;
case 41: // "IM Address"
break;
case 42: // "Anniversary"
break;
default:
break;
}
}
示例5: filterContacts
KABC::AddresseeList VCardXXPort::filterContacts( const KABC::AddresseeList &addrList )
{
KABC::AddresseeList list;
if ( addrList.isEmpty() )
return addrList;
VCardExportSelectionDialog dlg( parentWidget() );
if ( !dlg.exec() )
return list;
KABC::AddresseeList::ConstIterator it;
for ( it = addrList.begin(); it != addrList.end(); ++it ) {
KABC::Addressee addr;
addr.setUid( (*it).uid() );
addr.setFormattedName( (*it).formattedName() );
addr.setPrefix( (*it).prefix() );
addr.setGivenName( (*it).givenName() );
addr.setAdditionalName( (*it).additionalName() );
addr.setFamilyName( (*it).familyName() );
addr.setSuffix( (*it).suffix() );
addr.setNickName( (*it).nickName() );
addr.setMailer( (*it).mailer() );
addr.setTimeZone( (*it).timeZone() );
addr.setGeo( (*it).geo() );
addr.setProductId( (*it).productId() );
addr.setSortString( (*it).sortString() );
addr.setUrl( (*it).url() );
addr.setSecrecy( (*it).secrecy() );
addr.setSound( (*it).sound() );
addr.setEmails( (*it).emails() );
addr.setCategories( (*it).categories() );
if ( dlg.exportPrivateFields() ) {
addr.setBirthday( (*it).birthday() );
addr.setNote( (*it).note() );
addr.setPhoto( (*it).photo() );
}
if ( dlg.exportBusinessFields() ) {
addr.setTitle( (*it).title() );
addr.setRole( (*it).role() );
addr.setOrganization( (*it).organization() );
addr.setLogo( (*it).logo() );
KABC::PhoneNumber::List phones = (*it).phoneNumbers( KABC::PhoneNumber::Work );
KABC::PhoneNumber::List::Iterator phoneIt;
for ( phoneIt = phones.begin(); phoneIt != phones.end(); ++phoneIt )
addr.insertPhoneNumber( *phoneIt );
KABC::Address::List addresses = (*it).addresses( KABC::Address::Work );
KABC::Address::List::Iterator addrIt;
for ( addrIt = addresses.begin(); addrIt != addresses.end(); ++addrIt )
addr.insertAddress( *addrIt );
}
KABC::PhoneNumber::List phones = (*it).phoneNumbers();
KABC::PhoneNumber::List::Iterator phoneIt;
for ( phoneIt = phones.begin(); phoneIt != phones.end(); ++phoneIt ) {
int type = (*phoneIt).type();
if ( type & KABC::PhoneNumber::Home && dlg.exportPrivateFields() )
addr.insertPhoneNumber( *phoneIt );
else if ( type & KABC::PhoneNumber::Work && dlg.exportBusinessFields() )
addr.insertPhoneNumber( *phoneIt );
else if ( dlg.exportOtherFields() )
addr.insertPhoneNumber( *phoneIt );
}
KABC::Address::List addresses = (*it).addresses();
KABC::Address::List::Iterator addrIt;
for ( addrIt = addresses.begin(); addrIt != addresses.end(); ++addrIt ) {
int type = (*addrIt).type();
if ( type & KABC::Address::Home && dlg.exportPrivateFields() )
addr.insertAddress( *addrIt );
else if ( type & KABC::Address::Work && dlg.exportBusinessFields() )
addr.insertAddress( *addrIt );
else if ( dlg.exportOtherFields() )
addr.insertAddress( *addrIt );
}
if ( dlg.exportOtherFields() )
addr.setCustoms( (*it).customs() );
if ( dlg.exportEncryptionKeys() ) {
addKey( addr, KABC::Key::PGP );
addKey( addr, KABC::Key::X509 );
}
list.append( addr );
}
return list;
}