feat(core): 更新窗口状态管理,统一使用window_manager

- 在多个模块中,将安装按钮状态管理从ui_manager迁移至window_manager,确保窗口状态的一致性和可维护性。
- 优化了ExtractionHandler、CloudflareOptimizer、DownloadManager、OfflineModeManager、PatchDetector等类中的状态更新逻辑,提升了代码的可读性和一致性。
This commit is contained in:
hyb-oyqq
2025-08-13 11:58:43 +08:00
parent 43a66f66a9
commit d07ef20e51
6 changed files with 56 additions and 83 deletions

View File

@@ -199,7 +199,8 @@ class CloudflareOptimizer:
# 恢复主窗口状态
self.main_window.setEnabled(True)
self.main_window.ui_manager.set_install_button_state("ready")
if hasattr(self.main_window, 'window_manager'):
self.main_window.window_manager.change_window_state(self.main_window.window_manager.STATE_READY)
# 显示取消消息
QtWidgets.QMessageBox.information(
@@ -332,7 +333,8 @@ class CloudflareOptimizer:
if msg_box.clickedButton() == cancel_button:
# 恢复主窗口状态
self.main_window.setEnabled(True)
self.main_window.ui_manager.set_install_button_state("ready")
if hasattr(self.main_window, 'window_manager'):
self.main_window.window_manager.change_window_state(self.main_window.window_manager.STATE_READY)
return False
# 用户点击了继续,重新禁用主窗口
@@ -403,7 +405,8 @@ class CloudflareOptimizer:
if msg_box.clickedButton() == cancel_button:
# 恢复主窗口状态
self.main_window.setEnabled(True)
self.main_window.ui_manager.set_install_button_state("ready")
if hasattr(self.main_window, 'window_manager'):
self.main_window.window_manager.change_window_state(self.main_window.window_manager.STATE_READY)
return False
else:
QtWidgets.QMessageBox.critical(
@@ -412,7 +415,8 @@ class CloudflareOptimizer:
"\n修改hosts文件失败请检查程序是否以管理员权限运行。\n"
)
# 恢复主窗口状态
self.main_window.ui_manager.set_install_button_state("ready")
if hasattr(self.main_window, 'window_manager'):
self.main_window.window_manager.change_window_state(self.main_window.window_manager.STATE_READY)
return False
# 用户点击了继续,重新禁用主窗口