change the status widget on theme change
This commit is contained in:
@@ -341,9 +341,13 @@ class MainApplication(QtWidgets.QApplication):
|
|||||||
self.refresh_applications()
|
self.refresh_applications()
|
||||||
|
|
||||||
def theme_change_requested_callback(self, theme: str):
|
def theme_change_requested_callback(self, theme: str):
|
||||||
# Set the theme, update the main window and message widget icons
|
# Set the theme
|
||||||
set_theme(self, theme)
|
set_theme(self, theme)
|
||||||
|
|
||||||
|
# Update the main window icons
|
||||||
self.main_window.set_icons()
|
self.main_window.set_icons()
|
||||||
|
|
||||||
|
# Update the message widget icons
|
||||||
for r in range(self.messages_model.rowCount()):
|
for r in range(self.messages_model.rowCount()):
|
||||||
message_widget: MessageWidget = self.main_window.listView_messages.indexWidget(
|
message_widget: MessageWidget = self.main_window.listView_messages.indexWidget(
|
||||||
self.messages_model.index(r, 0)
|
self.messages_model.index(r, 0)
|
||||||
|
|||||||
@@ -85,6 +85,9 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
|
|||||||
|
|
||||||
size = settings.value("MainWindow/application/icon/size", type=int)
|
size = settings.value("MainWindow/application/icon/size", type=int)
|
||||||
self.listView_applications.setIconSize(QtCore.QSize(size, size))
|
self.listView_applications.setIconSize(QtCore.QSize(size, size))
|
||||||
|
|
||||||
|
# Refresh the status widget
|
||||||
|
self.status_widget.refresh()
|
||||||
|
|
||||||
def set_active(self):
|
def set_active(self):
|
||||||
self.status_widget.set_active()
|
self.status_widget.set_active()
|
||||||
|
|||||||
@@ -13,8 +13,10 @@ class StatusWidget(QtWidgets.QLabel):
|
|||||||
self.setFixedSize(QtCore.QSize(20, 20))
|
self.setFixedSize(QtCore.QSize(20, 20))
|
||||||
self.setScaledContents(True)
|
self.setScaledContents(True)
|
||||||
self.set_connecting()
|
self.set_connecting()
|
||||||
|
self.image = None
|
||||||
|
|
||||||
def set_status(self, image: str):
|
def set_status(self, image: str):
|
||||||
|
self.image = image
|
||||||
self.setPixmap(QtGui.QPixmap(get_theme_file(image)))
|
self.setPixmap(QtGui.QPixmap(get_theme_file(image)))
|
||||||
|
|
||||||
def set_active(self):
|
def set_active(self):
|
||||||
@@ -32,3 +34,8 @@ class StatusWidget(QtWidgets.QLabel):
|
|||||||
def set_error(self):
|
def set_error(self):
|
||||||
self.setToolTip("Listener error")
|
self.setToolTip("Listener error")
|
||||||
self.set_status("status_error.svg")
|
self.set_status("status_error.svg")
|
||||||
|
|
||||||
|
def refresh(self):
|
||||||
|
# refresh on theme change
|
||||||
|
if self.image:
|
||||||
|
self.set_status(self.image)
|
||||||
|
|||||||
Reference in New Issue
Block a user