Add delay invert + flatten LEDs; fix flatten to narrow bounce width instead of shortening tail

This commit is contained in:
Armin 2026-08-13 04:28:58 +02:00
commit cd2caf7821
4 changed files with 67 additions and 18 deletions

View file

@ -579,6 +579,8 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
arpEnabledLed(p.apvts, "arpEnabled", "ON", "OFF"),
arpDirectionLed(p.apvts, "arpDirection", "ON", "OFF"),
delayPingPongLed(p.apvts, "delayPingPong", "PINGPONG", "OFF"),
delayInvertLed(p.apvts, "delayInvert", "INVERT", "OFF"),
delayFlattenLed(p.apvts, "delayFlatten", "FLATTEN", "OFF"),
reverbOnLed(p.apvts, "reverbOn", "ON", "OFF"),
lfo1SyncLed(p.apvts, "lfo1Sync", "SYNC ON", "SYNC OFF"),
lfo2SyncLed(p.apvts, "lfo2Sync", "SYNC ON", "SYNC OFF"),
@ -689,6 +691,8 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
setupParam(delayFbKnob, delayFbAttach, "delayFeedback", "FBACK");
setupParam(delayMixKnob, delayMixAttach, "delayMix", "MIX");
addAndMakeVisible(delayPingPongLed);
addAndMakeVisible(delayInvertLed);
addAndMakeVisible(delayFlattenLed);
addAndMakeVisible(reverbOnLed);
setupParam(reverbSizeKnob, reverbSizeAttach, "reverbSize", "SIZE");
setupParam(reverbDampKnob, reverbDampAttach, "reverbDamping", "DAMP");
@ -1312,13 +1316,24 @@ void MainContentComponent::resized() {
// --- FX2 SECTION ---
int fx2KnobY = lfoKnobY;
// Delay sub-section: TIME, FBACK, MIX, PING + sync combo
// Delay sub-section: TIME, FBACK, MIX knobs + ping-pong toggle column + sync combo.
// The ping-pong column (PINGPONG / INVERT / FLATTEN) is stacked on the right,
// just below/under the ping-pong LED, with ping-pong itself nudged up a bit.
int dx = 962;
int dGap = lfoKnobSize + 8;
delayTimeKnob.setBounds(dx, fx2KnobY, lfoKnobSize, lfoKnobSize);
delayFbKnob.setBounds(dx + dGap, fx2KnobY, lfoKnobSize, lfoKnobSize);
delayMixKnob.setBounds(dx + dGap * 2, fx2KnobY, lfoKnobSize, lfoKnobSize);
delayPingPongLed.setBounds(dx + dGap * 3, fx2KnobY, lfoKnobSize, lfoKnobSize);
int ppX = 1230;
int ppW = 104;
int ppH = 36;
int ppGap = 4;
int ppStep = ppH + ppGap;
delayPingPongLed.setBounds(ppX, fx2KnobY, ppW, ppH);
delayInvertLed.setBounds(ppX, fx2KnobY + ppStep, ppW, ppH);
delayFlattenLed.setBounds(ppX, fx2KnobY + ppStep * 2, ppW, ppH);
delaySyncLed.setBounds(dx, fx2KnobY + lfoKnobSize + 6, 250, 28);
// Reverb sub-section: SIZE, DAMP, MIX (right edge aligned to 1650)