diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/kvilib/config/kvi_sourcesdate.h | 4 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp | 34 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_ircconnectionserverinfo.h | 24 |
3 files changed, 60 insertions, 2 deletions
diff --git a/src/kvilib/config/kvi_sourcesdate.h b/src/kvilib/config/kvi_sourcesdate.h index 30edc8ee7..7c967ddf3 100644 --- a/src/kvilib/config/kvi_sourcesdate.h +++ b/src/kvilib/config/kvi_sourcesdate.h @@ -36,8 +36,8 @@ * \def KVI_SOURCES_DATE Defines the sources date * \def KVI_SOURCES_DATE_NUMERIC Defines the sources date */ -#define KVI_SOURCES_DATE "20100810" -#define KVI_SOURCES_DATE_NUMERIC 0x20100810 +#define KVI_SOURCES_DATE "20100818" +#define KVI_SOURCES_DATE_NUMERIC 0x20100818 /** * \brief This is the date of the sources before that we should force a setup diff --git a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp index c6abe2c44..b4aa94fe5 100644 --- a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp +++ b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp @@ -236,6 +236,10 @@ void KviIrcConnectionServerInfo::setServerVersion(const QString & version) m_pServInfo = new KviIrcdRatboxIrcServerInfo(this, version); else if(version.contains("inspircd",Qt::CaseInsensitive)) m_pServInfo = new KviInspIRCdIrcServerInfo(this, version); + else if(version.contains("snircd",Qt::CaseInsensitive)) + m_pServInfo = new KviSnircdIrcServerInfo(this, version); + else if(version.contains("u2",Qt::CaseInsensitive)) + m_pServInfo = new KviIrcuIrcServerInfo(this, version); else m_pServInfo = new KviBasicIrcServerInfo(this, version); } @@ -427,3 +431,33 @@ const QString & KviIrcdRatboxIrcServerInfo::getChannelModeDescription(char mode) } return KviBasicIrcServerInfo::getChannelModeDescription(mode); } + +const QString & KviSnircdIrcServerInfo::getChannelModeDescription(char mode) +{ + switch(mode) + { + case 'C': return __tr2qs("Forbid channel CTCPs"); break; + case 'D': return __tr2qs("Delay users join to first message"); break; + case 'M': return __tr2qs("Moderate non auth users"); break; + case 'N': return __tr2qs("Block NOTICE"); break; + case 'R': return __tr2qs("Registered"); break; + case 'T': return __tr2qs("No multitarget messages"); break; + case 'd': return __tr2qs("Contains hidden users (previously +D)"); break; + case 'c': return __tr2qs("Color free (no ANSI colors)"); break; + case 'r': return __tr2qs("Only registered nicks can join"); break; + case 'u': return __tr2qs("Hide QUIT and PART messages"); break; + } + return KviBasicIrcServerInfo::getChannelModeDescription(mode); +} + +const QString & KviIrcuIrcServerInfo::getChannelModeDescription(char mode) +{ + switch(mode) + { + case 'D': return __tr2qs("Delay users join to first message"); break; + case 'R': return __tr2qs("Registered"); break; + case 'd': return __tr2qs("Contains hidden users (previously +D)"); break; + case 'r': return __tr2qs("Only registered nicks can join"); break; + } + return KviBasicIrcServerInfo::getChannelModeDescription(mode); +} diff --git a/src/kvirc/kernel/kvi_ircconnectionserverinfo.h b/src/kvirc/kernel/kvi_ircconnectionserverinfo.h index 3b752dcac..c6de9b7cc 100644 --- a/src/kvirc/kernel/kvi_ircconnectionserverinfo.h +++ b/src/kvirc/kernel/kvi_ircconnectionserverinfo.h @@ -119,6 +119,30 @@ public: virtual const QString & getChannelModeDescription(char mode); }; +class KVIRC_API KviSnircdIrcServerInfo : public KviBasicIrcServerInfo +{ + //quakenet; note: snird is an extension to ircu +public: + KviSnircdIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty) + :KviBasicIrcServerInfo(pParent, version) {;}; + virtual char getRegisterModeChar() { return 'R'; }; + virtual const char * getSoftware() { return "Snircd"; }; + virtual bool getNeedsOpToListModeseI() { return false; }; //modes eI doesn't exists + virtual const QString & getChannelModeDescription(char mode); +}; + +class KVIRC_API KviIrcuIrcServerInfo : public KviBasicIrcServerInfo +{ + //undernet +public: + KviIrcuIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty) + :KviBasicIrcServerInfo(pParent, version) {;}; + virtual char getRegisterModeChar() { return 'R'; }; + virtual const char * getSoftware() { return "Ircu"; }; + virtual bool getNeedsOpToListModeseI() { return true; }; + virtual const QString & getChannelModeDescription(char mode); +}; + class KVIRC_API KviIrcConnectionServerInfo { friend class KviConsole; // for now |
