Enhancements to UI functionality, document some of NetworkManagerQt's behavior

main
Aaron Rainbolt 7 months ago
parent 549119459a
commit 0a2a90811b

@ -20,15 +20,17 @@ QString ConnectionSettingsEngine::targetConnUuidStr = QString();
*
* All things IPv4:
*
* !ipv4Method: ConnectionSettingsEngine::Ipv4Method
* !ipv4DnsServers: QString
* !ipv4SearchDomains: QString
* !ipv4DhcpClientId: QString
* !ipv4AddressList: QList<NetworkManager::IpAddress>
* !ipv4Required: bool
* ipv4Method: ConnectionSettingsEngine::Ipv4Method
* ipv4DnsServers: QString
* ipv4SearchDomains: QString
* ipv4DhcpClientId: QString
* ipv4AddressList: QList<NetworkManager::IpAddress>
* ipv4Required: bool
*
* All things 802.1x:
*
* NOTE: File names begin with "file://"!
*
* 802.1xEnabled: bool
* 802.1xAuthMode: ConnectionSettingsEngine::Security802_1xAuthMode
* 802.1xPasswordStore: ConnectionSettingsEngine::Security802_1xPasswordStoreMode

@ -9,6 +9,7 @@ Security802_1xTab::Security802_1xTab(QWidget *parent) :
ui->setupUi(this);
connect(ui->enable802_1xCheckBox, &QCheckBox::stateChanged, this, &Security802_1xTab::onEnable802_1xCheckBoxToggled);
onEnable802_1xCheckBoxToggled(Qt::Unchecked);
onFastAutoPacProvisionCheckBoxToggled(Qt::Unchecked);
QStringList passwordStoreItems;
passwordStoreItems.append(tr("Store password for all users (not encrypted)"));
passwordStoreItems.append(tr("Store password for this user (encrypted)"));
@ -30,6 +31,13 @@ Security802_1xTab::Security802_1xTab(QWidget *parent) :
connect(ui->fastShowPasswordCheckBox, &QCheckBox::stateChanged, this, &Security802_1xTab::onFastShowPasswordCheckBoxToggled);
connect(ui->ttlsShowPasswordCheckBox, &QCheckBox::stateChanged, this, &Security802_1xTab::onTtlsShowPasswordCheckBoxToggled);
connect(ui->peapShowPasswordCheckBox, &QCheckBox::stateChanged, this, &Security802_1xTab::onPeapShowPasswordCheckBoxToggled);
connect(ui->fastAutoPacProvisionCheckBox, &QCheckBox::stateChanged, this, &Security802_1xTab::onFastAutoPacProvisionCheckBoxToggled);
connect(ui->tlsCaCertificateOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onTlsCaCertificateOpenFileButtonClicked);
connect(ui->tlsUserCertificateOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onTlsUserCertificateOpenFileButtonClicked);
connect(ui->tlsUserPrivateKeyOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onTlsUserPrivateKeyOpenFileButtonClicked);
connect(ui->fastPacFileOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onFastPacFileOpenFileButtonClicked);
connect(ui->ttlsCaCertificateOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onTtlsCaCertificateOpenFileButtonClicked);
connect(ui->peapCaCertificateOpenFileButton, &QPushButton::clicked, this, &Security802_1xTab::onPeapCaCertificateOpenFileButtonClicked);
}
Security802_1xTab::~Security802_1xTab()
@ -294,6 +302,7 @@ void Security802_1xTab::loadSettings(QVariantMap settings)
ui->fastAutoPacProvisionCheckBox->setChecked(false);
break;
}
onFastAutoPacProvisionCheckBoxToggled(ui->fastAutoPacProvisionCheckBox->checkState());
ui->fastPacFileLineEdit->setText(settings["802.1xFastPacFile"].toString());
switch (settings["802.1xFastAuthMethod"].toInt()) {
case ConnectionSettingsEngine::Security802_1xAuthMethodGtc:
@ -480,3 +489,45 @@ void Security802_1xTab::onPeapShowPasswordCheckBoxToggled(int state)
break;
}
}
void Security802_1xTab::onFastAutoPacProvisionCheckBoxToggled(int state)
{
switch (state) {
case Qt::Checked:
ui->fastAutoPacProvisionComboBox->setEnabled(true);
break;
case Qt::Unchecked:
ui->fastAutoPacProvisionComboBox->setEnabled(false);
break;
}
}
void Security802_1xTab::onTlsCaCertificateOpenFileButtonClicked()
{
ui->tlsCaCertificateLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open CA Certificate"), QUrl("file:///home")).toString());
}
void Security802_1xTab::onTlsUserCertificateOpenFileButtonClicked()
{
ui->tlsUserCertificateLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open User Certificate"), QUrl("file:///home")).toString());
}
void Security802_1xTab::onTlsUserPrivateKeyOpenFileButtonClicked()
{
ui->tlsUserPrivateKeyLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open User Private Key"), QUrl("file:///home")).toString());
}
void Security802_1xTab::onFastPacFileOpenFileButtonClicked()
{
ui->fastPacFileLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open PAC File"), QUrl("file:///home")).toString());
}
void Security802_1xTab::onTtlsCaCertificateOpenFileButtonClicked()
{
ui->ttlsCaCertificateLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open CA Certificate"), QUrl("file:///home")).toString());
}
void Security802_1xTab::onPeapCaCertificateOpenFileButtonClicked()
{
ui->peapCaCertificateLineEdit->setText(QFileDialog::getOpenFileUrl(this, tr("Open CA Certificate"), QUrl("file:///home")).toString());
}

@ -3,6 +3,7 @@
#include "connectionsettingsengine.h"
#include <QDialog>
#include <QFileDialog>
namespace Ui {
class Security802_1xTab;
@ -27,6 +28,13 @@ private slots:
void onFastShowPasswordCheckBoxToggled(int state);
void onTtlsShowPasswordCheckBoxToggled(int state);
void onPeapShowPasswordCheckBoxToggled(int state);
void onFastAutoPacProvisionCheckBoxToggled(int state);
void onTlsCaCertificateOpenFileButtonClicked();
void onTlsUserCertificateOpenFileButtonClicked();
void onTlsUserPrivateKeyOpenFileButtonClicked();
void onFastPacFileOpenFileButtonClicked();
void onTtlsCaCertificateOpenFileButtonClicked();
void onPeapCaCertificateOpenFileButtonClicked();
private:
Ui::Security802_1xTab *ui;

@ -31,7 +31,7 @@
<item>
<widget class="QTabWidget" name="authenticationModeTabs">
<property name="currentIndex">
<number>1</number>
<number>3</number>
</property>
<widget class="QWidget" name="md5Tab">
<attribute name="title">

Loading…
Cancel
Save