#pragma once /* ============================================================================== This file was auto-generated by the Introjucer! It contains the basic startup code for a Juce application. ============================================================================== */ #ifndef PLUGINEDITOR_H_INCLUDED #define PLUGINEDITOR_H_INCLUDED #include "../JuceLibraryCode/JuceHeader.h" #include "PluginProcessor.h" #include "Gui/Knob.h" #include "Gui/TooglableButton.h" #include "Gui/ButtonList.h" //============================================================================== /** */ class ObxdAudioProcessorEditor : public AudioProcessorEditor, // public AudioProcessorListener, public ChangeListener//, // public Slider::Listener, // public Button::Listener, // public ComboBox::Listener { public: ObxdAudioProcessorEditor(ObxdAudioProcessor& ownerFilter); ~ObxdAudioProcessorEditor(); void mouseUp (const MouseEvent& e) override; void paint (Graphics& g) override; //============================================================================== void changeListenerCallback (ChangeBroadcaster* source) override; private: Knob* addNormalKnob (int x, int y, ObxdAudioProcessor& filter, int parameter, String name, float defval); Knob* addTinyKnob (int x, int y, ObxdAudioProcessor& filter, int parameter, String name, float defval); void placeLabel (int x, int y, String text); TooglableButton* addNormalTooglableButton (int x, int y, ObxdAudioProcessor& filter, int parameter, String name); TooglableButton* addTinyTooglableButton (int x, int y, ObxdAudioProcessor& filter, int parameter, String name); ButtonList* addNormalButtonList(int x, int y, int width, ObxdAudioProcessor& filter, int parameter, String name, Image img); // void sliderValueChanged (Slider*) override; // void buttonClicked (Button*) override; // void comboBoxChanged (ComboBox*) override; Knob* addNormalKnobClassic (int x, int y, ObxdAudioProcessor& filter, int parameter, String name, float defval); Knob* addTinyKnobClassic (int x, int y, ObxdAudioProcessor& filter, int parameter, String name, float defval); TooglableButton* addNormalTooglableButtonClassic (int x, int y, ObxdAudioProcessor& filter, int parameter, String name); ButtonList* addNormalButtonListClassic (int x, int y, int width, ObxdAudioProcessor& filter, int parameter, String name, Image img); void rebuildComponents (ObxdAudioProcessor&); //============================================================================== ObxdAudioProcessor& processor; //============================================================================== Knob* cutoffKnob,*resonanceKnob,*osc1PitchKnob,*osc2PitchKnob,*osc2DetuneKnob,*volumeKnob, *portamentoKnob,*voiceDetuneKnob,*filterEnvelopeAmtKnob,*pulseWidthKnob,*xmodKnob,*multimodeKnob,*attackKnob,*decayKnob,*sustainKnob,*releaseKnob, *fattackKnob,*fdecayKnob,*fsustainKnob,*freleaseKnob,*osc1MixKnob,*osc2MixKnob,*noiseMixKnob, *filterDetuneKnob,*envelopeDetuneKnob,*portamentoDetuneKnob, *tuneKnob, *lfoFrequencyKnob,*lfoAmt1Knob,*lfoAmt2Knob, *pan1Knob,*pan2Knob,*pan3Knob,*pan4Knob,*pan5Knob,*pan6Knob,*pan7Knob,*pan8Knob, *brightnessKnob,*envPitchModKnob, *bendLfoRateKnob,*veloAmpEnvKnob,*veloFltEnvKnob,*transposeKnob; TooglableButton* hardSyncButton,*osc1SawButton,*osc2SawButton,*osc1PulButton,*osc2PulButton,*filterKeyFollowButton,*unisonButton,*pitchQuantButton, *filterHQButton,*filterBPBlendButton, *lfoSinButton,*lfoSquareButton,*lfoSHButton,*lfoOsc1Button,*lfoOsc2Button,*lfoFilterButton, *lfoPwm1Button,*lfoPwm2Button, *bendRangeButton,*bendOsc2OnlyButton, *fourPoleButton,*asPlayedAllocButton,*midiLearnButton,*midiUnlearnButton; ButtonList *voiceSwitch,*legatoSwitch; File skinFolder; //============================================================================== OwnedArray knobAttachments; OwnedArray toggleAttachments; OwnedArray buttonListAttachments; }; #endif // PLUGINEDITOR_H_INCLUDED