From 9274ae697bd4c4a05f473aa498d4f6c30f0ce4f3 Mon Sep 17 00:00:00 2001 From: Anthony <anthony.noir@etu.utc.fr> Date: Sat, 5 Jun 2021 16:59:45 +0200 Subject: [PATCH] =?UTF-8?q?taille=20Historique=20param=C3=A9trable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- forms/interface.ui | 30 ++++++------------------------ include/interface.hpp | 2 ++ include/simulation.hpp | 7 +++++++ src/interface.cpp | 4 ++++ src/simulation.cpp | 2 +- 5 files changed, 20 insertions(+), 25 deletions(-) diff --git a/forms/interface.ui b/forms/interface.ui index 7c54e79..9dfb890 100644 --- a/forms/interface.ui +++ b/forms/interface.ui @@ -186,35 +186,17 @@ <string>Number of previous pattern recorded :</string> </property> - <property name="buddy"> - <cstring>recordLineEdit</cstring> - </property> </widget> </item> <item> - <widget class="QLineEdit" name="recordLineEdit"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>0</width> - <height>0</height> - </size> + <widget class="QSpinBox" name="recordSpinBox"> + <property name="minimum"> + <number>0</number> </property> - <property name="maximumSize"> - <size> - <width>40</width> - <height>16777215</height> - </size> - </property> - <property name="text"> - <string>10</string> + <property name="maximum"> + <number>100</number> </property> - <property name="maxLength"> + <property name="value"> <number>10</number> </property> </widget> diff --git a/include/interface.hpp b/include/interface.hpp index ab4e52f..fbfe06f 100644 --- a/include/interface.hpp +++ b/include/interface.hpp @@ -81,6 +81,8 @@ private slots: void on_resetButton_clicked(); + void on_recordSpinBox_valueChanged(int arg1); + private: //! \brief Initialiser la liste des transitions et voisinages disponibles void init_transition_neighborhood_list(); diff --git a/include/simulation.hpp b/include/simulation.hpp index 8627f50..03122c8 100644 --- a/include/simulation.hpp +++ b/include/simulation.hpp @@ -52,6 +52,13 @@ public: + //! \brief Modificateur de la taille de l'historique + //! + //! Vide également l'historique + void setHistorySize(unsigned int size) {hist = History(size);} + + + //! \brief Définit la grille //! //! Si la simulation est lancée, cela ne modifie pas la grille de départ. Cela définit la grille de départ dans le cas contraire. diff --git a/src/interface.cpp b/src/interface.cpp index f43b5bc..37fd4df 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -654,3 +654,7 @@ void MainWindow::on_resetButton_clicked() { simulation.reset(); ui->grid_view->copy_grid(simulation.getGrid()); } + +void MainWindow::on_recordSpinBox_valueChanged(int newSize) { + simulation.setHistorySize(newSize); +} diff --git a/src/simulation.cpp b/src/simulation.cpp index 540d545..87916a7 100644 --- a/src/simulation.cpp +++ b/src/simulation.cpp @@ -31,7 +31,7 @@ void Simulation::setGrid(const Grid & grid) { if(!time) { startGrid = grid; time = 0; - hist = History(10); + hist = History(hist.get_nbMax()); } else if((grid.get_col() != automaton.getGrid().get_col())&&(grid.get_rows() != automaton.getGrid().get_rows())) { return; } -- GitLab