2023-01-15 17:01:27 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <JuceHeader.h>
|
2024-02-20 15:32:52 +00:00
|
|
|
#include "LookAndFeel.h"
|
2023-03-25 20:24:10 +00:00
|
|
|
#include "audio/BitCrushEffect.h"
|
2023-01-15 17:01:27 +00:00
|
|
|
#include "PluginProcessor.h"
|
2023-03-26 12:58:31 +00:00
|
|
|
#include "components/DraggableListBox.h"
|
2023-07-02 20:00:14 +00:00
|
|
|
#include "components/EffectsListComponent.h"
|
2023-01-15 17:01:27 +00:00
|
|
|
|
2023-07-08 17:59:05 +00:00
|
|
|
class OscirenderAudioProcessorEditor;
|
2023-07-25 13:09:21 +00:00
|
|
|
class EffectsComponent : public juce::GroupComponent, public juce::ChangeListener {
|
2023-01-15 17:01:27 +00:00
|
|
|
public:
|
2023-07-22 21:00:59 +00:00
|
|
|
EffectsComponent(OscirenderAudioProcessor&, OscirenderAudioProcessorEditor&);
|
2023-01-15 17:01:27 +00:00
|
|
|
~EffectsComponent() override;
|
|
|
|
|
|
|
|
void resized() override;
|
2023-07-25 13:09:21 +00:00
|
|
|
void changeListenerCallback(juce::ChangeBroadcaster* source) override;
|
2023-01-15 17:01:27 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
OscirenderAudioProcessor& audioProcessor;
|
|
|
|
|
2023-07-02 17:47:04 +00:00
|
|
|
// juce::TextButton addBtn;
|
2023-03-26 12:58:31 +00:00
|
|
|
|
2024-02-20 15:32:52 +00:00
|
|
|
SvgButton randomiseButton{ "randomise", juce::String(BinaryData::random_svg), Colours::accentColor };
|
|
|
|
|
2023-07-02 20:00:14 +00:00
|
|
|
AudioEffectListBoxItemData itemData;
|
|
|
|
EffectsListBoxModel listBoxModel;
|
2023-03-26 12:58:31 +00:00
|
|
|
DraggableListBox listBox;
|
|
|
|
|
2023-07-21 10:08:55 +00:00
|
|
|
EffectComponent frequency = EffectComponent(audioProcessor, *audioProcessor.frequencyEffect, false);
|
2023-01-15 17:01:27 +00:00
|
|
|
|
|
|
|
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(EffectsComponent)
|
|
|
|
};
|