From 123e050991ff73cc1ab14ec8959765e20de57c8f Mon Sep 17 00:00:00 2001 From: Dominik Kaiser Date: Wed, 24 Sep 2025 12:48:19 +0200 Subject: Add JUCE boilerplate --- src/UI/PluginEditor.cpp | 33 +++++++++++++++++++++++++++++++++ src/UI/PluginEditor.h | 22 ++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 src/UI/PluginEditor.cpp create mode 100644 src/UI/PluginEditor.h (limited to 'src/UI') diff --git a/src/UI/PluginEditor.cpp b/src/UI/PluginEditor.cpp new file mode 100644 index 0000000..1ba07af --- /dev/null +++ b/src/UI/PluginEditor.cpp @@ -0,0 +1,33 @@ +#include "../PluginProcessor.h" +#include "PluginEditor.h" + +//============================================================================== +SchroederReverbAudioProcessorEditor::SchroederReverbAudioProcessorEditor (SchroederReverbAudioProcessor& p) + : AudioProcessorEditor (&p), processorRef (p) +{ + juce::ignoreUnused (processorRef); + // Make sure that before the constructor has finished, you've set the + // editor's size to whatever you need it to be. + setSize (400, 300); +} + +SchroederReverbAudioProcessorEditor::~SchroederReverbAudioProcessorEditor() +{ +} + +//============================================================================== +void SchroederReverbAudioProcessorEditor::paint (juce::Graphics& g) +{ + // (Our component is opaque, so we must completely fill the background with a solid colour) + g.fillAll (getLookAndFeel().findColour (juce::ResizableWindow::backgroundColourId)); + + g.setColour (juce::Colours::white); + g.setFont (15.0f); + g.drawFittedText ("Hello World!", getLocalBounds(), juce::Justification::centred, 1); +} + +void SchroederReverbAudioProcessorEditor::resized() +{ + // This is generally where you'll want to lay out the positions of any + // subcomponents in your editor.. +} diff --git a/src/UI/PluginEditor.h b/src/UI/PluginEditor.h new file mode 100644 index 0000000..1f30a89 --- /dev/null +++ b/src/UI/PluginEditor.h @@ -0,0 +1,22 @@ +#pragma once + +#include "../PluginProcessor.h" + +//============================================================================== +class SchroederReverbAudioProcessorEditor final : public juce::AudioProcessorEditor +{ +public: + explicit SchroederReverbAudioProcessorEditor (SchroederReverbAudioProcessor&); + ~SchroederReverbAudioProcessorEditor() override; + + //============================================================================== + void paint (juce::Graphics&) override; + void resized() override; + +private: + // This reference is provided as a quick way for your editor to + // access the processor object that created it. + SchroederReverbAudioProcessor& processorRef; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (SchroederReverbAudioProcessorEditor) +}; -- cgit v1.2.3