summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--kabc/vcardformatimpl.cpp19
-rw-r--r--kabc/vcardformatimpl.h2
2 files changed, 12 insertions, 9 deletions
diff --git a/kabc/vcardformatimpl.cpp b/kabc/vcardformatimpl.cpp
index 3fcaf94..bd9a57b 100644
--- a/kabc/vcardformatimpl.cpp
+++ b/kabc/vcardformatimpl.cpp
@@ -40,55 +40,57 @@ $Id$
using namespace KABC;
using namespace VCARD;
bool VCardFormatImpl::load( Addressee &addressee, QFile *file )
{
kdDebug(5700) << "VCardFormat::load()" << endl;
QByteArray fdata = file->readAll();
QCString data(fdata.data(), fdata.size()+1);
VCardEntity e( data );
VCardListIterator it( e.cardList() );
if ( it.current() ) {
- VCard v(*it.current());
- loadAddressee( addressee, v );
+//US VCard v(*it.current());
+//US loadAddressee( addressee, v );
+ loadAddressee( addressee, it.current() );
return true;
}
return false;
}
bool VCardFormatImpl::loadAll( AddressBook *addressBook, Resource *resource, QFile *file )
{
kdDebug(5700) << "VCardFormat::loadAll()" << endl;
QByteArray fdata = file->readAll();
QCString data(fdata.data(), fdata.size()+1);
VCardEntity e( data );
VCardListIterator it( e.cardList() );
for (; it.current(); ++it) {
- VCard v(*it.current());
+//US VCard v(*it.current());
Addressee addressee;
- loadAddressee( addressee, v );
+//US loadAddressee( addressee, v );
+ loadAddressee( addressee, it.current() );
addressee.setResource( resource );
addressBook->insertAddressee( addressee );
}
return true;
}
void VCardFormatImpl::save( const Addressee &addressee, QFile *file )
{
VCardEntity vcards;
VCardList vcardlist;
vcardlist.setAutoDelete( true );
VCard *v = new VCard;
saveAddressee( addressee, v, false );
@@ -109,35 +111,35 @@ void VCardFormatImpl::saveAll( AddressBook *ab, Resource *resource, QFile *file
AddressBook::Iterator it;
for ( it = ab->begin(); it != ab->end(); ++it ) {
if ( (*it).resource() == resource ) {
VCard *v = new VCard;
saveAddressee( (*it), v, false );
(*it).setChanged( false );
vcardlist.append( v );
}
}
vcards.setCardList( vcardlist );
QCString vcardData = vcards.asString();
file->writeBlock( (const char*)vcardData, vcardData.length() );
}
-bool VCardFormatImpl::loadAddressee( Addressee& addressee, VCard &v )
+bool VCardFormatImpl::loadAddressee( Addressee& addressee, VCard *v )
{
- QPtrList<ContentLine> contentLines = v.contentLineList();
+ QPtrList<ContentLine> contentLines = v->contentLineList();
ContentLine *cl;
for( cl = contentLines.first(); cl; cl = contentLines.next() ) {
QCString n = cl->name();
if ( n.left( 2 ) == "X-" ) {
n = n.mid( 2 );
int posDash = n.find( "-" );
addressee.insertCustom( QString::fromUtf8( n.left( posDash ) ),
QString::fromUtf8( n.mid( posDash + 1 ) ),
QString::fromUtf8( cl->value()->asString() ) );
continue;
}
EntityType type = cl->entityType();
switch( type ) {
@@ -988,34 +990,35 @@ Sound VCardFormatImpl::readSoundValue( VCARD::ContentLine *cl, const Addressee &
KCodecs::base64Decode( v->asString(), data );
}
sound.setData( data );
} else {
sound.setUrl( QString::fromUtf8( v->asString() ) );
}
return sound;
}
bool VCardFormatImpl::readFromString( const QString &vcard, Addressee &addressee )
{
VCardEntity e( vcard.utf8() );
VCardListIterator it( e.cardList() );
if ( it.current() ) {
- VCard v(*it.current());
- loadAddressee( addressee, v );
+//US VCard v(*it.current());
+//US loadAddressee( addressee, v );
+ loadAddressee( addressee, it.current() );
return true;
}
return false;
}
bool VCardFormatImpl::writeToString( const Addressee &addressee, QString &vcard )
{
VCardEntity vcards;
VCardList vcardlist;
vcardlist.setAutoDelete( true );
VCard *v = new VCard;
saveAddressee( addressee, v, true );
diff --git a/kabc/vcardformatimpl.h b/kabc/vcardformatimpl.h
index 2dd68d9..fa3d55f 100644
--- a/kabc/vcardformatimpl.h
+++ b/kabc/vcardformatimpl.h
@@ -45,33 +45,33 @@ class AddressBook;
This class implements reading and writing of address book information using
the vCard format. It requires the vCard lib from kdepim.
*/
class VCardFormatImpl
{
public:
bool load( Addressee &, QFile *file );
bool loadAll( AddressBook *, Resource *, QFile *file );
void save( const Addressee &, QFile *file );
void saveAll( AddressBook *, Resource *, QFile *file );
bool readFromString( const QString &vcard, Addressee &addr );
bool writeToString( const Addressee &addressee, QString &vcard );
protected:
- bool loadAddressee( Addressee &, VCARD::VCard & );
+ bool loadAddressee( Addressee &, VCARD::VCard * );
void saveAddressee( const Addressee &, VCARD::VCard *, bool intern );
void addTextValue (VCARD::VCard *, VCARD::EntityType, const QString & );
QString readTextValue( VCARD::ContentLine * );
void addDateValue( VCARD::VCard *, VCARD::EntityType, const QDate & );
QDate readDateValue( VCARD::ContentLine * );
void addDateTimeValue( VCARD::VCard *, VCARD::EntityType, const QDateTime & );
QDateTime readDateTimeValue( VCARD::ContentLine * );
void addAddressValue( VCARD::VCard *, const Address & );
Address readAddressValue( VCARD::ContentLine * );
void addLabelValue( VCARD::VCard *, const Address & );