refactor: settings gui, use the service group as a checkbox for enable service
This commit is contained in:
committed by
Chris Rizzitello
parent
1ace03d4b5
commit
487030aade
@ -62,7 +62,7 @@ void SettingsDialog::initConnections()
|
||||
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject);
|
||||
|
||||
connect(ui->groupSecurity, &QGroupBox::toggled, this, &SettingsDialog::updateTlsControlsEnabled);
|
||||
connect(ui->cbServiceEnabled, &QCheckBox::toggled, this, &SettingsDialog::updateControls);
|
||||
connect(ui->groupService, &QGroupBox::toggled, this, &SettingsDialog::updateControls);
|
||||
connect(ui->btnTlsRegenCert, &QPushButton::clicked, this, &SettingsDialog::regenCertificates);
|
||||
connect(ui->comboTlsKeyLength, &QComboBox::currentIndexChanged, this, &SettingsDialog::updateRequestedKeySize);
|
||||
connect(ui->btnTlsCertPath, &QPushButton::clicked, this, &SettingsDialog::browseCertificatePath);
|
||||
@ -146,7 +146,7 @@ void SettingsDialog::accept()
|
||||
Settings::setValue(Settings::Security::CheckPeers, ui->cbRequireClientCert->isChecked());
|
||||
|
||||
Settings::ProcessMode mode;
|
||||
if (ui->cbServiceEnabled->isChecked())
|
||||
if (ui->groupService->isChecked())
|
||||
mode = Settings::ProcessMode::Service;
|
||||
else
|
||||
mode = Settings::ProcessMode::Desktop;
|
||||
@ -171,7 +171,7 @@ void SettingsDialog::loadFromConfig()
|
||||
ui->cbAutoUpdate->setChecked(Settings::value(Settings::Gui::AutoUpdateCheck).toBool());
|
||||
|
||||
const auto processMode = Settings::value(Settings::Core::ProcessMode).value<Settings::ProcessMode>();
|
||||
ui->cbServiceEnabled->setChecked(processMode == Settings::ProcessMode::Service);
|
||||
ui->groupService->setChecked(processMode == Settings::ProcessMode::Service);
|
||||
|
||||
if (Settings::value(Settings::Gui::SymbolicTrayIcon).toBool())
|
||||
ui->rbIconMono->setChecked(true);
|
||||
@ -249,7 +249,7 @@ void SettingsDialog::updateKeyLengthOnFile(const QString &path)
|
||||
void SettingsDialog::updateControls()
|
||||
{
|
||||
const bool writable = Settings::isWritable();
|
||||
const bool serviceChecked = ui->cbServiceEnabled->isChecked();
|
||||
const bool serviceChecked = ui->groupService->isChecked();
|
||||
const bool logToFile = ui->cbLogToFile->isChecked();
|
||||
|
||||
ui->sbPort->setEnabled(writable);
|
||||
@ -265,7 +265,7 @@ void SettingsDialog::updateControls()
|
||||
|
||||
// Handle enable and disable of service items
|
||||
if (Settings::isNativeMode()) {
|
||||
ui->cbServiceEnabled->setEnabled(writable);
|
||||
ui->groupService->setEnabled(writable);
|
||||
ui->widgetElevate->setEnabled(writable && serviceChecked);
|
||||
} else if (ui->groupService->isVisibleTo(ui->tabAdvanced)) {
|
||||
ui->groupService->setVisible(false);
|
||||
|
||||
@ -23,7 +23,7 @@
|
||||
<item>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>1</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tabRegular">
|
||||
<property name="sizePolicy">
|
||||
@ -548,31 +548,16 @@
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Service</string>
|
||||
<string>Use background service (daemon)</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="_6">
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="cbServiceEnabled">
|
||||
<property name="toolTip">
|
||||
<string>Whether to launch the server or client process through the Windows background
|
||||
service or direct from the GUI.</string>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string>
|
||||
<p>The background service is only available on Windows.</p>
|
||||
<p>The Windows background service is used to:</p>
|
||||
<ul>
|
||||
<li>Start the server or client automatically when the computer starts.</li>
|
||||
<li>Run the server or client in an elevated mode (e.g. on login screen, UAC dialogs, etc).</li>
|
||||
</ul>
|
||||
</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Use background service (daemon)</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QWidget" name="widgetElevate" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||
@ -688,7 +673,6 @@
|
||||
<tabstop>comboLogLevel</tabstop>
|
||||
<tabstop>lineLogFilename</tabstop>
|
||||
<tabstop>btnBrowseLog</tabstop>
|
||||
<tabstop>cbServiceEnabled</tabstop>
|
||||
<tabstop>comboElevate</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
|
||||
Reference in New Issue
Block a user