diff options
Diffstat (limited to 'ui/qt5')
-rw-r--r-- | ui/qt5/CMakeLists.txt | 1 | ||||
-rw-r--r-- | ui/qt5/netsimplewifipage.cc | 110 | ||||
-rw-r--r-- | ui/qt5/netsimplewifipage.hh | 30 |
3 files changed, 72 insertions, 69 deletions
diff --git a/ui/qt5/CMakeLists.txt b/ui/qt5/CMakeLists.txt index e453a25..7bf3107 100644 --- a/ui/qt5/CMakeLists.txt +++ b/ui/qt5/CMakeLists.txt @@ -11,6 +11,7 @@ set(UI_SOURCES inputpage.cc networkingpage.cc networkifacepage.cc + netsimplewifipage.cc horizon.qrc) add_executable(horizon-qt5 ${UI_SOURCES}) diff --git a/ui/qt5/netsimplewifipage.cc b/ui/qt5/netsimplewifipage.cc index 4ce6eb4..2ac1681 100644 --- a/ui/qt5/netsimplewifipage.cc +++ b/ui/qt5/netsimplewifipage.cc @@ -1,71 +1,61 @@ +/* + * netsimplewifipage.cc - Implementation of the UI.Network.Wireless page + * horizon-qt5, the Qt 5 user interface for + * Project Horizon + * + * Copyright (c) 2019 Adélie Linux and contributors. All rights reserved. + * This code is licensed under the AGPL 3.0 license, as noted in the + * LICENSE-code file in the root directory of this repository. + * + * SPDX-License-Identifier: AGPL-3.0-only + */ + #include "netsimplewifipage.hh" -#include <QHBoxLayout> #include <QLabel> +#include <QPushButton> #include <QVBoxLayout> -#include <horizon/wirelesscontroller.hh> - NetworkSimpleWirelessPage::NetworkSimpleWirelessPage(QWidget *parent) - : HorizonWizardPage(parent) -{ - QHBoxLayout *securityLayout; - QVBoxLayout *layout; - QLabel *descLabel, *securityTypeLabel, *statusLabel; - - loadWatermark("network"); - setTitle(tr("Wireless Networking Setup")); - - descLabel = new QLabel(tr( - "A supported Wi-Fi device has been found in this " - "computer. If you connect to the Internet using " - "Wi-Fi, select your Access Point below.\n\n" - - "If you don't want to use Wi-Fi, select \"Use Wired " - "Connection\" to continue using a wired connection.")); - descLabel->setWordWrap(true); - - statusLabel = new QLabel(tr("Scanning for networks...")); - - ssidListView = new QListView; - - ssidName = new QLineEdit(this); - ssidName->setPlaceholderText(tr("Network Name")); - ssidName->hide(); - - securityTypeLabel = new QLabel(tr("Security type")); - - securityType = new QComboBox(this); - securityType->addItems({tr("None"), tr("WPA2 Personal"), - tr("WPA2 Enterprise"), tr("WPA Personal"), - tr("WPA Enterprise"), tr("WEP")}); - securityType->setEnabled(false); - securityType->hide(); - - passphrase = new QLineEdit(this); - passphrase->setEchoMode(QLineEdit::Password); - passphrase->setPlaceholderText(tr("Passphrase")); - passphrase->hide(); + : HorizonWizardPage(parent) { + QVBoxLayout *layout; + QLabel *statusLabel; + QPushButton *rescanButton; + + loadWatermark("network"); + setTitle(tr("Select Your Network")); + + statusLabel = new QLabel(tr("Scanning for networks...")); + + rescanButton = new QPushButton(tr("&Rescan Networks")); + rescanButton->setEnabled(false); + connect(rescanButton, &QPushButton::clicked, [=](void) { doScan(); }); + + ssidListView = new QListWidget; + + passphrase = new QLineEdit(this); + passphrase->setEchoMode(QLineEdit::Password); + passphrase->setPlaceholderText(tr("Passphrase")); + passphrase->hide(); + + layout = new QVBoxLayout; + layout->addWidget(statusLabel, 0, Qt::AlignCenter); + layout->addSpacing(10); + layout->addWidget(ssidListView, 0, Qt::AlignCenter); + layout->addWidget(rescanButton); + layout->addSpacing(10); + layout->addWidget(passphrase); + setLayout(layout); +} - securityLayout = new QHBoxLayout; - securityLayout->addWidget(securityTypeLabel); - securityLayout->addWidget(securityType); +void NetworkSimpleWirelessPage::doScan() { + ssidListView->clear(); +} - layout = new QVBoxLayout; - layout->addWidget(descLabel); - layout->addWidget(statusLabel, 0, Qt::AlignCenter); - layout->addSpacing(10); - layout->addWidget(ssidListView, 0, Qt::AlignCenter); - layout->addSpacing(10); - layout->addWidget(ssidName); - layout->addSpacing(10); - layout->addLayout(securityLayout); - layout->addSpacing(10); - layout->addWidget(passphrase); - setLayout(layout); +void NetworkSimpleWirelessPage::initializePage() { + doScan(); } -void NetworkSimpleWirelessPage::initializePage() -{ - Horizon::WirelessController::wirelessController()->performScan(); +int NetworkSimpleWirelessPage::nextId() const { + return HorizonWizard::Page_Network_DHCP; } diff --git a/ui/qt5/netsimplewifipage.hh b/ui/qt5/netsimplewifipage.hh index 3ba3e6a..8545c94 100644 --- a/ui/qt5/netsimplewifipage.hh +++ b/ui/qt5/netsimplewifipage.hh @@ -1,3 +1,15 @@ +/* + * netsimplewifipage.hh - Definition of the UI.Network.Wireless page + * horizon-qt5, the Qt 5 user interface for + * Project Horizon + * + * Copyright (c) 2019 Adélie Linux and contributors. All rights reserved. + * This code is licensed under the AGPL 3.0 license, as noted in the + * LICENSE-code file in the root directory of this repository. + * + * SPDX-License-Identifier: AGPL-3.0-only + */ + #ifndef NETWORKSIMPLEWIRELESSPAGE_HH #define NETWORKSIMPLEWIRELESSPAGE_HH @@ -5,18 +17,18 @@ #include <QComboBox> #include <QLineEdit> -#include <QListView> +#include <QListWidget> -class NetworkSimpleWirelessPage : public HorizonWizardPage -{ +class NetworkSimpleWirelessPage : public HorizonWizardPage { public: - NetworkSimpleWirelessPage(QWidget *parent = 0); + NetworkSimpleWirelessPage(QWidget *parent = nullptr); - void initializePage(); + void initializePage(); + void doScan(); + int nextId() const; private: - QComboBox *securityType; - QLineEdit *ssidName, *passphrase; - QListView *ssidListView; + QListWidget *ssidListView; + QLineEdit *passphrase; }; -#endif // NETWORKSIMPLEWIRELESSPAGE_HH +#endif /* !NETWORKSIMPLEWIRELESSPAGE_HH */ |