aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Fabio Bas2010-08-18 16:19:13 +0000
committerGravatar Fabio Bas2010-08-18 16:19:13 +0000
commit73ff2a871f7ed0285e69c3250edb0adebfea5ba3 (patch)
treeac1362cf856ddd5045083b0fc0226800a19aaf03 /src
parentHungarian translation update (diff)
downloadKVIrc-73ff2a871f7ed0285e69c3250edb0adebfea5ba3.tar.gz
KVIrc-73ff2a871f7ed0285e69c3250edb0adebfea5ba3.tar.bz2
KVIrc-73ff2a871f7ed0285e69c3250edb0adebfea5ba3.zip
Implemented channel mode descriptions for most common irc networks/daemons (wip.. missing quakenet, please request support for your favourite ones)
moved around some header inclusions to reduce unneded recompilation git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4897 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
-rw-r--r--src/kvirc/kernel/kvi_ircconnection.cpp17
-rw-r--r--src/kvirc/kernel/kvi_ircconnection.h23
-rw-r--r--src/kvirc/kernel/kvi_ircconnectionrequestqueue.cpp1
-rw-r--r--src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp209
-rw-r--r--src/kvirc/kernel/kvi_ircconnectionserverinfo.h51
-rw-r--r--src/kvirc/ui/kvi_frame.h2
-rw-r--r--src/kvirc/ui/kvi_input_editor.cpp1
-rw-r--r--src/kvirc/ui/kvi_irctoolbar.cpp1
-rw-r--r--src/kvirc/ui/kvi_themedcombobox.cpp1
-rw-r--r--src/kvirc/ui/kvi_themedlabel.cpp1
-rw-r--r--src/kvirc/ui/kvi_themedlineedit.cpp1
-rw-r--r--src/kvirc/ui/kvi_userlistview.cpp2
-rw-r--r--src/kvirc/ui/kvi_windowlist_tree.cpp1
-rw-r--r--src/modules/filetransferwindow/filetransferwindow.cpp1
-rw-r--r--src/modules/iograph/libkviiograph.cpp1
-rw-r--r--src/modules/url/libkviurl.cpp1
-rw-r--r--src/modules/window/libkviwindow.cpp1
17 files changed, 215 insertions, 100 deletions
diff --git a/src/kvirc/kernel/kvi_ircconnection.cpp b/src/kvirc/kernel/kvi_ircconnection.cpp
index 0ae5a420c..5b61ed753 100644
--- a/src/kvirc/kernel/kvi_ircconnection.cpp
+++ b/src/kvirc/kernel/kvi_ircconnection.cpp
@@ -34,6 +34,8 @@
#include "kvi_ircconnectionasyncwhoisdata.h"
#include "kvi_ircconnectionrequestqueue.h"
#include "kvi_ircconnectionstatistics.h"
+#include "kvi_ircconnectionuserinfo.h"
+#include "kvi_ircconnectionserverinfo.h"
#include "kvi_irclink.h"
#include "kvi_ircsocket.h"
#include "kvi_locale.h"
@@ -1698,3 +1700,18 @@ void KviIrcConnection::heartbeat(kvi_time_t tNow)
}
}
}
+
+const QString & KviIrcConnection::currentServerName()
+{
+ return serverInfo()->name();
+}
+
+const QString & KviIrcConnection::currentNickName()
+{
+ return userInfo()->nickName();
+}
+
+const QString & KviIrcConnection::currentUserName()
+{
+ return userInfo()->userName();
+} \ No newline at end of file
diff --git a/src/kvirc/kernel/kvi_ircconnection.h b/src/kvirc/kernel/kvi_ircconnection.h
index a022cb573..1f1782472 100644
--- a/src/kvirc/kernel/kvi_ircconnection.h
+++ b/src/kvirc/kernel/kvi_ircconnection.h
@@ -34,8 +34,6 @@
#include "kvi_qstring.h"
#include "kvi_pointerlist.h"
#include "kvi_time.h"
-#include "kvi_ircconnectionuserinfo.h"
-#include "kvi_ircconnectionserverinfo.h"
#include <QObject>
#include <QByteArray>
@@ -364,19 +362,19 @@ public:
* \brief Helper that provides a shortcut for really common access to userInfo()->nickName()
* \return const QString &
*/
- inline const QString & currentNickName();
+ const QString & currentNickName();
/**
* \brief Helper that provides a shortcut for really common access to userInfo()->userName()
* \return const QString &
*/
- inline const QString & currentUserName();
+ const QString & currentUserName();
/**
* \brief Helper that provides a shortcut for really common access to serverInfo()->name()
* \return const QString &
*/
- inline const QString & currentServerName();
+ const QString & currentServerName();
//
// Channel management
@@ -945,19 +943,4 @@ signals:
// TODO: KviIdentity
-inline const QString & KviIrcConnection::currentServerName()
-{
- return serverInfo()->name();
-}
-
-inline const QString & KviIrcConnection::currentNickName()
-{
- return userInfo()->nickName();
-}
-
-inline const QString & KviIrcConnection::currentUserName()
-{
- return userInfo()->userName();
-}
-
#endif //_KVI_IRCCONNECTION_H_
diff --git a/src/kvirc/kernel/kvi_ircconnectionrequestqueue.cpp b/src/kvirc/kernel/kvi_ircconnectionrequestqueue.cpp
index 3fc88ea95..c390d65fb 100644
--- a/src/kvirc/kernel/kvi_ircconnectionrequestqueue.cpp
+++ b/src/kvirc/kernel/kvi_ircconnectionrequestqueue.cpp
@@ -28,6 +28,7 @@
#include "kvi_options.h"
#include "kvi_lagmeter.h"
#include "kvi_ircconnectionstatedata.h"
+#include "kvi_ircconnectionserverinfo.h"
#include <QByteArray>
diff --git a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp
index 30ca5f4f7..c6abe2c44 100644
--- a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp
+++ b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp
@@ -47,7 +47,7 @@ KviIrcConnectionServerInfo::KviIrcConnectionServerInfo()
m_szParameterWhenSetModes = "l";
m_szPlainModes = "pstnmi";
m_szSupportedChannelModes = "pstnmiklb";
- m_pServInfo = new KviBasicIrcServerInfo();
+ m_pServInfo = new KviBasicIrcServerInfo(this);
}
KviIrcConnectionServerInfo::~KviIrcConnectionServerInfo()
@@ -225,86 +225,61 @@ void KviIrcConnectionServerInfo::setServerVersion(const QString & version)
{
if(m_pServInfo) delete m_pServInfo;
if(version.contains("unreal",Qt::CaseInsensitive))
- m_pServInfo = new KviUnrealIrcServerInfo(version);
+ m_pServInfo = new KviUnrealIrcServerInfo(this, version);
else if(version.contains("bahamut",Qt::CaseInsensitive))
- m_pServInfo = new KviBahamutIrcServerInfo(version);
+ m_pServInfo = new KviBahamutIrcServerInfo(this, version);
else if(version.contains("hyperion",Qt::CaseInsensitive))
- m_pServInfo = new KviHyperionIrcServerInfo(version);
+ m_pServInfo = new KviHyperionIrcServerInfo(this, version);
else if(version.contains("ircd-seven",Qt::CaseInsensitive))
- m_pServInfo = new KviIrcdSevenIrcServerInfo(version);
+ m_pServInfo = new KviIrcdSevenIrcServerInfo(this, version);
else if(version.contains("ratbox",Qt::CaseInsensitive))
- m_pServInfo = new KviIrcdRatboxIrcServerInfo(version);
+ m_pServInfo = new KviIrcdRatboxIrcServerInfo(this, version);
else if(version.contains("inspircd",Qt::CaseInsensitive))
- m_pServInfo = new KviInspIRCdIrcServerInfo(version);
+ m_pServInfo = new KviInspIRCdIrcServerInfo(this, version);
else
- m_pServInfo = new KviBasicIrcServerInfo(version);
+ m_pServInfo = new KviBasicIrcServerInfo(this, version);
}
-KviBasicIrcServerInfo::KviBasicIrcServerInfo(const QString & version)
+KviBasicIrcServerInfo::KviBasicIrcServerInfo(KviIrcConnectionServerInfo * pParent, const QString & version)
{
m_szServerVersion = version;
+ m_pParent = pParent;
}
KviBasicIrcServerInfo::~KviBasicIrcServerInfo()
{
}
-const QString & KviBasicIrcServerInfo::getChannelModeDescription(QChar mode)
+const QString & KviBasicIrcServerInfo::getChannelModeDescription(char mode)
{
- QString tmp=getCustomChannelModeDescription(mode);
- if(tmp.isNull()) return getBasicChannelModeDescription(mode);
- return KviQString::Empty;
-}
-
-const QString & KviBasicIrcServerInfo::getUserModeDescription(QChar mode)
-{
- QString tmp=getCustomUserModeDescription(mode);
- if(tmp.isNull()) return getBasicUserModeDescription(mode);
- return KviQString::Empty;
-}
-
-const QString & KviBasicIrcServerInfo::getBasicChannelModeDescription(QChar mode)
-{
- switch(mode.unicode())
+ switch(mode)
{
- case 'o': return __tr2qs("Channel operators"); break;
- case 'v': return __tr2qs("Voiced users"); break;
- case 'h': return __tr2qs("Half-operators");break;
+// case '7': return __tr2qs("Only 7-bit letters in nicknames allowed"); break;
+ case 'I': return __tr2qs("Invite exception masks"); break;
+ case 'R': return __tr2qs("Reop masks"); break;
+ case 'a': return __tr2qs("Anonymous messages"); break;
case 'b': return __tr2qs("Ban masks"); break;
- case 'c': return __tr2qs("Color free (no ANSI colors)"); break;
case 'e': return __tr2qs("Ban exception masks"); break;
- case 'I': return __tr2qs("Invite exception masks or forbid /INVITE"); break;
- case 's': return __tr2qs("Secret"); break;
- case 'p': return __tr2qs("Private"); break;
- case 't': return __tr2qs("Topic change restricted"); break;
case 'i': return __tr2qs("Invite only"); break;
- case 'n': return __tr2qs("No external messages"); break;
- case 'a': return __tr2qs("Anonymous or protected user"); break;
- case 'q': return __tr2qs("Quiet or channel owner"); break;
- case 'l': return __tr2qs("Limited number of users"); break;
case 'k': return __tr2qs("Key"); break;
+ case 'l': return __tr2qs("Limited number of users"); break;
case 'm': return __tr2qs("Moderated"); break;
- case 'r': return __tr2qs("Registered"); break;
- case 'G': return __tr2qs("Censor swear words"); break;
- case 'M': return __tr2qs("Impossible to speak and change nick if not authenticated with NickServ"); break;
- case 'N': return __tr2qs("Impossible to change nick if not authenticated with NickServ"); break;
- case 'R': return __tr2qs("Only registered nicks can join"); break;
- case 'Q': return __tr2qs("No kicks able (unless U-Line)"); break;
- case 'O': return __tr2qs("IRC-Op only channel"); break;
- case 'A': return __tr2qs("Server/Network/Tech Admin only channel"); break;
- case 'K': return __tr2qs("Forbid /KNOCK"); break;
- case 'S': return __tr2qs("Strip colors"); break;
- case 'L': return __tr2qs("Redirect on channel full"); break;
- case 'C': return __tr2qs("Forbid channel CTCPs"); break;
- case 'u': return __tr2qs("User-operators OR Auditorium: /NAMES and /WHO show only ops"); break;
- case '7': return __tr2qs("Only 7-bit letters in nicknames allowed"); break;
- case 'x': return __tr2qs("Impossible to use both 7-bit and 8-bit letters in nicknames"); break;
+ case 'n': return __tr2qs("No external messages"); break;
+ case 'o': return __tr2qs("Channel operators"); break;
+ case 'p': return __tr2qs("Private"); break;
+ case 'q': return __tr2qs("Quiet"); break;
+ case 'r': return __tr2qs("Reop"); break;
+ case 's': return __tr2qs("Secret"); break;
+ case 't': return __tr2qs("Topic change restricted"); break;
+// case 'u': return __tr2qs("User-operators"); break;
+ case 'v': return __tr2qs("Voiced users"); break;
+// case 'x': return __tr2qs("Impossible to use both 7-bit and 8-bit letters in nicknames"); break;
}
return KviQString::Empty;
}
-const QString & KviBasicIrcServerInfo::getBasicUserModeDescription(QChar mode)
+const QString & KviBasicIrcServerInfo::getUserModeDescription(QChar mode)
{
switch(mode.unicode())
{
@@ -324,3 +299,131 @@ const QString & KviBasicIrcServerInfo::getBasicUserModeDescription(QChar mode)
}
return KviQString::Empty;
}
+
+const QString & KviUnrealIrcServerInfo::getChannelModeDescription(char mode)
+{
+ switch(mode)
+ {
+ case 'A': return __tr2qs("Server/Network/Tech Admin only channel"); break;
+ case 'C': return __tr2qs("Forbid channel CTCPs"); break;
+ case 'G': return __tr2qs("Censor bad words"); break;
+ case 'K': return __tr2qs("Forbid /KNOCK"); break;
+ case 'L': return __tr2qs("Redirect on channel full (mode +l)"); break;
+ case 'M': return __tr2qs("Need auth to speak and change nick"); break;
+ case 'N': return __tr2qs("Forbid nick change"); break;
+ case 'O': return __tr2qs("IRC-Op only channel"); break;
+ case 'Q': return __tr2qs("Disallow KICK (unless U-Line)"); break;
+ case 'a': return __tr2qs("Channel administrator"); break;
+ case 'c': return __tr2qs("Color free (no ANSI colors)"); break;
+ case 'f': return __tr2qs("Flood protection (<num><type>:<secs>)"); break;
+ case 'h': return __tr2qs("Half-operators");break;
+ case 'j': return __tr2qs("Join throttling (<num>:<secs>)"); break;
+ case 'q': return __tr2qs("Channel owner"); break;
+ case 'u': return __tr2qs("Auditorium: /NAMES and /WHO show only ops"); break;
+ case 'z': return __tr2qs("Need SSL connection to join"); break;
+ }
+ return KviBasicIrcServerInfo::getChannelModeDescription(mode);
+}
+
+
+const QString & KviIrcdSevenIrcServerInfo::getChannelModeDescription(char mode)
+{
+ switch(mode)
+ {
+ case 'C': return __tr2qs("Forbid channel CTCPs"); break;
+ case 'F': return __tr2qs("Enable forwarding"); break;
+ case 'L': return __tr2qs("Large ban/exempt/invex lists (staff only)"); break;
+ case 'M': return __tr2qs("Disallow kicking opers (staff only)"); break;
+ case 'P': return __tr2qs("Permanent channel (staff only)"); break;
+ case 'Q': return __tr2qs("Block forwarded users"); break;
+ case 'R': return __tr2qs("Only registered nicks can join"); break;
+ case 'S': return __tr2qs("Strip colors"); break;
+ case 'T': return __tr2qs("Block NOTICE"); break;
+ case 'c': return __tr2qs("Color free (no ANSI colors)"); break;
+ case 'f': return __tr2qs("Forward to another channel on uninvited"); break;
+ case 'g': return __tr2qs("Allow anybody to invite");break;
+ case 'j': return __tr2qs("Join throttling (<num>:<secs>)"); break;
+ case 'p': return __tr2qs("Paranoid (disable KNOCK)"); break;
+ case 'r': return __tr2qs("Need auth to join channel"); break;
+ case 'z': return __tr2qs("Reduced moderation for ops"); break;
+ }
+ return KviBasicIrcServerInfo::getChannelModeDescription(mode);
+}
+
+const QString & KviBahamutIrcServerInfo::getChannelModeDescription(char mode)
+{
+ switch(mode)
+ {
+ case 'L': return __tr2qs("Channel visible in LIST"); break;
+ case 'M': return __tr2qs("Need auth to speak and change nick"); break;
+ case 'O': return __tr2qs("IRC-Op only channel"); break;
+ case 'R': return __tr2qs("Only registered nicks can join"); break;
+ case 'c': return __tr2qs("Color free (no ANSI colors, bold, etc..)"); break;
+ case 'j':
+ if(m_pParent)
+ {
+ if(m_pParent->supportedPlainModes().contains('j'))
+ {
+ // Azzurra (bahamut 1.4) similar to 'R'
+ return __tr2qs("Only registered nicks can join");
+ }
+ }
+
+ // Dalnet (bahamut 1.8)
+ return __tr2qs("Join throttling (<num>:<secs>)");
+ break;
+ // azzurra (bahamuth 1.4) specific addition:
+ case 'S': return __tr2qs("Need SSL connection to join"); break;
+ case 'U': return __tr2qs("Permit foreign users without auth to JOIN"); break;
+ case 'd': return __tr2qs("Need op/voice to change nick"); break;
+ case 'h': return __tr2qs("Half-operators");break;
+ case 'r': return __tr2qs("Registered"); break;
+ case 'u': return __tr2qs("Hide QUIT and PART messages"); break;
+ }
+ return KviBasicIrcServerInfo::getChannelModeDescription(mode);
+}
+
+const QString & KviInspIRCdIrcServerInfo::getChannelModeDescription(char mode)
+{
+ switch(mode)
+ {
+ case 'A': return __tr2qs("Allow anybody to invite");break;
+ case 'B': return __tr2qs("Block messages with too many CAPS");break;
+ case 'C': return __tr2qs("Forbid channel CTCPs"); break;
+ case 'D': return __tr2qs("Delay users join to first message"); break;
+ case 'F': return __tr2qs("Limit nick changes (<num>:<secs>)"); break;
+ case 'G': return __tr2qs("Censor bad words"); break;
+ case 'J': return __tr2qs("Disable join after kick (<secs>)"); break;
+ case 'K': return __tr2qs("Forbid /KNOCK"); break;
+ case 'L': return __tr2qs("Redirect on channel full (mode +l)"); break;
+ case 'M': return __tr2qs("Need auth to speak and change nick"); break;
+ case 'N': return __tr2qs("Need auth to change nick"); break;
+ case 'O': return __tr2qs("IRC-Op only channel"); break;
+ case 'P': return __tr2qs("Permanent channel (staff only)"); break;
+ case 'Q': return __tr2qs("Disallow KICK (unless U-Line)"); break;
+ case 'R': return __tr2qs("Only registered nicks can join"); break;
+ case 'S': return __tr2qs("Strip colors"); break;
+ case 'T': return __tr2qs("Block NOTICE"); break;
+ case 'a': return __tr2qs("Protected nick"); break;
+ case 'c': return __tr2qs("Color free (no ANSI colors)"); break;
+ case 'f': return __tr2qs("Kick/[*]ban on message flood ([*]<num>:<secs>)"); break;
+ case 'g': return __tr2qs("Block message matching"); break;
+ case 'j': return __tr2qs("Join throttling (<num>:<secs>)"); break;
+ case 'q': return __tr2qs("Channel owner"); break;
+ case 'u': return __tr2qs("Auditorium: /NAMES and /WHO show only ops"); break;
+ case 'y': return __tr2qs("Channel IRC op"); break;
+ case 'z': return __tr2qs("Need SSL connection to join"); break;
+ }
+ return KviBasicIrcServerInfo::getChannelModeDescription(mode);
+}
+
+const QString & KviIrcdRatboxIrcServerInfo::getChannelModeDescription(char mode)
+{
+ switch(mode)
+ {
+ // not present of efnet, but supported by ratbox
+ case 'r': return __tr2qs("Only registered nicks can join"); break;
+ case 'S': return __tr2qs("Need SSL connection to join"); break;
+ }
+ return KviBasicIrcServerInfo::getChannelModeDescription(mode);
+}
diff --git a/src/kvirc/kernel/kvi_ircconnectionserverinfo.h b/src/kvirc/kernel/kvi_ircconnectionserverinfo.h
index 3731bf058..3b752dcac 100644
--- a/src/kvirc/kernel/kvi_ircconnectionserverinfo.h
+++ b/src/kvirc/kernel/kvi_ircconnectionserverinfo.h
@@ -30,23 +30,20 @@
#include <QStringList>
+class KviIrcConnectionServerInfo;
+
class KVIRC_API KviBasicIrcServerInfo
{
//ircnet
protected:
QString m_szServerVersion;
+ KviIrcConnectionServerInfo * m_pParent;
public:
- KviBasicIrcServerInfo(const QString & version = KviQString::Empty);
+ KviBasicIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty);
virtual ~KviBasicIrcServerInfo();
-protected:
- virtual const QString & getCustomChannelModeDescription(QChar) { return KviQString::Empty; };
- virtual const QString & getCustomUserModeDescription(QChar) { return KviQString::Empty; };
-private:
- const QString & getBasicChannelModeDescription(QChar mode);
- const QString & getBasicUserModeDescription(QChar mode);
public:
- const QString & getChannelModeDescription(QChar mode);
- const QString & getUserModeDescription(QChar mode);
+ virtual const QString & getChannelModeDescription(char mode);
+ virtual const QString & getUserModeDescription(QChar mode);
virtual char getRegisterModeChar() { return 0; };
virtual const char * getSoftware() { return "Ircd"; };
virtual bool getNeedsOpToListModeseI() { return false; };
@@ -54,32 +51,33 @@ public:
class KVIRC_API KviUnrealIrcServerInfo : public KviBasicIrcServerInfo
{
- //azzurranet
public:
- KviUnrealIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviUnrealIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 'r'; };
virtual const char * getSoftware() { return "Unreal"; };
virtual bool getNeedsOpToListModeseI() { return false; };
+ virtual const QString & getChannelModeDescription(char mode);
};
class KVIRC_API KviBahamutIrcServerInfo : public KviBasicIrcServerInfo
{
- //dalnet
+ //dalnet, azzurranet
public:
- KviBahamutIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviBahamutIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 'r'; };
virtual const char * getSoftware() { return "Bahamut"; };
virtual bool getNeedsOpToListModeseI() { return false; };
+ virtual const QString & getChannelModeDescription(char mode);
};
class KVIRC_API KviHyperionIrcServerInfo : public KviBasicIrcServerInfo
{
- // legacy freenode
+ // legacy freenode : no longer mantained
public:
- KviHyperionIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviHyperionIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 'e'; };
virtual const char * getSoftware() { return "Hyperion"; };
virtual bool getNeedsOpToListModeseI() { return true; };
@@ -89,33 +87,36 @@ class KVIRC_API KviIrcdSevenIrcServerInfo : public KviBasicIrcServerInfo
{
//freenode
public:
- KviIrcdSevenIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviIrcdSevenIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 0; };
virtual const char * getSoftware() { return "Ircd-seven"; };
virtual bool getNeedsOpToListModeseI() { return true; };
+ virtual const QString & getChannelModeDescription(char mode);
};
class KVIRC_API KviIrcdRatboxIrcServerInfo : public KviBasicIrcServerInfo
{
//efnet
public:
- KviIrcdRatboxIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviIrcdRatboxIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 0; };
virtual const char * getSoftware() { return "Ircd-ratbox"; };
virtual bool getNeedsOpToListModeseI() { return true; };
+ virtual const QString & getChannelModeDescription(char mode);
};
class KVIRC_API KviInspIRCdIrcServerInfo : public KviBasicIrcServerInfo
{
//chatspike
public:
- KviInspIRCdIrcServerInfo(const QString & version = KviQString::Empty)
- :KviBasicIrcServerInfo(version) {;};
+ KviInspIRCdIrcServerInfo(KviIrcConnectionServerInfo * pParent = 0, const QString & version = KviQString::Empty)
+ :KviBasicIrcServerInfo(pParent, version) {;};
virtual char getRegisterModeChar() { return 'r'; };
virtual const char * getSoftware() { return "InspIRCd"; };
virtual bool getNeedsOpToListModeseI() { return true; };
+ virtual const QString & getChannelModeDescription(char mode);
};
class KVIRC_API KviIrcConnectionServerInfo
@@ -176,7 +177,7 @@ public:
void setServerVersion(const QString & version);
- const QString & getChannelModeDescription(QChar mode) { return m_pServInfo->getChannelModeDescription(mode); };
+ const QString & getChannelModeDescription(char mode) { return m_pServInfo->getChannelModeDescription(mode); };
const QString & getUserModeDescription(QChar mode) { return m_pServInfo->getUserModeDescription(mode); };
bool isSupportedModePrefix(QChar c);
diff --git a/src/kvirc/ui/kvi_frame.h b/src/kvirc/ui/kvi_frame.h
index 539468b29..2ee747956 100644
--- a/src/kvirc/ui/kvi_frame.h
+++ b/src/kvirc/ui/kvi_frame.h
@@ -36,10 +36,10 @@
#include "kvi_tal_mainwindow.h"
#include "kvi_qstring.h"
#include "kvi_pointerlist.h"
-#include "kvi_mdimanager.h"
class KviMenuBar;
class KviMdiChild;
+class KviMdiManager;
class KviWindow;
class KviConsole;
class KviWindowListBase;
diff --git a/src/kvirc/ui/kvi_input_editor.cpp b/src/kvirc/ui/kvi_input_editor.cpp
index 0ae2d138b..0a8adf577 100644
--- a/src/kvirc/ui/kvi_input_editor.cpp
+++ b/src/kvirc/ui/kvi_input_editor.cpp
@@ -36,6 +36,7 @@
#include "kvi_kvs_script.h"
#include "kvi_kvs_kernel.h"
#include "kvi_locale.h"
+#include "kvi_mdimanager.h"
#include "kvi_mirccntrl.h"
#include "kvi_options.h"
#include "kvi_out.h"
diff --git a/src/kvirc/ui/kvi_irctoolbar.cpp b/src/kvirc/ui/kvi_irctoolbar.cpp
index b7fa5ffdd..9b54eb0ff 100644
--- a/src/kvirc/ui/kvi_irctoolbar.cpp
+++ b/src/kvirc/ui/kvi_irctoolbar.cpp
@@ -41,6 +41,7 @@
#include "kvi_irccontext.h"
#include "kvi_lagmeter.h"
#include "kvi_tal_popupmenu.h"
+#include "kvi_mdimanager.h"
#include <QStyle>
#include <QPainter>
diff --git a/src/kvirc/ui/kvi_themedcombobox.cpp b/src/kvirc/ui/kvi_themedcombobox.cpp
index fe4fd4822..daab488af 100644
--- a/src/kvirc/ui/kvi_themedcombobox.cpp
+++ b/src/kvirc/ui/kvi_themedcombobox.cpp
@@ -29,6 +29,7 @@
#include "kvi_frame.h"
#include "kvi_window.h"
#include "kvi_out.h"
+#include "kvi_mdimanager.h"
#include <QPainter>
#include <QLineEdit>
diff --git a/src/kvirc/ui/kvi_themedlabel.cpp b/src/kvirc/ui/kvi_themedlabel.cpp
index bd8254198..999a08454 100644
--- a/src/kvirc/ui/kvi_themedlabel.cpp
+++ b/src/kvirc/ui/kvi_themedlabel.cpp
@@ -29,6 +29,7 @@
#include "kvi_frame.h"
#include "kvi_window.h"
#include "kvi_out.h"
+#include "kvi_mdimanager.h"
#include <QPainter>
diff --git a/src/kvirc/ui/kvi_themedlineedit.cpp b/src/kvirc/ui/kvi_themedlineedit.cpp
index 4252d315f..ed7d1bba3 100644
--- a/src/kvirc/ui/kvi_themedlineedit.cpp
+++ b/src/kvirc/ui/kvi_themedlineedit.cpp
@@ -29,6 +29,7 @@
#include "kvi_frame.h"
#include "kvi_window.h"
#include "kvi_out.h"
+#include "kvi_mdimanager.h"
#include <QPainter>
#include <QStyleOptionFrameV2>
diff --git a/src/kvirc/ui/kvi_userlistview.cpp b/src/kvirc/ui/kvi_userlistview.cpp
index 9bbb9321a..c26fa1197 100644
--- a/src/kvirc/ui/kvi_userlistview.cpp
+++ b/src/kvirc/ui/kvi_userlistview.cpp
@@ -55,7 +55,7 @@
#include <QDateTime>
#include <QEvent>
#include <QPaintEvent>
-#include <QMdiSubWindow>
+#include <QScrollBar>
#ifdef COMPILE_PSEUDO_TRANSPARENCY
extern QPixmap * g_pShadedChildGlobalDesktopBackground;
diff --git a/src/kvirc/ui/kvi_windowlist_tree.cpp b/src/kvirc/ui/kvi_windowlist_tree.cpp
index 70476c4e6..80b1f4a90 100644
--- a/src/kvirc/ui/kvi_windowlist_tree.cpp
+++ b/src/kvirc/ui/kvi_windowlist_tree.cpp
@@ -38,6 +38,7 @@
#include <QWheelEvent>
#include <QPainter>
#include <QTimer>
+#include <QScrollBar>
#ifdef COMPILE_PSEUDO_TRANSPARENCY
extern QPixmap * g_pShadedChildGlobalDesktopBackground;
diff --git a/src/modules/filetransferwindow/filetransferwindow.cpp b/src/modules/filetransferwindow/filetransferwindow.cpp
index 38cf8d6d8..6fb1ee2de 100644
--- a/src/modules/filetransferwindow/filetransferwindow.cpp
+++ b/src/modules/filetransferwindow/filetransferwindow.cpp
@@ -37,6 +37,7 @@
#include "kvi_qstring.h"
#include "kvi_tal_hbox.h"
#include "kvi_frame.h"
+#include "kvi_mdimanager.h"
#include <QToolTip>
#include <QPainter>
diff --git a/src/modules/iograph/libkviiograph.cpp b/src/modules/iograph/libkviiograph.cpp
index 13dd6d0c6..9cc647a41 100644
--- a/src/modules/iograph/libkviiograph.cpp
+++ b/src/modules/iograph/libkviiograph.cpp
@@ -28,6 +28,7 @@
#include "kvi_frame.h"
#include "kvi_iconmanager.h"
#include "kvi_locale.h"
+#include "kvi_mdimanager.h"
#include "kvi_module.h"
#include "kvi_options.h"
#include "kvi_socket.h"
diff --git a/src/modules/url/libkviurl.cpp b/src/modules/url/libkviurl.cpp
index d567b4fdd..d71ed4ba6 100644
--- a/src/modules/url/libkviurl.cpp
+++ b/src/modules/url/libkviurl.cpp
@@ -28,6 +28,7 @@
#include "kvi_app.h"
#include "kvi_frame.h"
#include "kvi_menubar.h"
+#include "kvi_mdimanager.h"
#include "kvi_internalcmd.h"
#include "kvi_iconmanager.h"
#include "kvi_action.h"
diff --git a/src/modules/window/libkviwindow.cpp b/src/modules/window/libkviwindow.cpp
index 753a9ca01..d823c55b8 100644
--- a/src/modules/window/libkviwindow.cpp
+++ b/src/modules/window/libkviwindow.cpp
@@ -38,6 +38,7 @@
#include "kvi_modulemanager.h"
#include "kvi_memmove.h"
#include "kvi_malloc.h"
+#include "kvi_mdichild.h"
#include "kvi_channel.h"
#include "kvi_pointerhashtable.h"