Makes more sense that way. A few commands (kick, part, quit, nick) need to be handled
in the session *after* they generated a MessageEvent.
initScriptEngine();
eventManager()->registerObject(ircParser(), EventManager::NormalPriority);
- eventManager()->registerObject(eventStringifier(), EventManager::HighPriority, "earlyProcess"); // some need to be sent before statechange
eventManager()->registerObject(eventProcessor(), EventManager::HighPriority); // needs to process events *before* the stringifier!
eventManager()->registerObject(eventStringifier(), EventManager::NormalPriority);
eventManager()->registerObject(this, EventManager::LowPriority); // for sending MessageEvents to the client
- eventManager()->registerObject(eventProcessor(), EventManager::LowPriority, "lateProcess"); // some events need to be handled after msg generation
+ // some events need to be handled after msg generation
+ eventManager()->registerObject(eventProcessor(), EventManager::LowPriority, "lateProcess");
// periodically save our session state
connect(&(Core::instance()->syncTimer()), SIGNAL(timeout()), this, SLOT(saveSessionState()));
}
}
-void CoreSessionEventProcessor::processIrcEventKick(IrcEvent *e) {
+void CoreSessionEventProcessor::lateProcessIrcEventKick(IrcEvent *e) {
if(checkParamCount(e, 2)) {
e->network()->updateNickFromMask(e->prefix());
IrcUser *victim = e->network()->ircUser(e->params().at(1));
}
}
-void CoreSessionEventProcessor::processIrcEventNick(IrcEvent *e) {
+void CoreSessionEventProcessor::lateProcessIrcEventNick(IrcEvent *e) {
if(checkParamCount(e, 1)) {
IrcUser *ircuser = e->network()->updateNickFromMask(e->prefix());
if(!ircuser) {
}
}
-void CoreSessionEventProcessor::processIrcEventPart(IrcEvent *e) {
+void CoreSessionEventProcessor::lateProcessIrcEventPart(IrcEvent *e) {
if(checkParamCount(e, 1)) {
IrcUser *ircuser = e->network()->updateNickFromMask(e->prefix());
if(!ircuser) {
Q_INVOKABLE void processIrcEventCap(IrcEvent *event); // CAP framework
Q_INVOKABLE void processIrcEventInvite(IrcEvent *event);
Q_INVOKABLE void processIrcEventJoin(IrcEvent *event);
- Q_INVOKABLE void processIrcEventKick(IrcEvent *event);
+ Q_INVOKABLE void lateProcessIrcEventKick(IrcEvent *event);
Q_INVOKABLE void processIrcEventMode(IrcEvent *event);
- Q_INVOKABLE void processIrcEventNick(IrcEvent *event);
- Q_INVOKABLE void processIrcEventPart(IrcEvent *event);
+ Q_INVOKABLE void lateProcessIrcEventNick(IrcEvent *event);
+ Q_INVOKABLE void lateProcessIrcEventPart(IrcEvent *event);
Q_INVOKABLE void processIrcEventPing(IrcEvent *event);
Q_INVOKABLE void processIrcEventPong(IrcEvent *event);
Q_INVOKABLE void processIrcEventQuit(IrcEvent *event);
displayMsg(e, Message::Join, e->params()[0], e->prefix(), e->params()[0]);
}
-void EventStringifier::earlyProcessIrcEventKick(IrcEvent *e) {
+void EventStringifier::processIrcEventKick(IrcEvent *e) {
+ if(!checkParamCount(e, 2))
+ return;
+
IrcUser *victim = e->network()->ircUser(e->params().at(1));
if(victim) {
QString channel = e->params().at(0);
}
// this needs to be called before the ircuser is renamed!
-void EventStringifier::earlyProcessIrcEventNick(IrcEvent *e) {
+void EventStringifier::processIrcEventNick(IrcEvent *e) {
if(!checkParamCount(e, 1))
return;
displayMsg(e, Message::Nick, newnick, sender, channel);
}
-void EventStringifier::earlyProcessIrcEventPart(IrcEvent *e) {
+void EventStringifier::processIrcEventPart(IrcEvent *e) {
if(!checkParamCount(e, 1))
return;
Q_INVOKABLE void processIrcEventInvite(IrcEvent *event);
Q_INVOKABLE void processIrcEventJoin(IrcEvent *event);
- Q_INVOKABLE void earlyProcessIrcEventKick(IrcEvent *event);
+ Q_INVOKABLE void processIrcEventKick(IrcEvent *event);
Q_INVOKABLE void processIrcEventMode(IrcEvent *event);
- Q_INVOKABLE void earlyProcessIrcEventNick(IrcEvent *event);
- Q_INVOKABLE void earlyProcessIrcEventPart(IrcEvent *event);
+ Q_INVOKABLE void processIrcEventNick(IrcEvent *event);
+ Q_INVOKABLE void processIrcEventPart(IrcEvent *event);
Q_INVOKABLE void processIrcEventPong(IrcEvent *event);
Q_INVOKABLE void processIrcEventQuit(IrcEvent *event);
Q_INVOKABLE void processIrcEventTopic(IrcEvent *event);