aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/options
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/options')
-rw-r--r--src/modules/options/OptionsWidget_proxy.cpp21
-rw-r--r--src/modules/options/OptionsWidget_servers.cpp7
2 files changed, 17 insertions, 11 deletions
diff --git a/src/modules/options/OptionsWidget_proxy.cpp b/src/modules/options/OptionsWidget_proxy.cpp
index 8cc7fe108..52a8f63d1 100644
--- a/src/modules/options/OptionsWidget_proxy.cpp
+++ b/src/modules/options/OptionsWidget_proxy.cpp
@@ -43,6 +43,9 @@
#include <QToolButton>
#include <QMenu>
+#include <memory>
+#include <vector>
+
ProxyOptionsTreeWidgetItem::ProxyOptionsTreeWidgetItem(QTreeWidget * parent, const QPixmap & pm, KviProxy * prx)
: QTreeWidgetItem(parent)
{
@@ -161,12 +164,12 @@ void OptionsWidget_proxy::fillProxyList()
{
ProxyOptionsTreeWidgetItem * prx;
- KviPointerList<KviProxy> * l = g_pProxyDataBase->proxyList();
+ std::vector<std::unique_ptr<KviProxy>> & l = g_pProxyDataBase->proxyList();
- for(KviProxy * p = l->first(); p; p = l->next())
+ for(auto & p : l)
{
- prx = new ProxyOptionsTreeWidgetItem(m_pTreeWidget, *(g_pIconManager->getSmallIcon(KviIconManager::Proxy)), p);
- if(p == g_pProxyDataBase->currentProxy())
+ prx = new ProxyOptionsTreeWidgetItem(m_pTreeWidget, *(g_pIconManager->getSmallIcon(KviIconManager::Proxy)), p.get());
+ if(p.get() == g_pProxyDataBase->currentProxy())
{
prx->setSelected(true);
m_pTreeWidget->setCurrentItem(prx);
@@ -316,16 +319,16 @@ void OptionsWidget_proxy::commit()
QString tmp = it->text(0);
if(!tmp.isEmpty())
{
- KviProxy * prx = new KviProxy(*(it->m_pProxyData));
- g_pProxyDataBase->insertProxy(prx);
+ std::unique_ptr<KviProxy> prx(new KviProxy(*(it->m_pProxyData)));
+ g_pProxyDataBase->insertProxy(std::move(prx));
if(it == m_pLastEditedItem)
- g_pProxyDataBase->setCurrentProxy(prx);
+ g_pProxyDataBase->setCurrentProxy(prx.get());
}
}
- if(!g_pProxyDataBase->currentProxy())
- g_pProxyDataBase->setCurrentProxy(g_pProxyDataBase->proxyList()->first());
+ if(!g_pProxyDataBase->currentProxy() && !g_pProxyDataBase->proxyList().empty())
+ g_pProxyDataBase->setCurrentProxy(g_pProxyDataBase->proxyList().front().get());
KviOptionsWidget::commit();
}
diff --git a/src/modules/options/OptionsWidget_servers.cpp b/src/modules/options/OptionsWidget_servers.cpp
index a00724c98..a1fb87aad 100644
--- a/src/modules/options/OptionsWidget_servers.cpp
+++ b/src/modules/options/OptionsWidget_servers.cpp
@@ -67,6 +67,9 @@
#include <QShortcut>
#include <QMenu>
+#include <memory>
+#include <vector>
+
#if defined(COMPILE_ON_WINDOWS) || defined(COMPILE_ON_MINGW) || defined(COMPILE_ON_MAC)
#include <QStyleFactory>
#endif //COMPILE_ON_WINDOWS || COMPILE_ON_MINGW
@@ -791,9 +794,9 @@ IrcServerDetailsWidget::IrcServerDetailsWidget(QWidget * par, KviIrcServer * s)
m_pProxyEditor->addItem(__tr2qs_ctx("Default", "options"));
m_pProxyEditor->addItem(__tr2qs_ctx("Direct Connection", "options"));
- KviPointerList<KviProxy> * proxylist = g_pProxyDataBase->proxyList();
+ std::vector<std::unique_ptr<KviProxy>> & proxylist = g_pProxyDataBase->proxyList();
- for(KviProxy * p = proxylist->first(); p; p = proxylist->next())
+ for(auto & p : proxylist)
{
m_pProxyEditor->insertItem(m_pProxyEditor->count(), QString("%1:%2").arg(p->hostName()).arg(p->port()));
}