Diffstat (limited to 'noncore/net/mail/libmailwrapper/mboxwrapper.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/net/mail/libmailwrapper/mboxwrapper.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp index abe4bb6..9ff3de2 100644 --- a/noncore/net/mail/libmailwrapper/mboxwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/mboxwrapper.cpp | |||
@@ -35,35 +35,34 @@ void MBOXwrapper::listMessages(const QString & mailbox, QList<RecMail> &target ) | |||
35 | mailstorage_free(storage); | 35 | mailstorage_free(storage); |
36 | return; | 36 | return; |
37 | } | 37 | } |
38 | 38 | ||
39 | parseList(target,folder->fld_session,mailbox); | 39 | parseList(target,folder->fld_session,mailbox); |
40 | 40 | ||
41 | mailfolder_disconnect(folder); | 41 | mailfolder_disconnect(folder); |
42 | mailfolder_free(folder); | 42 | mailfolder_free(folder); |
43 | mailstorage_free(storage); | 43 | mailstorage_free(storage); |
44 | Global::statusMessage(tr("Mailbox has %1 mail(s)").arg(target.count())); | 44 | Global::statusMessage(tr("Mailbox has %1 mail(s)").arg(target.count())); |
45 | } | 45 | } |
46 | 46 | ||
47 | QList<Folder>* MBOXwrapper::listFolders() | 47 | QValueList<Opie::osmart_pointer<Folder> >* MBOXwrapper::listFolders() |
48 | { | 48 | { |
49 | QList<Folder> * folders = new QList<Folder>(); | 49 | QValueList<Opie::osmart_pointer<Folder> >* folders = new QValueList<Opie::osmart_pointer<Folder> >(); |
50 | folders->setAutoDelete( false ); | ||
51 | QDir dir(MBOXPath); | 50 | QDir dir(MBOXPath); |
52 | if (!dir.exists()) return folders; | 51 | if (!dir.exists()) return folders; |
53 | dir.setFilter(QDir::Files|QDir::Writable|QDir::Readable); | 52 | dir.setFilter(QDir::Files|QDir::Writable|QDir::Readable); |
54 | QStringList entries = dir.entryList(); | 53 | QStringList entries = dir.entryList(); |
55 | QStringList::ConstIterator it = entries.begin(); | 54 | QStringList::ConstIterator it = entries.begin(); |
56 | for (;it!=entries.end();++it) { | 55 | for (;it!=entries.end();++it) { |
57 | Folder*inb=new Folder(*it,"/"); | 56 | FolderP inb=new Folder(*it,"/"); |
58 | folders->append(inb); | 57 | folders->append(inb); |
59 | } | 58 | } |
60 | return folders; | 59 | return folders; |
61 | } | 60 | } |
62 | 61 | ||
63 | void MBOXwrapper::deleteMail(const RecMail&mail) | 62 | void MBOXwrapper::deleteMail(const RecMail&mail) |
64 | { | 63 | { |
65 | mailstorage*storage = mailstorage_new(NULL); | 64 | mailstorage*storage = mailstorage_new(NULL); |
66 | QString p = MBOXPath+"/"; | 65 | QString p = MBOXPath+"/"; |
67 | p+=mail.getMbox(); | 66 | p+=mail.getMbox(); |
68 | int r = mbox_mailstorage_init(storage,(char*)p.latin1(),0,0,0); | 67 | int r = mbox_mailstorage_init(storage,(char*)p.latin1(),0,0,0); |
69 | mailfolder*folder; | 68 | mailfolder*folder; |
@@ -126,25 +125,25 @@ RecBody MBOXwrapper::fetchBody( const RecMail &mail ) | |||
126 | mailmessage_fetch_result_free(msg,data); | 125 | mailmessage_fetch_result_free(msg,data); |
127 | mailfolder_free(folder); | 126 | mailfolder_free(folder); |
128 | mailstorage_free(storage); | 127 | mailstorage_free(storage); |
129 | 128 | ||
130 | return body; | 129 | return body; |
131 | } | 130 | } |
132 | 131 | ||
133 | void MBOXwrapper::mbox_progress( size_t current, size_t maximum ) | 132 | void MBOXwrapper::mbox_progress( size_t current, size_t maximum ) |
134 | { | 133 | { |
135 | qDebug("MBOX %i von %i",current,maximum); | 134 | qDebug("MBOX %i von %i",current,maximum); |
136 | } | 135 | } |
137 | 136 | ||
138 | int MBOXwrapper::createMbox(const QString&folder,const Folder*,const QString&,bool ) | 137 | int MBOXwrapper::createMbox(const QString&folder,const FolderP&,const QString&,bool ) |
139 | { | 138 | { |
140 | QString p = MBOXPath+"/"; | 139 | QString p = MBOXPath+"/"; |
141 | p+=folder; | 140 | p+=folder; |
142 | QFileInfo fi(p); | 141 | QFileInfo fi(p); |
143 | if (fi.exists()) { | 142 | if (fi.exists()) { |
144 | Global::statusMessage(tr("Mailbox exists.")); | 143 | Global::statusMessage(tr("Mailbox exists.")); |
145 | return 0; | 144 | return 0; |
146 | } | 145 | } |
147 | mailmbox_folder*f = 0; | 146 | mailmbox_folder*f = 0; |
148 | if (mailmbox_init(p.latin1(),0,1,0,&f) != MAIL_NO_ERROR) { | 147 | if (mailmbox_init(p.latin1(),0,1,0,&f) != MAIL_NO_ERROR) { |
149 | Global::statusMessage(tr("Error init folder")); | 148 | Global::statusMessage(tr("Error init folder")); |
150 | return 0; | 149 | return 0; |
@@ -234,25 +233,25 @@ void MBOXwrapper::deleteMails(mailmbox_folder*f,QList<RecMail> &target) | |||
234 | for (unsigned int i=0; i < target.count();++i) { | 233 | for (unsigned int i=0; i < target.count();++i) { |
235 | r = mailmbox_delete_msg(f,target.at(i)->getNumber()); | 234 | r = mailmbox_delete_msg(f,target.at(i)->getNumber()); |
236 | if (r!=MAILMBOX_NO_ERROR) { | 235 | if (r!=MAILMBOX_NO_ERROR) { |
237 | qDebug("error delete mail"); | 236 | qDebug("error delete mail"); |
238 | } | 237 | } |
239 | } | 238 | } |
240 | r = mailmbox_expunge(f); | 239 | r = mailmbox_expunge(f); |
241 | if (r != MAILMBOX_NO_ERROR) { | 240 | if (r != MAILMBOX_NO_ERROR) { |
242 | qDebug("error expunge mailbox"); | 241 | qDebug("error expunge mailbox"); |
243 | } | 242 | } |
244 | } | 243 | } |
245 | 244 | ||
246 | int MBOXwrapper::deleteAllMail(const Folder*tfolder) | 245 | int MBOXwrapper::deleteAllMail(const FolderP&tfolder) |
247 | { | 246 | { |
248 | if (!tfolder) return 0; | 247 | if (!tfolder) return 0; |
249 | QString p = MBOXPath+"/"+tfolder->getDisplayName(); | 248 | QString p = MBOXPath+"/"+tfolder->getDisplayName(); |
250 | int res = 1; | 249 | int res = 1; |
251 | 250 | ||
252 | mailfolder*folder = 0; | 251 | mailfolder*folder = 0; |
253 | mailmessage_list*l=0; | 252 | mailmessage_list*l=0; |
254 | mailstorage*storage = mailstorage_new(NULL); | 253 | mailstorage*storage = mailstorage_new(NULL); |
255 | int r = mbox_mailstorage_init(storage,(char*)p.latin1(),0,0,0); | 254 | int r = mbox_mailstorage_init(storage,(char*)p.latin1(),0,0,0); |
256 | if (r != MAIL_NO_ERROR) { | 255 | if (r != MAIL_NO_ERROR) { |
257 | Global::statusMessage(tr("Error initializing mbox")); | 256 | Global::statusMessage(tr("Error initializing mbox")); |
258 | res = 0; | 257 | res = 0; |
@@ -277,25 +276,25 @@ int MBOXwrapper::deleteAllMail(const Folder*tfolder) | |||
277 | if (r != MAIL_NO_ERROR) { | 276 | if (r != MAIL_NO_ERROR) { |
278 | Global::statusMessage(tr("Error deleting mail %1").arg(i+1)); | 277 | Global::statusMessage(tr("Error deleting mail %1").arg(i+1)); |
279 | res = 0; | 278 | res = 0; |
280 | break; | 279 | break; |
281 | } | 280 | } |
282 | } | 281 | } |
283 | if (l) mailmessage_list_free(l); | 282 | if (l) mailmessage_list_free(l); |
284 | if (folder) mailfolder_free(folder); | 283 | if (folder) mailfolder_free(folder); |
285 | if (storage) mailstorage_free(storage); | 284 | if (storage) mailstorage_free(storage); |
286 | return res; | 285 | return res; |
287 | } | 286 | } |
288 | 287 | ||
289 | int MBOXwrapper::deleteMbox(const Folder*tfolder) | 288 | int MBOXwrapper::deleteMbox(const FolderP&tfolder) |
290 | { | 289 | { |
291 | if (!tfolder) return 0; | 290 | if (!tfolder) return 0; |
292 | QString p = MBOXPath+"/"+tfolder->getDisplayName(); | 291 | QString p = MBOXPath+"/"+tfolder->getDisplayName(); |
293 | QFile fi(p); | 292 | QFile fi(p); |
294 | if (!fi.exists()) { | 293 | if (!fi.exists()) { |
295 | Global::statusMessage(tr("Mailbox doesn't exist.")); | 294 | Global::statusMessage(tr("Mailbox doesn't exist.")); |
296 | return 0; | 295 | return 0; |
297 | } | 296 | } |
298 | if (!fi.remove()) { | 297 | if (!fi.remove()) { |
299 | Global::statusMessage(tr("Error deleting Mailbox.")); | 298 | Global::statusMessage(tr("Error deleting Mailbox.")); |
300 | return 0; | 299 | return 0; |
301 | } | 300 | } |