update background and shot, refine UI gaps and alignments

This commit is contained in:
Armin 2026-07-15 16:23:07 +02:00
commit 4501198711
3 changed files with 16 additions and 16 deletions

View file

@ -151,8 +151,8 @@ void ComboBoxLookAndFeel::drawPopupMenuItem(juce::Graphics& g, const juce::Recta
void VuMeter::paint(juce::Graphics& g) { void VuMeter::paint(juce::Graphics& g) {
auto bounds = getLocalBounds().toFloat(); auto bounds = getLocalBounds().toFloat();
juce::ColourGradient bgGrad(juce::Colour(0xff222222), bounds.getCentreX(), bounds.getY(), juce::ColourGradient bgGrad(juce::Colour(0x99222222), bounds.getCentreX(), bounds.getY(),
juce::Colour(0xff111111), bounds.getCentreX(), bounds.getBottom(), false); juce::Colour(0x99111111), bounds.getCentreX(), bounds.getBottom(), false);
g.setGradientFill(bgGrad); g.setGradientFill(bgGrad);
g.fillRoundedRectangle(bounds, 3.0f); g.fillRoundedRectangle(bounds, 3.0f);
@ -184,8 +184,8 @@ void VuMeter::paint(juce::Graphics& g) {
void WaveformDisplay::paint(juce::Graphics& g) { void WaveformDisplay::paint(juce::Graphics& g) {
auto bounds = getLocalBounds().toFloat(); auto bounds = getLocalBounds().toFloat();
juce::ColourGradient bgGrad(juce::Colour(0xff222222), bounds.getCentreX(), bounds.getY(), juce::ColourGradient bgGrad(juce::Colour(0x99222222), bounds.getCentreX(), bounds.getY(),
juce::Colour(0xff111111), bounds.getCentreX(), bounds.getBottom(), false); juce::Colour(0x99111111), bounds.getCentreX(), bounds.getBottom(), false);
g.setGradientFill(bgGrad); g.setGradientFill(bgGrad);
g.fillRoundedRectangle(bounds, 3.0f); g.fillRoundedRectangle(bounds, 3.0f);
@ -244,8 +244,8 @@ void WaveformDisplay::paint(juce::Graphics& g) {
void SpectrumAnalyzer::paint(juce::Graphics& g) { void SpectrumAnalyzer::paint(juce::Graphics& g) {
auto bounds = getLocalBounds().toFloat(); auto bounds = getLocalBounds().toFloat();
juce::ColourGradient bgGrad(juce::Colour(0xff222222), bounds.getCentreX(), bounds.getY(), juce::ColourGradient bgGrad(juce::Colour(0x99222222), bounds.getCentreX(), bounds.getY(),
juce::Colour(0xff111111), bounds.getCentreX(), bounds.getBottom(), false); juce::Colour(0x99111111), bounds.getCentreX(), bounds.getBottom(), false);
g.setGradientFill(bgGrad); g.setGradientFill(bgGrad);
g.fillRoundedRectangle(bounds, 3.0f); g.fillRoundedRectangle(bounds, 3.0f);
@ -793,8 +793,8 @@ void MainContentComponent::paint(juce::Graphics& g) {
auto rect = juce::Rectangle<float>(static_cast<float>(x), static_cast<float>(y), auto rect = juce::Rectangle<float>(static_cast<float>(x), static_cast<float>(y),
static_cast<float>(w), static_cast<float>(h)); static_cast<float>(w), static_cast<float>(h));
// 3D fill gradient: slight light top, dark bottom // 3D fill gradient: slight light top, dark bottom
juce::ColourGradient fillGrad(juce::Colour(0xff222222), rect.getCentreX(), rect.getY(), juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(),
juce::Colour(0xff111111), 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, 4.0f);
// Border // Border
@ -815,8 +815,8 @@ void MainContentComponent::paint(juce::Graphics& g) {
auto drawSubSection = [&](int x, int y, int w, int h, const juce::String& title, int titlePadY = 2) { auto drawSubSection = [&](int x, int y, int w, int h, const juce::String& title, int titlePadY = 2) {
auto rect = juce::Rectangle<float>(static_cast<float>(x), static_cast<float>(y), auto rect = juce::Rectangle<float>(static_cast<float>(x), static_cast<float>(y),
static_cast<float>(w), static_cast<float>(h)); static_cast<float>(w), static_cast<float>(h));
juce::ColourGradient fillGrad(juce::Colour(0xff222222), rect.getCentreX(), rect.getY(), juce::ColourGradient fillGrad(juce::Colour(0x99222222), rect.getCentreX(), rect.getY(),
juce::Colour(0xff111111), 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, 3.0f);
g.setColour(juce::Colour(0xff333333)); g.setColour(juce::Colour(0xff333333));
@ -847,7 +847,7 @@ void MainContentComponent::resized() {
auto comboH = 48; auto comboH = 48;
osc1Label.setBounds(10, sectionY, 498, labelH); osc1Label.setBounds(10, sectionY, 498, labelH);
osc1WaveBox.setBounds(20, sectionY + labelH + 4, 200, comboH); osc1WaveBox.setBounds(20, sectionY + labelH + 4, 200, 36);
int knobY1 = sectionY + labelH + comboH + 8; int knobY1 = sectionY + labelH + comboH + 8;
osc1OctKnob.setBounds(20, knobY1, knobSize, knobSize); osc1OctKnob.setBounds(20, knobY1, knobSize, knobSize);
osc1SemiKnob.setBounds(20 + knobSize + knobSpacing, knobY1, knobSize, knobSize); osc1SemiKnob.setBounds(20 + knobSize + knobSpacing, knobY1, knobSize, knobSize);
@ -855,7 +855,7 @@ void MainContentComponent::resized() {
osc1LevelKnob.setBounds(20 + (knobSize + knobSpacing) * 3, knobY1, knobSize, knobSize); osc1LevelKnob.setBounds(20 + (knobSize + knobSpacing) * 3, knobY1, knobSize, knobSize);
osc2Label.setBounds(520, sectionY, 620, labelH); osc2Label.setBounds(520, sectionY, 620, labelH);
osc2WaveBox.setBounds(530, sectionY + labelH + 4, 200, comboH); osc2WaveBox.setBounds(530, sectionY + labelH + 4, 200, 36);
int knobY2 = sectionY + labelH + comboH + 8; int knobY2 = sectionY + labelH + comboH + 8;
osc2OctKnob.setBounds(530, knobY2, knobSize, knobSize); osc2OctKnob.setBounds(530, knobY2, knobSize, knobSize);
osc2SemiKnob.setBounds(530 + knobSize + knobSpacing, knobY2, knobSize, knobSize); osc2SemiKnob.setBounds(530 + knobSize + knobSpacing, knobY2, knobSize, knobSize);
@ -864,28 +864,28 @@ void MainContentComponent::resized() {
phaseOffsetKnob.setBounds(530 + (knobSize + knobSpacing) * 4, knobY2, knobSize, knobSize); phaseOffsetKnob.setBounds(530 + (knobSize + knobSpacing) * 4, knobY2, knobSize, knobSize);
filterLabel.setBounds(1152, sectionY, 498, labelH); filterLabel.setBounds(1152, sectionY, 498, labelH);
filterTypeBox.setBounds(1162, sectionY + labelH + 4, 200, comboH); filterTypeBox.setBounds(1162, sectionY + labelH + 4, 200, 36);
int knobYF = sectionY + labelH + comboH + 8; int knobYF = sectionY + labelH + comboH + 8;
filterCutoffKnob.setBounds(1162, knobYF, knobSize, knobSize); filterCutoffKnob.setBounds(1162, knobYF, knobSize, knobSize);
filterResKnob.setBounds(1162 + knobSize + knobSpacing, knobYF, knobSize, knobSize); filterResKnob.setBounds(1162 + knobSize + knobSpacing, knobYF, knobSize, knobSize);
filterEnvAmtKnob.setBounds(1162 + (knobSize + knobSpacing) * 2, knobYF, knobSize, knobSize); filterEnvAmtKnob.setBounds(1162 + (knobSize + knobSpacing) * 2, knobYF, knobSize, knobSize);
keyTrackKnob.setBounds(1162 + (knobSize + knobSpacing) * 3, knobYF, knobSize, knobSize); keyTrackKnob.setBounds(1162 + (knobSize + knobSpacing) * 3, knobYF, knobSize, knobSize);
envLabel.setBounds(75, 352, 498, labelH); envLabel.setBounds(75, 342, 498, labelH);
int knobYA = 352 + labelH + 6; int knobYA = 352 + labelH + 6;
envAttackKnob.setBounds(85, knobYA, knobSize, knobSize); envAttackKnob.setBounds(85, knobYA, knobSize, knobSize);
envDecayKnob.setBounds(85 + knobSize + knobSpacing, knobYA, knobSize, knobSize); envDecayKnob.setBounds(85 + knobSize + knobSpacing, knobYA, knobSize, knobSize);
envSustainKnob.setBounds(85 + (knobSize + knobSpacing) * 2, knobYA, knobSize, knobSize); envSustainKnob.setBounds(85 + (knobSize + knobSpacing) * 2, knobYA, knobSize, knobSize);
envReleaseKnob.setBounds(85 + (knobSize + knobSpacing) * 3, knobYA, knobSize, knobSize); envReleaseKnob.setBounds(85 + (knobSize + knobSpacing) * 3, knobYA, knobSize, knobSize);
fEnvLabel.setBounds(585, 352, 498, labelH); fEnvLabel.setBounds(585, 342, 498, labelH);
int knobYFE = 352 + labelH + 6; int knobYFE = 352 + labelH + 6;
fEnvAttackKnob.setBounds(595, knobYFE, knobSize, knobSize); fEnvAttackKnob.setBounds(595, knobYFE, knobSize, knobSize);
fEnvDecayKnob.setBounds(595 + knobSize + knobSpacing, knobYFE, knobSize, knobSize); fEnvDecayKnob.setBounds(595 + knobSize + knobSpacing, knobYFE, knobSize, knobSize);
fEnvSustainKnob.setBounds(595 + (knobSize + knobSpacing) * 2, knobYFE, knobSize, knobSize); fEnvSustainKnob.setBounds(595 + (knobSize + knobSpacing) * 2, knobYFE, knobSize, knobSize);
fEnvReleaseKnob.setBounds(595 + (knobSize + knobSpacing) * 3, knobYFE, knobSize, knobSize); fEnvReleaseKnob.setBounds(595 + (knobSize + knobSpacing) * 3, knobYFE, knobSize, knobSize);
globalLabel.setBounds(1095, 352, 490, labelH); globalLabel.setBounds(1095, 342, 490, labelH);
int knobYM = 352 + labelH + 6; int knobYM = 352 + labelH + 6;
panKnob.setBounds(1105, knobYM, knobSize, knobSize); panKnob.setBounds(1105, knobYM, knobSize, knobSize);
driveKnob.setBounds(1105 + knobSize + knobSpacing, knobYM, knobSize, knobSize); driveKnob.setBounds(1105 + knobSize + knobSpacing, knobYM, knobSize, knobSize);

BIN
bg.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 MiB

After

Width:  |  Height:  |  Size: 3 MiB

Before After
Before After

BIN
shot.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 811 KiB

After

Width:  |  Height:  |  Size: 1.7 MiB

Before After
Before After