#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <stdlib.h>
#include <time.h>
#include <vector>

#include <QDebug>
#include <QGenericMatrix>
#include <QMainWindow>
#include <QPushButton>
#include <QSettings>

#include "samegame.h"

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
    // initialisation functions
    void initialiseGameGrid();
    void initialiseGameMatrix();
    void initialiseWindow();
    void initialiseMenuBar();

    // events
    void buttonPressed(QPushButton *button);

private:
    Ui::MainWindow *ui;
    const int n_rows;
    const int n_columns;
    SameGame game;
};
#endif // MAINWINDOW_H
