feat: pause/resume button
This commit is contained in:
parent
5ee493dc97
commit
70f914bba0
|
@ -22,6 +22,8 @@
|
|||
|
||||
SelectedTool selectedTool;
|
||||
|
||||
bool simulationPlaying = false;
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent)
|
||||
: QMainWindow(parent)
|
||||
, ui(new Ui::MainWindow)
|
||||
|
@ -47,6 +49,19 @@ MainWindow::MainWindow(QWidget *parent)
|
|||
connect(ui->actionToolRotate, &QAction::triggered, this, [&](bool state) { selectedTool = state ? SelectedTool::ROTATE : SelectedTool::SELECT; updateSelectedTool(); });
|
||||
ui->actionToolSelect->setChecked(true);
|
||||
|
||||
connect(ui->actionToggleSimulation, &QAction::triggered, this, [&]() {
|
||||
simulationPlaying = !simulationPlaying;
|
||||
if (simulationPlaying) {
|
||||
ui->actionToggleSimulation->setText("Pause simulation");
|
||||
ui->actionToggleSimulation->setToolTip("Pause the simulation");
|
||||
ui->actionToggleSimulation->setIcon(QIcon::fromTheme("media-playback-pause"));
|
||||
} else {
|
||||
ui->actionToggleSimulation->setText("Resume simulation");
|
||||
ui->actionToggleSimulation->setToolTip("Resume the simulation");
|
||||
ui->actionToggleSimulation->setIcon(QIcon::fromTheme("media-playback-start"));
|
||||
}
|
||||
});
|
||||
|
||||
// ui->explorerView->Init(ui);
|
||||
|
||||
simulationInit();
|
||||
|
@ -89,6 +104,7 @@ void MainWindow::timerEvent(QTimerEvent* evt) {
|
|||
float deltaTime = std::chrono::duration_cast<std::chrono::duration<float>>(std::chrono::steady_clock::now() - lastTime).count();
|
||||
lastTime = std::chrono::steady_clock::now();
|
||||
|
||||
if (simulationPlaying)
|
||||
physicsStep(deltaTime);
|
||||
ui->mainWidget->update();
|
||||
ui->mainWidget->updateCycle();
|
||||
|
|
|
@ -114,6 +114,8 @@
|
|||
<addaction name="actionToolMove"/>
|
||||
<addaction name="actionToolScale"/>
|
||||
<addaction name="actionToolRotate"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionToggleSimulation"/>
|
||||
</widget>
|
||||
<action name="actionAddPart">
|
||||
<property name="icon">
|
||||
|
@ -241,6 +243,20 @@
|
|||
<string>4</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionToggleSimulation">
|
||||
<property name="icon">
|
||||
<iconset theme="media-playback-start"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Start Simulation</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Start the simulation</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>F5</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
|
|
Loading…
Reference in a new issue