juicysfplugin/Source/PluginEditor.h

64 lines
1.8 KiB
C
Raw Normal View History

2018-02-27 08:17:12 +08:00
/*
==============================================================================
This file was auto-generated!
It contains the basic framework code for a JUCE plugin editor.
==============================================================================
*/
#pragma once
2021-09-07 14:04:35 +08:00
#include <JuceHeader.h>
2018-02-27 08:17:12 +08:00
#include "PluginProcessor.h"
2018-02-27 08:25:20 +08:00
#include "TablesComponent.h"
#include "SurjectiveMidiKeyboardComponent.h"
#include "FilePicker.h"
2019-06-30 17:59:07 +08:00
#include "SlidersComponent.h"
2018-02-27 08:17:12 +08:00
//==============================================================================
/**
*/
class JuicySFAudioProcessorEditor
: public AudioProcessorEditor
2019-07-09 06:36:27 +08:00
, private Value::Listener
2018-02-27 08:17:12 +08:00
{
public:
JuicySFAudioProcessorEditor(
JuicySFAudioProcessor&,
AudioProcessorValueTreeState& valueTreeState
);
2018-02-28 07:34:22 +08:00
~JuicySFAudioProcessorEditor();
2018-02-27 08:17:12 +08:00
//==============================================================================
void paint (Graphics&) override;
void resized() override;
2018-02-27 08:25:20 +08:00
bool keyPressed(const KeyPress &key) override;
bool keyStateChanged (bool isKeyDown) override;
2018-02-27 08:17:12 +08:00
private:
2019-07-09 06:36:27 +08:00
void valueChanged (Value&) override;
2018-02-27 08:17:12 +08:00
// This reference is provided as a quick way for your editor to
// access the processor object that created it.
2018-02-27 08:39:50 +08:00
JuicySFAudioProcessor& processor;
2018-02-27 08:25:20 +08:00
AudioProcessorValueTreeState& valueTreeState;
2019-07-09 06:36:27 +08:00
// these are used to persist the UI's size - the values are stored along with the
// filter's other parameters, and the UI component will update them when it gets
// resized.
Value lastUIWidth, lastUIHeight;
2018-02-27 08:25:20 +08:00
SurjectiveMidiKeyboardComponent midiKeyboard;
TablesComponent tablesComponent;
FilePicker filePicker;
2019-06-30 17:59:07 +08:00
SlidersComponent slidersComponent;
2018-02-27 08:25:20 +08:00
bool focusInitialized;
2018-02-27 08:17:12 +08:00
2018-02-28 07:34:22 +08:00
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (JuicySFAudioProcessorEditor)
2018-02-27 08:17:12 +08:00
};