From f10ada6cd0edb004d9a913c1793ee7627b1c9057 Mon Sep 17 00:00:00 2001 From: "dries.k" Date: Fri, 4 Nov 2022 12:02:01 +0100 Subject: [PATCH] add option to reset fonts to default --- gotify_tray/gui/designs/widget_settings.py | 7 +++++ gotify_tray/gui/designs/widget_settings.ui | 11 ++++++++ gotify_tray/gui/widgets/SettingsDialog.py | 33 +++++++++++++++++----- 3 files changed, 44 insertions(+), 7 deletions(-) diff --git a/gotify_tray/gui/designs/widget_settings.py b/gotify_tray/gui/designs/widget_settings.py index f622f6f..31df766 100644 --- a/gotify_tray/gui/designs/widget_settings.py +++ b/gotify_tray/gui/designs/widget_settings.py @@ -96,6 +96,12 @@ class Ui_Dialog(object): self.tab_fonts.setObjectName("tab_fonts") self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.tab_fonts) self.verticalLayout_5.setObjectName("verticalLayout_5") + self.horizontalLayout_5 = QtWidgets.QHBoxLayout() + self.horizontalLayout_5.setObjectName("horizontalLayout_5") + self.pb_reset_fonts = QtWidgets.QPushButton(self.tab_fonts) + self.pb_reset_fonts.setObjectName("pb_reset_fonts") + self.horizontalLayout_5.addWidget(self.pb_reset_fonts) + self.verticalLayout_5.addLayout(self.horizontalLayout_5) self.groupBox_fonts_message = QtWidgets.QGroupBox(self.tab_fonts) self.groupBox_fonts_message.setObjectName("groupBox_fonts_message") self.layout_fonts_message = QtWidgets.QVBoxLayout(self.groupBox_fonts_message) @@ -215,6 +221,7 @@ class Ui_Dialog(object): self.groupBox_server_info.setTitle(_translate("Dialog", "Server info")) self.pb_change_server_info.setText(_translate("Dialog", "Change server info")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_general), _translate("Dialog", "General")) + self.pb_reset_fonts.setText(_translate("Dialog", "Reset all fonts")) self.groupBox_fonts_message.setTitle(_translate("Dialog", "Message")) self.pb_font_message_title.setText(_translate("Dialog", "Title")) self.pb_font_message_date.setText(_translate("Dialog", "Date")) diff --git a/gotify_tray/gui/designs/widget_settings.ui b/gotify_tray/gui/designs/widget_settings.ui index 34d540b..5660f81 100644 --- a/gotify_tray/gui/designs/widget_settings.ui +++ b/gotify_tray/gui/designs/widget_settings.ui @@ -209,6 +209,17 @@ Fonts + + + + + + Reset all fonts + + + + + diff --git a/gotify_tray/gui/widgets/SettingsDialog.py b/gotify_tray/gui/widgets/SettingsDialog.py index 371a84d..2a37ade 100644 --- a/gotify_tray/gui/widgets/SettingsDialog.py +++ b/gotify_tray/gui/widgets/SettingsDialog.py @@ -83,6 +83,16 @@ class SettingsDialog(QtWidgets.QDialog, Ui_Dialog): self.combo_logging.setCurrentText(settings.value("logging/level", type=str)) # Fonts + self.add_message_widget() + + # Advanced + self.groupbox_image_popup.setChecked( + settings.value("ImagePopup/enabled", type=bool) + ) + self.spin_popup_w.setValue(settings.value("ImagePopup/w", type=int)) + self.spin_popup_h.setValue(settings.value("ImagePopup/h", type=int)) + + def add_message_widget(self): self.message_widget = MessageWidget( MessagesModelItem( GotifyMessageModel( @@ -97,13 +107,6 @@ class SettingsDialog(QtWidgets.QDialog, Ui_Dialog): ) self.layout_fonts_message.addWidget(self.message_widget) - # Advanced - self.groupbox_image_popup.setChecked( - settings.value("ImagePopup/enabled", type=bool) - ) - self.spin_popup_w.setValue(settings.value("ImagePopup/w", type=int)) - self.spin_popup_h.setValue(settings.value("ImagePopup/h", type=int)) - def change_server_info_callback(self): self.server_changed = verify_server(force_new=True, enable_import=False) @@ -149,6 +152,20 @@ class SettingsDialog(QtWidgets.QDialog, Ui_Dialog): self.import_settings_task.success.connect(self.import_success_callback) self.import_settings_task.start() + def reset_fonts_callback(self): + response = QtWidgets.QMessageBox.warning( + self, + "Are you sure?", + "Reset all fonts?", + QtWidgets.QMessageBox.StandardButton.Ok + | QtWidgets.QMessageBox.StandardButton.Cancel, + defaultButton=QtWidgets.QMessageBox.StandardButton.Cancel, + ) + if response == QtWidgets.QMessageBox.StandardButton.Ok: + settings.remove("MessageWidget/font") + self.layout_fonts_message.removeWidget(self.message_widget) + self.add_message_widget() + def reset_callback(self): response = QtWidgets.QMessageBox.warning( self, @@ -187,6 +204,8 @@ class SettingsDialog(QtWidgets.QDialog, Ui_Dialog): ) # Fonts + self.pb_reset_fonts.clicked.connect(self.reset_fonts_callback) + self.pb_font_message_title.clicked.connect( lambda: self.change_font_callback("title") )