summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/imapwrapper.cpp1
-rw-r--r--noncore/net/mail/libmailwrapper/imapwrapper.cpp1
-rw-r--r--noncore/net/mail/libmailwrapper/mailtypes.cpp17
-rw-r--r--noncore/net/mail/libmailwrapper/mailtypes.h7
-rw-r--r--noncore/net/mail/libmailwrapper/pop3wrapper.cpp1
-rw-r--r--noncore/net/mail/mailtypes.cpp17
-rw-r--r--noncore/net/mail/mailtypes.h7
-rw-r--r--noncore/net/mail/pop3wrapper.cpp1
8 files changed, 50 insertions, 2 deletions
diff --git a/noncore/net/mail/imapwrapper.cpp b/noncore/net/mail/imapwrapper.cpp
index e5eb335..3222c7e 100644
--- a/noncore/net/mail/imapwrapper.cpp
+++ b/noncore/net/mail/imapwrapper.cpp
@@ -130,8 +130,9 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
RecMail*m = parse_list_result(msg_att);
if (m) {
m->setNumber(i);
m->setMbox(mailbox);
+ m->setWrapper(this);
target.append(m);
}
}
} else {
diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
index e5eb335..3222c7e 100644
--- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
@@ -130,8 +130,9 @@ void IMAPwrapper::listMessages(const QString&mailbox,QList<RecMail> &target )
RecMail*m = parse_list_result(msg_att);
if (m) {
m->setNumber(i);
m->setMbox(mailbox);
+ m->setWrapper(this);
target.append(m);
}
}
} else {
diff --git a/noncore/net/mail/libmailwrapper/mailtypes.cpp b/noncore/net/mail/libmailwrapper/mailtypes.cpp
index 5cd45ed..94f5d6f 100644
--- a/noncore/net/mail/libmailwrapper/mailtypes.cpp
+++ b/noncore/net/mail/libmailwrapper/mailtypes.cpp
@@ -14,8 +14,13 @@ RecMail::RecMail(const RecMail&old)
copy_old(old);
qDebug("Copy constructor RecMail");
}
+RecMail::~RecMail()
+{
+ wrapper = 0;
+}
+
void RecMail::copy_old(const RecMail&old)
{
subject = old.subject;
date = old.date;
@@ -27,15 +32,27 @@ void RecMail::copy_old(const RecMail&old)
msg_flags = old.msg_flags;
to = old.to;
cc = old.cc;
bcc = old.bcc;
+ wrapper = old.wrapper;
}
void RecMail::init()
{
to.clear();
cc.clear();
bcc.clear();
+ wrapper = 0;
+}
+
+void RecMail::setWrapper(AbstractMail*awrapper)
+{
+ wrapper = awrapper;
+}
+
+AbstractMail* RecMail::Wrapper()
+{
+ return wrapper;
}
void RecMail::setTo(const QStringList&list)
{
diff --git a/noncore/net/mail/libmailwrapper/mailtypes.h b/noncore/net/mail/libmailwrapper/mailtypes.h
index 24518cf..9ef762d 100644
--- a/noncore/net/mail/libmailwrapper/mailtypes.h
+++ b/noncore/net/mail/libmailwrapper/mailtypes.h
@@ -14,8 +14,9 @@
#include <qstringlist.h>
#include <qmap.h>
#include <qvaluelist.h>
+class AbstractMail;
/* a class to describe mails in a mailbox */
/* Attention!
From programmers point of view it would make sense to
store the mail body into this class, too.
@@ -31,9 +32,9 @@ class RecMail
{
public:
RecMail();
RecMail(const RecMail&old);
- virtual ~RecMail(){}
+ virtual ~RecMail();
const int getNumber()const{return msg_number;}
void setNumber(int number){msg_number=number;}
const QString&getDate()const{ return date; }
@@ -59,14 +60,18 @@ public:
void setBcc(const QStringList&list);
const QStringList&Bcc()const;
const QBitArray&getFlags()const{return msg_flags;}
void setFlags(const QBitArray&flags){msg_flags = flags;}
+
+ void setWrapper(AbstractMail*wrapper);
+ AbstractMail* Wrapper();
protected:
QString subject,date,from,mbox,msg_id,replyto;
int msg_number,msg_size;
QBitArray msg_flags;
QStringList to,cc,bcc;
+ AbstractMail*wrapper;
void init();
void copy_old(const RecMail&old);
};
diff --git a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp
index 49c3b7a..903ef4d 100644
--- a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp
@@ -80,8 +80,9 @@ void POP3wrapper::listMessages(const QString &, QList<RecMail> &target )
return;
}
RecMail *mail = parseHeader( header );
mail->setNumber( info->msg_index );
+ mail->setWrapper(this);
target.append( mail );
}
logout();
diff --git a/noncore/net/mail/mailtypes.cpp b/noncore/net/mail/mailtypes.cpp
index 5cd45ed..94f5d6f 100644
--- a/noncore/net/mail/mailtypes.cpp
+++ b/noncore/net/mail/mailtypes.cpp
@@ -14,8 +14,13 @@ RecMail::RecMail(const RecMail&old)
copy_old(old);
qDebug("Copy constructor RecMail");
}
+RecMail::~RecMail()
+{
+ wrapper = 0;
+}
+
void RecMail::copy_old(const RecMail&old)
{
subject = old.subject;
date = old.date;
@@ -27,15 +32,27 @@ void RecMail::copy_old(const RecMail&old)
msg_flags = old.msg_flags;
to = old.to;
cc = old.cc;
bcc = old.bcc;
+ wrapper = old.wrapper;
}
void RecMail::init()
{
to.clear();
cc.clear();
bcc.clear();
+ wrapper = 0;
+}
+
+void RecMail::setWrapper(AbstractMail*awrapper)
+{
+ wrapper = awrapper;
+}
+
+AbstractMail* RecMail::Wrapper()
+{
+ return wrapper;
}
void RecMail::setTo(const QStringList&list)
{
diff --git a/noncore/net/mail/mailtypes.h b/noncore/net/mail/mailtypes.h
index 24518cf..9ef762d 100644
--- a/noncore/net/mail/mailtypes.h
+++ b/noncore/net/mail/mailtypes.h
@@ -14,8 +14,9 @@
#include <qstringlist.h>
#include <qmap.h>
#include <qvaluelist.h>
+class AbstractMail;
/* a class to describe mails in a mailbox */
/* Attention!
From programmers point of view it would make sense to
store the mail body into this class, too.
@@ -31,9 +32,9 @@ class RecMail
{
public:
RecMail();
RecMail(const RecMail&old);
- virtual ~RecMail(){}
+ virtual ~RecMail();
const int getNumber()const{return msg_number;}
void setNumber(int number){msg_number=number;}
const QString&getDate()const{ return date; }
@@ -59,14 +60,18 @@ public:
void setBcc(const QStringList&list);
const QStringList&Bcc()const;
const QBitArray&getFlags()const{return msg_flags;}
void setFlags(const QBitArray&flags){msg_flags = flags;}
+
+ void setWrapper(AbstractMail*wrapper);
+ AbstractMail* Wrapper();
protected:
QString subject,date,from,mbox,msg_id,replyto;
int msg_number,msg_size;
QBitArray msg_flags;
QStringList to,cc,bcc;
+ AbstractMail*wrapper;
void init();
void copy_old(const RecMail&old);
};
diff --git a/noncore/net/mail/pop3wrapper.cpp b/noncore/net/mail/pop3wrapper.cpp
index 49c3b7a..903ef4d 100644
--- a/noncore/net/mail/pop3wrapper.cpp
+++ b/noncore/net/mail/pop3wrapper.cpp
@@ -80,8 +80,9 @@ void POP3wrapper::listMessages(const QString &, QList<RecMail> &target )
return;
}
RecMail *mail = parseHeader( header );
mail->setNumber( info->msg_index );
+ mail->setWrapper(this);
target.append( mail );
}
logout();