29class AudioProcessorEditorListener;
90 virtual int getControlParameterIndex (
Component&);
101 virtual bool supportsHostMIDIControllerPresence (
bool hostMIDIControllerIsAvailable);
112 virtual void hostMIDIControllerIsAvailable (
bool controllerIsAvailable);
117 virtual void setScaleFactor (
float newScale);
135 void setResizable (
bool allowHostToResize,
bool useBottomRightCornerResizer);
161 void setResizeLimits (
int newMinimumWidth,
162 int newMinimumHeight,
164 int newMaximumHeight)
noexcept;
224 virtual bool wantsLayerBackedView()
const;
232 void componentMovedOrResized (
Component&,
bool,
bool wasResized)
override { ed.editorResized (wasResized); }
233 void componentParentHierarchyChanged (Component&)
override { ed.updatePeer(); }
235 AudioProcessorEditor& ed;
240 ComponentPeer* createNewPeer (
int styleFlags,
void*)
override;
244 void editorResized (
bool wasResized);
246 void attachConstrainer (ComponentBoundsConstrainer*);
247 void attachResizableCornerComponent();
251 bool resizableByHost =
false;
252 ComponentBoundsConstrainer defaultConstrainer;
253 ComponentBoundsConstrainer* constrainer =
nullptr;
254 AudioProcessorEditorHostContext* hostContext =
nullptr;
255 Component::SafePointer<Component> splashScreen;
256 AffineTransform hostScaleTransform;
Base class for the component that acts as the GUI for an AudioProcessor.
ComponentBoundsConstrainer * getConstrainer() noexcept
Returns the bounds constrainer object that this window is using.
AudioProcessor * getAudioProcessor() const noexcept
Returns a pointer to the processor that this editor represents.
std::unique_ptr< ResizableCornerComponent > resizableCorner
The ResizableCornerComponent which is currently being used by this editor, or nullptr if it does not ...
AudioProcessor & processor
The AudioProcessor that this editor represents.
AudioProcessorEditorHostContext * getHostContext() const noexcept
Gets a context object, if one is available.
void setHostContext(AudioProcessorEditorHostContext *context) noexcept
Sets a context object that can be queried to find information that the host makes available to the pl...
bool isResizable() const noexcept
Returns true if the host is allowed to resize the editor's parent window.
Used by the setParameterHighlighting() method.
Base class for audio processing classes or plugins.
Represents a colour, also including a transparency value.
A class that imposes restrictions on a Component's size or position.
Gets informed about changes to a component's hierarchy or position.
The base class for all JUCE user-interface objects.
Manages a rectangle and allows geometric operations to be performed on it.
Calling AudioProcessorEditor::getHostContext() may return a pointer to an instance of this class.