From fa985f1023a7b6e5fe92c87cc0813f4d94350b1d Mon Sep 17 00:00:00 2001 From: "dries.k" Date: Sun, 21 Aug 2022 10:20:00 +0200 Subject: [PATCH] respect system font sizes by default --- gotify_tray/database/default_settings.py | 5 ---- gotify_tray/gui/models/ApplicationModel.py | 15 ++++++---- gotify_tray/gui/widgets/MainWindow.py | 5 +++- gotify_tray/gui/widgets/MessageWidget.py | 34 +++++++++++++++------- 4 files changed, 36 insertions(+), 23 deletions(-) diff --git a/gotify_tray/database/default_settings.py b/gotify_tray/database/default_settings.py index 4376c1b..6ce350d 100644 --- a/gotify_tray/database/default_settings.py +++ b/gotify_tray/database/default_settings.py @@ -16,11 +16,6 @@ DEFAULT_SETTINGS = { "tray/notifications/icon/show": True, "watchdog/interval/s": 60, "MessageWidget/image/size": 33, - "MessageWidget/font/title": "Noto Sans,12,-1,5,75,0,0,0,0,0,Bold", - "MessageWidget/font/date": "Noto Sans,11,-1,5,50,1,0,0,0,0,Italic", - "MessageWidget/font/message": "Noto Sans,11,-1,5,50,0,0,0,0,0,Regular", - "ApplicationItem/font": "Noto Sans,10,-1,5,50,0,0,0,0,0,Regular", - "MainWindow/font/application": "Noto Sans,13,-1,5,75,0,0,0,0,0,Bold", "MainWindow/label/size": 25, "MainWindow/button/size": 33, "MainWindow/application/icon/size": 40, diff --git a/gotify_tray/gui/models/ApplicationModel.py b/gotify_tray/gui/models/ApplicationModel.py index 716fe38..8226004 100644 --- a/gotify_tray/gui/models/ApplicationModel.py +++ b/gotify_tray/gui/models/ApplicationModel.py @@ -26,9 +26,11 @@ class ApplicationModelItem(QtGui.QStandardItem): self.setDropEnabled(False) self.setData(application, ApplicationItemDataRole.ApplicationRole) self.setData(icon, ApplicationItemDataRole.IconRole) - font = QtGui.QFont() - font.fromString(settings.value("ApplicationItem/font", type=str)) - self.setFont(font) + + if s := settings.value("ApplicationItem/font", type=str): + font = QtGui.QFont() + font.fromString(s) + self.setFont(font) if icon: self.setIcon(icon) @@ -44,9 +46,10 @@ class ApplicationAllMessagesItem(QtGui.QStandardItem): super(ApplicationAllMessagesItem, self).__init__("ALL MESSAGES") self.setDropEnabled(False) self.setDragEnabled(False) - font = QtGui.QFont() - font.fromString(settings.value("ApplicationItem/font", type=str)) - self.setFont(font) + if s := settings.value("ApplicationItem/font", type=str): + font = QtGui.QFont() + font.fromString(s) + self.setFont(font) class ApplicationModel(QtGui.QStandardItemModel): diff --git a/gotify_tray/gui/widgets/MainWindow.py b/gotify_tray/gui/widgets/MainWindow.py index b76edd1..ad4b974 100644 --- a/gotify_tray/gui/widgets/MainWindow.py +++ b/gotify_tray/gui/widgets/MainWindow.py @@ -68,7 +68,10 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): self.listView_applications.setIconSize(QtCore.QSize(size, size)) font_title = QtGui.QFont() - font_title.fromString(settings.value("MainWindow/font/application", type=str)) + if s := settings.value("MainWindow/font/application", type=str): + font_title.fromString(s) + else: + font_title.setBold(True) self.label_application.setFont(font_title) # Set tooltips diff --git a/gotify_tray/gui/widgets/MessageWidget.py b/gotify_tray/gui/widgets/MessageWidget.py index 8e737f9..db1cde6 100644 --- a/gotify_tray/gui/widgets/MessageWidget.py +++ b/gotify_tray/gui/widgets/MessageWidget.py @@ -21,17 +21,7 @@ class MessageWidget(QtWidgets.QWidget, Ui_Form): message = message_item.data(MessageItemDataRole.MessageRole) # Fonts - font_title = QtGui.QFont() - font_date = QtGui.QFont() - font_content = QtGui.QFont() - - font_title.fromString(settings.value("MessageWidget/font/title", type=str)) - font_date.fromString(settings.value("MessageWidget/font/date", type=str)) - font_content.fromString(settings.value("MessageWidget/font/message", type=str)) - - self.label_title.setFont(font_title) - self.label_date.setFont(font_date) - self.label_message.setFont(font_content) + self.set_fonts() # Display message contents self.label_title.setText(message.title) @@ -74,6 +64,28 @@ class MessageWidget(QtWidgets.QWidget, Ui_Form): self.link_callbacks() + def set_fonts(self): + font_title = QtGui.QFont() + font_date = QtGui.QFont() + font_content = QtGui.QFont() + + if s := settings.value("MessageWidget/font/title", type=str): + font_title.fromString(s) + else: + font_title.setBold(True) + + if s := settings.value("MessageWidget/font/date", type=str): + font_date.fromString(s) + else: + font_date.setItalic(True) + + if s := settings.value("MessageWidget/font/message", type=str): + font_content.fromString(s) + + self.label_title.setFont(font_title) + self.label_date.setFont(font_date) + self.label_message.setFont(font_content) + def link_callbacks(self): self.pb_delete.clicked.connect( lambda: self.deletion_requested.emit(self.message_item)