From 9fee9fa36394895a25ddb53a848c7db83907f7bd Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 29 Jun 2022 01:37:12 -0500 Subject: [PATCH] GUI: run per-chan osc on instrument preview --- src/engine/engine.cpp | 4 ++++ src/engine/engine.h | 3 +++ src/gui/chanOsc.cpp | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 47833ca90..e68208ea8 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -1743,6 +1743,10 @@ bool DivEngine::isPlaying() { return (playing && !freelance); } +bool DivEngine::isRunning() { + return playing; +} + bool DivEngine::isStepping() { return !(stepPlay==0); } diff --git a/src/engine/engine.h b/src/engine/engine.h index a7699546d..8c054c398 100644 --- a/src/engine/engine.h +++ b/src/engine/engine.h @@ -654,6 +654,9 @@ class DivEngine { // is playing bool isPlaying(); + + // is running + bool isRunning(); // is stepping bool isStepping(); diff --git a/src/gui/chanOsc.cpp b/src/gui/chanOsc.cpp index da82de277..547e59a17 100644 --- a/src/gui/chanOsc.cpp +++ b/src/gui/chanOsc.cpp @@ -312,7 +312,7 @@ void FurnaceGUI::drawChanOsc() { inRect.Max.y-=dpiScale; ImGui::ItemSize(size,style.FramePadding.y); if (ImGui::ItemAdd(rect,ImGui::GetID("chOscDisplay"))) { - if (!e->isPlaying()) { + if (!e->isRunning()) { for (unsigned short i=0; i<512; i++) { float x=(float)i/512.0f; waveform[i]=ImLerp(inRect.Min,inRect.Max,ImVec2(x,0.5f));