X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcoreuserinputhandler.h;h=1d84d4b4cc7701c7c441e1b7af06131af9705c47;hp=f98fb74033edd855871caa3327369accb2a34c44;hb=bbae4eb84510883ad37aeca7c5c24d87af6dbbf1;hpb=0f667b4d2fb9a34b8ebbfe1d07b47407ce54468a diff --git a/src/core/coreuserinputhandler.h b/src/core/coreuserinputhandler.h index f98fb740..1d84d4b4 100644 --- a/src/core/coreuserinputhandler.h +++ b/src/core/coreuserinputhandler.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-10 by the Quassel Project * + * Copyright (C) 2005-2012 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -15,77 +15,92 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ #ifndef COREUSERINPUTHANDLER_H #define COREUSERINPUTHANDLER_H #include "corebasichandler.h" +#include "corenetwork.h" +class Cipher; class Server; -class CoreUserInputHandler : public CoreBasicHandler { - Q_OBJECT +class CoreUserInputHandler : public CoreBasicHandler +{ + Q_OBJECT public: - CoreUserInputHandler(CoreNetwork *parent = 0); + CoreUserInputHandler(CoreNetwork *parent = 0); + inline CoreNetwork *coreNetwork() const { return qobject_cast(parent()); } - void handleUserInput(const BufferInfo &bufferInfo, const QString &text); + void handleUserInput(const BufferInfo &bufferInfo, const QString &text); public slots: - void handleAway(const BufferInfo &bufferInfo, const QString &text); - void handleBan(const BufferInfo &bufferInfo, const QString &text); - void handleUnban(const BufferInfo &bufferInfo, const QString &text); - void handleCtcp(const BufferInfo &bufferInfo, const QString &text); - void handleDeop(const BufferInfo &bufferInfo, const QString &text); - void handleDevoice(const BufferInfo &bufferInfo, const QString &text); - void handleInvite(const BufferInfo &bufferInfo, const QString &text); - void handleJoin(const BufferInfo &bufferInfo, const QString &text); - void handleKick(const BufferInfo &bufferInfo, const QString &text); - void handleKill(const BufferInfo &bufferInfo, const QString &text); - void handleList(const BufferInfo &bufferInfo, const QString &text); - void handleMe(const BufferInfo &bufferInfo, const QString &text); - void handleMode(const BufferInfo &bufferInfo, const QString &text); - void handleMsg(const BufferInfo &bufferInfo, const QString &text); - void handleNick(const BufferInfo &bufferInfo, const QString &text); - void handleNotice(const BufferInfo &bufferInfo, const QString &text); - void handleOper(const BufferInfo &bufferInfo, const QString &text); - void handleOp(const BufferInfo &bufferInfo, const QString &text); - void handlePart(const BufferInfo &bufferInfo, const QString &text); - void handlePing(const BufferInfo &bufferInfo, const QString &text); - void handleQuery(const BufferInfo &bufferInfo, const QString &text); - void handleQuit(const BufferInfo &bufferInfo, const QString &text); - void handleQuote(const BufferInfo &bufferInfo, const QString &text); - void handleSay(const BufferInfo &bufferInfo, const QString &text); - void handleTopic(const BufferInfo &bufferInfo, const QString &text); - void handleVoice(const BufferInfo &bufferInfo, const QString &text); - void handleWait(const BufferInfo &bufferInfo, const QString &text); - void handleWho(const BufferInfo &bufferInfo, const QString &text); - void handleWhois(const BufferInfo &bufferInfo, const QString &text); - void handleWhowas(const BufferInfo &bufferInfo, const QString &text); - - void defaultHandler(QString cmd, const BufferInfo &bufferInfo, const QString &text); - - void issueQuit(const QString &reason); - void issueAway(const QString &msg, bool autoCheck = true); + void handleAway(const BufferInfo &bufferInfo, const QString &text); + void handleBan(const BufferInfo &bufferInfo, const QString &text); + void handleUnban(const BufferInfo &bufferInfo, const QString &text); + void handleCtcp(const BufferInfo &bufferInfo, const QString &text); + void handleDelkey(const BufferInfo &bufferInfo, const QString &text); + void handleDeop(const BufferInfo& bufferInfo, const QString &nicks); + void handleDehalfop(const BufferInfo& bufferInfo, const QString &nicks); + void handleDevoice(const BufferInfo& bufferInfo, const QString &nicks); + void handleInvite(const BufferInfo &bufferInfo, const QString &text); + void handleJoin(const BufferInfo &bufferInfo, const QString &text); + void handleKick(const BufferInfo &bufferInfo, const QString &text); + void handleKill(const BufferInfo &bufferInfo, const QString &text); + void handleList(const BufferInfo &bufferInfo, const QString &text); + void handleMe(const BufferInfo &bufferInfo, const QString &text); + void handleMode(const BufferInfo &bufferInfo, const QString &text); + void handleMsg(const BufferInfo &bufferInfo, const QString &text); + void handleNick(const BufferInfo &bufferInfo, const QString &text); + void handleNotice(const BufferInfo &bufferInfo, const QString &text); + void handleOper(const BufferInfo &bufferInfo, const QString &text); + void handleOp(const BufferInfo& bufferInfo, const QString &nicks); + void handleHalfop(const BufferInfo& bufferInfo, const QString &nicks); + void handlePart(const BufferInfo &bufferInfo, const QString &text); + void handlePing(const BufferInfo &bufferInfo, const QString &text); + void handleQuery(const BufferInfo &bufferInfo, const QString &text); + void handleQuit(const BufferInfo &bufferInfo, const QString &text); + void handleQuote(const BufferInfo &bufferInfo, const QString &text); + void handleSay(const BufferInfo &bufferInfo, const QString &text); + void handleSetkey(const BufferInfo &bufferInfo, const QString &text); + void handleShowkey(const BufferInfo &bufferInfo, const QString &text); + void handleTopic(const BufferInfo &bufferInfo, const QString &text); + void handleVoice(const BufferInfo &bufferInfo, const QString &text); + void handleWait(const BufferInfo &bufferInfo, const QString &text); + void handleWho(const BufferInfo &bufferInfo, const QString &text); + void handleWhois(const BufferInfo &bufferInfo, const QString &text); + void handleWhowas(const BufferInfo &bufferInfo, const QString &text); + + void defaultHandler(QString cmd, const BufferInfo &bufferInfo, const QString &text); + + void issueQuit(const QString &reason); + void issueAway(const QString &msg, bool autoCheck = true); protected: - void timerEvent(QTimerEvent *event); + void timerEvent(QTimerEvent *event); private: - void banOrUnban(const BufferInfo &bufferInfo, const QString &text, bool ban); - void putPrivmsg(const QByteArray &target, const QByteArray &message); - int lastParamOverrun(const QString &cmd, const QList ¶ms); - - struct Command { - BufferInfo bufferInfo; - QString command; - Command(const BufferInfo &info, const QString &command) : bufferInfo(info), command(command) {} - Command() {} - }; - - QHash _delayedCommands; + void doMode(const BufferInfo& bufferInfo, const QChar& addOrRemove, const QChar& mode, const QString &nickList); + void banOrUnban(const BufferInfo &bufferInfo, const QString &text, bool ban); + void putPrivmsg(const QByteArray &target, const QByteArray &message, Cipher *cipher = 0); + int lastParamOverrun(const QString &cmd, const QList ¶ms); + +#ifdef HAVE_QCA2 + QByteArray encrypt(const QString &target, const QByteArray &message, bool *didEncrypt = 0) const; +#endif + + struct Command { + BufferInfo bufferInfo; + QString command; + Command(const BufferInfo &info, const QString &command) : bufferInfo(info), command(command) {} + Command() {} + }; + + QHash _delayedCommands; }; + #endif