mirror of
https://codeberg.org/armin/chromaflock.git
synced 2026-09-01 12:20:47 +02:00
Remove VEL RES knob; lay out filter knobs in a single 5-knob row
This commit is contained in:
parent
9ef77e04ab
commit
917956e1ec
2 changed files with 15 additions and 17 deletions
|
|
@ -641,7 +641,6 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
|
|||
setupParam(filterEnvAmtKnob, filterEnvAmtAttach, "filterEnvAmt", "ENV AMT");
|
||||
setupParam(keyTrackKnob, keyTrackAttach, "keyTrack", "KEY TRK");
|
||||
setupParam(velToCutKnob, velToCutAttach, "velToCut", "VEL CUT");
|
||||
setupParam(velToResKnob, velToResAttach, "velToRes", "VEL RES");
|
||||
|
||||
setupLabel(envLabel, "AMP ENV");
|
||||
setupParam(envAttackKnob, envAttackAttach, "envAttack", "ATTACK");
|
||||
|
|
@ -1250,21 +1249,20 @@ void MainContentComponent::resized() {
|
|||
|
||||
filterLabel.setBounds(1152, sectionY, 498, labelH);
|
||||
filterTypeBox.setBounds(1430, 88, 220, 28);
|
||||
// FILTER holds 6 knobs (incl. per-note VEL CUT / VEL RES), so the type
|
||||
// dropdown sits in the header row and the knobs form a 3x2 grid.
|
||||
// FILTER holds 5 knobs on a single row (the per-note VEL RES knob was
|
||||
// removed); the type dropdown sits in the header row and the knobs span
|
||||
// the section width at the original large size.
|
||||
{
|
||||
int fSize = 78;
|
||||
int fGap = 6;
|
||||
int gridW = 3 * fSize + 2 * fGap;
|
||||
int fSx = 1152 + (498 - gridW) / 2;
|
||||
int fRow1Y = 124;
|
||||
int fRow2Y = fRow1Y + fSize + fGap;
|
||||
filterCutoffKnob.setBounds(fSx, fRow1Y, fSize, fSize);
|
||||
filterResKnob.setBounds(fSx + fSize + fGap, fRow1Y, fSize, fSize);
|
||||
filterEnvAmtKnob.setBounds(fSx + (fSize + fGap) * 2, fRow1Y, fSize, fSize);
|
||||
keyTrackKnob.setBounds(fSx, fRow2Y, fSize, fSize);
|
||||
velToCutKnob.setBounds(fSx + fSize + fGap, fRow2Y, fSize, fSize);
|
||||
velToResKnob.setBounds(fSx + (fSize + fGap) * 2, fRow2Y, fSize, fSize);
|
||||
int fSize = 89;
|
||||
int fGap = 8;
|
||||
int rowW = 5 * fSize + 4 * fGap;
|
||||
int fSx = 1152 + (498 - rowW) / 2;
|
||||
int fRowY = 124;
|
||||
filterCutoffKnob.setBounds(fSx, fRowY, fSize, fSize);
|
||||
filterResKnob.setBounds(fSx + (fSize + fGap), fRowY, fSize, fSize);
|
||||
filterEnvAmtKnob.setBounds(fSx + (fSize + fGap) * 2, fRowY, fSize, fSize);
|
||||
keyTrackKnob.setBounds(fSx + (fSize + fGap) * 3, fRowY, fSize, fSize);
|
||||
velToCutKnob.setBounds(fSx + (fSize + fGap) * 4, fRowY, fSize, fSize);
|
||||
}
|
||||
|
||||
envLabel.setBounds(10, 302, 563, labelH);
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ private:
|
|||
|
||||
juce::ComboBox filterTypeBox;
|
||||
KnobSlider filterCutoffKnob, filterResKnob, filterEnvAmtKnob, keyTrackKnob,
|
||||
velToCutKnob, velToResKnob;
|
||||
velToCutKnob;
|
||||
|
||||
KnobSlider envAttackKnob, envDecayKnob, envSustainKnob, envReleaseKnob;
|
||||
KnobSlider fEnvAttackKnob, fEnvDecayKnob, fEnvSustainKnob, fEnvReleaseKnob;
|
||||
|
|
@ -271,7 +271,7 @@ private:
|
|||
std::unique_ptr<ComboBoxAttachment> osc1WaveAttach, osc2WaveAttach;
|
||||
std::unique_ptr<IndexedComboBoxAttachment> filterTypeAttach;
|
||||
std::unique_ptr<ComboBoxAttachment> octaveTransposeAttach, semitoneTransposeAttach;
|
||||
std::unique_ptr<SliderAttachment> filterCutoffAttach, filterResAttach, filterEnvAmtAttach, keyTrackAttach, velToCutAttach, velToResAttach;
|
||||
std::unique_ptr<SliderAttachment> filterCutoffAttach, filterResAttach, filterEnvAmtAttach, keyTrackAttach, velToCutAttach;
|
||||
std::unique_ptr<SliderAttachment> envAttackAttach, envDecayAttach, envSustainAttach, envReleaseAttach;
|
||||
std::unique_ptr<SliderAttachment> fEnvAttackAttach, fEnvDecayAttach, fEnvSustainAttach, fEnvReleaseAttach;
|
||||
std::unique_ptr<SliderAttachment> panAttach, driveAttach, masterAttach, pbRangeAttach;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue