feat: 新版本时提醒参数设置导航 (#103)
This commit is contained in:
+36
-1
@@ -80,12 +80,22 @@ class MainWindow(FluentWindow):
|
||||
self.pddTaskPageEvent.update_admin_base_url
|
||||
)
|
||||
self.addSubInterface(self.pddTaskPage, FIF.HOME, "pdd")
|
||||
self.addSubInterface(
|
||||
self.settingsNavigationItem = self.addSubInterface(
|
||||
self.settingsPage,
|
||||
FIF.SETTING,
|
||||
"设置",
|
||||
NavigationItemPosition.BOTTOM,
|
||||
)
|
||||
self._settings_navigation_text = self.settingsNavigationItem.text()
|
||||
self._settings_navigation_light_color = (
|
||||
self.settingsNavigationItem.lightTextColor
|
||||
)
|
||||
self._settings_navigation_dark_color = (
|
||||
self.settingsNavigationItem.darkTextColor
|
||||
)
|
||||
self.settingsPage.eventBinder.updateEventBinder.updateAvailabilityChanged.connect(
|
||||
self._set_update_navigation_reminder
|
||||
)
|
||||
|
||||
self.setWindowTitle("采集采购工具")
|
||||
self.setMinimumSize(820, 560)
|
||||
@@ -93,6 +103,31 @@ class MainWindow(FluentWindow):
|
||||
self._moveToScreenCenter()
|
||||
self.pddTaskPageEvent.load_initial_tasks()
|
||||
|
||||
def _set_update_navigation_reminder(
|
||||
self,
|
||||
available: bool,
|
||||
current_version: str,
|
||||
latest_version: str,
|
||||
) -> None:
|
||||
"""用颜色和文字共同提醒更新,不让提示只依赖颜色。"""
|
||||
|
||||
if available:
|
||||
self.settingsNavigationItem.setText(
|
||||
f"{self._settings_navigation_text}(有更新)"
|
||||
)
|
||||
self.settingsNavigationItem.setTextColor("#B45309", "#FBBF24")
|
||||
self.settingsNavigationItem.setToolTip(
|
||||
f"发现新版本 {latest_version},当前版本 {current_version}"
|
||||
)
|
||||
return
|
||||
|
||||
self.settingsNavigationItem.setText(self._settings_navigation_text)
|
||||
self.settingsNavigationItem.setTextColor(
|
||||
self._settings_navigation_light_color,
|
||||
self._settings_navigation_dark_color,
|
||||
)
|
||||
self.settingsNavigationItem.setToolTip(self._settings_navigation_text)
|
||||
|
||||
def _moveToScreenCenter(self):
|
||||
screen = QApplication.primaryScreen()
|
||||
if screen is None:
|
||||
|
||||
Reference in New Issue
Block a user