author | leseb <leseb> | 2002-06-17 20:52:48 (UTC) |
---|---|---|
committer | leseb <leseb> | 2002-06-17 20:52:48 (UTC) |
commit | b177eb4a659c674d1bc3ab82d6d980aade7c0959 (patch) (side-by-side diff) | |
tree | 4ba2aee9db13423e37ae0a8051d80c010f815666 /noncore/unsupported/mail2/libmail | |
parent | 7ba6590093fb86fe4bf64839d3a517dd396853a3 (diff) | |
download | opie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.zip opie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.tar.gz opie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.tar.bz2 |
Fix some bugs when dealing with attachments
Diffstat (limited to 'noncore/unsupported/mail2/libmail') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/unsupported/mail2/libmail/mailfactory.cpp | 2 | ||||
-rw-r--r-- | noncore/unsupported/mail2/libmail/mailfactory.h | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/noncore/unsupported/mail2/libmail/mailfactory.cpp b/noncore/unsupported/mail2/libmail/mailfactory.cpp index 6602919..e02f80f 100644 --- a/noncore/unsupported/mail2/libmail/mailfactory.cpp +++ b/noncore/unsupported/mail2/libmail/mailfactory.cpp @@ -65,49 +65,49 @@ MailFactory::MailFactory(SendMail &smail, QWidget *parent) // QString header, body; // openPgpSign(_smail.message(), header, body); // _body += header + "\n" + body + "\n"; // } else if (_smail.encrypt() && _smail.sign()) { // QString header, body; // openPgpSignEncrypt(_smail.message(), header, body); // _body += header + "\n" + body + "\n"; // } else { // TODO: Do proper charset handling! _body += "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; _body += "Content-Transfer-Encoding: 8bit\n\n"; _body += _smail.message() + "\n"; // } QValueList<Attachment> attachments = _smail.attachments(); QValueList<Attachment>::Iterator it; for (it = attachments.begin(); it != attachments.end(); it++) { QFile f((*it).fileName()); if (f.open(IO_ReadOnly)) { QTextStream t(&f); QString file; while (!t.atEnd()) file += t.readLine() + "\n"; f.close(); - QString mimetype = (new MimeType(*(*it).docLnk()))->id(); + QString mimetype = (new MimeType((*it).docLnk()))->id(); _body += "\n--" + boundary + "\n"; _body += "Content-Type: " + mimetype + "; name=\"" + (*it).newName() + "\"\n"; // TODO: Decide which content transfer encoding is best. B64 for binary, QP for text. _body += "Content-Transfer-Encoding: base64\n"; _body += "Content-Disposition: attachment; filename=\"" + (*it).newName() + "\"\n"; if (!(*it).description().isEmpty()) _body += "Content-Description: " + (*it).description() + "\n"; _body += "\n" + MiscFunctions::encodeBase64(file) + "\n"; } else { int ret = QMessageBox::critical(_parent, tr("Error"), tr("<p>Couldn't attach file '%1'. Continue anyway or abort?</p>").arg((*it).fileName()), tr("Continue"), tr("Abort")); if (ret != 0) { _abort = true; break; } } } _body += "\n--" + boundary + "--"; } if (_abort) { diff --git a/noncore/unsupported/mail2/libmail/mailfactory.h b/noncore/unsupported/mail2/libmail/mailfactory.h index 8f67447..c938c27 100644 --- a/noncore/unsupported/mail2/libmail/mailfactory.h +++ b/noncore/unsupported/mail2/libmail/mailfactory.h @@ -1,49 +1,49 @@ #ifndef MAILFACTORY_H #define MAILFACTORY_H #include <qobject.h> #include <qpe/applnk.h> #include "configfile.h" class Attachment { public: void setFileName(QString fileName) { _fileName = fileName; } void setNewName(QString newName) { _newName = newName; } void setDescription(QString description) { _description = description; } - void setDocLnk(DocLnk *docLnk) { _docLnk = docLnk; } + void setDocLnk(DocLnk docLnk) { _docLnk = docLnk; } QString fileName() { return _fileName; } QString newName() { return _newName; } QString description() { return _description; } - DocLnk *docLnk() { return _docLnk; } + DocLnk docLnk() { return _docLnk; } protected: QString _fileName, _newName, _description; - DocLnk *_docLnk; + DocLnk _docLnk; }; class SendMail { public: SendMail() { _needsMime = false; } void setAccount(Account account) { _account = account; } void setFrom(QString from) { _from = from; } void setReplyTo(QString replyTo) { _replyTo = replyTo; } void setTo(QString to) { _to = to; } void setCc(QString cc) { _cc = cc; } void setBcc(QString bcc) { _bcc = bcc; } void setSubject(QString subject) { _subject = subject; } void setPriority(QString priority) { _priority = priority; } void setMessage(QString message) { _message = message; } void setInReplyTo(QString inReplyTo) { _inReplyTo = inReplyTo; } void setNeedsMime(bool needsMime) { _needsMime = needsMime; } //void setEncrypt(bool encrypt) { _encrypt = encrypt; } //void setSign(bool sign) { _sign = sign; } |