Skip to content
This repository has been archived by the owner on Jun 18, 2023. It is now read-only.

Commit

Permalink
resolution des bug de speed
Browse files Browse the repository at this point in the history
  • Loading branch information
thjazi39 committed May 25, 2020
1 parent dfe25e4 commit 1c904e5
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 7 deletions.
12 changes: 12 additions & 0 deletions src/ui/MainWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,10 @@ void MainWindow::action_openFile() {
createCentralWidget();
}
ctxt.hyper_speed->setEnabled(ctxt.universe_scene->can_hyperSpeed());
ctxt.hyper_speed->setChecked(false);
ctxt.inc_speed->setEnabled(ctxt.universe_scene->can_increase_speed());
ctxt.dec_speed->setEnabled(ctxt.universe_scene->can_decrease_speed());
ctxt.playPauseAction->setIcon(*(ctxt.playIcon));
}


Expand Down Expand Up @@ -534,6 +538,10 @@ void MainWindow::action_newUnivTypeHashlife() {
univ_type = UniverseType::Hashlife;
createCentralWidget();
ctxt.hyper_speed->setEnabled(ctxt.universe_scene->can_hyperSpeed());
ctxt.hyper_speed->setChecked(false);
ctxt.inc_speed->setEnabled(ctxt.universe_scene->can_increase_speed());
ctxt.dec_speed->setEnabled(ctxt.universe_scene->can_decrease_speed());
ctxt.playPauseAction->setIcon(*(ctxt.playIcon));
}
void MainWindow::action_newUnivTypeNaive() {
delete universe;
Expand All @@ -544,6 +552,10 @@ void MainWindow::action_newUnivTypeNaive() {

createCentralWidget();
ctxt.hyper_speed->setEnabled(ctxt.universe_scene->can_hyperSpeed());
ctxt.inc_speed->setEnabled(ctxt.universe_scene->can_increase_speed());
ctxt.dec_speed->setEnabled(ctxt.universe_scene->can_decrease_speed());
ctxt.hyper_speed->setChecked(false);
ctxt.playPauseAction->setIcon(*(ctxt.playIcon));
}

/////////////////////////////////////////////////////
Expand Down
19 changes: 12 additions & 7 deletions src/ui/UniverseScene.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,13 @@ UniverseScene::UniverseScene(QWidget *parent, Universe *universe,

refresh_time_ms = 0;
p_step = 0;
universe->set_step_size(p_step);
if (universe->can_set_step_size()) {
universe->set_step_size(p_step);
}
hyperspeed_state = false;
if (universe->can_set_hyperspeed()) {
universe->set_hyperspeed(false);
}

r_area = new RenderArea(this, universe, type, &selection);

Expand Down Expand Up @@ -59,24 +64,24 @@ void UniverseScene::increase_speed() {
p_step += 1;
universe->set_step_size(p_step);
} else {
refresh_time_ms -= 250;
refresh_time_ms -= 100;
if (refresh_time_ms <= 0) {
p_step = 0;
refresh_time_ms = 0;
}
}
updateStatusBar();
} else {
if (refresh_time_ms > 0) {
refresh_time_ms -= 250;
refresh_time_ms -= 100;
}
}
updateStatusBar();
}

void UniverseScene::decrease_speed() {
if (universe->can_set_step_size()) {
if (p_step == 0) {
refresh_time_ms += 250;
refresh_time_ms += 100;
} else {
p_step -= 1;
if (p_step <= 0) {
Expand All @@ -85,10 +90,10 @@ void UniverseScene::decrease_speed() {
}
universe->set_step_size(p_step);
}
updateStatusBar();
} else {
refresh_time_ms += 250;
refresh_time_ms += 100;
}
updateStatusBar();
}

bool UniverseScene::can_increase_speed() {
Expand Down

0 comments on commit 1c904e5

Please sign in to comment.