X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fcoreuserinputhandler.h;h=821d185bcef6828b48995a8adaf7e40d1924199e;hb=a113f73e5f8ce89c3df5c42d55528404fc7a2294;hp=7172fb615398b4fcfa68f35f8f6978c8a1bb7c2a;hpb=76db8cdfbeffaaba359c8e80cf2146da9e9e7f8a;p=quassel.git diff --git a/src/core/coreuserinputhandler.h b/src/core/coreuserinputhandler.h index 7172fb61..821d185b 100644 --- a/src/core/coreuserinputhandler.h +++ b/src/core/coreuserinputhandler.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2016 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -36,6 +36,7 @@ public: inline CoreNetwork *coreNetwork() const { return qobject_cast(parent()); } void handleUserInput(const BufferInfo &bufferInfo, const QString &text); + int lastParamOverrun(const QString &cmd, const QList ¶ms); public slots: void handleAway(const BufferInfo &bufferInfo, const QString &text); @@ -62,6 +63,7 @@ public slots: 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 handlePrint(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); @@ -77,7 +79,13 @@ public slots: void defaultHandler(QString cmd, const BufferInfo &bufferInfo, const QString &text); - void issueQuit(const QString &reason); + /** + * Send a QUIT to the IRC server, optionally skipping the command queue. + * + * @param reason Reason for quitting, often displayed to other IRC clients + * @param forceImmediate Immediately quit, skipping queue of other commands + */ + void issueQuit(const QString &reason, bool forceImmediate = false); void issueAway(const QString &msg, bool autoCheck = true); protected: @@ -86,8 +94,7 @@ protected: private: 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); + void putPrivmsg(const QString &target, const QString &message, std::function encodeFunc, Cipher *cipher = 0); #ifdef HAVE_QCA2 QByteArray encrypt(const QString &target, const QByteArray &message, bool *didEncrypt = 0) const;