feat(ui): 新增无人值守模式

This commit is contained in:
DLmaster361
2025-05-04 15:18:26 +08:00
parent 418c3d4742
commit 41412e1ef4
10 changed files with 79 additions and 53 deletions

View File

@@ -103,6 +103,9 @@ class GlobalConfig(QConfig):
"Function", "IfSilence", False, BoolValidator()
)
self.function_BossKey = ConfigItem("Function", "BossKey", "")
self.function_UnattendedMode = ConfigItem(
"Function", "UnattendedMode", False, BoolValidator()
)
self.function_IfAgreeBilibili = ConfigItem(
"Function", "IfAgreeBilibili", False, BoolValidator()
)
@@ -633,6 +636,7 @@ class AppConfig(GlobalConfig):
self.gameid_path = self.app_path / "data/gameid.txt"
self.version_path = self.app_path / "resources/version.json"
self.main_window = None
self.PASSWORD = ""
self.running_list = []
self.silence_list = []

View File

@@ -29,17 +29,15 @@ from loguru import logger
from PySide6.QtCore import Qt
from qfluentwidgets import InfoBar, InfoBarPosition
from .config import Config
class _MainInfoBar:
"""信息通知栏"""
def __init__(self, main_window=None):
self.main_window = main_window
def push_info_bar(self, mode: str, title: str, content: str, time: int):
"""推送到信息通知栏"""
if self.main_window is None:
if Config.main_window is None:
logger.error("信息通知栏未设置父窗口")
return None
@@ -61,7 +59,7 @@ class _MainInfoBar:
isClosable=True,
position=InfoBarPosition.TOP_RIGHT,
duration=time,
parent=self.main_window,
parent=Config.main_window,
)
else:
logger.error(f"未知的通知栏模式: {mode}")

View File

@@ -173,10 +173,9 @@ class _TaskManager(QObject):
create_gui = Signal(Task)
connect_gui = Signal(Task)
def __init__(self, main_window=None):
def __init__(self):
super(_TaskManager, self).__init__()
self.main_window = main_window
self.task_dict: Dict[str, Task] = {}
def add_task(
@@ -279,7 +278,7 @@ class _TaskManager(QObject):
}
choice = ProgressRingMessageBox(
self.main_window,
Config.main_window,
f"{mode_book[Config.queue_dict[name]["Config"].get(Config.queue_dict[name]["Config"].queueSet_AfterAccomplish)]}倒计时",
)
if choice.exec():
@@ -325,7 +324,7 @@ class _TaskManager(QObject):
def push_dialog(self, name: str, title: str, content: str):
"""推送对话框"""
choice = MessageBox(title, content, self.main_window)
choice = MessageBox(title, content, Config.main_window)
choice.yesButton.setText("")
choice.cancelButton.setText("")

View File

@@ -55,6 +55,9 @@ class _MainTimer(QWidget):
"""长时间定期检定任务"""
Config.get_gameid()
Config.main_window.setting.show_notice()
if Config.get(Config.update_IfAutoUpdate):
Config.main_window.setting.check_update()
def timed_start(self):
"""定时启动代理任务"""