From 8d0460d3e3dfac1557d320103eb76a2b2fd9990f Mon Sep 17 00:00:00 2001 From: Alexey Uzhva Date: Thu, 5 Apr 2007 21:19:45 +0000 Subject: Added option to configure identd output mode git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@464 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/options/optw_connection.cpp | 45 ++++++++++++++++++++++++++++----- src/modules/options/optw_connection.h | 7 +++++ 2 files changed, 46 insertions(+), 6 deletions(-) (limited to 'src/modules/options') diff --git a/src/modules/options/optw_connection.cpp b/src/modules/options/optw_connection.cpp index f2840bc98..44da4e72c 100644 --- a/src/modules/options/optw_connection.cpp +++ b/src/modules/options/optw_connection.cpp @@ -28,6 +28,7 @@ #include "kvi_locale.h" #include "kvi_options.h" #include "kvi_iconmanager.h" +#include KviConnectionOptionsWidget::KviConnectionOptionsWidget(QWidget * parent) @@ -204,26 +205,47 @@ KviTransportOptionsWidget::~KviTransportOptionsWidget() KviIdentOptionsWidget::KviIdentOptionsWidget(QWidget * parent) : KviOptionsWidget(parent,"ident_options_widget") { - createLayout(5,1); + createLayout(6,1); m_pEnableIdent = addBoolSelector(0,0,0,0,__tr2qs_ctx("Enable ident service (bad practice on UNIX!)","options"),KviOption_boolUseIdentService); connect(m_pEnableIdent,SIGNAL(toggled(bool)),this,SLOT(enableIpv4InIpv6(bool))); - KviTalGroupBox * gbox = addGroupBox(0,1,0,1,1,Qt::Horizontal,__tr2qs_ctx("Configuration","options"),KVI_OPTION_BOOL(KviOption_boolUseIdentService)); + KviTalGroupBox * gbox = addGroupBox(0,1,0,1,1,Qt::Horizontal,__tr2qs_ctx("Output verosity","options"),KVI_OPTION_BOOL(KviOption_boolUseIdentService)); + connect(m_pEnableIdent,SIGNAL(toggled(bool)),gbox,SLOT(setEnabled(bool))); + + addLabel(gbox,__tr2qs_ctx("Output identd messages to:","options")); + + m_pActiveRadio = new QRadioButton(__tr2qs_ctx("Active window","options"),gbox); + m_pConsoleRadio = new QRadioButton(__tr2qs_ctx("Console","options"),gbox); + m_pQuietRadio = new QRadioButton(__tr2qs_ctx("Do not show any identd messages","options"),gbox); + + switch(KVI_OPTION_UINT(KviOption_uintIdentdOutputMode)) + { + case KviIdentdOutputMode::Quiet : + m_pQuietRadio->setChecked(true); + break; + case KviIdentdOutputMode::ToConsole : + m_pConsoleRadio->setChecked(true); + break; + case KviIdentdOutputMode::ToActiveWindow : + m_pActiveRadio->setChecked(true); + break; + } + + gbox = addGroupBox(0,2,0,2,1,Qt::Horizontal,__tr2qs_ctx("Configuration","options"),KVI_OPTION_BOOL(KviOption_boolUseIdentService)); KviBoolSelector *b = addBoolSelector(gbox,__tr2qs_ctx("Enable ident service only while connecting to server","options"),KviOption_boolUseIdentServiceOnlyOnConnect); connect(m_pEnableIdent,SIGNAL(toggled(bool)),b,SLOT(setEnabled(bool))); KviStringSelector * s = addStringSelector(gbox,__tr2qs_ctx("Ident username:","options"), KviOption_stringIdentdUser,KVI_OPTION_BOOL(KviOption_boolUseIdentService)); - connect(m_pEnableIdent,SIGNAL(toggled(bool)),s,SLOT(setEnabled(bool))); KviUIntSelector * u = addUIntSelector(gbox,__tr2qs_ctx("Service port:","options"), KviOption_uintIdentdPort,0,65535,113,KVI_OPTION_BOOL(KviOption_boolUseIdentService)); connect(m_pEnableIdent,SIGNAL(toggled(bool)),u,SLOT(setEnabled(bool))); connect(m_pEnableIdent,SIGNAL(toggled(bool)),gbox,SLOT(setEnabled(bool))); - gbox = addGroupBox(0,2,0,2,1,Qt::Horizontal,__tr2qs_ctx("IPv6 Settings","options"),KVI_OPTION_BOOL(KviOption_boolUseIdentService)); + gbox = addGroupBox(0,3,0,3,1,Qt::Horizontal,__tr2qs_ctx("IPv6 Settings","options"),KVI_OPTION_BOOL(KviOption_boolUseIdentService)); m_pEnableIpv6 = addBoolSelector(gbox,__tr2qs_ctx("Enable service for IPv6","options"), KviOption_boolIdentdEnableIpV6, KVI_OPTION_BOOL(KviOption_boolUseIdentService)); @@ -238,7 +260,7 @@ KviIdentOptionsWidget::KviIdentOptionsWidget(QWidget * parent) KVI_OPTION_BOOL(KviOption_boolUseIdentService) && KVI_OPTION_BOOL(KviOption_boolIdentdEnableIpV6)); connect(m_pEnableIdent,SIGNAL(toggled(bool)),gbox,SLOT(setEnabled(bool))); - addLabel(0,3,0,3, + addLabel(0,4,0,4, #ifdef COMPILE_ON_WINDOWS __tr2qs_ctx("

