#pragma once
#include "TorneoFactory.h"
#include <QWidget>
#include <QButtonGroup>

namespace Ui { class PantallaInicio; }

// ──────────────────────────────────────────────
//  PantallaInicio
//  Widget de bienvenida: galería de plantillas
//  + lista de torneos guardados (.json).
// ──────────────────────────────────────────────
class PantallaInicio : public QWidget {
    Q_OBJECT
public:
    explicit PantallaInicio(QWidget* parent = nullptr);
    ~PantallaInicio();

signals:
    // Emitido cuando el usuario quiere crear un torneo nuevo
    void torneoCreado(const QString& nombre, const QString& juego,
                      TorneoFactory::TipoTorneo tipo);
    // Emitido cuando el usuario quiere cargar un torneo guardado
    void torneoSolicitadoCarga(const QString& rutaArchivo);

private slots:
    void onCrear();
    void onSeleccionarGuardado();
    void onCargarGuardado();

private:
    void setupUI();
    void cargarListaGuardados();
    void aplicarEstilo();

    Ui::PantallaInicio*    ui;
    QButtonGroup*          m_grupoPlantillas = nullptr;
};
