diff options
-rw-r--r-- | network/CMakeLists.txt | 4 | ||||
-rw-r--r-- | network/network.cpp | 174 | ||||
-rw-r--r-- | network/network.h | 31 | ||||
-rw-r--r-- | network/networkadapter.cpp | 110 | ||||
-rw-r--r-- | network/networkadapter.h | 79 | ||||
-rw-r--r-- | network/wifinetworkmodel.cpp | 6 |
6 files changed, 267 insertions, 137 deletions
diff --git a/network/CMakeLists.txt b/network/CMakeLists.txt index 0a53327..5c15f46 100644 --- a/network/CMakeLists.txt +++ b/network/CMakeLists.txt @@ -1,2 +1,2 @@ -add_headers(network.h networkmessage.h wifinetworkmodel.h) -add_sources(network.cpp networkmessage.cpp wifinetworkmodel.cpp) +add_headers(network.h networkmessage.h networkadapter.h wifinetworkmodel.h) +add_sources(network.cpp networkmessage.cpp networkadapter.cpp wifinetworkmodel.cpp) diff --git a/network/network.cpp b/network/network.cpp index 496638f..e3a4545 100644 --- a/network/network.cpp +++ b/network/network.cpp @@ -14,8 +14,6 @@ * limitations under the License. */ -#include <QMetaEnum> -#include <QSortFilterProxyModel> #include <QtQml/QQmlEngine> #include <vcard/vcard.h> @@ -25,36 +23,25 @@ #include "network.h" #include "networkmessage.h" #include "responsemessage.h" -#include "wifinetworkmodel.h" +#include "networkadapter.h" Network::Network (QUrl &url, QQmlContext *context, QObject * parent) : QObject(parent), - m_mloop(nullptr), - m_wifi(nullptr), - m_wifiConnected(false), - m_wifiEnabled(false), - m_wifiStrength(0) + m_mloop(nullptr) { m_mloop = new MessageEngine(url); - m_wifi = new WifiNetworkModel(); - - QSortFilterProxyModel *m_model = new QSortFilterProxyModel(); - m_model->setSourceModel(m_wifi); - m_model->setSortRole(WifiNetworkModel::WifiNetworkRoles::SsidRole); - m_model->setSortCaseSensitivity(Qt::CaseInsensitive); - m_model->sort(0); - context->setContextProperty("WifiNetworkModel", m_model); + m_adapters.append(new WifiAdapter(this, context, parent)); QObject::connect(m_mloop, &MessageEngine::connected, this, &Network::onConnected); QObject::connect(m_mloop, &MessageEngine::disconnected, this, &Network::onDisconnected); QObject::connect(m_mloop, &MessageEngine::messageReceived, this, &Network::onMessageReceived); - QObject::connect(m_wifi, &WifiNetworkModel::strengthChanged, this, &Network::updateWifiStrength); } Network::~Network() { delete m_mloop; - delete m_wifi; + while (!m_adapters.isEmpty()) + m_adapters.takeLast(); |