Make IrcParser functional
authorManuel Nickschas <sputnick@quassel-irc.org>
Thu, 23 Sep 2010 09:04:27 +0000 (11:04 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 13 Oct 2010 23:06:31 +0000 (01:06 +0200)
commitd42c74ba50a4f86b1da9a70e12a287ff16afcf71
tree11559ba4b9e3f3d228272baf5a5d3f67e28c42af
parent6097f67231950c4c22845735db8b997a844fec48
Make IrcParser functional

IrcParser now parses incoming raw data from the ircd and generates the appropriate
IrcEvents from the input. Most of this can be automated via QMeta* stuff, though several
irc commands need special casing for decoding the input (default is just to use serverDecode(),
as this is almost always the right thing to do).

All IrcEvents thus have their parameters as properly decoded QStrings, so we don't need to care
about this anywhere else.

NOTICE and PRIVMSG get some more special handling; multiple targets are broken up into
sending one event for each, messages are decrypted if appropriate, and channel welcome messages
are properly redirected.
src/core/ircparser.cpp
src/core/ircparser.h