Add GUI desktop application

- Add gui/ package: CustomTkinter app with dashboard, mods, tools, logs,
  and settings views; first-run SetupWizard for config.json generation
- Add gui.py root entry point (calls gui.run_app())
- Add selection.json for GUI selection state persistence
- Add customtkinter to requirements.txt
- Fix link_mods.py minor issues surfaced during GUI integration
- Add modlist_html/Test_Preset_A.html and Test_Preset_B.html as example inputs
- Update README.md: add GUI prerequisites, gui.py script section, gui/ folder
  structure, customtkinter to prerequisites table
- Update CLAUDE.md: add python gui.py to common commands, document GUI package
  architecture and views

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
revernomad17
2026-04-08 13:36:49 +07:00
parent 595544e94f
commit 57895a04d3
20 changed files with 2185 additions and 6 deletions

24
gui/__init__.py Normal file
View File

@@ -0,0 +1,24 @@
"""
gui — Arma Mod Manager UI package.
Entry point:
from gui import run_app
run_app()
"""
from __future__ import annotations
import customtkinter as ctk
# Apply theme before any widget is created
ctk.set_appearance_mode("dark")
ctk.set_default_color_theme("blue")
def run_app() -> None:
"""Create and start the main window."""
from gui.app import ArmaModManagerApp
app = ArmaModManagerApp()
app.mainloop()
__all__ = ["run_app"]