refactor: move settings clear dialog to settings dialog

This commit is contained in:
sithlord48 2026-08-06 09:45:52 -04:00 committed by Nick Bolton
parent 7ca8157bd2
commit 626e170eb6
11 changed files with 62 additions and 66 deletions

View file

@ -424,10 +424,7 @@ void MainWindow::stopCore()
void MainWindow::clearSettings()
{
if (!messages::showClearSettings(this)) {
qDebug() << "clear settings cancelled";
return;
}
qDebug() << "clearing settings";
m_networkMonitor->stopMonitoring();

View file

@ -205,17 +205,6 @@ bool showNewClientPrompt(QWidget *parent, const QString &clientName)
return message.buttonRole(message.clickedButton()) == QMessageBox::AcceptRole;
}
bool showClearSettings(QWidget *parent)
{
const auto title = QObject::tr("%1 Clear Settings").arg(kAppName);
const auto message = QObject::tr(
"<p>Are you sure you want to clear all settings and restart %1?</p>"
"<p>This action cannot be undone.</p>"
)
.arg(kAppName);
return QMessageBox::question(parent, title, message) == QMessageBox::Yes;
}
void showReadOnlySettings(QWidget *parent, const QString &systemSettingsPath)
{
const auto title = QObject::tr("%1 Read-only settings").arg(kAppName);

View file

@ -27,8 +27,6 @@ void showCloseReminder(QWidget *parent);
bool showNewClientPrompt(QWidget *parent, const QString &clientName);
bool showClearSettings(QWidget *parent);
void showReadOnlySettings(QWidget *parent, const QString &systemSettingsPath);
bool showUpdateCheckOption(QWidget *parent);

View file

@ -109,7 +109,7 @@ void SettingsDialog::initConnections() const
connect(ui->groupSecurity, &QGroupBox::toggled, this, &SettingsDialog::updateTlsControlsEnabled);
connect(ui->groupService, &QGroupBox::toggled, this, &SettingsDialog::updateControls);
connect(ui->btnClearAllSettings, &QPushButton::clicked, this, &SettingsDialog::requestRemoveAllSettings);
connect(ui->btnClearAllSettings, &QPushButton::clicked, this, &SettingsDialog::resetAllSettings);
connect(ui->btnTlsRegenCert, &QPushButton::clicked, this, &SettingsDialog::regenCertificates);
connect(ui->comboTlsKeyLength, &QComboBox::currentIndexChanged, this, &SettingsDialog::updateRequestedKeySize);
connect(ui->btnTlsCertPath, &QPushButton::clicked, this, &SettingsDialog::browseCertificatePath);
@ -202,6 +202,17 @@ void SettingsDialog::showReadOnlyMessage()
messages::showReadOnlySettings(this, Settings::settingsFile());
}
void SettingsDialog::resetAllSettings()
{
auto result = QMessageBox::question(
this, tr("%1 Clear Settings").arg(kAppName),
tr("<p>Are you sure you want to clear all settings and restart %1?</p> <p>This action cannot be undone.</p>")
.arg(kAppName)
);
if (result == QMessageBox::Yes)
Q_EMIT requestRemoveAllSettings();
}
void SettingsDialog::updateText()
{
const auto logLevels = LogLevel::logLevelNames().count();

View file

@ -43,6 +43,7 @@ private:
void updateTlsControls();
void updateTlsControlsEnabled();
void showReadOnlyMessage();
void resetAllSettings();
void updateText();
/// @brief Load all settings.

View file

@ -700,14 +700,6 @@ Además, verifique que puede %1 el archivo de configuración del servidor: %2</t
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation type="unfinished">Un nuevo cliente llamado &apos;%1&apos; quiere conectarse</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 Borrar configuración</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished">&lt;p&gt;¿Está seguro de que desea borrar todas las configuraciones y reiniciar %1?&lt;/p&gt;&lt;p&gt;Esta acción no se puede deshacer.&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation type="unfinished">%1 Configuración de solo lectura</translation>
@ -1167,6 +1159,14 @@ Al habilitar esta opción, se deshabilitará la interfaz gráfica de usuario (GU
<source>Always run as system (work at login screen and UAC)</source>
<translation type="unfinished">Ejecutar siempre como sistema (funcionar en la pantalla de inicio de sesión y UAC)</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 Borrar configuración</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation type="unfinished">Mensajes obligatorios</translation>

View file

@ -700,14 +700,6 @@ Inoltre, verifica di poter %1 il file di configurazione del server: %2</translat
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation>Un nuovo client chiamato &quot;%1&quot; vuole connettersi</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation>%1 Azzera Impostazioni</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation>&lt;p&gt;Sei sicuro di voler azzerare tutte le impostazioni e riavviare %1?&lt;/p&gt;&lt;p&gt;Questa azione non può essere annullata.&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation>%1 Impostazioni di sola lettura</translation>
@ -1167,6 +1159,14 @@ L&apos;abilitazione di questa impostazione disabiliterà l&apos;interfaccia graf
<source>Always run as system (work at login screen and UAC)</source>
<translation>Esegui sempre come sistema (funziona nella schermata di accesso e UAC)</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 Azzera Impostazioni</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation>Messaggi richiesti</translation>

View file

@ -702,14 +702,6 @@ Additionally, check you are able to %1 the server config file: %2</source>
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation>新しいクライアント &apos;%1&apos; が接続を求めています</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation>%1 設定消去</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation>&lt;p&gt;全ての設定を消去して %1 を再起動しますか?&lt;/p&gt;&lt;p&gt;この操作は取り消せません。&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation>%1 読み取り専用設定</translation>
@ -1193,6 +1185,14 @@ Enabling this setting will disable the server config GUI.</source>
<source>Save log file to...</source>
<translation>ログをファイルに保存…</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 設定消去</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation>必須のメッセージ</translation>

View file

@ -700,14 +700,6 @@ Additionally, check you are able to %1 the server config file: %2</source>
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation>새 클라이언트 &apos;%1&apos;이(가) 연결을 요청합니다</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation>%1 설정 초기화</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation>&lt;p&gt;모든 설정을 초기화하고 %1을(를) 재시작할까요?&lt;/p&gt;&lt;p&gt;이 작업은 번복될 수 없습니다.&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation>%1 읽기 전용 설정</translation>
@ -1191,6 +1183,14 @@ Enabling this setting will disable the server config GUI.</source>
<source>Save log file to...</source>
<translation>로그 파일 저장 위치...</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 설정 초기화</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation>필수 메시지</translation>

View file

@ -700,14 +700,6 @@ Additionally, check you are able to %1 the server config file: %2</source>
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation>Новый клиент &apos;%1&apos; хочет подключиться</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation>%1 Сброс настроек</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation>&lt;p&gt;Вы уверены, что хотите сбросить все настройки и перезапустить %1?&lt;/p&gt;&lt;p&gt;Это действие нельзя отменить.&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation>%1 Настройки только для чтения</translation>
@ -1189,6 +1181,14 @@ Enabling this setting will disable the server config GUI.</source>
<source>Save log file to...</source>
<translation>Сохранить файл журнала в...</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 Сброс настроек</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation>Обязательные сообщения</translation>

View file

@ -702,14 +702,6 @@ Additionally, check you are able to %1 the server config file: %2</source>
<source>A new client called &apos;%1&apos; wants to connect</source>
<translation>名为“%1”的新客户端请求连接</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation>%1 清除设置</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt;&lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation>&lt;p&gt;您确定要清除所有设置并重启 %1 吗?&lt;/p&gt;&lt;p&gt;此操作无法撤销。&lt;/p&gt;</translation>
</message>
<message>
<source>%1 Read-only settings</source>
<translation>%1 只读设置</translation>
@ -1193,6 +1185,14 @@ Enabling this setting will disable the server config GUI.</source>
<source>Save log file to...</source>
<translation>保存日志文件到...</translation>
</message>
<message>
<source>%1 Clear Settings</source>
<translation type="unfinished">%1 清除设置</translation>
</message>
<message>
<source>&lt;p&gt;Are you sure you want to clear all settings and restart %1?&lt;/p&gt; &lt;p&gt;This action cannot be undone.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Required messages</source>
<translation>必要消息</translation>