Warning:
" \ "This is a non RFC 1413 compliant ident daemon that implements " \ @@ -254,13 +276,24 @@ KviIdentOptionsWidget::KviIdentOptionsWidget(QWidget * parent) #endif ); - addRowSpacer(0,4,0,4); + addRowSpacer(0,5,0,5); } KviIdentOptionsWidget::~KviIdentOptionsWidget() { } +void KviIdentOptionsWidget::commit() +{ + KviOptionsWidget::commit(); + if(m_pConsoleRadio->isOn()) + KVI_OPTION_UINT(KviOption_uintIdentdOutputMode)=KviIdentdOutputMode::ToConsole; + if(m_pActiveRadio->isOn()) + KVI_OPTION_UINT(KviOption_uintIdentdOutputMode)=KviIdentdOutputMode::ToActiveWindow; + if(m_pQuietRadio->isOn()) + KVI_OPTION_UINT(KviOption_uintIdentdOutputMode)=KviIdentdOutputMode::Quiet; +} + void KviIdentOptionsWidget::enableIpv4InIpv6(bool) { #ifdef COMPILE_IPV6_SUPPORT diff --git a/src/modules/options/optw_connection.h b/src/modules/options/optw_connection.h index 917b7e576..b4d29e69b 100644 --- a/src/modules/options/optw_connection.h +++ b/src/modules/options/optw_connection.h @@ -88,6 +88,7 @@ public: #define KVI_OPTIONS_WIDGET_PARENT_KviIdentOptionsWidget KviConnectionAdvancedOptionsWidget #define KVI_OPTIONS_WIDGET_PRIORITY_KviIdentOptionsWidget 10 +class QRadioButton; class KviIdentOptionsWidget : public KviOptionsWidget { @@ -95,10 +96,16 @@ class KviIdentOptionsWidget : public KviOptionsWidget public: KviIdentOptionsWidget(QWidget * parent); ~KviIdentOptionsWidget(); + + virtual void commit(); protected: KviBoolSelector * m_pEnableIdent; KviBoolSelector * m_pEnableIpv6; KviBoolSelector * m_pIpv4InIpv6; + + QRadioButton *m_pConsoleRadio; + QRadioButton *m_pActiveRadio; + QRadioButton *m_pQuietRadio; public slots: void enableIpv4InIpv6(bool); }; -- cgit v1.3.1-10-gc9f91