-rw-r--r-- | kabc/vcard/ContentLine.cpp | 31 | ||||
-rw-r--r-- | kabc/vcard/VCardEntity.cpp | 3 | ||||
-rw-r--r-- | kabc/vcard/VCardv.cpp | 23 |
3 files changed, 51 insertions, 6 deletions
diff --git a/kabc/vcard/ContentLine.cpp b/kabc/vcard/ContentLine.cpp index 6fa1a8f..0fb5b5d 100644 --- a/kabc/vcard/ContentLine.cpp +++ b/kabc/vcard/ContentLine.cpp @@ -63,39 +63,64 @@ #include <VCardDefines.h> using namespace VCARD; ContentLine::ContentLine() : Entity(), value_(0) { + paramList_.setAutoDelete( TRUE ); } ContentLine::ContentLine(const ContentLine & x) : Entity(x), group_ (x.group_), name_ (x.name_), - paramList_(x.paramList_), - value_(x.value_->clone()) +/*US paramList_(x.paramList_),*/ + value_(x.value_->clone()), + paramType_(x.paramType_), + valueType_(x.valueType_), + entityType_(x.entityType_) { + paramList_.setAutoDelete( TRUE ); + + + ParamListIterator it(x.paramList_); + for (; it.current(); ++it) + { + Param *p = new Param; + p->setName( it.current()->name() ); + p->setValue( it.current()->value() ); + paramList_.append(p); + } + } ContentLine::ContentLine(const QCString & s) : Entity(s), value_(0) { + paramList_.setAutoDelete( TRUE ); } ContentLine & ContentLine::operator = (ContentLine & x) { if (*this == x) return *this; - paramList_ = x.paramList(); + ParamListIterator it(x.paramList_); + for (; it.current(); ++it) + { + Param *p = new Param; + p->setName( it.current()->name() ); + p->setValue( it.current()->value() ); + paramList_.append(p); + } + value_ = x.value_->clone(); Entity::operator = (x); return *this; } ContentLine & ContentLine::operator = (const QCString & s) diff --git a/kabc/vcard/VCardEntity.cpp b/kabc/vcard/VCardEntity.cpp index 0c21e2f..0cd2086 100644 --- a/kabc/vcard/VCardEntity.cpp +++ b/kabc/vcard/VCardEntity.cpp @@ -26,26 +26,29 @@ #include <VCardDefines.h> #include <VCardVCardEntity.h> using namespace VCARD; VCardEntity::VCardEntity() : Entity() { + cardList_.setAutoDelete( TRUE ); } VCardEntity::VCardEntity(const VCardEntity & x) : Entity(x) { + cardList_.setAutoDelete( TRUE ); } VCardEntity::VCardEntity(const QCString & s) : Entity(s) { + cardList_.setAutoDelete( TRUE ); } VCardEntity & VCardEntity::operator = (VCardEntity & x) { if (*this == x) return *this; Entity::operator = (x); diff --git a/kabc/vcard/VCardv.cpp b/kabc/vcard/VCardv.cpp index 8d271f4..3f0a5e5 100644 --- a/kabc/vcard/VCardv.cpp +++ b/kabc/vcard/VCardv.cpp @@ -31,37 +31,54 @@ #include <VCardDefines.h> using namespace VCARD; VCard::VCard() : Entity() { + contentLineList_.setAutoDelete( TRUE ); } VCard::VCard(const VCard & x) : Entity(x), - group_(x.group_), - contentLineList_(x.contentLineList_) + group_(x.group_) { + contentLineList_.setAutoDelete( TRUE ); + //US + qDebug("VCard::VCard"); + + QPtrListIterator<ContentLine> it(x.contentLineList_); + for (; it.current(); ++it) { + ContentLine * c = new ContentLine(*it.current()); + contentLineList_.append(c); + } + } VCard::VCard(const QCString & s) : Entity(s) { + contentLineList_.setAutoDelete( TRUE ); } VCard & VCard::operator = (VCard & x) { + //US + qDebug("VCard::operator ="); if (*this == x) return *this; group_ = x.group(); - contentLineList_ = x.contentLineList_; + QPtrListIterator<ContentLine> it(x.contentLineList_); + for (; it.current(); ++it) { + ContentLine * c = new ContentLine(*it.current()); + contentLineList_.append(c); + } Entity::operator = (x); return *this; } VCard & VCard::operator = (const QCString & s) { |