aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/kvirc/kernel/kvi_options.cpp19
-rw-r--r--src/kvirc/kernel/kvi_options.h4
-rw-r--r--src/kvirc/ui/kvi_ircview.cpp33
-rw-r--r--src/kvirc/ui/kvi_ircview.h2
-rw-r--r--src/modules/options/instances.cpp47
-rw-r--r--src/modules/options/instances.h2
-rwxr-xr-xsrc/modules/options/mkcreateinstanceproc.sh6
-rw-r--r--src/modules/options/optw_ircview.cpp85
-rw-r--r--src/modules/options/optw_ircview.h20
9 files changed, 186 insertions, 32 deletions
diff --git a/src/kvirc/kernel/kvi_options.cpp b/src/kvirc/kernel/kvi_options.cpp
index 41f40836f..a7a994ffc 100644
--- a/src/kvirc/kernel/kvi_options.cpp
+++ b/src/kvirc/kernel/kvi_options.cpp
@@ -617,14 +617,16 @@ KviUIntOption g_uintOptionsTable[KVI_NUM_UINT_OPTIONS]=
UINT_OPTION("ToolBarAppletPixmapAlign",0,KviOption_sectFlagFrame | KviOption_groupTheme),
UINT_OPTION("TreeTaskBarPixmapAlign",0,KviOption_sectFlagFrame | KviOption_groupTheme),
UINT_OPTION("InputPixmapAlign",0,KviOption_sectFlagFrame | KviOption_groupTheme),
- UINT_OPTION("AutoFlushLogs",30,KviOption_sectFlagFrame ),
- UINT_OPTION("MinTrayLowLevelMessage",1,KviOption_sectFlagFrame ),
- UINT_OPTION("MinTrayHighLevelMessage",4,KviOption_sectFlagFrame ),
- UINT_OPTION("IdentdOutputMode",KviIdentdOutputMode::Quiet,KviOption_sectFlagConnection ),
- UINT_OPTION("ScaleAvatarsOnLoadHeight",600,KviOption_sectFlagAvatar ),
- UINT_OPTION("ScaleAvatarsOnLoadWidth",800,KviOption_sectFlagAvatar ),
- UINT_OPTION("NotifierActiveTransparency",90,KviOption_sectFlagFrame ),
- UINT_OPTION("NotifierInactiveTransparency",40,KviOption_sectFlagFrame )
+ UINT_OPTION("AutoFlushLogs",30,KviOption_sectFlagFrame),
+ UINT_OPTION("MinTrayLowLevelMessage",1,KviOption_sectFlagFrame),
+ UINT_OPTION("MinTrayHighLevelMessage",4,KviOption_sectFlagFrame),
+ UINT_OPTION("IdentdOutputMode",KviIdentdOutputMode::Quiet,KviOption_sectFlagConnection),
+ UINT_OPTION("ScaleAvatarsOnLoadHeight",600,KviOption_sectFlagAvatar),
+ UINT_OPTION("ScaleAvatarsOnLoadWidth",800,KviOption_sectFlagAvatar),
+ UINT_OPTION("NotifierActiveTransparency",90,KviOption_sectFlagFrame),
+ UINT_OPTION("NotifierInactiveTransparency",40,KviOption_sectFlagFrame),
+ UINT_OPTION("IrcViewMarkerStyle",0,KviOption_sectFlagIrcView | KviOption_groupTheme),
+ UINT_OPTION("IrcViewMarkerSize",1,KviOption_sectFlagIrcView | KviOption_groupTheme)
};
#define FONT_OPTION(_name,_face,_size,_flags) \
@@ -832,7 +834,6 @@ static const char * options_section_table[KVI_NUM_OPTION_SECT_FLAGS] =
"Recent", "Geometry"
};
-
static void config_set_section(int flag,KviConfig * cfg)
{
int index = flag & KviOption_sectMask;
diff --git a/src/kvirc/kernel/kvi_options.h b/src/kvirc/kernel/kvi_options.h
index 0a76bb996..590665a6f 100644
--- a/src/kvirc/kernel/kvi_options.h
+++ b/src/kvirc/kernel/kvi_options.h
@@ -563,8 +563,10 @@ DECLARE_OPTION_STRUCT(KviStringListOption,QStringList)
#define KviOption_uintScaleAvatarsOnLoadWidth 62
#define KviOption_uintNotifierActiveTransparency 63
#define KviOption_uintNotifierInactiveTransparency 64
+#define KviOption_uintIrcViewMarkerStyle 65
+#define KviOption_uintIrcViewMarkerSize 66
-#define KVI_NUM_UINT_OPTIONS 65
+#define KVI_NUM_UINT_OPTIONS 67
namespace KviIdentdOutputMode {
enum Mode {
diff --git a/src/kvirc/ui/kvi_ircview.cpp b/src/kvirc/ui/kvi_ircview.cpp
index 4fbab0ca7..de8b07141 100644
--- a/src/kvirc/ui/kvi_ircview.cpp
+++ b/src/kvirc/ui/kvi_ircview.cpp
@@ -3447,8 +3447,31 @@ no_selection_paint:
{
// need to mark it!
//pa.setRasterOp(NotROP);
- //pa.setPen(Qt::black);
- pa.setPen(QPen(KVI_OPTION_COLOR(KviOption_colorIrcViewMarkLine),1,Qt::DotLine));
+
+ QPen pen(KVI_OPTION_COLOR(KviOption_colorIrcViewMarkLine),KVI_OPTION_UINT(KviOption_uintIrcViewMarkerSize));
+
+ switch(KVI_OPTION_UINT(KviOption_uintIrcViewMarkerStyle))
+ {
+ case 1:
+ pen.setStyle(Qt::DashLine);
+ break;
+ case 2:
+ pen.setStyle(Qt::SolidLine);
+ break;
+ case 3:
+ pen.setStyle(Qt::DashDotLine);
+ break;
+ case 4:
+ pen.setStyle(Qt::DashDotDotLine);
+ break;
+ default:
+ pen.setStyle(Qt::DotLine);
+ }
+
+ pa.setPen(pen);
+
+ //pa.setPen(QPen(KVI_OPTION_COLOR(KviOption_colorIrcViewMarkLine),1,Qt::DotLine));
+
int x = widgetWidth - 8;
int y = KVI_IRCVIEW_VERTICAL_BORDER;
pa.drawLine(x,y,x,y);
@@ -5171,14 +5194,16 @@ void KviIrcView::doLinkToolTip(const QRect &rct,QString &linkCmd,QString &linkTe
m_pToolTip->doTip(rct,tip);
}
-void KviIrcView::leaveEvent ( QEvent * )
+
+void KviIrcView::leaveEvent(QEvent * )
{
if(m_pLastLinkUnderMouse)
- {
+ {
m_pLastLinkUnderMouse=0;
update();
}
}
+
void KviIrcView::timerEvent(QTimerEvent *e)
{
m_mouseCurrentPos = mapFromGlobal(QCursor::pos());
diff --git a/src/kvirc/ui/kvi_ircview.h b/src/kvirc/ui/kvi_ircview.h
index 7edb6b298..74d912f84 100644
--- a/src/kvirc/ui/kvi_ircview.h
+++ b/src/kvirc/ui/kvi_ircview.h
@@ -236,7 +236,7 @@ protected:
virtual void wheelEvent(QWheelEvent *e);
virtual void keyPressEvent(QKeyEvent *e);
void maybeTip(const QPoint &pnt);
- virtual void leaveEvent ( QEvent * );
+ virtual void leaveEvent(QEvent *);
protected slots:
virtual void scrollBarPositionChanged(int newValue);
void masterDead();
diff --git a/src/modules/options/instances.cpp b/src/modules/options/instances.cpp
index 119149290..9d37e7c03 100644
--- a/src/modules/options/instances.cpp
+++ b/src/modules/options/instances.cpp
@@ -297,6 +297,11 @@ KviOptionsWidget * classKviIrcViewFeaturesOptionsWidget_createInstanceProc(QWidg
return new KviIrcViewFeaturesOptionsWidget(parent);
}
+KviOptionsWidget * classKviIrcViewMarkerOptionsWidget_createInstanceProc(QWidget * parent)
+{
+ return new KviIrcViewMarkerOptionsWidget(parent);
+}
+
KviOptionsWidget * classKviLagOptionsWidget_createInstanceProc(QWidget * parent)
{
return new KviLagOptionsWidget(parent);
@@ -569,6 +574,8 @@ static const char * g_szName_KviIrcViewLookOptionsWidget = KVI_OPTIONS_WIDGET_NA
static const char * g_szClassName_KviIrcViewLookOptionsWidget = "KviIrcViewLookOptionsWidget";
static const char * g_szName_KviIrcViewFeaturesOptionsWidget = KVI_OPTIONS_WIDGET_NAME_KviIrcViewFeaturesOptionsWidget;
static const char * g_szClassName_KviIrcViewFeaturesOptionsWidget = "KviIrcViewFeaturesOptionsWidget";
+static const char * g_szName_KviIrcViewMarkerOptionsWidget = KVI_OPTIONS_WIDGET_NAME_KviIrcViewMarkerOptionsWidget;
+static const char * g_szClassName_KviIrcViewMarkerOptionsWidget = "KviIrcViewMarkerOptionsWidget";
static const char * g_szName_KviLagOptionsWidget = KVI_OPTIONS_WIDGET_NAME_KviLagOptionsWidget;
static const char * g_szClassName_KviLagOptionsWidget = "KviLagOptionsWidget";
static const char * g_szName_KviLoggingOptionsWidget = KVI_OPTIONS_WIDGET_NAME_KviLoggingOptionsWidget;
@@ -2826,6 +2833,40 @@ KviOptionsInstanceManager::KviOptionsInstanceManager()
e0->pChildList->append(e1);
e1->pChildList = 0;
+ e1 = new KviOptionsWidgetInstanceEntry;
+ e1->createProc = &classKviIrcViewMarkerOptionsWidget_createInstanceProc;
+ e1->pWidget = 0;
+ e1->szClassName = g_szClassName_KviIrcViewMarkerOptionsWidget;
+ e1->iIcon = KVI_OPTIONS_WIDGET_ICON_KviIrcViewMarkerOptionsWidget;
+ #ifdef KVI_OPTIONS_WIDGET_PRIORITY_KviIrcViewMarkerOptionsWidget
+ e1->iPriority = KVI_OPTIONS_WIDGET_PRIORITY_KviIrcViewMarkerOptionsWidget;
+ #else
+ e1->iPriority = 0;
+ #endif
+ #ifdef KVI_OPTIONS_WIDGET_KEYWORDS_KviIrcViewMarkerOptionsWidget
+ e1->szKeywordsNoLocale = KVI_OPTIONS_WIDGET_KEYWORDS_KviIrcViewMarkerOptionsWidget;
+ e1->szKeywords = __tr2qs_ctx_no_xgettext(e1->szKeywordsNoLocale.toUtf8().data(),"options");;
+ #endif
+ #ifdef KVI_OPTIONS_WIDGET_GROUP_KviIrcViewMarkerOptionsWidget
+ e1->szGroup = KVI_OPTIONS_WIDGET_GROUP_KviIrcViewMarkerOptionsWidget;
+ #else
+ e1->szGroup = "general";
+ #endif
+ #ifdef KVI_OPTIONS_WIDGET_CONTAINER_KviIrcViewMarkerOptionsWidget
+ e1->bIsContainer = KVI_OPTIONS_WIDGET_CONTAINER_KviIrcViewMarkerOptionsWidget;
+ #else
+ e1->bIsContainer = false;
+ #endif
+ #ifdef KVI_OPTIONS_WIDGET_NOTCONTAINED_KviIrcViewMarkerOptionsWidget
+ e1->bIsNotContained = KVI_OPTIONS_WIDGET_NOTCONTAINED_KviIrcViewMarkerOptionsWidget;
+ #else
+ e1->bIsNotContained = false;
+ #endif
+ e1->szNameNoLocale = g_szName_KviIrcViewMarkerOptionsWidget;
+ e1->szName = __tr2qs_ctx_no_xgettext(g_szName_KviIrcViewMarkerOptionsWidget,"options");
+ e0->pChildList->append(e1);
+ e1->pChildList = 0;
+
e0 = new KviOptionsWidgetInstanceEntry;
e0->createProc = &classKviMessageOptionsWidget_createInstanceProc;
e0->pWidget = 0;
@@ -3503,11 +3544,7 @@ KviOptionsWidget * KviOptionsInstanceManager::getInstance(KviOptionsWidgetInstan
if(e->pWidget->parent() != par)
{
QWidget * oldPar = (QWidget *)e->pWidget->parent();
- //e->pWidget->reparent(par,QPoint(0,0));
- e->pWidget->setParent(par);
- e->pWidget->setGeometry(0,0,e->pWidget->width(),e->pWidget->height());
- //
-
+ e->pWidget->reparent(par,QPoint(0,0));
delete oldPar;
}
if(e->bIsContainer)
diff --git a/src/modules/options/instances.h b/src/modules/options/instances.h
index 55aca0422..12f10a42c 100644
--- a/src/modules/options/instances.h
+++ b/src/modules/options/instances.h
@@ -54,7 +54,7 @@ typedef struct _KviOptionsWidgetInstanceEntry
bool bIsContainer;
bool bIsNotContained;
KviPointerList<KviOptionsWidgetInstanceEntry> * pChildList;
- bool bDoInsert; // a helper for KviOptionsDialog::fillTreeWidget()
+ bool bDoInsert; // a helper for KviOptionsDialog::fillListView()
} KviOptionsWidgetInstanceEntry;
diff --git a/src/modules/options/mkcreateinstanceproc.sh b/src/modules/options/mkcreateinstanceproc.sh
index ddab383c5..4a1c828c3 100755
--- a/src/modules/options/mkcreateinstanceproc.sh
+++ b/src/modules/options/mkcreateinstanceproc.sh
@@ -5,7 +5,7 @@
# Generator for instances.h and instances.cpp
#
# This file is part of the KVirc irc client distribution
-# Copyright (C) 2001-2006 Szymon Stefanek (pragma at kvirc dot net)
+# Copyright (C) 2001-2008 Szymon Stefanek (pragma at kvirc dot net)
#
#####################################################################################################
@@ -22,7 +22,7 @@ cat >> instances.h <<EOF
// File : instances.h
//
// This file is part of the KVirc irc client distribution
-// Copyright (C) 2001-2006 Szymon Stefanek (pragma at kvirc dot net)
+// Copyright (C) 2001-2008 Szymon Stefanek (pragma at kvirc dot net)
//
// This program is FREE software. You can redistribute it and/or
// modify it under the terms of the GNU General Public License
@@ -113,7 +113,7 @@ cat >> instances.cpp <<EOF
// File : instances.cpp
//
// This file is part of the KVirc irc client distribution
-// Copyright (C) 2001 Szymon Stefanek (stefanek@tin.it)
+// Copyright (C) 2001-2008 Szymon Stefanek (stefanek@tin.it)
//
// This program is FREE software. You can redistribute it and/or
// modify it under the terms of the GNU General Public License
diff --git a/src/modules/options/optw_ircview.cpp b/src/modules/options/optw_ircview.cpp
index 08e3f8861..79eda20ef 100644
--- a/src/modules/options/optw_ircview.cpp
+++ b/src/modules/options/optw_ircview.cpp
@@ -38,10 +38,12 @@ KviIrcViewThemeOptionsWidget::~KviIrcViewThemeOptionsWidget()
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
KviIrcViewLookOptionsWidget::KviIrcViewLookOptionsWidget(QWidget * parent)
-: KviOptionsWidget(parent,"ircviewlook_options_widget")
+: KviOptionsWidget(parent)
{
createLayout();
+ setObjectName("ircviewlook_options_widget");
+
addFontSelector(0,0,1,0,__tr2qs_ctx("Font:","options"),KviOption_fontIrcView);
addColorSelector(0,1,1,1,__tr2qs_ctx("Background color:","options"),KviOption_colorIrcViewBackground);
@@ -54,8 +56,6 @@ KviIrcViewLookOptionsWidget::KviIrcViewLookOptionsWidget(QWidget * parent)
addLabel(0,4,0,4,__tr2qs_ctx("Vertical align:","options"));
m_pVerticalAlign=new QComboBox(this);
addWidgetToLayout(m_pVerticalAlign,1,4,1,4);
-
- addColorSelector(0,5,1,5,__tr2qs_ctx("Mark Line:","options"),KviOption_colorIrcViewMarkLine);
m_pHorizontalAlign->addItem(__tr2qs_ctx("Tile","options"));
m_pHorizontalAlign->addItem(__tr2qs_ctx("Left","options"));
@@ -153,16 +153,89 @@ KviIrcViewFeaturesOptionsWidget::KviIrcViewFeaturesOptionsWidget(QWidget * paren
s->setSuffix(__tr2qs_ctx(" msec","options"));
s = addUIntSelector(0,11,0,11,__tr2qs_ctx("Link tooltip hide delay:","options"),KviOption_uintIrcViewToolTipHideTimeoutInMsec,256,10000,12000);
s->setSuffix(__tr2qs_ctx(" msec","options"));
- addBoolSelector(0,12,0,12,__tr2qs_ctx("Track last read text line","options"),KviOption_boolTrackLastReadTextViewLine);
- addRowSpacer(0,13,0,13);
-
+
+ addRowSpacer(0,12,0,12);
}
KviIrcViewFeaturesOptionsWidget::~KviIrcViewFeaturesOptionsWidget()
{
}
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+KviIrcViewMarkerOptionsWidget::KviIrcViewMarkerOptionsWidget(QWidget * parent)
+: KviOptionsWidget(parent)
+{
+ createLayout();
+
+ setObjectName("ircviewmarker_options_widget");
+
+ addBoolSelector(0,0,1,0,__tr2qs_ctx("Track last read text line","options"),KviOption_boolTrackLastReadTextViewLine);
+ addColorSelector(0,1,1,1,__tr2qs_ctx("Marker color:","options"),KviOption_colorIrcViewMarkLine);
+
+ KviUIntSelector * s = addUIntSelector(0,2,1,2,__tr2qs_ctx("Marker size:","options"),KviOption_uintIrcViewMarkerSize,1,5,1);
+ s->setSuffix(__tr2qs_ctx(" pixels","options"));
+
+ addLabel(0,3,0,3,__tr2qs_ctx("Marker style:","options"));
+ m_pMarkerStyle=new QComboBox(this);
+ addWidgetToLayout(m_pMarkerStyle,1,3,1,3);
+
+ addRowSpacer(0,4,0,4);
+
+ m_pMarkerStyle->addItem(__tr2qs_ctx("DotLine","options"));
+ m_pMarkerStyle->addItem(__tr2qs_ctx("DashLine","options"));
+ m_pMarkerStyle->addItem(__tr2qs_ctx("SolidLine","options"));
+ m_pMarkerStyle->addItem(__tr2qs_ctx("DashDotLine","options"));
+ m_pMarkerStyle->addItem(__tr2qs_ctx("DashDotDotLine","options"));
+
+ //switch( KVI_OPTION_UINT(KviOption_uintIrcViewMarkerStyle) & Qt::PenStyle)
+ //switch(Qt::PenStyle)
+ switch(KVI_OPTION_UINT(KviOption_uintIrcViewMarkerStyle))
+ {
+ case Qt::DashLine:
+ m_pMarkerStyle->setCurrentIndex(1);
+ break;
+ case Qt::SolidLine:
+ m_pMarkerStyle->setCurrentIndex(2);
+ break;
+ case Qt::DashDotLine:
+ m_pMarkerStyle->setCurrentIndex(3);
+ break;
+ case Qt::DashDotDotLine:
+ m_pMarkerStyle->setCurrentIndex(4);
+ break;
+ default:
+ m_pMarkerStyle->setCurrentIndex(0);
+ }
+
+}
+
+KviIrcViewMarkerOptionsWidget::~KviIrcViewMarkerOptionsWidget()
+{
+}
+void KviIrcViewMarkerOptionsWidget::commit()
+{
+ int iFlags=0;
+ switch(m_pMarkerStyle->currentIndex())
+ {
+ case 1:
+ iFlags|=Qt::DashLine;
+ break;
+ case 2:
+ iFlags|=Qt::SolidLine;
+ break;
+ case 3:
+ iFlags|=Qt::DashDotLine;
+ break;
+ case 4:
+ iFlags|=Qt::DashDotDotLine;
+ break;
+ }
+
+ KVI_OPTION_UINT(KviOption_uintIrcViewMarkerStyle)=iFlags;
+ KviOptionsWidget::commit();
+}
#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES
#include "m_optw_ircview.moc"
diff --git a/src/modules/options/optw_ircview.h b/src/modules/options/optw_ircview.h
index 0a1f1f4a7..fd3745705 100644
--- a/src/modules/options/optw_ircview.h
+++ b/src/modules/options/optw_ircview.h
@@ -56,8 +56,8 @@ class KviIrcViewLookOptionsWidget : public KviOptionsWidget
{
Q_OBJECT
private:
- QComboBox* m_pHorizontalAlign;
- QComboBox* m_pVerticalAlign;
+ QComboBox * m_pHorizontalAlign;
+ QComboBox * m_pVerticalAlign;
public:
KviIrcViewLookOptionsWidget(QWidget * parent);
~KviIrcViewLookOptionsWidget();
@@ -79,6 +79,22 @@ public:
~KviIrcViewFeaturesOptionsWidget();
};
+#define KVI_OPTIONS_WIDGET_ICON_KviIrcViewMarkerOptionsWidget KVI_SMALLICON_IRCVIEW
+#define KVI_OPTIONS_WIDGET_NAME_KviIrcViewMarkerOptionsWidget __tr2qs_no_lookup("Marker")
+#define KVI_OPTIONS_WIDGET_GROUP_KviIrcViewMarkerOptionsWidget "theme"
+#define KVI_OPTIONS_WIDGET_PARENT_KviIrcViewMarkerOptionsWidget KviIrcViewThemeOptionsWidget
+#define KVI_OPTIONS_WIDGET_PRIORITY_KviIrcViewMarkerOptionsWidget 10
+
+class KviIrcViewMarkerOptionsWidget : public KviOptionsWidget
+{
+ Q_OBJECT
+public:
+ KviIrcViewMarkerOptionsWidget(QWidget * pParent);
+ ~KviIrcViewMarkerOptionsWidget();
+ virtual void commit();
+private:
+ QComboBox * m_pMarkerStyle;
+};
#endif //!_OPTW_IRCVIEW_H_