LMMS
Loading...
Searching...
No Matches
juce_AudioProcessorEditor.h
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26namespace juce
27{
28
29class AudioProcessorEditorListener;
30
31//==============================================================================
43{
44protected:
45 //==============================================================================
48
51
52public:
54 ~AudioProcessorEditor() override;
55
56 //==============================================================================
59
66
67 //==============================================================================
75
82
91
102
112 virtual void hostMIDIControllerIsAvailable (bool controllerIsAvailable);
113
117 virtual void setScaleFactor (float newScale);
118
119 //==============================================================================
135 void setResizable (bool allowHostToResize, bool useBottomRightCornerResizer);
136
142
161 void setResizeLimits (int newMinimumWidth,
162 int newMinimumHeight,
163 int newMaximumWidth,
164 int newMaximumHeight) noexcept;
165
171
179 void setConstrainer (ComponentBoundsConstrainer* newConstrainer);
180
186 void setBoundsConstrained (Rectangle<int> newBounds);
187
196
202 void setHostContext (AudioProcessorEditorHostContext* context) noexcept { hostContext = context; }
203
207 std::unique_ptr<ResizableCornerComponent> resizableCorner;
208
209private:
210 //==============================================================================
212 {
214
215 void componentMovedOrResized (Component&, bool, bool wasResized) override { ed.editorResized (wasResized); }
216 void componentParentHierarchyChanged (Component&) override { ed.updatePeer(); }
217
219
221 };
222
223 ComponentPeer* createNewPeer (int styleFlags, void*) override;
224
225 //==============================================================================
226 void initialise();
227 void editorResized (bool wasResized);
228 void updatePeer();
231
232 //==============================================================================
233 std::unique_ptr<AudioProcessorEditorListener> resizeListener;
234 bool resizableByHost = false;
239
241};
242
243} // namespace juce
#define noexcept
Definition DistrhoDefines.h:72
Definition juce_AffineTransform.h:43
AudioProcessorEditor(AudioProcessor &) noexcept
Definition juce_AudioProcessorEditor.cpp:29
void updatePeer()
Definition juce_AudioProcessorEditor.cpp:181
virtual bool supportsHostMIDIControllerPresence(bool hostMIDIControllerIsAvailable)
Definition juce_AudioProcessorEditor.cpp:52
void setResizable(bool allowHostToResize, bool useBottomRightCornerResizer)
Definition juce_AudioProcessorEditor.cpp:63
virtual int getControlParameterIndex(Component &)
Definition juce_AudioProcessorEditor.cpp:50
ComponentBoundsConstrainer defaultConstrainer
Definition juce_AudioProcessorEditor.h:235
std::unique_ptr< AudioProcessorEditorListener > resizeListener
Definition juce_AudioProcessorEditor.h:233
ComponentBoundsConstrainer * getConstrainer() noexcept
Definition juce_AudioProcessorEditor.h:170
AudioProcessor * getAudioProcessor() const noexcept
Definition juce_AudioProcessorEditor.h:65
ComponentPeer * createNewPeer(int styleFlags, void *) override
Definition juce_AudioProcessorEditor.cpp:200
virtual void setControlHighlight(ParameterControlHighlightInfo)
Definition juce_AudioProcessorEditor.cpp:49
virtual void setScaleFactor(float newScale)
Definition juce_AudioProcessorEditor.cpp:188
std::unique_ptr< ResizableCornerComponent > resizableCorner
Definition juce_AudioProcessorEditor.h:207
AudioProcessor & processor
Definition juce_AudioProcessorEditor.h:58
AudioProcessorEditorHostContext * hostContext
Definition juce_AudioProcessorEditor.h:237
void attachResizableCornerComponent()
Definition juce_AudioProcessorEditor.cpp:128
virtual void hostMIDIControllerIsAvailable(bool controllerIsAvailable)
Definition juce_AudioProcessorEditor.cpp:53
ComponentBoundsConstrainer * constrainer
Definition juce_AudioProcessorEditor.h:236
AudioProcessorEditorHostContext * getHostContext() const noexcept
Definition juce_AudioProcessorEditor.h:195
void attachConstrainer(ComponentBoundsConstrainer *)
Definition juce_AudioProcessorEditor.cpp:119
void initialise()
Definition juce_AudioProcessorEditor.cpp:55
bool resizableByHost
Definition juce_AudioProcessorEditor.h:234
AffineTransform hostScaleTransform
Definition juce_AudioProcessorEditor.h:238
void setHostContext(AudioProcessorEditorHostContext *context) noexcept
Definition juce_AudioProcessorEditor.h:202
void editorResized(bool wasResized)
Definition juce_AudioProcessorEditor.cpp:154
bool isResizable() const noexcept
Definition juce_AudioProcessorEditor.h:141
Definition juce_AudioProcessor.h:46
Definition juce_Colour.h:38
Definition juce_ComponentBoundsConstrainer.h:44
Component() noexcept
Definition juce_Component.cpp:517
friend class ComponentPeer
Definition juce_Component.h:2527
Definition juce_ComponentListener.h:43
Definition juce_Rectangle.h:67
* e
Definition inflate.c:1404
#define JUCE_DECLARE_NON_COPYABLE(className)
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
AudioProcessorEditorListener(AudioProcessorEditor &e)
Definition juce_AudioProcessorEditor.h:213
void componentMovedOrResized(Component &, bool, bool wasResized) override
Definition juce_AudioProcessorEditor.h:215
void componentParentHierarchyChanged(Component &) override
Definition juce_AudioProcessorEditor.h:216
AudioProcessorEditor & ed
Definition juce_AudioProcessorEditor.h:218
Definition juce_AudioProcessorEditor.h:70
int parameterIndex
Definition juce_AudioProcessorEditor.h:71
Colour suggestedColour
Definition juce_AudioProcessorEditor.h:73
bool isHighlighted
Definition juce_AudioProcessorEditor.h:72
Definition juce_AudioProcessorEditorHostContext.h:69
#define const
Definition zconf.h:137