refactoring for better separation of concerns
This commit is contained in:
+12
-3
@@ -4,20 +4,28 @@ project(wifipicker VERSION 0.1 LANGUAGES CXX)
|
|||||||
|
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
find_package(Qt6 6.4 REQUIRED COMPONENTS Core Gui Qml Quick)
|
find_package(Qt6 6.4 REQUIRED COMPONENTS
|
||||||
|
Core
|
||||||
|
Gui
|
||||||
|
Qml
|
||||||
|
Quick
|
||||||
|
Network
|
||||||
|
)
|
||||||
|
|
||||||
qt_standard_project_setup()
|
qt_standard_project_setup()
|
||||||
|
|
||||||
qt_add_executable(appwifipicker
|
qt_add_executable(appwifipicker
|
||||||
main.cpp
|
main.cpp
|
||||||
NetworkScanner.h
|
networkscanner.h
|
||||||
NetworkScanner.cpp
|
networkscanner.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
qt_add_qml_module(appwifipicker
|
qt_add_qml_module(appwifipicker
|
||||||
URI wifipicker
|
URI wifipicker
|
||||||
VERSION 1.0
|
VERSION 1.0
|
||||||
QML_FILES Main.qml
|
QML_FILES Main.qml
|
||||||
|
SOURCES networksmodel.h networksmodel.cpp
|
||||||
|
SOURCES network.h network.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
|
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
|
||||||
@@ -36,6 +44,7 @@ target_link_libraries(appwifipicker PRIVATE
|
|||||||
Qt6::Gui
|
Qt6::Gui
|
||||||
Qt6::Qml
|
Qt6::Qml
|
||||||
Qt6::Quick
|
Qt6::Quick
|
||||||
|
Qt6::Network
|
||||||
)
|
)
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE QtCreatorProject>
|
<!DOCTYPE QtCreatorProject>
|
||||||
<!-- Written by QtCreator 12.0.2, 2024-02-08T15:13:31. -->
|
<!-- Written by QtCreator 12.0.2, 2024-02-08T16:17:09. -->
|
||||||
<qtcreator>
|
<qtcreator>
|
||||||
<data>
|
<data>
|
||||||
<variable>EnvironmentId</variable>
|
<variable>EnvironmentId</variable>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
#include <qqml.h>
|
#include <qqml.h>
|
||||||
#include <QtQuick/qquickitem.h>
|
#include <QtQuick/qquickitem.h>
|
||||||
#include <QtQuick/qquickview.h>
|
#include <QtQuick/qquickview.h>
|
||||||
#include <NetworkScanner.h>
|
#include <networksmodel.h>
|
||||||
#include <QQmlContext>
|
#include <QQmlContext>
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
@@ -11,8 +11,6 @@ int main(int argc, char *argv[])
|
|||||||
QGuiApplication app(argc, argv);
|
QGuiApplication app(argc, argv);
|
||||||
|
|
||||||
NetworksModel model;
|
NetworksModel model;
|
||||||
model.scan();
|
|
||||||
qDebug() << "now has " << model.rowCount() << Qt::endl;
|
|
||||||
|
|
||||||
QQmlApplicationEngine engine;
|
QQmlApplicationEngine engine;
|
||||||
const QUrl url(u"qrc:/wifipicker/Main.qml"_qs);
|
const QUrl url(u"qrc:/wifipicker/Main.qml"_qs);
|
||||||
|
|||||||
+11
@@ -0,0 +1,11 @@
|
|||||||
|
#include "network.h"
|
||||||
|
|
||||||
|
Network::Network(const QString &name)
|
||||||
|
: m_name(name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
QString Network::name() const
|
||||||
|
{
|
||||||
|
return this->m_name;
|
||||||
|
}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
#ifndef NETWORK_H
|
||||||
|
#define NETWORK_H
|
||||||
|
|
||||||
|
#include <QObject>
|
||||||
|
|
||||||
|
class Network
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Network(const QString &name);
|
||||||
|
|
||||||
|
QString name() const;
|
||||||
|
private:
|
||||||
|
QString m_name;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // NETWORK_H
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
#include "networkscanner.h"
|
||||||
|
#include <iostream>
|
||||||
|
#include <QAbstractListModel>
|
||||||
|
|
||||||
|
QList<Network> NetworkScanner::scanForNetworks()
|
||||||
|
{
|
||||||
|
std::cout << "Called the C++ Network scanner class" << std::endl;
|
||||||
|
|
||||||
|
QList<Network> networks;
|
||||||
|
|
||||||
|
Network example1 = Network("Gita 2.4Ghz");
|
||||||
|
networks.append(example1);
|
||||||
|
|
||||||
|
return networks;
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
#ifndef NETWORKSCANNER_H
|
||||||
|
#define NETWORKSCANNER_H
|
||||||
|
|
||||||
|
#include <QObject>
|
||||||
|
#include <QAbstractListModel>
|
||||||
|
|
||||||
|
class Network
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Network(const QString &name);
|
||||||
|
|
||||||
|
QString name() const;
|
||||||
|
private:
|
||||||
|
QString m_name;
|
||||||
|
};
|
||||||
|
|
||||||
|
class NetworkScanner : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
QList<Network> scanForNetworks();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // NETWORKSCANNER_H
|
||||||
@@ -1,18 +1,4 @@
|
|||||||
#include "NetworkScanner.h"
|
#include "networksmodel.h"
|
||||||
#include <iostream>
|
|
||||||
#include <QAbstractListModel>
|
|
||||||
|
|
||||||
QList<Network> NetworkScanner::scanForNetworks()
|
|
||||||
{
|
|
||||||
std::cout << "Called the C++ Network scanner class" << std::endl;
|
|
||||||
|
|
||||||
QList<Network> networks;
|
|
||||||
|
|
||||||
Network example1 = Network("Gita 2.4Ghz");
|
|
||||||
networks.append(example1);
|
|
||||||
|
|
||||||
return networks;
|
|
||||||
}
|
|
||||||
|
|
||||||
NetworksModel::NetworksModel(QObject *parent)
|
NetworksModel::NetworksModel(QObject *parent)
|
||||||
:
|
:
|
||||||
@@ -70,13 +56,3 @@ QHash<int, QByteArray> NetworksModel::roleNames() const
|
|||||||
roles[NetworksModel::NetworkRoles::NameRole] = "name";
|
roles[NetworksModel::NetworkRoles::NameRole] = "name";
|
||||||
return roles;
|
return roles;
|
||||||
}
|
}
|
||||||
|
|
||||||
Network::Network(const QString &name)
|
|
||||||
: m_name(name)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
QString Network::name() const
|
|
||||||
{
|
|
||||||
return this->m_name;
|
|
||||||
}
|
|
||||||
@@ -1,27 +1,8 @@
|
|||||||
#ifndef NETWORKSCANNER_H
|
#ifndef NETWORKSMODEL_H
|
||||||
#define NETWORKSCANNER_H
|
#define NETWORKSMODEL_H
|
||||||
|
|
||||||
#endif // NETWORKSCANNER_H
|
|
||||||
|
|
||||||
#include <QObject>
|
|
||||||
#include <QAbstractListModel>
|
#include <QAbstractListModel>
|
||||||
|
#include "networkscanner.h"
|
||||||
class Network
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
Network(const QString &name);
|
|
||||||
|
|
||||||
QString name() const;
|
|
||||||
private:
|
|
||||||
QString m_name;
|
|
||||||
};
|
|
||||||
|
|
||||||
class NetworkScanner : public QObject
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
QList<Network> scanForNetworks();
|
|
||||||
};
|
|
||||||
|
|
||||||
class NetworksModel : public QAbstractListModel
|
class NetworksModel : public QAbstractListModel
|
||||||
{
|
{
|
||||||
@@ -46,3 +27,5 @@ private:
|
|||||||
QList<Network> m_networks;
|
QList<Network> m_networks;
|
||||||
NetworkScanner m_networkScanner;
|
NetworkScanner m_networkScanner;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#endif // NETWORKSMODEL_H
|
||||||
Reference in New Issue
Block a user