void WriteMail::modify(const QMailMessage& previousMessage) { QString recipients = ""; prepareComposer(previousMessage.messageType(), previousMessage.parentAccountId()); if (composer().isEmpty()) return; // Record any message properties we should retain mail.setId(previousMessage.id()); mail.setParentFolderId(previousMessage.parentFolderId()); mail.setContentScheme(previousMessage.contentScheme()); mail.setContentIdentifier(previousMessage.contentIdentifier()); mail.setTo(previousMessage.to()); mail.setFrom(previousMessage.from()); mail.setCustomFields(previousMessage.customFields()); mail.setServerUid(previousMessage.serverUid()); m_composerInterface->compose(QMailMessage::NoResponse, previousMessage); // ugh. we need to do this everywhere m_hasMessageChanged = false; m_precursorId = mail.inResponseTo(); m_replyAction = mail.responseType(); }
void WriteMail::create(const QMailMessage& initMessage) { prepareComposer(initMessage.messageType(), initMessage.parentAccountId()); if (composer().isEmpty()) return; m_composerInterface->compose(QMailMessage::NoResponse, initMessage); m_hasMessageChanged = true; }
void WriteMail::respond(const QMailMessage& source, QMailMessage::ResponseType type) { prepareComposer(source.messageType(), source.parentAccountId()); if (composer().isEmpty()) return; m_composerInterface->compose(type, source); m_hasMessageChanged = true; m_precursorId = source.id(); m_replyAction = type; }