beamgrid/Source/PluginEditor.h

44 lines
1.4 KiB
C
Raw Normal View History

#pragma once
#include "JuceHeader.h"
#include "PluginProcessor.h"
#include "AnalyserComponent.h"
#include "BeamgridLookAndFeel.h"
class BeamgridAudioProcessorEditor : public juce::AudioProcessorEditor
{
public:
explicit BeamgridAudioProcessorEditor (BeamgridAudioProcessor&);
~BeamgridAudioProcessorEditor() override;
void paint (juce::Graphics&) override;
void resized() override;
private:
BeamgridAudioProcessor& processorRef;
BeamgridLookAndFeel lookAndFeel;
AnalyserComponent analyserComponent;
juce::Slider graceSlider;
juce::Slider falloffSlider;
juce::Slider barfalloffSlider;
juce::Slider barsSlider;
juce::Slider hueSlider;
juce::Label graceLabel;
juce::Label falloffLabel;
juce::Label barfalloffLabel;
juce::Label barsLabel;
juce::Label hueLabel;
juce::Label titleLabel;
juce::Label statusLabel;
std::unique_ptr<juce::AudioProcessorValueTreeState::SliderAttachment> graceAttachment;
std::unique_ptr<juce::AudioProcessorValueTreeState::SliderAttachment> falloffAttachment;
std::unique_ptr<juce::AudioProcessorValueTreeState::SliderAttachment> barfalloffAttachment;
std::unique_ptr<juce::AudioProcessorValueTreeState::SliderAttachment> barsAttachment;
std::unique_ptr<juce::AudioProcessorValueTreeState::SliderAttachment> hueAttachment;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (BeamgridAudioProcessorEditor)
};