Skip to content
Snippets Groups Projects
Commit b166a730 authored by Ulysse Durand's avatar Ulysse Durand
Browse files

Ça marche:

parent 0a3fa25b
Branches
No related tags found
No related merge requests found
...@@ -4,11 +4,8 @@ ...@@ -4,11 +4,8 @@
#include <QQmlContext> #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("./"); brain = new Brain("./");
width = 10;
height = 7;
} }
int Jeu::getWidth() {return width;} int Jeu::getWidth() {return width;}
......
...@@ -14,7 +14,7 @@ class Jeu : public QObject { ...@@ -14,7 +14,7 @@ class Jeu : public QObject {
Q_PROPERTY(QQuickItem* gameWindow READ getGameWindow NOTIFY gameWindowChanged) Q_PROPERTY(QQuickItem* gameWindow READ getGameWindow NOTIFY gameWindowChanged)
public: public:
explicit Jeu(QQmlApplicationEngine* engine, QObject *parent = nullptr); explicit Jeu(QQmlApplicationEngine* engine, int width, int height, QObject *parent = nullptr);
QString getMotAffiche(); QString getMotAffiche();
Q_INVOKABLE void onClavierClick(QString lettre); Q_INVOKABLE void onClavierClick(QString lettre);
Q_INVOKABLE void initGame(); Q_INVOKABLE void initGame();
......
#include "lettermodel.h" #include "lettermodel.h"
LetterModel::LetterModel(QObject *parent) LetterModel::LetterModel(int width, int height, QObject *parent)
: QAbstractListModel(parent) : QAbstractListModel(parent)
{ {
// Initialiser 40 lettres avec "_" m_letters.fill("_", width*height);
m_letters.fill("_", 40); m_states.fill(0,width*height);
m_states.fill(0,40);
} }
int LetterModel::rowCount(const QModelIndex &parent) const { int LetterModel::rowCount(const QModelIndex &parent) const {
......
...@@ -13,7 +13,7 @@ public: ...@@ -13,7 +13,7 @@ public:
StateRole StateRole
}; };
explicit LetterModel(QObject *parent = nullptr); explicit LetterModel(int width, int height, QObject *parent = nullptr);
int rowCount(const QModelIndex &parent = QModelIndex()) const override; int rowCount(const QModelIndex &parent = QModelIndex()) const override;
QVariant data(const QModelIndex &index, int role) const override; QVariant data(const QModelIndex &index, int role) const override;
......
...@@ -13,9 +13,11 @@ int main(int argc, char *argv[]) { ...@@ -13,9 +13,11 @@ int main(int argc, char *argv[]) {
qmlRegisterType<VraieCase>("motus", 1, 0, "VraieCase"); qmlRegisterType<VraieCase>("motus", 1, 0, "VraieCase");
int width = 10;
int height = 8;
// Charger l'interface utilisateur (QML) // Charger l'interface utilisateur (QML)
LetterModel letterModel; LetterModel letterModel(width, height);
engine.rootContext()->setContextProperty("letterModel", &letterModel); engine.rootContext()->setContextProperty("letterModel", &letterModel);
engine.loadFromModule("motus", "Main"); engine.loadFromModule("motus", "Main");
...@@ -24,7 +26,7 @@ int main(int argc, char *argv[]) { ...@@ -24,7 +26,7 @@ int main(int argc, char *argv[]) {
QQuickItem *parentItem = rootItem; QQuickItem *parentItem = rootItem;
Jeu jeu(&engine); Jeu jeu(&engine, width, height);
jeu.setLetterModel(&letterModel); jeu.setLetterModel(&letterModel);
engine.rootContext()->setContextProperty("jeu", &jeu); engine.rootContext()->setContextProperty("jeu", &jeu);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment