Skip to content

Commit e40ea11

Browse files
committed
[UI] Forced reset to activate the settings options custom values connected.
1 parent 56074a2 commit e40ea11

File tree

6 files changed

+25
-56
lines changed

6 files changed

+25
-56
lines changed

src/qt/pivx/PIVXGUI.cpp

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -283,28 +283,7 @@ void PIVXGUI::createTrayIconMenu() {
283283
// Configuration of the tray icon (or dock icon) icon menu
284284
trayIconMenu->addAction(toggleHideAction);
285285
trayIconMenu->addSeparator();
286-
/*
287-
trayIconMenu->addAction(sendCoinsAction);
288-
trayIconMenu->addAction(receiveCoinsAction);
289-
trayIconMenu->addAction(privacyAction);
290-
trayIconMenu->addSeparator();
291-
trayIconMenu->addAction(signMessageAction);
292-
trayIconMenu->addAction(verifyMessageAction);
293-
trayIconMenu->addAction(bip38ToolAction);
294-
trayIconMenu->addSeparator();
295-
trayIconMenu->addAction(optionsAction);
296-
trayIconMenu->addSeparator();
297-
trayIconMenu->addAction(openInfoAction);
298-
trayIconMenu->addAction(openRPCConsoleAction);
299-
trayIconMenu->addAction(openNetworkAction);
300-
trayIconMenu->addAction(openPeersAction);
301-
trayIconMenu->addAction(openRepairAction);
302-
trayIconMenu->addSeparator();
303-
trayIconMenu->addAction(openConfEditorAction);
304-
trayIconMenu->addAction(openMNConfEditorAction);
305-
trayIconMenu->addAction(showBackupsAction);
306-
trayIconMenu->addAction(openBlockExplorerAction);
307-
*/
286+
308287
#ifndef Q_OS_MAC // This is built-in on Mac
309288
trayIconMenu->addSeparator();
310289
trayIconMenu->addAction(quitAction);

src/qt/pivx/settings/settingsdisplayoptionswidget.cpp

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,7 @@ SettingsDisplayOptionsWidget::SettingsDisplayOptionsWidget(PIVXGUI* _window, QWi
9696
setCssBtnSecondary(ui->pushButtonClean);
9797

9898
initLanguages();
99-
connect(ui->comboBoxLanguage, SIGNAL(currentIndexChanged()), this, SLOT(showRestartWarning(bool)));
100-
connect(ui->comboBoxLanguage ,SIGNAL(currentIndexChanged(const QString&)),this, SLOT(languageChanged(const QString&)));
99+
connect(ui->pushButtonSave, SIGNAL(clicked()), parent, SLOT(onSaveOptionsClicked()));
101100
connect(ui->pushButtonReset, SIGNAL(clicked()), this, SLOT(onResetClicked()));
102101
connect(ui->pushButtonClean, SIGNAL(clicked()), parent, SLOT(onDiscardChanges()));
103102
}
@@ -122,32 +121,6 @@ void SettingsDisplayOptionsWidget::initLanguages(){
122121
}
123122
}
124123

125-
void SettingsDisplayOptionsWidget::languageChanged(const QString& newValue){
126-
QString sel = ui->comboBoxLanguage->currentData().toString();
127-
QSettings settings;
128-
if (settings.value("language") != sel){
129-
settings.setValue("language", sel);
130-
//emit onLanguageSelected();
131-
}
132-
}
133-
134-
void SettingsDisplayOptionsWidget::showRestartWarning(bool fPersistent){
135-
136-
// TODO: Add warning..
137-
/*
138-
ui->statusLabel->setStyleSheet("QLabel { color: red; }");
139-
140-
if (fPersistent) {
141-
ui->statusLabel->setText(tr("Client restart required to activate changes."));
142-
} else {
143-
ui->statusLabel->setText(tr("This change would require a client restart."));
144-
// clear non-persistent status label after 10 seconds
145-
// Todo: should perhaps be a class attribute, if we extend the use of statusLabel
146-
QTimer::singleShot(10000, this, SLOT(clearStatusLabel()));
147-
}
148-
*/
149-
}
150-
151124
void SettingsDisplayOptionsWidget::onResetClicked() {
152125
if (clientModel) {
153126
OptionsModel *optionsModel = clientModel->getOptionsModel();

src/qt/pivx/settings/settingsdisplayoptionswidget.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ class SettingsDisplayOptionsWidget : public PWidget
2626
void loadClientModel() override;
2727

2828
public slots:
29-
void showRestartWarning(bool fPersistent);
30-
void languageChanged(const QString& newValue);
3129
void onResetClicked();
3230

3331
private:

src/qt/pivx/settings/settingswalletrepairwidget.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ void SettingsWalletRepairWidget::buildParameterlist(QString arg)
165165
// Append repair parameter to command line.
166166
args.append(arg);
167167

168-
// Send command-line arguments to BitcoinGUI::handleRestart()
168+
// Send command-line arguments to PIVXGUI::handleRestart()
169169
emit handleRestart(args);
170170
}
171171

src/qt/pivx/settings/settingswidget.cpp

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#include "qt/pivx/settings/settingsinformationwidget.h"
1515
#include "qt/pivx/settings/settingsconsolewidget.h"
1616
#include "qt/pivx/qtutils.h"
17+
#include "qt/pivx/defaultdialog.h"
1718
#include "optionsmodel.h"
1819
#include "clientmodel.h"
1920
#include "utilitydialog.h"
@@ -202,9 +203,17 @@ void SettingsWidget::onResetAction(){
202203
}
203204

204205
void SettingsWidget::onSaveOptionsClicked(){
205-
mapper->submit();
206-
pwalletMain->MarkDirty();
207-
inform(tr("Options stored"));
206+
if(mapper->submit()) {
207+
pwalletMain->MarkDirty();
208+
if (this->clientModel->getOptionsModel()->isRestartRequired()) {
209+
openStandardDialog(tr("Restart required"), tr("You wallet will be restarted to apply the changes\n"), tr("OK"));
210+
emit handleRestart(QStringList());
211+
} else {
212+
inform(tr("Options stored"));
213+
}
214+
} else {
215+
inform(tr("Options store failed"));
216+
}
208217
}
209218

210219
void SettingsWidget::onFileClicked() {
@@ -384,6 +393,15 @@ void SettingsWidget::setMapper(){
384393
settingsDisplayOptionsWidget->setMapper(mapper);
385394
}
386395

396+
void SettingsWidget::openStandardDialog(QString title, QString body, QString okBtn, QString cancelBtn){
397+
showHideOp(true);
398+
DefaultDialog *confirmDialog = new DefaultDialog(window);
399+
confirmDialog->setText(title, body, okBtn, cancelBtn);
400+
confirmDialog->adjustSize();
401+
openDialogWithOpaqueBackground(confirmDialog, window);
402+
confirmDialog->deleteLater();
403+
}
404+
387405
SettingsWidget::~SettingsWidget(){
388406
delete ui;
389407
}

src/qt/pivx/settings/settingswidget.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ private slots:
9595
QList<QPushButton*> options;
9696

9797
void selectOption(QPushButton* option);
98+
void openStandardDialog(QString title = "", QString body = "", QString okBtn = "OK", QString cancelBtn = "");
9899
};
99100

100101
#endif // SETTINGSWIDGET_H

0 commit comments

Comments
 (0)