void MRAOfflineMessage::parseTextPart(MessagePart &mainPart, MessagePart &textPart) { if (m_protoVersion < MAKE_VERSION(1,16)) { return; } m_text = textPart.text().trimmed(); if (textPart.header("Content-Transfer-Encoding") == "base64") { QByteArray data; data = QByteArray::fromBase64( m_text.toAscii() ); QTextCodec *codec = QTextCodec::codecForName( textPart.charset().toAscii() ); m_text = codec->toUnicode(data); } if ( !mainPart.subject().isEmpty() || mainPart.hasHeader("Sender") ) { m_text = mainPart.subject() + '(' + mainPart.header("Sender") + "):\n" + m_text; } }
MessagePart * Attachment::attachmentWithMessageMIME(struct mailmime * mime) { MessagePart * attachment; AbstractPart * mainPart; attachment = new MessagePart(); attachment->header()->importIMFFields(mime->mm_data.mm_message.mm_fields); mainPart = attachmentsWithMIMEWithMain(mime->mm_data.mm_message.mm_msg_mime, false); attachment->setMainPart(mainPart); return (MessagePart *) attachment->autorelease(); }