You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
2.0 KiB

#include "generalsettingstab.h"
#include "ui_generalsettingstab.h"
GeneralSettingsTab::GeneralSettingsTab(QWidget *parent) :
QWidget(parent),
ui(new Ui::GeneralSettingsTab)
{
ui->setupUi(this);
ui->meteredConnectionComboBox->addItems(QStringList() << "Automatic" << "Yes" << "No");
}
GeneralSettingsTab::~GeneralSettingsTab()
{
delete ui;
}
// Refer to connectionsettingsengine.cpp for configuration map details
QVariantMap GeneralSettingsTab::readSettings()
{
QVariantMap output;
output.insert("autoconnectEnabled", QVariant(ui->autoconnectCheckBox->isChecked()));
output.insert("autoconnectPriority", QVariant(ui->autoconnectPrioritySpinBox->value()));
output.insert("allUsersMayConnect", QVariant(ui->allUsersMayConnectCheckBox->isChecked()));
output.insert("vpnAutoconnectEnabled", QVariant(ui->vpnAutoconnectCheckBox->isChecked()));
output.insert("autoconnectVpn", QVariant(ui->vpnSelectComboBox->currentText()));
output.insert("meteredConnection", QVariant(ui->meteredConnectionComboBox->currentText()));
return output;
}
void GeneralSettingsTab::loadSettings(QVariantMap settings)
{
if (settings["autoconnectEnabled"].isValid()) {
ui->autoconnectCheckBox->setChecked(settings["autoconnectEnabled"].toBool());
}
if (settings["autoconnectPriority"].isValid()) {
ui->autoconnectPrioritySpinBox->setValue(settings["autoconnectPriority"].toInt());
}
if (settings["allUsersMayConnect"].isValid()) {
ui->allUsersMayConnectCheckBox->setChecked(settings["allUsersMayConnect"].toBool());
}
if (settings["vpnAutoconnectEnabled"].isValid()) {
ui->vpnAutoconnectCheckBox->setChecked(settings["vpnAutoconnectEnabled"].toBool());
}
if (settings["autoconnectVpn"].isValid()) {
ui->vpnSelectComboBox->setCurrentText(settings["autoconnectVpn"].toString());
}
if (settings["meteredConnection"].isValid()) {
ui->meteredConnectionComboBox->setCurrentText(settings["meteredConnection"].toString());
}
}