/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel Project *
+ * Copyright (C) 2005-09 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-#ifndef _USERINPUTHANDLER_H_
-#define _USERINPUTHANDLER_H_
+#ifndef USERINPUTHANDLER_H
+#define USERINPUTHANDLER_H
#include "basichandler.h"
Q_OBJECT
public:
- UserInputHandler(NetworkConnection *parent = 0);
+ UserInputHandler(CoreNetwork *parent = 0);
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 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 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);
+
+protected:
+ void timerEvent(QTimerEvent *event);
+
private:
- void expand(const QString &alias, const BufferInfo &bufferInfo, const QString &msg);
+ 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<QByteArray> ¶ms);
+
+ struct Command {
+ BufferInfo bufferInfo;
+ QString command;
+ Command(const BufferInfo &info, const QString &command) : bufferInfo(info), command(command) {}
+ Command() {}
+ };
+
+ QHash<int, Command> _delayedCommands;
};