2023-01-09 21:58:49 +00:00
|
|
|
/*
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
This file contains the basic framework code for a JUCE plugin editor.
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <JuceHeader.h>
|
|
|
|
#include "PluginProcessor.h"
|
2023-01-15 17:01:27 +00:00
|
|
|
#include "EffectComponentGroup.h"
|
|
|
|
#include "EffectsComponent.h"
|
|
|
|
#include "MainComponent.h"
|
2023-01-09 21:58:49 +00:00
|
|
|
|
|
|
|
//==============================================================================
|
|
|
|
/**
|
|
|
|
*/
|
2023-03-30 16:28:47 +00:00
|
|
|
class OscirenderAudioProcessorEditor : public juce::AudioProcessorEditor, private juce::CodeDocument::Listener
|
2023-01-09 21:58:49 +00:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
OscirenderAudioProcessorEditor (OscirenderAudioProcessor&);
|
|
|
|
~OscirenderAudioProcessorEditor() override;
|
|
|
|
|
|
|
|
//==============================================================================
|
|
|
|
void paint (juce::Graphics&) override;
|
|
|
|
void resized() override;
|
|
|
|
|
2023-03-30 16:28:47 +00:00
|
|
|
void updateCodeEditor();
|
2023-01-09 21:58:49 +00:00
|
|
|
private:
|
|
|
|
OscirenderAudioProcessor& audioProcessor;
|
2023-01-15 17:01:27 +00:00
|
|
|
|
|
|
|
MainComponent main;
|
|
|
|
EffectsComponent effects;
|
2023-03-29 11:51:22 +00:00
|
|
|
juce::CodeDocument codeDocument;
|
|
|
|
juce::LuaTokeniser luaTokeniser;
|
|
|
|
std::unique_ptr<juce::CodeEditorComponent> codeEditor;
|
2023-03-29 14:02:29 +00:00
|
|
|
juce::ShapeButton collapseButton;
|
2023-01-09 21:58:49 +00:00
|
|
|
|
2023-03-30 16:28:47 +00:00
|
|
|
void codeDocumentTextInserted(const juce::String& newText, int insertIndex) override;
|
|
|
|
void codeDocumentTextDeleted(int startIndex, int endIndex) override;
|
2023-03-29 16:19:16 +00:00
|
|
|
|
2023-01-09 21:58:49 +00:00
|
|
|
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (OscirenderAudioProcessorEditor)
|
|
|
|
};
|