summaryrefslogtreecommitdiffstats
path: root/src/IrcIngameChat.hpp
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2017-05-30 20:27:57 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2017-05-30 20:27:57 +0200
commit8bd7d77ba07d84b7829201befe30c07b12c5568a (patch)
tree5c0def8fc1e2a05d22891ec18c5e7ab173fb3401 /src/IrcIngameChat.hpp
parentc20ac02beb8520953d90d0d9114371fe36187ed0 (diff)
downloadmanager-8bd7d77ba07d84b7829201befe30c07b12c5568a.tar.gz
manager-8bd7d77ba07d84b7829201befe30c07b12c5568a.zip
Move IngameChat functionality into its own ClonkOutputInterface
Diffstat (limited to 'src/IrcIngameChat.hpp')
-rw-r--r--src/IrcIngameChat.hpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/IrcIngameChat.hpp b/src/IrcIngameChat.hpp
new file mode 100644
index 0000000..2ced7e3
--- /dev/null
+++ b/src/IrcIngameChat.hpp
@@ -0,0 +1,18 @@
+#pragma once
+#include "ClonkInterface.hpp"
+
+class CRSM;
+
+class IrcIngameChat : public ClonkOutputInterface {
+ const QString& channel;
+ CRSM& crsm;
+
+public:
+ IrcIngameChat(const QString& channel, CRSM& crsm);
+ bool clientConnected(const ClientInfo & client) override;
+ bool clientMessage(ClientInfo & client, const QString & message, ClonkOutputInterface::MessageType type, const QTime & time) override;
+ bool clientRemoved(const ClientInfo & client, const QString & reason) override;
+
+private:
+ void sendChannelMessage(const QString& message, bool action);
+};