Llançador inicial amb GUI PySide6: descàrrega i execució de jocs
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
"""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())
|
||||
Reference in New Issue
Block a user