From b166a7309e49368fc14c846f67b7a11e79a1f2d8 Mon Sep 17 00:00:00 2001
From: Ulysse Durand <ulysse.durand@ens-lyon.fr>
Date: Fri, 11 Apr 2025 22:30:51 +0200
Subject: [PATCH] =?UTF-8?q?=C3=87a=20marche:?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 motus/jeu.cpp         | 5 +----
 motus/jeu.h           | 2 +-
 motus/lettermodel.cpp | 7 +++----
 motus/lettermodel.h   | 2 +-
 motus/main.cpp        | 6 ++++--
 5 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/motus/jeu.cpp b/motus/jeu.cpp
index 14ace9f..4a14519 100644
--- a/motus/jeu.cpp
+++ b/motus/jeu.cpp
@@ -4,11 +4,8 @@
 #include <QQmlContext>
 
 
-Jeu::Jeu(QQmlApplicationEngine* engine, QObject *parent) : QObject(parent), engine(engine) {
+Jeu::Jeu(QQmlApplicationEngine* engine, int widht, int height, QObject *parent) : QObject(parent), width(width), height(height), engine(engine) {
     brain = new Brain("./");
-
-    width = 10;
-    height = 7;
 }
 
 int Jeu::getWidth() {return width;}
diff --git a/motus/jeu.h b/motus/jeu.h
index 0fe6d48..d612224 100644
--- a/motus/jeu.h
+++ b/motus/jeu.h
@@ -14,7 +14,7 @@ class Jeu : public QObject {
     Q_PROPERTY(QQuickItem* gameWindow READ getGameWindow NOTIFY gameWindowChanged)
 
 public:
-    explicit Jeu(QQmlApplicationEngine* engine, QObject *parent = nullptr);
+    explicit Jeu(QQmlApplicationEngine* engine, int width, int height, QObject *parent = nullptr);
     QString getMotAffiche();
     Q_INVOKABLE void onClavierClick(QString lettre);
     Q_INVOKABLE void initGame();
diff --git a/motus/lettermodel.cpp b/motus/lettermodel.cpp
index 1b6d874..938f55e 100644
--- a/motus/lettermodel.cpp
+++ b/motus/lettermodel.cpp
@@ -1,11 +1,10 @@
 #include "lettermodel.h"
 
-LetterModel::LetterModel(QObject *parent)
+LetterModel::LetterModel(int width, int height, QObject *parent)
     : QAbstractListModel(parent)
 {
-    // Initialiser 40 lettres avec "_"
-    m_letters.fill("_", 40);
-    m_states.fill(0,40);
+    m_letters.fill("_", width*height);
+    m_states.fill(0,width*height);
 }
 
 int LetterModel::rowCount(const QModelIndex &parent) const {
diff --git a/motus/lettermodel.h b/motus/lettermodel.h
index 918451d..e540b9a 100644
--- a/motus/lettermodel.h
+++ b/motus/lettermodel.h
@@ -13,7 +13,7 @@ public:
         StateRole
     };
 
-    explicit LetterModel(QObject *parent = nullptr);
+    explicit LetterModel(int width, int height, QObject *parent = nullptr);
 
     int rowCount(const QModelIndex &parent = QModelIndex()) const override;
     QVariant data(const QModelIndex &index, int role) const override;
diff --git a/motus/main.cpp b/motus/main.cpp
index 01e2c53..1efe6a2 100644
--- a/motus/main.cpp
+++ b/motus/main.cpp
@@ -13,9 +13,11 @@ int main(int argc, char *argv[]) {
     qmlRegisterType<VraieCase>("motus", 1, 0, "VraieCase");
 
 
+    int width = 10;
+    int height = 8;
 
     // Charger l'interface utilisateur (QML)
-    LetterModel letterModel;
+    LetterModel letterModel(width, height);
     engine.rootContext()->setContextProperty("letterModel", &letterModel);
 
     engine.loadFromModule("motus", "Main");
@@ -24,7 +26,7 @@ int main(int argc, char *argv[]) {
 
     QQuickItem *parentItem = rootItem;
 
-    Jeu jeu(&engine);
+    Jeu jeu(&engine, width, height);
     jeu.setLetterModel(&letterModel);
 
     engine.rootContext()->setContextProperty("jeu", &jeu);
-- 
GitLab