mirror of
https://github.com/KenanZhu/AutoLibrary.git
synced 2026-08-02 06:09:36 +08:00
refactor(theme): 将重复的主题逻辑下沉至 ThemeManager
ThemeManager 新增: - clearTheme(theme) — 清除 QSS 并应用指定色调 - applyThemeOrClear(name, fallback) — 应用或回退的封装 - _applyColorScheme(theme) — Qt ColorScheme 设置的统一入口 - themeToReadable(need_theme) — 静态工具方法 ALSettingsWidget 移除: - _clearCustomTheme → 改用 themeInstance().clearTheme() - _applyCustomTheme → 改用 themeInstance().applyThemeOrClear() - _themeToReadable → 改用 ThemeManager.themeToReadable() ALSettingsWidget 仅保留 _applyTheme(含 setStyle 逻辑,供 AppInitializer 使用)
This commit is contained in:
@@ -89,7 +89,10 @@ def readThemeInfo(
|
||||
if "info.json" not in zf.namelist():
|
||||
raise ValueError("无效的 .altheme: 缺少 info.json")
|
||||
with zf.open("info.json") as fh:
|
||||
return json.loads(fh.read().decode("utf-8"))
|
||||
info = json.loads(fh.read().decode("utf-8"))
|
||||
if "name" not in info:
|
||||
raise ValueError("无效的 .altheme: info.json 缺少 'name' 字段")
|
||||
return info
|
||||
|
||||
|
||||
def wrapQssToAtheme(
|
||||
|
||||
Reference in New Issue
Block a user