aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Szymon Tomasz Stefanek2010-12-31 00:58:23 +0000
committerGravatar Szymon Tomasz Stefanek2010-12-31 00:58:23 +0000
commit02ead74048493130dbb03c0c84dc573bb92d8344 (patch)
tree193903f3ef3e7a5592b8d802b69ccd51e60740c1 /src
parentFix resurrecting dead queries. (diff)
downloadKVIrc-02ead74048493130dbb03c0c84dc573bb92d8344.tar.gz
KVIrc-02ead74048493130dbb03c0c84dc573bb92d8344.tar.bz2
KVIrc-02ead74048493130dbb03c0c84dc573bb92d8344.zip
Small tweaks
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5277 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
-rw-r--r--src/kvirc/sparser/KviIrcMessage.cpp2
-rw-r--r--src/kvirc/sparser/KviIrcMessage.h89
2 files changed, 54 insertions, 37 deletions
diff --git a/src/kvirc/sparser/KviIrcMessage.cpp b/src/kvirc/sparser/KviIrcMessage.cpp
index 329e0367f..75532a632 100644
--- a/src/kvirc/sparser/KviIrcMessage.cpp
+++ b/src/kvirc/sparser/KviIrcMessage.cpp
@@ -22,8 +22,6 @@
//
//=============================================================================
-
-
#include "KviIrcMessage.h"
#include "KviIrcConnection.h"
#include "KviConsoleWindow.h"
diff --git a/src/kvirc/sparser/KviIrcMessage.h b/src/kvirc/sparser/KviIrcMessage.h
index e0b443842..e9641c060 100644
--- a/src/kvirc/sparser/KviIrcMessage.h
+++ b/src/kvirc/sparser/KviIrcMessage.h
@@ -34,8 +34,6 @@ class KviIrcConnection;
class KviIrcContext;
class KviConneciton;
-#define KVI_IRCMSG_FLAG_HALTOUTPUT 1
-#define KVI_IRCMSG_FLAG_UNRECOGNIZED 2
//
// This is a single IRC message received from the server.
@@ -49,55 +47,76 @@ class KviConneciton;
class KVIRC_API KviIrcMessage
{
public:
+
KviIrcMessage(const char * message,KviIrcConnection * pConnection);
+
~KviIrcMessage();
+
+public:
+
+ ///
+ /// The message flags.
+ ///
+ enum Flags
+ {
+ ///
+ /// Some message processing step (most likely a script handler)
+ /// requested to stop further message related output.
+ ///
+ HaltOutput = 1,
+ ///
+ /// The message is marked as unrecognized.
+ ///
+ Unrecognized = 2
+ };
+
private:
- const char * m_ptr; // shallow! never null
- KviCString m_szPrefix; // the extracted prefix string
- KviCString m_szCommand; // the extracted command (may be numeric)
- KviPointerList<KviCString> * m_pParams; // the list of parameters
- KviConsoleWindow * m_pConsole; // the console we're attacched to
- KviIrcConnection * m_pConnection; // the connection we're attacched to
- int m_iNumericCommand; // the numeric of the command (0 if non numeric)
- int m_iFlags; // yes.. flags :D
+ const char * m_ptr; // shallow! never null
+ KviCString m_szPrefix; // the extracted prefix string
+ KviCString m_szCommand; // the extracted command (may be numeric)
+ KviPointerList<KviCString> * m_pParams; // the list of parameters
+ KviConsoleWindow * m_pConsole; // the console we're attacched to
+ KviIrcConnection * m_pConnection; // the connection we're attacched to
+ int m_iNumericCommand; // the numeric of the command (0 if non numeric)
+ int m_iFlags; // yes.. flags :D
public:
- KviConsoleWindow * console(){ return m_pConsole; };
+ KviConsoleWindow * console(){ return m_pConsole; };
KviIrcConnection * connection(){ return m_pConsole->connection(); };
- bool isNumeric(){ return (m_iNumericCommand >= 0); };
- const char * command(){ return m_szCommand.ptr(); };
- KviCString * commandPtr(){ return &m_szCommand; };
- int numeric(){ return m_iNumericCommand; };
+ bool isNumeric(){ return (m_iNumericCommand >= 0); };
+ const char * command(){ return m_szCommand.ptr(); };
+ KviCString * commandPtr(){ return &m_szCommand; };
+ int numeric(){ return m_iNumericCommand; };
- KviCString * prefixPtr(){ return &m_szPrefix; };
- const char * prefix(){ return m_szPrefix.ptr(); };
- const char * safePrefix();
- bool hasPrefix(){ return m_szPrefix.hasData(); };
+ KviCString * prefixPtr(){ return &m_szPrefix; };
+ const char * prefix(){ return m_szPrefix.ptr(); };
+ const char * safePrefix();
+ bool hasPrefix(){ return m_szPrefix.hasData(); };
- bool isEmpty(){ return (m_szPrefix.isEmpty() && m_szCommand.isEmpty() && m_pParams->isEmpty()); };
+ bool isEmpty(){ return (m_szPrefix.isEmpty() && m_szCommand.isEmpty() && m_pParams->isEmpty()); };
- int paramCount(){ return m_pParams->count(); };
+ int paramCount(){ return m_pParams->count(); };
- const char * param(unsigned int idx){ return (idx < m_pParams->count()) ? m_pParams->at(idx)->ptr() : 0; };
+ const char * param(unsigned int idx){ return (idx < m_pParams->count()) ? m_pParams->at(idx)->ptr() : 0; };
- const char * safeParam(unsigned int idx){ return (idx < m_pParams->count()) ? m_pParams->at(idx)->ptr() : KviCString::emptyString().ptr(); };
+ const char * safeParam(unsigned int idx){ return (idx < m_pParams->count()) ? m_pParams->at(idx)->ptr() : KviCString::emptyString().ptr(); };
- KviCString * paramString(unsigned int idx){ return m_pParams->at(idx); };
+ KviCString * paramString(unsigned int idx){ return m_pParams->at(idx); };
- const char * trailing(){ KviCString * tr = m_pParams->last(); return tr ? tr->ptr() : 0; };
- KviCString * trailingString(){ return m_pParams->last(); };
- KviCString & safeTrailingString(){ KviCString * tr = m_pParams->last(); return tr ? *tr : KviCString::emptyString(); };
- const char * safeTrailing(){ KviCString * tr = m_pParams->last(); return tr ? tr->ptr() : KviCString::emptyString().ptr(); };
+ const char * trailing(){ KviCString * tr = m_pParams->last(); return tr ? tr->ptr() : 0; };
+ KviCString * trailingString(){ return m_pParams->last(); };
+ KviCString & safeTrailingString(){ KviCString * tr = m_pParams->last(); return tr ? *tr : KviCString::emptyString(); };
+ const char * safeTrailing(){ KviCString * tr = m_pParams->last(); return tr ? tr->ptr() : KviCString::emptyString().ptr(); };
- const char * allParams(){ return m_ptr; };
+ const char * allParams(){ return m_ptr; };
- KviCString * firstParam(){ return m_pParams->first(); };
- KviCString * nextParam(){ return m_pParams->next(); };
+ KviCString * firstParam(){ return m_pParams->first(); };
+ KviCString * nextParam(){ return m_pParams->next(); };
- void setHaltOutput(){ m_iFlags |= KVI_IRCMSG_FLAG_HALTOUTPUT; };
- bool haltOutput(){ return (m_iFlags & KVI_IRCMSG_FLAG_HALTOUTPUT); };
- void setUnrecognized(){ m_iFlags |= KVI_IRCMSG_FLAG_UNRECOGNIZED; };
- bool unrecognized(){ return (m_iFlags & KVI_IRCMSG_FLAG_UNRECOGNIZED); };
+ void setHaltOutput(){ m_iFlags |= HaltOutput; };
+ bool haltOutput(){ return (m_iFlags & HaltOutput); };
+ void setUnrecognized(){ m_iFlags |= Unrecognized; };
+ bool unrecognized(){ return (m_iFlags & Unrecognized); };
void decodeAndSplitPrefix(QString &szNick,QString &szUser,QString &szHost);
void decodeAndSplitMask(char * mask,QString &szNick,QString &szUser,QString &szHost);