update screenshot, refine UI layout in PluginEditor.cpp

This commit is contained in:
Armin 2026-07-15 17:03:41 +02:00
commit 95ab993312
2 changed files with 14 additions and 12 deletions

View file

@ -26,8 +26,8 @@ void KnobLookAndFeel::drawRotarySlider(juce::Graphics& g, int x, int y, int widt
bevelPath.addEllipse(rx, ry, rw, rw); bevelPath.addEllipse(rx, ry, rw, rw);
// Knob body gradient — light top-left to dark bottom-right for 3D bulge // Knob body gradient — light top-left to dark bottom-right for 3D bulge
juce::ColourGradient bodyGrad(juce::Colour(0xff404040), rx, ry, juce::ColourGradient bodyGrad(juce::Colour(0xb3404040), rx, ry,
juce::Colour(0xff1a1a1a), rx + rw, ry + rw, true); juce::Colour(0xb31a1a1a), rx + rw, ry + rw, true);
g.setGradientFill(bodyGrad); g.setGradientFill(bodyGrad);
g.fillEllipse(rx, ry, rw, rw); g.fillEllipse(rx, ry, rw, rw);
@ -84,8 +84,8 @@ void ComboBoxLookAndFeel::drawComboBox(juce::Graphics& g, int width, int height,
float scx = bounds.getCentreX(); float scx = bounds.getCentreX();
float scy = bounds.getCentreY(); float scy = bounds.getCentreY();
float slen = std::hypot(bounds.getWidth(), bounds.getHeight()) * 0.5f; float slen = std::hypot(bounds.getWidth(), bounds.getHeight()) * 0.5f;
juce::ColourGradient bodyGrad(juce::Colour(0xff404040), scx - sdx * slen, scy - sdy * slen, juce::ColourGradient bodyGrad(juce::Colour(0xb3404040), scx - sdx * slen, scy - sdy * slen,
juce::Colour(0xff1a1a1a), scx + sdx * slen, scy + sdy * slen, true); juce::Colour(0xb31a1a1a), scx + sdx * slen, scy + sdy * slen, true);
g.setGradientFill(bodyGrad); g.setGradientFill(bodyGrad);
g.fillRoundedRectangle(bounds, 4.0f); g.fillRoundedRectangle(bounds, 4.0f);
@ -370,7 +370,7 @@ void PatchLCD::paint(juce::Graphics& g) {
auto b = getLocalBounds(); auto b = getLocalBounds();
// Dark LCD panel // Dark LCD panel
g.setColour(juce::Colour(0xff061206)); g.setColour(juce::Colour(0xcc061206));
g.fillRoundedRectangle(b.toFloat(), 3.0f); g.fillRoundedRectangle(b.toFloat(), 3.0f);
g.setColour(juce::Colour(0xff114411)); g.setColour(juce::Colour(0xff114411));
g.drawRoundedRectangle(b.toFloat(), 3.0f, 1.0f); g.drawRoundedRectangle(b.toFloat(), 3.0f, 1.0f);
@ -514,7 +514,7 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
setupParam(reverbMixKnob, reverbMixAttach, "reverbMix", "MIX"); setupParam(reverbMixKnob, reverbMixAttach, "reverbMix", "MIX");
// Preset section: title button + dot-matrix LCD + prev/next // Preset section: title button + dot-matrix LCD + prev/next
presetButton.setColour(juce::TextButton::buttonColourId, juce::Colour(0xff2a2a2a)); presetButton.setColour(juce::TextButton::buttonColourId, juce::Colour(0xcc2a2a2a));
presetButton.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44)); presetButton.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44));
presetButton.setLookAndFeel(&comboLaf); presetButton.setLookAndFeel(&comboLaf);
presetButton.onClick = [this]() { showPresetMenu(); }; presetButton.onClick = [this]() { showPresetMenu(); };
@ -523,7 +523,7 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
addAndMakeVisible(patchLCD); addAndMakeVisible(patchLCD);
auto setupArrow = [&](juce::TextButton& btn) { auto setupArrow = [&](juce::TextButton& btn) {
btn.setColour(juce::TextButton::buttonColourId, juce::Colour(0xff2a2a2a)); btn.setColour(juce::TextButton::buttonColourId, juce::Colour(0xcc2a2a2a));
btn.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44)); btn.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44));
btn.setLookAndFeel(&comboLaf); btn.setLookAndFeel(&comboLaf);
addAndMakeVisible(btn); addAndMakeVisible(btn);
@ -544,7 +544,7 @@ MainContentComponent::MainContentComponent(ChromaFlockProcessor& p)
applyCurrentPreset(); applyCurrentPreset();
}; };
randomizeButton.setColour(juce::TextButton::buttonColourId, juce::Colour(0xff2a2a2a)); randomizeButton.setColour(juce::TextButton::buttonColourId, juce::Colour(0xcc2a2a2a));
randomizeButton.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44)); randomizeButton.setColour(juce::TextButton::textColourOffId, juce::Colour(0xffccaa44));
randomizeButton.setLookAndFeel(&comboLaf); randomizeButton.setLookAndFeel(&comboLaf);
randomizeButton.onClick = [this]() { randomizeParameters(); }; randomizeButton.onClick = [this]() { randomizeParameters(); };
@ -786,6 +786,8 @@ void MainContentComponent::paint(juce::Graphics& g) {
: logoH; : logoH;
int logoX = (getWidth() - logoW) / 2; int logoX = (getWidth() - logoW) / 2;
auto logoArea = juce::Rectangle<int>(logoX, gap, logoW, logoH); auto logoArea = juce::Rectangle<int>(logoX, gap, logoW, logoH);
juce::Graphics::ScopedSaveState saved(g);
g.setOpacity(0.8f);
g.drawImage(logoImage, logoArea.toFloat(), juce::RectanglePlacement::centred); g.drawImage(logoImage, logoArea.toFloat(), juce::RectanglePlacement::centred);
} }
@ -796,10 +798,10 @@ void MainContentComponent::paint(juce::Graphics& g) {
juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(), juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(),
juce::Colour(0x99111111), rect.getCentreX(), rect.getBottom(), false); juce::Colour(0x99111111), rect.getCentreX(), rect.getBottom(), false);
g.setGradientFill(fillGrad); g.setGradientFill(fillGrad);
g.fillRoundedRectangle(rect, 4.0f); g.fillRoundedRectangle(rect, 9.0f);
// Border // Border
g.setColour(juce::Colour(0xff333333)); g.setColour(juce::Colour(0xff333333));
g.drawRoundedRectangle(rect, 4.0f, 1.0f); g.drawRoundedRectangle(rect, 9.0f, 1.0f);
}; };
drawSection(10, 128, 498, 200); drawSection(10, 128, 498, 200);
@ -818,9 +820,9 @@ void MainContentComponent::paint(juce::Graphics& g) {
juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(), juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(),
juce::Colour(0x99111111), rect.getCentreX(), rect.getBottom(), false); juce::Colour(0x99111111), rect.getCentreX(), rect.getBottom(), false);
g.setGradientFill(fillGrad); g.setGradientFill(fillGrad);
g.fillRoundedRectangle(rect, 3.0f); g.fillRoundedRectangle(rect, 9.0f);
g.setColour(juce::Colour(0xff333333)); g.setColour(juce::Colour(0xff333333));
g.drawRoundedRectangle(rect, 3.0f, 1.0f); g.drawRoundedRectangle(rect, 9.0f, 1.0f);
g.setColour(juce::Colour(0xffccaa44)); g.setColour(juce::Colour(0xffccaa44));
g.setFont(juce::Font(11.0f).boldened()); g.setFont(juce::Font(11.0f).boldened());
g.drawText(title, x + 6, y + titlePadY, w - 12, 14, juce::Justification::centred); g.drawText(title, x + 6, y + titlePadY, w - 12, 14, juce::Justification::centred);

BIN
shot.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

After

Width:  |  Height:  |  Size: 3.4 MiB

Before After
Before After