summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/libmailwrapper/generatemail.cpp30
-rw-r--r--noncore/net/mail/libmailwrapper/generatemail.h6
-rw-r--r--noncore/net/mail/libmailwrapper/mailwrapper.cpp4
-rw-r--r--noncore/net/mail/libmailwrapper/mailwrapper.h4
-rw-r--r--noncore/net/mail/libmailwrapper/smtpwrapper.cpp2
-rw-r--r--noncore/net/mail/libmailwrapper/smtpwrapper.h4
-rw-r--r--noncore/net/mail/libmailwrapper/storemail.cpp2
-rw-r--r--noncore/net/mail/libmailwrapper/storemail.h2
8 files changed, 31 insertions, 23 deletions
diff --git a/noncore/net/mail/libmailwrapper/generatemail.cpp b/noncore/net/mail/libmailwrapper/generatemail.cpp
index 48fa02e..4f7ec0c 100644
--- a/noncore/net/mail/libmailwrapper/generatemail.cpp
+++ b/noncore/net/mail/libmailwrapper/generatemail.cpp
@@ -4,9 +4,9 @@
#include <libetpan/libetpan.h>
#include <qt.h>
-const char* Generatemail::USER_AGENT="OpieMail v0.5";
+const char* Generatemail::USER_AGENT="OpieMail v0.6";
Generatemail::Generatemail()
{
}
@@ -278,27 +278,27 @@ mailimf_mailbox *Generatemail::newMailbox(const QString&name, const QString&mail
return mailimf_mailbox_new( strdup( name.latin1() ),
strdup( mail.latin1() ) );
}
-mailimf_fields *Generatemail::createImfFields(const Mail&mail )
+mailimf_fields *Generatemail::createImfFields(const Opie::osmart_pointer<Mail>&mail )
{
mailimf_fields *fields = NULL;
mailimf_field *xmailer = NULL;
mailimf_mailbox *sender=0,*fromBox=0;
mailimf_mailbox_list *from=0;
mailimf_address_list *to=0, *cc=0, *bcc=0, *reply=0;
clist*in_reply_to = 0;
- char *subject = strdup( mail.getSubject().latin1() );
+ char *subject = strdup( mail->getSubject().latin1() );
int err;
int res = 1;
- sender = newMailbox( mail.getName(), mail.getMail() );
+ sender = newMailbox( mail->getName(), mail->getMail() );
if ( sender == NULL ) {
res = 0;
}
if (res) {
- fromBox = newMailbox( mail.getName(), mail.getMail() );
+ fromBox = newMailbox( mail->getName(), mail->getMail() );
}
if ( fromBox == NULL ) {
res = 0;
}
@@ -316,19 +316,19 @@ mailimf_fields *Generatemail::createImfFields(const Mail&mail )
res = 0;
}
}
- if (res) to = parseAddresses( mail.getTo() );
- if (res) cc = parseAddresses( mail.getCC() );
- if (res) bcc = parseAddresses( mail.getBCC() );
- if (res) reply = parseAddresses( mail.getReply() );
+ if (res) to = parseAddresses( mail->getTo() );
+ if (res) cc = parseAddresses( mail->getCC() );
+ if (res) bcc = parseAddresses( mail->getBCC() );
+ if (res) reply = parseAddresses( mail->getReply() );
- if (res && mail.Inreply().count()>0) {
+ if (res && mail->Inreply().count()>0) {
in_reply_to = clist_new();
char*c_reply;
unsigned int nsize = 0;
- for (QStringList::ConstIterator it=mail.Inreply().begin();
- it != mail.Inreply().end();++it) {
+ for (QStringList::ConstIterator it=mail->Inreply().begin();
+ it != mail->Inreply().end();++it) {
if ((*it).isEmpty())
continue;
QString h((*it));
while (h.length()>0 && h[0]=='<') {
@@ -398,9 +398,9 @@ mailimf_fields *Generatemail::createImfFields(const Mail&mail )
}
return fields;
}
-mailmime *Generatemail::createMimeMail(const Mail &mail ) {
+mailmime *Generatemail::createMimeMail(const Opie::osmart_pointer<Mail> &mail ) {
mailmime *message, *txtPart;
mailimf_fields *fields;
int err;
@@ -413,18 +413,18 @@ mailmime *Generatemail::createMimeMail(const Mail &mail ) {
goto err_free_fields;
mailmime_set_imf_fields( message, fields );
- txtPart = buildTxtPart( mail.getMessage() );
+ txtPart = buildTxtPart( mail->getMessage() );
if ( txtPart == NULL )
goto err_free_message;
err = mailmime_smart_add_part( message, txtPart );
if ( err != MAILIMF_NO_ERROR )
goto err_free_txtPart;
- addFileParts( message, mail.getAttachments() );
+ addFileParts( message, mail->getAttachments() );
return message; // Success :)
err_free_txtPart:
diff --git a/noncore/net/mail/libmailwrapper/generatemail.h b/noncore/net/mail/libmailwrapper/generatemail.h
index 8be5a2b..409a55e 100644
--- a/noncore/net/mail/libmailwrapper/generatemail.h
+++ b/noncore/net/mail/libmailwrapper/generatemail.h
@@ -5,8 +5,10 @@
#include <qobject.h>
#include <libetpan/clist.h>
+#include <opie2/osmart_pointer.h>
+
class Mail;
class RecMail;
class Attachment;
struct mailimf_fields;
@@ -33,10 +35,10 @@ protected:
void addFileParts( mailmime *message,const QList<Attachment>&files );
mailmime *buildFilePart(const QString&filename,const QString&mimetype,const QString&content);
mailmime *buildTxtPart(const QString&str );
mailimf_mailbox *newMailbox(const QString&name,const QString&mail );
- mailimf_fields *createImfFields(const Mail &mail );
- mailmime *createMimeMail(const Mail&mail );
+ mailimf_fields *createImfFields(const Opie::osmart_pointer<Mail> &mail );
+ mailmime *createMimeMail(const Opie::osmart_pointer<Mail>&mail );
clist *createRcptList( mailimf_fields *fields );
static const char* USER_AGENT;
};
diff --git a/noncore/net/mail/libmailwrapper/mailwrapper.cpp b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
index ebdbf4b..6bd98f6 100644
--- a/noncore/net/mail/libmailwrapper/mailwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
@@ -44,9 +44,11 @@ IMAPFolder::IMAPFolder(const QString&name,const QString&sep, bool select,bool no
: Folder( name,sep ),m_MaySelect(select),m_NoInferior(no_inf)
{
// Decode IMAP foldername
nameDisplay = IMAPFolder::decodeFolderName( name );
+ /*
qDebug( "folder " + name + " - displayed as " + nameDisplay );
+ */
prefix = aprefix;
if (prefix.length()>0) {
if (nameDisplay.startsWith(prefix) && nameDisplay.length()>prefix.length()) {
@@ -144,9 +146,9 @@ QString IMAPFolder::decodeFolderName( const QString &name )
return QString::fromUtf8( dst.data() );
}
Mail::Mail()
- :name(""), mail(""), to(""), cc(""), bcc(""), reply(""), subject(""), message("")
+ :Opie::oref_count(),name(""), mail(""), to(""), cc(""), bcc(""), reply(""), subject(""), message("")
{
}
MHFolder::MHFolder(const QString&disp_name,const QString&mbox)
diff --git a/noncore/net/mail/libmailwrapper/mailwrapper.h b/noncore/net/mail/libmailwrapper/mailwrapper.h
index 3a9f97b..c66572c 100644
--- a/noncore/net/mail/libmailwrapper/mailwrapper.h
+++ b/noncore/net/mail/libmailwrapper/mailwrapper.h
@@ -7,8 +7,10 @@
#include <qdatetime.h>
#include "settings.h"
+#include <opie2/osmart_pointer.h>
+
class Attachment
{
public:
Attachment( DocLnk lnk );
@@ -25,9 +27,9 @@ protected:
int size;
};
-class Mail
+class Mail:public Opie::oref_count
{
public:
Mail();
/* Possible that this destructor must not be declared virtual
diff --git a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
index a4e0beb..afc5618 100644
--- a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp
@@ -311,9 +311,9 @@ int SMTPwrapper::smtpSend(char*from,clist*rcpts,const char*data,size_t size )
}
return result;
}
-void SMTPwrapper::sendMail(const Mail&mail,bool later )
+void SMTPwrapper::sendMail(const Opie::osmart_pointer<Mail>&mail,bool later )
{
mailmime * mimeMail;
mimeMail = createMimeMail(mail );
diff --git a/noncore/net/mail/libmailwrapper/smtpwrapper.h b/noncore/net/mail/libmailwrapper/smtpwrapper.h
index 1796df7..08bde74 100644
--- a/noncore/net/mail/libmailwrapper/smtpwrapper.h
+++ b/noncore/net/mail/libmailwrapper/smtpwrapper.h
@@ -10,8 +10,10 @@
#include "settings.h"
#include "generatemail.h"
+#include <opie2/osmart_pointer.h>
+
class SMTPaccount;
class AbstractMail;
class SMTPwrapper : public Generatemail
@@ -20,9 +22,9 @@ class SMTPwrapper : public Generatemail
public:
SMTPwrapper(SMTPaccount * aSmtp);
virtual ~SMTPwrapper();
- void sendMail(const Mail& mail,bool later=false );
+ void sendMail(const Opie::osmart_pointer<Mail>& mail,bool later=false );
bool flushOutbox();
static progressMailSend*sendProgress;
diff --git a/noncore/net/mail/libmailwrapper/storemail.cpp b/noncore/net/mail/libmailwrapper/storemail.cpp
index 53101f8..052e0f1 100644
--- a/noncore/net/mail/libmailwrapper/storemail.cpp
+++ b/noncore/net/mail/libmailwrapper/storemail.cpp
@@ -48,9 +48,9 @@ Storemail::Storemail(const QString&aFolder)
Storemail::~Storemail()
{
}
-int Storemail::storeMail(const Mail&mail)
+int Storemail::storeMail(const Opie::osmart_pointer<Mail>&mail)
{
if (!wrapper) return 0;
int ret = 1;
diff --git a/noncore/net/mail/libmailwrapper/storemail.h b/noncore/net/mail/libmailwrapper/storemail.h
index 872c981..7d8ea3d 100644
--- a/noncore/net/mail/libmailwrapper/storemail.h
+++ b/noncore/net/mail/libmailwrapper/storemail.h
@@ -17,9 +17,9 @@ public:
Storemail(const QString&dir,const QString&aFolder);
Storemail(const QString&aFolder);
virtual ~Storemail();
- int storeMail(const Mail&mail);
+ int storeMail(const Opie::osmart_pointer<Mail>&mail);
protected:
Account* m_Account;
QString m_tfolder;