aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Fabio Bas2010-07-06 14:28:05 +0000
committerGravatar Fabio Bas2010-07-06 14:28:05 +0000
commit8c7d626e45d4986a44195b01e9abeceec7b261c1 (patch)
tree46456436a697ab16aa6850e1f5d6d323eb954dd5 /src
parentfix for a regression introduced in r4069 (diff)
downloadKVIrc-8c7d626e45d4986a44195b01e9abeceec7b261c1.tar.gz
KVIrc-8c7d626e45d4986a44195b01e9abeceec7b261c1.tar.bz2
KVIrc-8c7d626e45d4986a44195b01e9abeceec7b261c1.zip
Added proper options to enalbe/disable each type of link tooltip
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4615 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
-rw-r--r--src/kvirc/kernel/kvi_options.cpp9
-rw-r--r--src/kvirc/kernel/kvi_options.h12
-rw-r--r--src/kvirc/ui/kvi_ircview_events.cpp16
-rw-r--r--src/modules/options/optw_ircview.cpp11
4 files changed, 42 insertions, 6 deletions
diff --git a/src/kvirc/kernel/kvi_options.cpp b/src/kvirc/kernel/kvi_options.cpp
index 5e402dc07..8b980ac56 100644
--- a/src/kvirc/kernel/kvi_options.cpp
+++ b/src/kvirc/kernel/kvi_options.cpp
@@ -327,7 +327,14 @@ KviBoolOption g_boolOptionsTable[KVI_NUM_BOOL_OPTIONS]=
BOOL_OPTION("PrependNickColorInfoToRealname",true,KviOption_sectFlagConnection),
BOOL_OPTION("DontShowNotifierIfActiveWindowIsFullScreen",false,KviOption_sectFlagFrame),
BOOL_OPTION("WheelScrollsWindowsList",true,KviOption_sectFlagWindowList),
- BOOL_OPTION("AcceptMismatchedPortDccResumeRequests",false,KviOption_sectFlagDcc)
+ BOOL_OPTION("AcceptMismatchedPortDccResumeRequests",false,KviOption_sectFlagDcc),
+ BOOL_OPTION("EnableUrlLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableHostLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableServerLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableModeLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableNickLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableChannelLinkToolTip",true,KviOption_sectFlagGui),
+ BOOL_OPTION("EnableEscapeLinkToolTip",true,KviOption_sectFlagGui)
};
#define STRING_OPTION(_txt,_val,_flags) KviStringOption(KVI_STRING_OPTIONS_PREFIX _txt,_val,_flags)
diff --git a/src/kvirc/kernel/kvi_options.h b/src/kvirc/kernel/kvi_options.h
index 2f6cb55b9..046f6d5f4 100644
--- a/src/kvirc/kernel/kvi_options.h
+++ b/src/kvirc/kernel/kvi_options.h
@@ -335,10 +335,16 @@ DECLARE_OPTION_STRUCT(KviStringListOption,QStringList)
#define KviOption_boolPrependNickColorInfoToRealname 241
#define KviOption_boolDontShowNotifierIfActiveWindowIsFullScreen 242 /* notifier */
#define KviOption_boolWheelScrollsWindowsList 243
-#define KviOption_boolAcceptMismatchedPortDccResumeRequests 244 /* dcc::send */
+#define KviOption_boolAcceptMismatchedPortDccResumeRequests 244 /* dcc::send */
+#define KviOption_boolEnableUrlLinkToolTip 245 /* ircview output */
+#define KviOption_boolEnableHostLinkToolTip 246 /* ircview output */
+#define KviOption_boolEnableServerLinkToolTip 247 /* ircview output */
+#define KviOption_boolEnableModeLinkToolTip 248 /* ircview output */
+#define KviOption_boolEnableNickLinkToolTip 249 /* ircview output */
+#define KviOption_boolEnableChannelLinkToolTip 250 /* ircview output */
+#define KviOption_boolEnableEscapeLinkToolTip 251 /* ircview output */
-
-#define KVI_NUM_BOOL_OPTIONS 245
+#define KVI_NUM_BOOL_OPTIONS 252
#define KVI_STRING_OPTIONS_PREFIX "string"
diff --git a/src/kvirc/ui/kvi_ircview_events.cpp b/src/kvirc/ui/kvi_ircview_events.cpp
index 438b751b2..fdce5eabc 100644
--- a/src/kvirc/ui/kvi_ircview_events.cpp
+++ b/src/kvirc/ui/kvi_ircview_events.cpp
@@ -98,7 +98,7 @@
These links are used internally in KVIrc , but you can use them too.[br]
The <escape_command> is a single letter this time: it defines the type of the link.[br]
Currently KVIrc uses six types of builtin links : 'n' for nickname links, 'u' for url links,
- 'c' for channel links, 'h' for hostname links, 'm' for mask links and 's' for server links.[br]
+ 'c' for channel links, 'h' for hostname links, 'm' for mode links and 's' for server links.[br]
Theoretically you can also use your own link types: just use any other letter or digit (you can't use ']' and <cr>),
but probably you will prefer a completely user defined link in that case anyway.[br]
Once the user interacts with the link , kvirc executes the predefined events:[br]
@@ -859,6 +859,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
{
case 'u': // url link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableUrlLinkToolTip))
+ return;
tip = "<table width=\"100%\">" \
"<tr><td valign=\"center\"><img src=\"" + g_pIconManager->getSmallIconResourceName(KVI_SMALLICON_URL) + "\"> <u><font color=\"blue\"><nowrap>";
if(linkText.length() > 50)
@@ -880,6 +882,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
case 'h': // host link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableHostLinkToolTip))
+ return;
tip = "<table width=\"100%\">" \
"<tr><td valign=\"center\"><img src=\"" + g_pIconManager->getSmallIconResourceName(KVI_SMALLICON_SERVER) + "\"> <u><font color=\"blue\"><nowrap>";
if(linkText.length() > 50)
@@ -903,6 +907,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
case 's': // server link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableServerLinkToolTip))
+ return;
// FIXME: #warning "Spit out some server info...hub ?...registered ?"
tip = "<table width=\"100%\">" \
@@ -929,6 +935,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
case 'm': // mode link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableModeLinkToolTip))
+ return;
if((linkCmd.length() > 2) && (m_pKviWindow->type() == KVI_WINDOW_TYPE_CHANNEL))
{
if(((KviChannel *)m_pKviWindow)->isMeOp())
@@ -967,6 +975,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
case 'n': // nick link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableNickLinkToolTip))
+ return;
if(console())
{
if(console()->connection())
@@ -984,6 +994,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
case 'c': // channel link
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableChannelLinkToolTip))
+ return;
if(console() && console()->connection())
{
QString szChan = linkText;
@@ -1018,6 +1030,8 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
break;
default:
{
+ if(!KVI_OPTION_BOOL(KviOption_boolEnableEscapeLinkToolTip))
+ return;
QString dbl,rbt,txt,mbt;
getLinkEscapeCommand(dbl,linkCmd,"[!dbl]");
getLinkEscapeCommand(rbt,linkCmd,"[!rbt]");
diff --git a/src/modules/options/optw_ircview.cpp b/src/modules/options/optw_ircview.cpp
index 646704d90..76b426f7d 100644
--- a/src/modules/options/optw_ircview.cpp
+++ b/src/modules/options/optw_ircview.cpp
@@ -159,7 +159,16 @@ KviIrcViewFeaturesOptionsWidget::KviIrcViewFeaturesOptionsWidget(QWidget * paren
s->setSuffix(__tr2qs_ctx(" msec","options"));
addBoolSelector(0,12,0,12,__tr2qs_ctx("Enable animated smiles","options"),KviOption_boolEnableAnimatedSmiles);
- addRowSpacer(0,13,0,13);
+ KviTalGroupBox * pGroup = addGroupBox(0,13,0,13,Qt::Horizontal,__tr2qs_ctx("Enable tooltips for:","options"));
+ addBoolSelector(pGroup,__tr2qs_ctx("Url links","options"),KviOption_boolEnableUrlLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Host links","options"),KviOption_boolEnableHostLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Server links","options"),KviOption_boolEnableServerLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Mode links","options"),KviOption_boolEnableModeLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Nick links","options"),KviOption_boolEnableNickLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Channel links","options"),KviOption_boolEnableChannelLinkToolTip);
+ addBoolSelector(pGroup,__tr2qs_ctx("Escape sequences","options"),KviOption_boolEnableEscapeLinkToolTip);
+
+ addRowSpacer(0,14,0,14);
}
KviIrcViewFeaturesOptionsWidget::~KviIrcViewFeaturesOptionsWidget()