mirror of
https://codeberg.org/armin/beamgrid.git
synced 2026-09-01 04:10:47 +02:00
Add BOOST, 3D depth, and gradient-angle knobs
- BOOST: global display level multiplier (0.75 - 2.5, 1.0 default) - 3D: pseudo-3D bevel/shading on bars, LEDs, peaks and curve (0 = flat) - G-ANG: 3D gradient angle (-180 - 180, 0 = top-lit) - Apply CURVING rounded corners to bars and peaks in BAR mode
This commit is contained in:
parent
ca9555af13
commit
aeb4b83281
7 changed files with 142 additions and 18 deletions
|
|
@ -41,6 +41,9 @@ BeamgridAudioProcessorEditor::BeamgridAudioProcessorEditor (BeamgridAudioProcess
|
|||
setupKnob (gridfadeSlider, "");
|
||||
setupKnob (curvingSlider, "");
|
||||
setupKnob (tiltSlider, "");
|
||||
setupKnob (boostSlider, "");
|
||||
setupKnob (depth3dSlider, "");
|
||||
setupKnob (gradangleSlider, "");
|
||||
barsSlider.setNumDecimalPlacesToDisplay (0);
|
||||
modeSlider.setNumDecimalPlacesToDisplay (0);
|
||||
ledsSlider.setNumDecimalPlacesToDisplay (0);
|
||||
|
|
@ -110,6 +113,21 @@ BeamgridAudioProcessorEditor::BeamgridAudioProcessorEditor (BeamgridAudioProcess
|
|||
tiltLabel.setColour (juce::Label::textColourId, juce::Colours::lightgrey);
|
||||
addAndMakeVisible (tiltLabel);
|
||||
|
||||
boostLabel.setText ("BOOST", juce::dontSendNotification);
|
||||
boostLabel.setJustificationType (juce::Justification::centred);
|
||||
boostLabel.setColour (juce::Label::textColourId, juce::Colours::lightgrey);
|
||||
addAndMakeVisible (boostLabel);
|
||||
|
||||
depth3dLabel.setText ("3D", juce::dontSendNotification);
|
||||
depth3dLabel.setJustificationType (juce::Justification::centred);
|
||||
depth3dLabel.setColour (juce::Label::textColourId, juce::Colours::lightgrey);
|
||||
addAndMakeVisible (depth3dLabel);
|
||||
|
||||
gradangleLabel.setText ("G-ANG", juce::dontSendNotification);
|
||||
gradangleLabel.setJustificationType (juce::Justification::centred);
|
||||
gradangleLabel.setColour (juce::Label::textColourId, juce::Colours::lightgrey);
|
||||
addAndMakeVisible (gradangleLabel);
|
||||
|
||||
scaleBox.addItemList (juce::StringArray ("75%", "100%", "150%", "200%", "250%", "300%"), 1);
|
||||
scaleBox.setSelectedItemIndex (1); // 100%
|
||||
scaleBox.setColour (juce::ComboBox::backgroundColourId, juce::Colours::black.brighter (0.15f));
|
||||
|
|
@ -167,6 +185,12 @@ BeamgridAudioProcessorEditor::BeamgridAudioProcessorEditor (BeamgridAudioProcess
|
|||
processorRef.getParametersState(), "curving", curvingSlider);
|
||||
tiltAttachment = std::make_unique<juce::AudioProcessorValueTreeState::SliderAttachment>(
|
||||
processorRef.getParametersState(), "tilt", tiltSlider);
|
||||
boostAttachment = std::make_unique<juce::AudioProcessorValueTreeState::SliderAttachment>(
|
||||
processorRef.getParametersState(), "boost", boostSlider);
|
||||
depth3dAttachment = std::make_unique<juce::AudioProcessorValueTreeState::SliderAttachment>(
|
||||
processorRef.getParametersState(), "depth3d", depth3dSlider);
|
||||
gradangleAttachment = std::make_unique<juce::AudioProcessorValueTreeState::SliderAttachment>(
|
||||
processorRef.getParametersState(), "gradangle", gradangleSlider);
|
||||
|
||||
// Set these AFTER the attachments: SliderAttachment installs its own
|
||||
// textFromValueFunction, so assigning afterwards makes ours take effect.
|
||||
|
|
@ -259,7 +283,7 @@ void BeamgridAudioProcessorEditor::resized()
|
|||
|
||||
const int margin = 24;
|
||||
const int gap = 14;
|
||||
const int count = 13;
|
||||
const int count = 16;
|
||||
const int titleW = 180;
|
||||
|
||||
// Available width for the knob row (leave room on the right for the title).
|
||||
|
|
@ -289,6 +313,9 @@ void BeamgridAudioProcessorEditor::resized()
|
|||
{ gridfadeSlider, gridfadeLabel },
|
||||
{ curvingSlider, curvingLabel },
|
||||
{ tiltSlider, tiltLabel },
|
||||
{ boostSlider, boostLabel },
|
||||
{ depth3dSlider, depth3dLabel },
|
||||
{ gradangleSlider, gradangleLabel },
|
||||
};
|
||||
|
||||
const juce::Font labelFont (juce::FontOptions (11.0f));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue