Diffstat (limited to 'noncore/net/opieirc/ircmessage.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/opieirc/ircmessage.cpp | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/noncore/net/opieirc/ircmessage.cpp b/noncore/net/opieirc/ircmessage.cpp index d19e9e6..1b7072e 100644 --- a/noncore/net/opieirc/ircmessage.cpp +++ b/noncore/net/opieirc/ircmessage.cpp @@ -54,2 +54,9 @@ IRCMessage::IRCMessage(QString line) { m_ctcp = TRUE; + if (m_command == "PRIVMSG") { + m_ctcpRequest = TRUE; + } + else { + m_ctcpRequest = FALSE; + } + /* Strip CTCP \001 characters */ @@ -57,4 +64,3 @@ IRCMessage::IRCMessage(QString line) { QTextIStream ctcpStream(&m_allParameters); - if (m_command == "PRIVMSG") - ctcpStream >> m_ctcpDestination; + ctcpStream >> m_ctcpDestination; ctcpStream >> temp; @@ -63,7 +69,7 @@ IRCMessage::IRCMessage(QString line) { int length = m_allParameters.length() - m_ctcpCommand.length() - 1; - if (m_command == "PRIVMSG") - length -= m_ctcpDestination.length() + 1; + length -= m_ctcpDestination.length() + 1; if (length <= 0) { m_allParameters = ""; - } else { + } + else { m_allParameters = m_allParameters.right(length); @@ -71,3 +77,4 @@ IRCMessage::IRCMessage(QString line) { } - } else { + } + else { m_ctcp = FALSE; @@ -146,2 +153,10 @@ bool IRCMessage::isCTCP() { +bool IRCMessage::isCTCPRequest() { + return m_ctcpRequest; +} + +bool IRCMessage::isCTCPReply() { + return !m_ctcpRequest; +} + QString IRCMessage::trailing() { |