diff options
| author | 2016-04-27 03:46:30 +0200 | |
|---|---|---|
| committer | 2016-04-27 03:46:30 +0200 | |
| commit | 4ee6e83fd9766c037fdb4c03e0c6417e93a72b5c (patch) | |
| tree | dba06b88e0083f4bcef667c339618d5276719ec5 /src/modules | |
| parent | OptionsWidget_notify: refactor and make in seconds a spinbox suffix (#1957) (diff) | |
| download | KVIrc-4ee6e83fd9766c037fdb4c03e0c6417e93a72b5c.tar.gz KVIrc-4ee6e83fd9766c037fdb4c03e0c6417e93a72b5c.tar.bz2 KVIrc-4ee6e83fd9766c037fdb4c03e0c6417e93a72b5c.zip | |
Disable the 'Use proxy' check if there are no proxies in the list
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/options/OptionsWidget_proxy.cpp | 27 | ||||
| -rw-r--r-- | src/modules/options/OptionsWidget_proxy.h | 3 |
2 files changed, 20 insertions, 10 deletions
diff --git a/src/modules/options/OptionsWidget_proxy.cpp b/src/modules/options/OptionsWidget_proxy.cpp index ac7e32c11..8bca4ded6 100644 --- a/src/modules/options/OptionsWidget_proxy.cpp +++ b/src/modules/options/OptionsWidget_proxy.cpp @@ -64,7 +64,7 @@ OptionsWidget_proxy::OptionsWidget_proxy(QWidget * parent) { createLayout(); - addBoolSelector(0,0,1,0,__tr2qs_ctx("Use proxy","options"),KviOption_boolUseProxyHost); + m_pUseProxySelector = addBoolSelector(0,0,1,0,__tr2qs_ctx("Use proxy","options"),KviOption_boolUseProxyHost); m_pTreeWidget = new QTreeWidget(this); addWidgetToLayout(m_pTreeWidget,0,1,0,1); @@ -105,9 +105,6 @@ OptionsWidget_proxy::OptionsWidget_proxy(QWidget * parent) KviTalGroupBox * gbox = addGroupBox(0,2,1,2,Qt::Horizontal,__tr2qs_ctx("Configuration","options")); - //QGridLayout * gl = new QGridLayout(gbox->layout()); - //gl->setMargin(2); - //gl->setSpacing(4); m_pProxyLabel = new QLabel(__tr2qs_ctx("Proxy:","options"),gbox); m_pProxyEdit = new QLineEdit(gbox); @@ -147,6 +144,13 @@ OptionsWidget_proxy::~OptionsWidget_proxy() { } +void OptionsWidget_proxy::enableDisableUseProxySelector() +{ + m_pUseProxySelector->setEnabled(m_pTreeWidget->currentItem()); + if(m_pTreeWidget->topLevelItemCount() < 1) + m_pUseProxySelector->setChecked(false); +} + void OptionsWidget_proxy::ipV6CheckToggled(bool bEnabled) { m_pIpEditor->setAddressType(bEnabled ? KviIpEditor::IPv6 : KviIpEditor::IPv4); @@ -168,7 +172,10 @@ void OptionsWidget_proxy::fillProxyList() m_pTreeWidget->scrollToItem(prx); } } - if(!(g_pProxyDataBase->currentProxy()))currentItemChanged(0,0); + if(!(g_pProxyDataBase->currentProxy())) + currentItemChanged(0,0); + + enableDisableUseProxySelector(); } void OptionsWidget_proxy::currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem *) @@ -237,6 +244,8 @@ void OptionsWidget_proxy::currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem m_pIpEditor->setAddress("0.0.0.0"); m_pIPv6Check->setEnabled(false); } + + enableDisableUseProxySelector(); } void OptionsWidget_proxy::saveLastItem() @@ -294,9 +303,9 @@ void OptionsWidget_proxy::commit() { saveLastItem(); g_pProxyDataBase->clear(); - ProxyOptionsTreeWidgetItem * it;// = (ProxyOptionsTreeWidgetItem *)m_pTreeWidget->topLevelItemCount(); - //while(it) + ProxyOptionsTreeWidgetItem * it; + for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { it=(ProxyOptionsTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); @@ -311,10 +320,8 @@ void OptionsWidget_proxy::commit() //it = (ProxyOptionsTreeWidgetItem *)it->nextSibling(); } - if(g_pProxyDataBase->currentProxy() == 0) - { + if(!g_pProxyDataBase->currentProxy()) g_pProxyDataBase->setCurrentProxy(g_pProxyDataBase->proxyList()->first()); - } KviOptionsWidget::commit(); } diff --git a/src/modules/options/OptionsWidget_proxy.h b/src/modules/options/OptionsWidget_proxy.h index f6f53c542..64a2fd2b4 100644 --- a/src/modules/options/OptionsWidget_proxy.h +++ b/src/modules/options/OptionsWidget_proxy.h @@ -37,6 +37,7 @@ class KviIpEditor; class QMenu; class KviProxy; class KviProxyDataBase; +class KviBoolSelector; extern KVIRC_API KviProxyDataBase * g_pProxyDataBase; @@ -78,11 +79,13 @@ protected: QComboBox * m_pProtocolBox; QMenu * m_pContextPopup; QCheckBox * m_pIPv6Check; + KviBoolSelector * m_pUseProxySelector; ProxyOptionsTreeWidgetItem * m_pLastEditedItem; private: void fillProxyList(); void saveLastItem(); + void enableDisableUseProxySelector(); protected slots: void currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem *prev); void customContextMenuRequested(const QPoint &pnt); |
