From d431a16b6e75232b664a67741898aa8179057c00 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 13 Oct 2014 00:19:04 +0300 Subject: Add special method in charHandler to send message to channel. --- src/gui/widgets/tabs/chat/channeltab.cpp | 2 +- src/net/chathandler.h | 3 +++ src/net/eathena/chathandler.cpp | 6 ++++++ src/net/eathena/chathandler.h | 3 +++ src/net/tmwa/chathandler.cpp | 5 +++++ src/net/tmwa/chathandler.h | 3 +++ 6 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/gui/widgets/tabs/chat/channeltab.cpp b/src/gui/widgets/tabs/chat/channeltab.cpp index 6f7242578..cf8e2443f 100644 --- a/src/gui/widgets/tabs/chat/channeltab.cpp +++ b/src/gui/widgets/tabs/chat/channeltab.cpp @@ -50,7 +50,7 @@ void ChannelTab::handleInput(const std::string &msg) { std::string newMsg; newMsg = ChatWindow::doReplace(msg); - chatHandler->privateMessage(mChannelName, newMsg); + chatHandler->channelMessage(mChannelName, newMsg); } bool ChannelTab::handleCommand(const std::string &restrict type, diff --git a/src/net/chathandler.h b/src/net/chathandler.h index ede516f06..133b64c87 100644 --- a/src/net/chathandler.h +++ b/src/net/chathandler.h @@ -53,6 +53,9 @@ class ChatHandler notfinal virtual void privateMessage(const std::string &restrict recipient, const std::string &restrict text) = 0; + virtual void channelMessage(const std::string &restrict channel, + const std::string &restrict text) = 0; + virtual void who() const = 0; virtual void sendRaw(const std::string &args) const = 0; diff --git a/src/net/eathena/chathandler.cpp b/src/net/eathena/chathandler.cpp index cff13879f..b10224c4a 100644 --- a/src/net/eathena/chathandler.cpp +++ b/src/net/eathena/chathandler.cpp @@ -184,6 +184,12 @@ void ChatHandler::privateMessage(const std::string &restrict recipient, mSentWhispers.push(recipient); } +void ChatHandler::channelMessage(const std::string &restrict channel, + const std::string &restrict text) +{ + privateMessage(channel, text); +} + void ChatHandler::who() const { createOutPacket(CMSG_WHO_REQUEST); diff --git a/src/net/eathena/chathandler.h b/src/net/eathena/chathandler.h index 77484c946..82abae9a1 100644 --- a/src/net/eathena/chathandler.h +++ b/src/net/eathena/chathandler.h @@ -48,6 +48,9 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler void privateMessage(const std::string &restrict recipient, const std::string &restrict text) override final; + void channelMessage(const std::string &restrict channel, + const std::string &restrict text) override final; + void who() const override final; void sendRaw(const std::string &args) const override final; diff --git a/src/net/tmwa/chathandler.cpp b/src/net/tmwa/chathandler.cpp index 051443318..68ceb0d8d 100644 --- a/src/net/tmwa/chathandler.cpp +++ b/src/net/tmwa/chathandler.cpp @@ -163,6 +163,11 @@ void ChatHandler::privateMessage(const std::string &restrict recipient, mSentWhispers.push(recipient); } +void ChatHandler::channelMessage(const std::string &restrict channel A_UNUSED, + const std::string &restrict text A_UNUSED) +{ +} + void ChatHandler::who() const { createOutPacket(CMSG_WHO_REQUEST); diff --git a/src/net/tmwa/chathandler.h b/src/net/tmwa/chathandler.h index 15777c1e3..fff0432fe 100644 --- a/src/net/tmwa/chathandler.h +++ b/src/net/tmwa/chathandler.h @@ -48,6 +48,9 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler void privateMessage(const std::string &restrict recipient, const std::string &restrict text) override final; + void channelMessage(const std::string &restrict channel, + const std::string &restrict text) override final; + void who() const override final; void sendRaw(const std::string &args) const; -- cgit v1.2.3-70-g09d2