diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-08-26 01:15:03 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-08-26 01:15:03 +0300 |
commit | 5b8c92a15a877bc05812c091ca1841cacf989f30 (patch) | |
tree | cc47b28fa2996ed4ef88cd163a928d11cbee9228 /src | |
parent | 9c2efbbe0e12e7cc24d74a5fbd91cb084fbad3b9 (diff) | |
download | mv-5b8c92a15a877bc05812c091ca1841cacf989f30.tar.gz mv-5b8c92a15a877bc05812c091ca1841cacf989f30.tar.bz2 mv-5b8c92a15a877bc05812c091ca1841cacf989f30.tar.xz mv-5b8c92a15a877bc05812c091ca1841cacf989f30.zip |
Add support for mail deletion.
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/windows/mailwindow.cpp | 5 | ||||
-rw-r--r-- | src/net/eathena/mail2recv.cpp | 9 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/gui/windows/mailwindow.cpp b/src/gui/windows/mailwindow.cpp index 8dc54cf94..f41017543 100644 --- a/src/gui/windows/mailwindow.cpp +++ b/src/gui/windows/mailwindow.cpp @@ -151,7 +151,10 @@ void MailWindow::action(const ActionEvent &event) if (sel < 0) return; const MailMessage *const mail = mMessages[sel]; - mailHandler->deleteMessage(mail->id); + if (mUseMail2) + mail2Handler->deleteMail(mOpenType, mail->id); + else + mailHandler->deleteMessage(mail->id); } else if (eventId == "return") { diff --git a/src/net/eathena/mail2recv.cpp b/src/net/eathena/mail2recv.cpp index e3dc5b9da..32d4f76c6 100644 --- a/src/net/eathena/mail2recv.cpp +++ b/src/net/eathena/mail2recv.cpp @@ -444,9 +444,14 @@ void Mail2Recv::processReadMail(Net::MessageIn &msg) void Mail2Recv::processMailDelete(Net::MessageIn &msg) { - UNIMPLEMENTEDPACKET; msg.readUInt8("open type"); - msg.readInt64("mail id"); + const int64_t mailId = msg.readInt64("mail id"); + if (mailWindow == nullptr) + { + reportAlways("Mail window not created."); + return; + } + mailWindow->removeMail(mailId); } void Mail2Recv::processRequestMoney(Net::MessageIn &msg) |