summaryrefslogtreecommitdiffstats
path: root/src/networksettings/qnetworksettingsmanager.cpp
diff options
context:
space:
mode:
authorSami Nurmenniemi <sami.nurmenniemi@qt.io>2017-10-31 13:46:40 +0200
committerSami Nurmenniemi <sami.nurmenniemi@qt.io>2017-11-22 10:41:58 +0000
commitd1fcfe58025603ae28e8fda31d96519a92cdb7dd (patch)
treeff1dc34b7a97fe5695e82504d7313678fad4c6d3 /src/networksettings/qnetworksettingsmanager.cpp
parent50b66ec25694e30caa5fbc556bc172d6319522ba (diff)
Add Wi-Fi enable button to network settings
Task-number: QTBUG-64230 Change-Id: I2aad07fb98a45997b116fc9a06924ba8be3dff2a Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io> Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Diffstat (limited to 'src/networksettings/qnetworksettingsmanager.cpp')
-rw-r--r--src/networksettings/qnetworksettingsmanager.cpp21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/networksettings/qnetworksettingsmanager.cpp b/src/networksettings/qnetworksettingsmanager.cpp
index caf6057..eb687d1 100644
--- a/src/networksettings/qnetworksettingsmanager.cpp
+++ b/src/networksettings/qnetworksettingsmanager.cpp
@@ -29,6 +29,7 @@
#include "qnetworksettingsmanager.h"
#include "qnetworksettingsservice.h"
#include "qnetworksettingsservicemodel.h"
+#include "qnetworksettingsinterface.h"
#include "qnetworksettingsinterfacemodel.h"
#include "qnetworksettingsmanager_p.h"
#include <QStringListModel>
@@ -51,7 +52,7 @@ QNetworkSettingsInterfaceModel *QNetworkSettingsManager::interfaces()
return &d->m_interfaceModel;
}
-QNetworkSettingsService* QNetworkSettingsManager::service(const QString& name, const int type)
+QNetworkSettingsService* QNetworkSettingsManager::service(const QString& name, int type)
{
Q_D(QNetworkSettingsManager);
@@ -60,7 +61,23 @@ QNetworkSettingsService* QNetworkSettingsManager::service(const QString& name, c
return service;
}
}
- return NULL;
+ return nullptr;
+}
+
+QNetworkSettingsInterface* QNetworkSettingsManager::interface(int type, int instance)
+{
+ Q_D(QNetworkSettingsManager);
+ int matchingInstance = 0;
+
+ foreach (QNetworkSettingsInterface* interface, d->m_interfaceModel.getModel()) {
+ if (interface->type() == type) {
+ if (matchingInstance == instance) {
+ return interface;
+ }
+ matchingInstance++;
+ }
+ }
+ return nullptr;
}
void QNetworkSettingsManager::setUserAgent(QNetworkSettingsUserAgent *agent)