interface.hpp 2.14 KB
Newer Older
1
2
3
4
5
6
7
#ifndef MAINWINDOW_HPP
#define MAINWINDOW_HPP

#include <QMainWindow>


#include <QGraphicsScene>
8
#include <QFileDialog>
9
10
11

#include "property.hpp"

12
13
class Structure;

14
15
16
17
18
19
20
21
22
23
24
25
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

26
private slots:
27
    //! \brief Connection entre le slider et le spinBox pour la vitesse d'exectution de la simulation
28
29
    void on_simSpeedSpinbox_valueChanged(int arg1);

30
    //! \brief Connection entre le slider et le spinBox pour la vitesse d'exectution de la simulation
31
32
    void on_simSpeedSlider_valueChanged(int value);

33
34
35
36
37
38
39
40
41
42
43
44
    //! \brief Ouverture d'un pattern depuis le navigateur de fichier
    void on_openPatternButton_clicked();

    //! \brief Ouverture d'une règle depuis le navigateur de fichier
    void on_openRuleButton_clicked();

    //! \brief Envoie un signal lors du changement de voisinage. Lorsque Custom est sélectionné, le bouton "Custom Neighborhood" est actif
    void on_neighborhoodComboBox_currentTextChanged(const QString &arg1);

    //! \brief Envoie le signal que la dimension de la grille a été modifié
    void on_validateGridDim_clicked();

45
46
    //! \brief Active le bouton pour valider la dimension de la grille lors d'une modification dans le Line Edit
    void on_widthSpinBox_valueChanged(int arg1);
47

48
49
    //! \brief Active le bouton pour valider la dimension de la grille lors d'une modification dans le Line Edit
    void on_heightSpinBox_valueChanged(int arg1);
50

51
52
53
    //! \brief Affiche l'interface pour sauvegarder la sélection actuelle comme une structure
    void afficher_interface_sauvegarde_structure(bool);

54
55
    void on_nbrStateComboBox_currentTextChanged(const QString &arg1);

56
57
58
    //! \brief Créer une nouvelle grille ayant des états aléatoire
    void on_randomPatternButton_clicked();

59
60
    void on_nbrStatesComboBox_currentTextChanged(const QString &arg1);

61
62
63
    //! \brief Copie la structure choisie dans la bibliothèque dans le presse-papier du GridView
    void copy_structure_clicked(const Structure& s);

64
65
66
67
private:
    Ui::MainWindow *ui;
};
#endif // MAINWINDOW_HPP