"""Punto de entrada: arranca la QApplication y la ventana principal.""" from __future__ import annotations import sys from PySide6.QtWidgets import QApplication, QMessageBox from .config import load_config from .paths import config_file, data_root from .ui.main_window import MainWindow def main() -> int: app = QApplication(sys.argv) app.setApplicationName("jlauncher") cfg_path = config_file() try: config = load_config(cfg_path) except Exception as exc: # noqa: BLE001 - mostrar cualquier error de carga al usuario QMessageBox.critical( None, "Error cargando games.toml", f"No se pudo leer la configuración en:\n{cfg_path}\n\n{exc}", ) return 1 window = MainWindow(config, data_root(config.data_dir)) window.show() return app.exec() if __name__ == "__main__": raise SystemExit(main())