set message priority color in stylesheet
This commit is contained in:
@@ -5,3 +5,11 @@ MessageWidget QPushButton[objectName^="pb_delete"] {
|
|||||||
MessageWidget QLabel[objectName^="label_date"] {
|
MessageWidget QLabel[objectName^="label_date"] {
|
||||||
margin-right: 1px;
|
margin-right: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MessageWidget QLabel[priority="medium"] {
|
||||||
|
background-color: #b3e67e22;
|
||||||
|
}
|
||||||
|
|
||||||
|
MessageWidget QLabel[priority="high"] {
|
||||||
|
background-color: #e74c3c;
|
||||||
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from ..models.MessagesModel import MessageItemDataRole, MessagesModelItem
|
|||||||
from ..designs.widget_message import Ui_Form
|
from ..designs.widget_message import Ui_Form
|
||||||
from gotify_tray.database import Downloader
|
from gotify_tray.database import Downloader
|
||||||
from gotify_tray.database import Settings
|
from gotify_tray.database import Settings
|
||||||
from gotify_tray.utils import convert_links, get_image
|
from gotify_tray.utils import convert_links, get_image, update_widget_property
|
||||||
from gotify_tray.gui.themes import get_theme_file
|
from gotify_tray.gui.themes import get_theme_file
|
||||||
from gotify_tray.gotify.models import GotifyMessageModel
|
from gotify_tray.gotify.models import GotifyMessageModel
|
||||||
|
|
||||||
@@ -126,9 +126,9 @@ class MessageWidget(QtWidgets.QWidget, Ui_Form):
|
|||||||
return
|
return
|
||||||
|
|
||||||
if priority >= 4 and priority <= 7:
|
if priority >= 4 and priority <= 7:
|
||||||
self.label_priority.setStyleSheet("background-color: rgba(230, 126, 34, 0.7);")
|
update_widget_property(self.label_priority, "priority", "medium")
|
||||||
elif priority > 7:
|
elif priority > 7:
|
||||||
self.label_priority.setStyleSheet("background-color: #e74c3c;")
|
update_widget_property(self.label_priority, "priority", "high")
|
||||||
|
|
||||||
def link_hovered_callback(self, link: str):
|
def link_hovered_callback(self, link: str):
|
||||||
if not settings.value("ImagePopup/enabled", type=bool):
|
if not settings.value("ImagePopup/enabled", type=bool):
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import os
|
|||||||
from gotify_tray.database import Settings
|
from gotify_tray.database import Settings
|
||||||
from gotify_tray.gotify.models import GotifyVersionModel
|
from gotify_tray.gotify.models import GotifyVersionModel
|
||||||
from gotify_tray.tasks import ImportSettingsTask, VerifyServerInfoTask
|
from gotify_tray.tasks import ImportSettingsTask, VerifyServerInfoTask
|
||||||
|
from gotify_tray.utils import update_widget_property
|
||||||
from PyQt6 import QtWidgets
|
from PyQt6 import QtWidgets
|
||||||
|
|
||||||
from ..designs.widget_server import Ui_Dialog
|
from ..designs.widget_server import Ui_Dialog
|
||||||
@@ -24,9 +25,9 @@ class ServerInfoDialog(QtWidgets.QDialog, Ui_Dialog):
|
|||||||
self.link_callbacks()
|
self.link_callbacks()
|
||||||
|
|
||||||
def test_server_info(self):
|
def test_server_info(self):
|
||||||
self.pb_test.setStyleSheet("")
|
update_widget_property(self.pb_test, "state", "")
|
||||||
self.line_url.setStyleSheet("")
|
update_widget_property(self.line_url, "state", "")
|
||||||
self.line_token.setStyleSheet("")
|
update_widget_property(self.line_token, "state", "")
|
||||||
self.label_server_info.clear()
|
self.label_server_info.clear()
|
||||||
|
|
||||||
url = self.line_url.text()
|
url = self.line_url.text()
|
||||||
@@ -43,40 +44,34 @@ class ServerInfoDialog(QtWidgets.QDialog, Ui_Dialog):
|
|||||||
self.task.incorrect_url.connect(self.incorrect_url_callback)
|
self.task.incorrect_url.connect(self.incorrect_url_callback)
|
||||||
self.task.start()
|
self.task.start()
|
||||||
|
|
||||||
def update_widget_state(self, widget: QtWidgets.QWidget, state: str):
|
|
||||||
widget.setProperty("state", state)
|
|
||||||
widget.style().unpolish(widget)
|
|
||||||
widget.style().polish(widget)
|
|
||||||
widget.update()
|
|
||||||
|
|
||||||
def server_info_success(self, version: GotifyVersionModel):
|
def server_info_success(self, version: GotifyVersionModel):
|
||||||
self.pb_test.setEnabled(True)
|
self.pb_test.setEnabled(True)
|
||||||
self.label_server_info.setText(f"Version: {version.version}")
|
self.label_server_info.setText(f"Version: {version.version}")
|
||||||
self.update_widget_state(self.pb_test, "success")
|
update_widget_property(self.pb_test, "state", "success")
|
||||||
self.update_widget_state(self.line_token, "success")
|
update_widget_property(self.line_token, "state", "success")
|
||||||
self.update_widget_state(self.line_url, "success")
|
update_widget_property(self.line_url, "state", "success")
|
||||||
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setEnabled(True)
|
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setEnabled(True)
|
||||||
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setFocus()
|
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setFocus()
|
||||||
|
|
||||||
def incorrect_token_callback(self, version: GotifyVersionModel):
|
def incorrect_token_callback(self, version: GotifyVersionModel):
|
||||||
self.pb_test.setEnabled(True)
|
self.pb_test.setEnabled(True)
|
||||||
self.label_server_info.setText(f"Version: {version.version}")
|
self.label_server_info.setText(f"Version: {version.version}")
|
||||||
self.update_widget_state(self.pb_test, "failed")
|
update_widget_property(self.pb_test, "state", "failed")
|
||||||
self.update_widget_state(self.line_token, "failed")
|
update_widget_property(self.line_token, "state", "failed")
|
||||||
self.update_widget_state(self.line_url, "success")
|
update_widget_property(self.line_url, "state", "success")
|
||||||
self.line_token.setFocus()
|
self.line_token.setFocus()
|
||||||
|
|
||||||
def incorrect_url_callback(self):
|
def incorrect_url_callback(self):
|
||||||
self.pb_test.setEnabled(True)
|
self.pb_test.setEnabled(True)
|
||||||
self.label_server_info.clear()
|
self.label_server_info.clear()
|
||||||
self.update_widget_state(self.pb_test, "failed")
|
update_widget_property(self.pb_test, "state", "failed")
|
||||||
self.update_widget_state(self.line_token, "success")
|
update_widget_property(self.line_token, "state", "success")
|
||||||
self.update_widget_state(self.line_url, "failed")
|
update_widget_property(self.line_url, "state", "failed")
|
||||||
self.line_url.setFocus()
|
self.line_url.setFocus()
|
||||||
|
|
||||||
def input_changed_callback(self):
|
def input_changed_callback(self):
|
||||||
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setDisabled(True)
|
self.buttonBox.button(QtWidgets.QDialogButtonBox.StandardButton.Ok).setDisabled(True)
|
||||||
self.update_widget_state(self.pb_test, "")
|
update_widget_property(self.pb_test, "state", "")
|
||||||
|
|
||||||
def import_success_callback(self):
|
def import_success_callback(self):
|
||||||
self.line_url.setText(settings.value("Server/url", type=str))
|
self.line_url.setText(settings.value("Server/url", type=str))
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import subprocess
|
|||||||
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Iterator
|
from typing import Iterator
|
||||||
|
from PyQt6 import QtWidgets
|
||||||
|
|
||||||
from gotify_tray import gotify
|
from gotify_tray import gotify
|
||||||
from gotify_tray.database import Downloader
|
from gotify_tray.database import Downloader
|
||||||
@@ -95,3 +96,9 @@ def get_icon(name: str) -> str:
|
|||||||
name += "-macos"
|
name += "-macos"
|
||||||
|
|
||||||
return get_abs_path(f"gotify_tray/gui/images/{name}.png")
|
return get_abs_path(f"gotify_tray/gui/images/{name}.png")
|
||||||
|
|
||||||
|
def update_widget_property(widget: QtWidgets.QWidget, property: str, value: str):
|
||||||
|
widget.setProperty(property, value)
|
||||||
|
widget.style().unpolish(widget)
|
||||||
|
widget.style().polish(widget)
|
||||||
|
widget.update()
|
||||||
|
|||||||
Reference in New Issue
Block a user