author | alwin <alwin> | 2003-12-28 12:57:44 (UTC) |
---|---|---|
committer | alwin <alwin> | 2003-12-28 12:57:44 (UTC) |
commit | b41e3eb92eab8bf61fd20db70d0317c816b1c2f0 (patch) (side-by-side diff) | |
tree | 5795854d7de75edc4385edc6ee7389809f98f4e1 /noncore/net/mail/libmailwrapper/pop3wrapper.cpp | |
parent | b834b22bade330b2d684c59b7fc1031a8bf650c5 (diff) | |
download | opie-b41e3eb92eab8bf61fd20db70d0317c816b1c2f0.zip opie-b41e3eb92eab8bf61fd20db70d0317c816b1c2f0.tar.gz opie-b41e3eb92eab8bf61fd20db70d0317c816b1c2f0.tar.bz2 |
basic folder handling for pop3 accounts
some code dups reduced
Diffstat (limited to 'noncore/net/mail/libmailwrapper/pop3wrapper.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/mail/libmailwrapper/pop3wrapper.cpp | 31 |
1 files changed, 27 insertions, 4 deletions
diff --git a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp index b85fbf6..2e70dee 100644 --- a/noncore/net/mail/libmailwrapper/pop3wrapper.cpp +++ b/noncore/net/mail/libmailwrapper/pop3wrapper.cpp @@ -207,7 +207,4 @@ void POP3wrapper::logout() QList<Folder>* POP3wrapper::listFolders() { - /* TODO: integrate MH directories - but not before version 0.1 ;) - */ QList<Folder> * folders = new QList<Folder>(); folders->setAutoDelete( false ); @@ -223,5 +220,5 @@ void POP3wrapper::deleteMail(const RecMail&mail) int err = mailpop3_dele(m_pop3,mail.getNumber()); if (err != MAILPOP3_NO_ERROR) { - qDebug("error deleting mail"); + Global::statusMessage(tr("error deleting mail")); } } @@ -230,2 +227,28 @@ void POP3wrapper::answeredMail(const RecMail&) { } + +int POP3wrapper::deleteAllMail(const Folder*) +{ + login(); + if (!m_pop3) return 0; + carray * messages = 0; + + /* if connected this info is cached! */ + int err = 0; + mailpop3_list( m_pop3, &messages ); + + int res = 1; + for (unsigned int i = 0; messages!=0 && i < carray_count(messages);++i) { + mailpop3_msg_info *info; + err = mailpop3_get_msg_info(m_pop3,i+1,&info); + if (info->msg_deleted) + continue; + err = mailpop3_dele(m_pop3,i+1); + if (err != MAILPOP3_NO_ERROR) { + Global::statusMessage(tr("Error deleting mail %1").arg(i+1)); + res = 0; + break; + } + } + return res; +} |