本文整理汇总了C++中kabc::VCardConverter::createVCard方法的典型用法代码示例。如果您正苦于以下问题:C++ VCardConverter::createVCard方法的具体用法?C++ VCardConverter::createVCard怎么用?C++ VCardConverter::createVCard使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类kabc::VCardConverter
的用法示例。
在下文中一共展示了VCardConverter::createVCard方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: exportToFile
void KoRdfFoaF::exportToFile(const QString &fileNameConst) const
{
QString fileName = fileNameConst;
#ifdef KDEPIMLIBS_FOUND
if (!fileName.size()) {
fileName = KFileDialog::getSaveFileName(
KUrl("kfiledialog:///ExportDialog"),
"*.vcf|vCard files",
0,
"Export to selected vCard file");
if (!fileName.size()) {
kDebug(30015) << "no filename given, cancel export..";
return;
}
}
KABC::Addressee addr = toKABC();
KABC::VCardConverter converter;
QByteArray ba = converter.createVCard(addr);
QFile file(fileName);
file.open(QIODevice::WriteOnly);
file.write(ba);
file.close();
kDebug(30015) << "wrote " << ba.size() << " bytes to export file:" << fileName;
#else
kDebug(30015) << "KDEPIM support not built!";
#endif
}
示例2: updateView
void updateView( const QVariantList &localCustomFieldDescriptions = QVariantList(), const QString &addressBookName = QString() )
{
static QPixmap defaultPixmap = KIcon( QLatin1String( "user-identity" ) ).pixmap( QSize( 100, 100 ) );
mParent->setWindowTitle( i18n( "Contact %1", mCurrentContact.assembledName() ) );
if ( mCurrentContact.photo().isIntern() ) {
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "contact_photo" ) ),
mCurrentContact.photo().data() );
} else {
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "contact_photo" ) ),
defaultPixmap );
}
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "map_icon" ) ),
KIcon( QLatin1String( "document-open-remote" ) ).pixmap( QSize( 16, 16 ) ) );
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "sms_icon" ) ),
KIcon( IMProtocols::self()->icon( QString::fromLatin1( "messaging/sms" ) ) ).pixmap( QSize( 16, 16 ) ) );
#ifdef HAVE_PRISON
KConfig config( QLatin1String( "akonadi_contactrc" ) );
KConfigGroup group( &config, QLatin1String( "View" ) );
if ( group.readEntry( "QRCodes", true ) ) {
KABC::VCardConverter converter;
KABC::Addressee addr( mCurrentContact );
addr.setPhoto( KABC::Picture() );
addr.setLogo( KABC::Picture() );
const QString data = QString::fromUtf8( converter.createVCard( addr ) );
mQRCode->setData( data );
mDataMatrix->setData( data );
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "qrcode" ) ),
mQRCode->toImage( QSizeF( 50, 50 ) ) );
mBrowser->document()->addResource( QTextDocument::ImageResource,
QUrl( QLatin1String( "datamatrix" ) ),
mDataMatrix->toImage( QSizeF( 50, 50 ) ) );
}
#endif // HAVE_PRISON
// merge local and global custom field descriptions
QList<QVariantMap> customFieldDescriptions;
foreach ( const QVariant &entry, localCustomFieldDescriptions ) {
customFieldDescriptions << entry.toMap();
}
const CustomField::List globalCustomFields = CustomFieldManager::globalCustomFieldDescriptions();
foreach ( const CustomField &field, globalCustomFields ) {
QVariantMap description;
description.insert( QLatin1String( "key" ), field.key() );
description.insert( QLatin1String( "title" ), field.title() );
customFieldDescriptions << description;
}
示例3: addAddressees
bool AddressbookHandler::addAddressees( KABC::Addressee::List& p_addresseeList )
{
bool ret = true;
KABC::VCardConverter vCardConv;
QString vCard;
RRA_Uint32Vector* added_ids = rra_uint32vector_new();
if ( p_addresseeList.begin() == p_addresseeList.end() ) {
goto finish;
}
for (KABC::Addressee::List::Iterator it = p_addresseeList.begin();
it != p_addresseeList.end(); ++it ) {
incrementSteps();
kdDebug(2120) << "Adding Contact on Device: " << (*it).uid() << endl;
vCard = vCardConv.createVCard ( ( *it ) );
uint32_t newObjectId = m_rra->putVCard( vCard, mTypeId, 0 );
if (newObjectId == 0) {
addErrorEntry((*it).realName());
ret = false;
}
m_rra->markIdUnchanged( mTypeId, newObjectId );
mUidHelper->addId("SynCEAddressbook",
"RRA-ID-" + QString::number ( newObjectId, 16 ).rightJustify( 8, '0' ),
(*it).uid());
kdDebug(2120) << " ID-Pair: KDEID: " << (*it).uid() << " DeviceID: " <<
"RRA-ID-" + QString::number ( newObjectId, 16 ).rightJustify( 8, '0' ) << endl;
rra_uint32vector_add(added_ids, newObjectId);
KApplication::kApplication()->processEvents();
}
finish:
m_rra->registerAddedObjects(mTypeId, added_ids);
rra_uint32vector_destroy(added_ids, true);
return ret;
}
示例4: updateAddressees
bool AddressbookHandler::updateAddressees( KABC::Addressee::List& p_addresseeList )
{
bool ret = true;
KABC::Addressee::List::Iterator it = p_addresseeList.begin();
KABC::VCardConverter vCardConv;
QString vCard;
if ( p_addresseeList.begin() == p_addresseeList.end() ) {
goto finish;
}
setStatus("Writing changed Contacts");
for ( ; it != p_addresseeList.end(); ++it ) {
incrementSteps();
QString kUid = mUidHelper->konnectorId("SynCEAddressbook", (*it).uid(), "---");
if (kUid != "---") {
kdDebug(2120) << "Updating Contact on Device: " << "ID-Pair: KDEID: " <<
(*it).uid() << " DeviceId: " << kUid << endl;
vCard = vCardConv.createVCard ( ( *it ) );
uint32_t retId = m_rra->putVCard ( vCard, mTypeId, getOriginalId( kUid ) );
if (retId == 0) {
addErrorEntry((*it).realName());
ret = false;
}
m_rra->markIdUnchanged( mTypeId, getOriginalId( kUid ) );
}
KApplication::kApplication()->processEvents();
}
finish:
return ret;
}
示例5: msTNEFToVPart
//.........这里部分代码省略.........
QString s = tnefMsg->findProp( MAPI_TAG_PR_WEDDING_ANNIVERSARY ).
remove( QChar( '-' ) ).remove( QChar( ':' ) );
if ( !s.isEmpty() ) {
addressee.insertCustom( "KADDRESSBOOK", "X-Anniversary", s );
}
addressee.setUrl( KUrl( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_WEBPAGE ) ) );
// collect parts of Name entry
addressee.setFamilyName( stringProp( tnefMsg, MAPI_TAG_PR_SURNAME ) );
addressee.setGivenName( stringProp( tnefMsg, MAPI_TAG_PR_GIVEN_NAME ) );
addressee.setAdditionalName( stringProp( tnefMsg, MAPI_TAG_PR_MIDDLE_NAME ) );
addressee.setPrefix( stringProp( tnefMsg, MAPI_TAG_PR_DISPLAY_NAME_PREFIX ) );
addressee.setSuffix( stringProp( tnefMsg, MAPI_TAG_PR_GENERATION ) );
addressee.setNickName( stringProp( tnefMsg, MAPI_TAG_PR_NICKNAME ) );
addressee.setRole( stringProp( tnefMsg, MAPI_TAG_PR_TITLE ) );
addressee.setOrganization( stringProp( tnefMsg, MAPI_TAG_PR_COMPANY_NAME ) );
/*
the MAPI property ID of this (multiline) )field is unknown:
vPart += stringProp(tnefMsg, "\n","NOTE", ... , "" );
*/
KABC::Address adr;
adr.setPostOfficeBox( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_PO_BOX ) );
adr.setStreet( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_STREET ) );
adr.setLocality( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_CITY ) );
adr.setRegion( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_STATE_OR_PROVINCE ) );
adr.setPostalCode( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_POSTAL_CODE ) );
adr.setCountry( stringProp( tnefMsg, MAPI_TAG_PR_HOME_ADDRESS_COUNTRY ) );
adr.setType( KABC::Address::Home );
addressee.insertAddress( adr );
adr.setPostOfficeBox( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSPOBOX ) );
adr.setStreet( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSSTREET ) );
adr.setLocality( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSCITY ) );
adr.setRegion( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSSTATE ) );
adr.setPostalCode( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSPOSTALCODE ) );
adr.setCountry( sNamedProp( tnefMsg, MAPI_TAG_CONTACT_BUSINESSADDRESSCOUNTRY ) );
adr.setType( KABC::Address::Work );
addressee.insertAddress( adr );
adr.setPostOfficeBox( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_PO_BOX ) );
adr.setStreet( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_STREET ) );
adr.setLocality( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_CITY ) );
adr.setRegion( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_STATE_OR_PROVINCE ) );
adr.setPostalCode( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_POSTAL_CODE ) );
adr.setCountry( stringProp( tnefMsg, MAPI_TAG_PR_OTHER_ADDRESS_COUNTRY ) );
adr.setType( KABC::Address::Dom );
addressee.insertAddress( adr );
// problem: the 'other' address was stored by KOrganizer in
// a line looking like the following one:
// vPart += "\nADR;TYPE=dom;TYPE=intl;TYPE=parcel;TYPE=postal;TYPE=work;"
// "TYPE=home:other_pobox;;other_str1\nother_str2;other_loc;other_region;"
// "other_pocode;other_country"
QString nr;
nr = stringProp( tnefMsg, MAPI_TAG_PR_HOME_TELEPHONE_NUMBER );
addressee.insertPhoneNumber(
KABC::PhoneNumber( nr, KABC::PhoneNumber::Home ) );
nr = stringProp( tnefMsg, MAPI_TAG_PR_BUSINESS_TELEPHONE_NUMBER );
addressee.insertPhoneNumber(
KABC::PhoneNumber( nr, KABC::PhoneNumber::Work ) );
nr = stringProp( tnefMsg, MAPI_TAG_PR_MOBILE_TELEPHONE_NUMBER );
addressee.insertPhoneNumber(
KABC::PhoneNumber( nr, KABC::PhoneNumber::Cell ) );
nr = stringProp( tnefMsg, MAPI_TAG_PR_HOME_FAX_NUMBER );
addressee.insertPhoneNumber(
KABC::PhoneNumber( nr, KABC::PhoneNumber::Fax | KABC::PhoneNumber::Home ) );
nr = stringProp( tnefMsg, MAPI_TAG_PR_BUSINESS_FAX_NUMBER );
addressee.insertPhoneNumber(
KABC::PhoneNumber( nr, KABC::PhoneNumber::Fax | KABC::PhoneNumber::Work ) );
s = tnefMsg->findProp( MAPI_TAG_PR_BIRTHDAY ).
remove( QChar( '-' ) ).remove( QChar( ':' ) );
if ( !s.isEmpty() ) {
addressee.setBirthday( QDateTime::fromString( s ) );
}
bOk = ( !addressee.isEmpty() );
} else if ( "IPM.NOTE" == msgClass ) {
} // else if ... and so on ...
}
}
// Compose return string
// KDAB_TODO: Interesting, without the explicit QString the toString call is
// reported to be ambigious with toString( const Incidence::Ptr & ).
const QString iCal = calFormat.toString( cal, QString() );
if ( !iCal.isEmpty() ) {
// This was an iCal
return iCal;
}
// Not an iCal - try a vCard
KABC::VCardConverter converter;
return QString::fromUtf8( converter.createVCard( addressee ) );
}