21 files changed, 93 insertions, 48 deletions
diff --git a/noncore/net/mail/accountview.cpp b/noncore/net/mail/accountview.cpp index 64557ee..4375044 100644 --- a/noncore/net/mail/accountview.cpp +++ b/noncore/net/mail/accountview.cpp @@ -63,5 +63,5 @@ void AccountView::populate( QList<Account> list ) for ( it = list.first(); it; it = list.next() ) { - if ( it->getType().compare( "IMAP" ) == 0 ) + if ( it->getType() == MAILLIB::A_IMAP ) { IMAPaccount *imap = static_cast<IMAPaccount *>(it); @@ -69,5 +69,5 @@ void AccountView::populate( QList<Account> list ) imapAccounts.append(new IMAPviewItem( imap, this )); } - else if ( it->getType().compare( "POP3" ) == 0 ) + else if ( it->getType() == MAILLIB::A_POP3 ) { POP3account *pop3 = static_cast<POP3account *>(it); @@ -76,5 +76,5 @@ void AccountView::populate( QList<Account> list ) (void) new POP3viewItem( pop3, this ); } - else if ( it->getType().compare( "NNTP" ) == 0 ) + else if ( it->getType() == MAILLIB::A_NNTP ) { NNTPaccount *nntp = static_cast<NNTPaccount *>(it); diff --git a/noncore/net/mail/composemail.cpp b/noncore/net/mail/composemail.cpp index f51a8fe..f8ac76f 100644 --- a/noncore/net/mail/composemail.cpp +++ b/noncore/net/mail/composemail.cpp @@ -47,5 +47,5 @@ ComposeMail::ComposeMail( Settings *s, QWidget *parent, const char *name, bool m Account *it; for ( it = accounts.first(); it; it = accounts.next() ) { - if ( it->getType().compare( "SMTP" ) == 0 ) { + if ( it->getType()==MAILLIB::A_SMTP ) { SMTPaccount *smtp = static_cast<SMTPaccount *>(it); smtpAccountBox->insertItem( smtp->getAccountName() ); diff --git a/noncore/net/mail/editaccounts.cpp b/noncore/net/mail/editaccounts.cpp index 28d531b..5c4bdf7 100644 --- a/noncore/net/mail/editaccounts.cpp +++ b/noncore/net/mail/editaccounts.cpp @@ -17,5 +17,23 @@ AccountListItem::AccountListItem( QListView *parent, Account *a) account = a; setText( 0, account->getAccountName() ); - setText( 1, account->getType() ); + QString ttext = ""; + switch (account->getType()) { + case MAILLIB::A_NNTP: + ttext="NNTP"; + break; + case MAILLIB::A_POP3: + ttext = "POP3"; + break; + case MAILLIB::A_IMAP: + ttext = "IMAP"; + break; + case MAILLIB::A_SMTP: + ttext = "SMTP"; + break; + default: + ttext = "UNKNOWN"; + break; + } + setText( 1, ttext); } @@ -50,5 +68,5 @@ void EditAccounts::slotFillLists() for ( it = accounts.first(); it; it = accounts.next() ) { - if ( it->getType().compare( "NNTP" ) == 0 ) + if ( it->getType()==MAILLIB::A_NNTP ) { (void) new AccountListItem( newsList, it ); @@ -144,5 +162,5 @@ void EditAccounts::slotNewAccount( const QString &type ) void EditAccounts::slotEditAccount( Account *account ) { - if ( account->getType().compare( "IMAP" ) == 0 ) + if ( account->getType() == MAILLIB::A_IMAP ) { IMAPaccount *imapAcc = static_cast<IMAPaccount *>(account); @@ -153,5 +171,5 @@ void EditAccounts::slotEditAccount( Account *account ) } } - else if ( account->getType().compare( "POP3" ) == 0 ) + else if ( account->getType()==MAILLIB::A_POP3 ) { POP3account *pop3Acc = static_cast<POP3account *>(account); @@ -162,5 +180,5 @@ void EditAccounts::slotEditAccount( Account *account ) } } - else if ( account->getType().compare( "SMTP" ) == 0 ) + else if ( account->getType()==MAILLIB::A_SMTP ) { SMTPaccount *smtpAcc = static_cast<SMTPaccount *>(account); @@ -171,5 +189,5 @@ void EditAccounts::slotEditAccount( Account *account ) } } - else if ( account->getType().compare( "NNTP" ) == 0 ) + else if ( account->getType()==MAILLIB::A_NNTP) { NNTPaccount *nntpAcc = static_cast<NNTPaccount *>(account); diff --git a/noncore/net/mail/libmailwrapper/abstractmail.h b/noncore/net/mail/libmailwrapper/abstractmail.h index b6e1538..442ebfe 100644 --- a/noncore/net/mail/libmailwrapper/abstractmail.h +++ b/noncore/net/mail/libmailwrapper/abstractmail.h @@ -2,4 +2,6 @@ #define __abstract_mail_ +#include "maildefines.h" + #include <qobject.h> #include "settings.h" @@ -56,5 +58,5 @@ public: static QString defaultLocalfolder(); - virtual const QString&getType()const=0; + virtual MAILLIB::ATYPE getType()const=0; virtual const QString&getName()const=0; diff --git a/noncore/net/mail/libmailwrapper/genericwrapper.cpp b/noncore/net/mail/libmailwrapper/genericwrapper.cpp index 350808a..3fe319b 100644 --- a/noncore/net/mail/libmailwrapper/genericwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/genericwrapper.cpp @@ -445,5 +445,5 @@ void Genericwrapper::cleanMimeCache() } -void Genericwrapper::parseList(QList<RecMail> &target,mailsession*session,const QString&mailbox) +void Genericwrapper::parseList(QList<RecMail> &target,mailsession*session,const QString&mailbox,bool mbox_as_to) { int r; @@ -489,6 +489,10 @@ void Genericwrapper::parseList(QList<RecMail> &target,mailsession*session,const if (single_fields.fld_from) mail->setFrom(parseMailboxList(single_fields.fld_from->frm_mb_list)); - if (single_fields.fld_to) - mail->setTo( parseAddressList( single_fields.fld_to->to_addr_list ) ); + if (!mbox_as_to) { + if (single_fields.fld_to) + mail->setTo( parseAddressList( single_fields.fld_to->to_addr_list ) ); + } else { + mail->setTo(mailbox); + } if (single_fields.fld_cc) mail->setCC( parseAddressList( single_fields.fld_cc->cc_addr_list ) ); diff --git a/noncore/net/mail/libmailwrapper/genericwrapper.h b/noncore/net/mail/libmailwrapper/genericwrapper.h index e471dc8..b451416 100644 --- a/noncore/net/mail/libmailwrapper/genericwrapper.h +++ b/noncore/net/mail/libmailwrapper/genericwrapper.h @@ -55,5 +55,5 @@ protected: static void fillParameters(RecPart&target,clist*parameters); static QString getencoding(mailmime_mechanism*aEnc); - virtual void parseList(QList<RecMail> &target,mailsession*session,const QString&mailbox); + virtual void parseList(QList<RecMail> &target,mailsession*session,const QString&mailbox,bool mbox_as_to=false); QString msgTempName; diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp index 1dfcc4c..3375e69 100644 --- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp @@ -1091,5 +1091,5 @@ void IMAPwrapper::storeMessage(const char*msg,size_t length, const QString&folde } -const QString&IMAPwrapper::getType()const +MAILLIB::ATYPE IMAPwrapper::getType()const { return account->getType(); diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.h b/noncore/net/mail/libmailwrapper/imapwrapper.h index 0a1fe2c..2623725 100644 --- a/noncore/net/mail/libmailwrapper/imapwrapper.h +++ b/noncore/net/mail/libmailwrapper/imapwrapper.h @@ -47,5 +47,5 @@ public: virtual void logout(); - virtual const QString&getType()const; + virtual MAILLIB::ATYPE getType()const; virtual const QString&getName()const; diff --git a/noncore/net/mail/libmailwrapper/maildefines.h b/noncore/net/mail/libmailwrapper/maildefines.h new file mode 100644 index 0000000..431f9ea --- a/dev/null +++ b/noncore/net/mail/libmailwrapper/maildefines.h @@ -0,0 +1,16 @@ +#ifndef __MAILDEFINES_H +#define __MAILDEFINES_H + +namespace MAILLIB { + enum ATYPE { + A_UNDEFINED, + A_IMAP, + A_POP3, + A_SMTP, + A_MH, + A_MBOX, + A_NNTP, + }; +} + +#endif diff --git a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp index 97f301e..11ffd92 100644 --- a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp @@ -7,5 +7,5 @@ #include <qpe/global.h> -const QString MBOXwrapper::wrapperType="MBOX"; +const MAILLIB::ATYPE MBOXwrapper::wrapperType=MAILLIB::MBOX; MBOXwrapper::MBOXwrapper(const QString & mbox_dir,const QString&mbox_name) @@ -327,5 +327,5 @@ void MBOXwrapper::statusFolder(folderStat&target_stat,const QString & mailbox) } -const QString&MBOXwrapper::getType()const +MAILLIB::ATYPE MBOXwrapper::getType()const { return wrapperType; diff --git a/noncore/net/mail/libmailwrapper/mboxwrapper.h b/noncore/net/mail/libmailwrapper/mboxwrapper.h index a579a3d..a12a1dd 100644 --- a/noncore/net/mail/libmailwrapper/mboxwrapper.h +++ b/noncore/net/mail/libmailwrapper/mboxwrapper.h @@ -36,5 +36,5 @@ public: virtual void deleteMails(const QString & FolderName,QList<RecMail> &target); virtual int deleteAllMail(const Folder*); - virtual const QString&getType()const; + virtual MAILLIB::ATYPE getType()const; virtual const QString&getName()const; @@ -43,5 +43,5 @@ protected: QString MBOXPath; QString MBOXName; - static const QString wrapperType; + static const MAILLIB::ATYPE wrapperType; }; diff --git a/noncore/net/mail/libmailwrapper/mhwrapper.cpp b/noncore/net/mail/libmailwrapper/mhwrapper.cpp index df7f773..179bd34 100644 --- a/noncore/net/mail/libmailwrapper/mhwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/mhwrapper.cpp @@ -9,5 +9,5 @@ #include <opie2/oprocess.h> -const QString MHwrapper::wrapperType="MH"; +const MAILLIB::ATYPE MHwrapper::wrapperType=MAILLIB::A_MH; MHwrapper::MHwrapper(const QString & mbox_dir,const QString&mbox_name) @@ -367,5 +367,5 @@ void MHwrapper::statusFolder(folderStat&target_stat,const QString & mailbox) } -const QString&MHwrapper::getType()const +MAILLIB::ATYPE MHwrapper::getType()const { return wrapperType; diff --git a/noncore/net/mail/libmailwrapper/mhwrapper.h b/noncore/net/mail/libmailwrapper/mhwrapper.h index b8e380c..c1ba78d 100644 --- a/noncore/net/mail/libmailwrapper/mhwrapper.h +++ b/noncore/net/mail/libmailwrapper/mhwrapper.h @@ -2,4 +2,6 @@ #define __MH_WRAPPER_H +#include "maildefines.h" + #include "genericwrapper.h" #include <qstring.h> @@ -38,5 +40,5 @@ public: virtual void deleteMails(const QString & FolderName,QList<RecMail> &target); virtual int deleteAllMail(const Folder*); - virtual const QString&getType()const; + virtual MAILLIB::ATYPE getType()const; virtual const QString&getName()const; @@ -49,5 +51,5 @@ protected: QString MHPath; QString MHName; - static const QString wrapperType; + static const MAILLIB::ATYPE wrapperType; void init_storage(); diff --git a/noncore/net/mail/libmailwrapper/nntpwrapper.cpp b/noncore/net/mail/libmailwrapper/nntpwrapper.cpp index 5a8c224..1956c61 100644 --- a/noncore/net/mail/libmailwrapper/nntpwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/nntpwrapper.cpp @@ -104,5 +104,5 @@ void NNTPwrapper::listMessages(const QString & which, QList<RecMail> &target ) uint32_t res_messages,res_recent,res_unseen; mailsession_status_folder(m_nntp->sto_session,(char*)which.latin1(),&res_messages,&res_recent,&res_unseen); - parseList(target,m_nntp->sto_session,which); + parseList(target,m_nntp->sto_session,which,true); } @@ -270,5 +270,5 @@ encodedString* NNTPwrapper::fetchRawBody(const RecMail&mail) { } -const QString&NNTPwrapper::getType()const { +MAILLIB::ATYPE NNTPwrapper::getType()const { return account->getType(); } @@ -278,5 +278,5 @@ const QString&NNTPwrapper::getName()const{ } -void NNTPwrapper::deleteMail(const RecMail&mail) { +void NNTPwrapper::deleteMail(const RecMail&) { } diff --git a/noncore/net/mail/libmailwrapper/nntpwrapper.h b/noncore/net/mail/libmailwrapper/nntpwrapper.h index d51c955..955b9f1 100644 --- a/noncore/net/mail/libmailwrapper/nntpwrapper.h +++ b/noncore/net/mail/libmailwrapper/nntpwrapper.h @@ -34,5 +34,5 @@ public: virtual encodedString* fetchRawBody(const RecMail&mail); virtual void logout(); - virtual const QString&getType()const; + virtual MAILLIB::ATYPE getType()const; virtual const QString&getName()const; static void nntp_progress( size_t current, size_t maximum ); diff --git a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp index 6fab401..0939b22 100644 --- a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp +++ b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp @@ -247,5 +247,5 @@ encodedString* POP3wrapper::fetchRawBody(const RecMail&mail) { } -const QString&POP3wrapper::getType()const { +MAILLIB::ATYPE POP3wrapper::getType()const { return account->getType(); } diff --git a/noncore/net/mail/libmailwrapper/pop3wrapper.h b/noncore/net/mail/libmailwrapper/pop3wrapper.h index a24b9cf..391c841 100644 --- a/noncore/net/mail/libmailwrapper/pop3wrapper.h +++ b/noncore/net/mail/libmailwrapper/pop3wrapper.h @@ -30,5 +30,5 @@ public: virtual encodedString* fetchRawBody(const RecMail&mail); virtual void logout(); - virtual const QString&getType()const; + virtual MAILLIB::ATYPE getType()const; virtual const QString&getName()const; static void pop3_progress( size_t current, size_t maximum ); diff --git a/noncore/net/mail/libmailwrapper/settings.cpp b/noncore/net/mail/libmailwrapper/settings.cpp index 0d34fd5..2c81963 100644 --- a/noncore/net/mail/libmailwrapper/settings.cpp +++ b/noncore/net/mail/libmailwrapper/settings.cpp @@ -107,5 +107,5 @@ Account::Account() { accountName = "changeMe"; - type = "changeMe"; + type = MAILLIB::A_UNDEFINED; ssl = false; connectionType = 1; @@ -126,5 +126,5 @@ IMAPaccount::IMAPaccount() ssl = false; connectionType = 1; - type = "IMAP"; + type = MAILLIB::A_IMAP; port = IMAP_PORT; } @@ -137,5 +137,5 @@ IMAPaccount::IMAPaccount( QString filename ) ssl = false; connectionType = 1; - type = "IMAP"; + type = MAILLIB::A_IMAP; port = IMAP_PORT; } @@ -211,5 +211,5 @@ POP3account::POP3account() ssl = false; connectionType = 1; - type = "POP3"; + type = MAILLIB::A_POP3; port = POP3_PORT; } @@ -222,5 +222,5 @@ POP3account::POP3account( QString filename ) ssl = false; connectionType = 1; - type = "POP3"; + type = MAILLIB::A_POP3; port = POP3_PORT; } @@ -292,5 +292,5 @@ SMTPaccount::SMTPaccount() useBCC = false; useReply = false; - type = "SMTP"; + type = MAILLIB::A_SMTP; port = SMTP_PORT; } @@ -304,5 +304,5 @@ SMTPaccount::SMTPaccount( QString filename ) connectionType = 1; login = false; - type = "SMTP"; + type = MAILLIB::A_SMTP; port = SMTP_PORT; } @@ -370,5 +370,5 @@ NNTPaccount::NNTPaccount() ssl = false; login = false; - type = "NNTP"; + type = MAILLIB::A_NNTP; port = NNTP_PORT; } @@ -381,5 +381,5 @@ NNTPaccount::NNTPaccount( QString filename ) ssl = false; login = false; - type = "NNTP"; + type = MAILLIB::A_NNTP; port = NNTP_PORT; } diff --git a/noncore/net/mail/libmailwrapper/settings.h b/noncore/net/mail/libmailwrapper/settings.h index 1feedbf..27e2823 100644 --- a/noncore/net/mail/libmailwrapper/settings.h +++ b/noncore/net/mail/libmailwrapper/settings.h @@ -2,4 +2,6 @@ #define SETTINGS_H +#include "maildefines.h" + #include <qobject.h> #include <qlist.h> @@ -15,5 +17,5 @@ public: void setAccountName( QString name ) { accountName = name; } const QString&getAccountName()const{ return accountName; } - const QString&getType()const{ return type; } + MAILLIB::ATYPE getType()const{ return type; } void setServer(const QString&str){ server = str; } @@ -42,10 +44,11 @@ public: virtual void read() { qDebug( "base reading..." ); } virtual void save() { qDebug( "base saving..." ); } - + protected: - QString accountName, type, server, port, user, password; + QString accountName, server, port, user, password; bool ssl; int connectionType; bool offline; + MAILLIB::ATYPE type; }; diff --git a/noncore/net/mail/libmailwrapper/statusmail.cpp b/noncore/net/mail/libmailwrapper/statusmail.cpp index 4134e79..b78244d 100644 --- a/noncore/net/mail/libmailwrapper/statusmail.cpp +++ b/noncore/net/mail/libmailwrapper/statusmail.cpp @@ -27,5 +27,5 @@ void StatusMail::initAccounts(QList<Account>&accounts) currentPop3Stat.message_unseen=0; for ( it = accounts.first(); it; it = accounts.next() ) { - if ( it->getType().compare( "IMAP" ) == 0 && !it->getOffline() ) { + if ( it->getType()==MAILLIB::A_IMAP && !it->getOffline() ) { IMAPaccount*ima = static_cast<IMAPaccount *>(it); current = AbstractMail::getWrapper(ima); @@ -35,5 +35,5 @@ void StatusMail::initAccounts(QList<Account>&accounts) currentImapStat.message_count+=currentStat.message_recent; currentImapStat.message_count+=currentStat.message_count; - } else if ( it->getType().compare( "POP3" ) == 0 && !it->getOffline() ) { + } else if ( it->getType() == MAILLIB::A_POP3 && !it->getOffline() ) { POP3account *pop3 = static_cast<POP3account *>(it); current = AbstractMail::getWrapper(pop3); @@ -67,9 +67,9 @@ void StatusMail::check_current_stat(folderStat&targetStat) it->statusFolder(currentStat); it->logout(); - if (it->getType().lower()=="imap") { + if (it->getType() == MAILLIB::A_IMAP) { currentImapStat.message_unseen+=currentStat.message_unseen; currentImapStat.message_recent+=currentStat.message_recent; currentImapStat.message_count+=currentStat.message_count; - } else if (it->getType().lower()=="pop3") { + } else if (it->getType() == MAILLIB::A_POP3) { currentPop3Stat.message_count+=currentStat.message_count; qDebug("Pop3 count: %i",currentPop3Stat.message_count); diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp index 6bfc824..d8b58b6 100644 --- a/noncore/net/mail/opiemail.cpp +++ b/noncore/net/mail/opiemail.cpp @@ -83,5 +83,5 @@ void OpieMail::slotSendQueued() for ( it = list.first(); it; it = list.next() ) { - if ( it->getType().compare( "SMTP" ) == 0 ) + if ( it->getType() == MAILLIB::A_SMTP ) { smtp = static_cast<SMTPaccount *>(it); |