|
Photosine 0.5
|
#include <PluginEditorComponent.h>
Public Member Functions | |
| PluginEditorComponent () | |
| ~PluginEditorComponent () override | |
juce::Component virtual members | |
| void | paint (juce::Graphics &) override |
| void | resized () override |
juce::ScrollBar::Listener virtual members | |
| void | scrollBarMoved (juce::ScrollBar *scrollBarThatHasMoved, double newRangeStart) override |
Private Member Functions | |
| void | timerCallback () override |
| void | selectPlugin (juce::String pluginID) |
| void | setPluginInstance (std::shared_ptr< PluginManagerInstance > newInstance) |
| void | embedNativeWindow () |
juce::ValueTree::Listener virtual members | |
| void | valueTreePropertyChanged (juce::ValueTree &treeWhosePropertyHasChanged, const juce::Identifier &property) override |
| void | valueTreeChildAdded (juce::ValueTree &parentTree, juce::ValueTree &childWhichHasBeenAdded) override |
| void | valueTreeChildRemoved (juce::ValueTree &parentTree, juce::ValueTree &childWhichHasBeenRemoved, int indexFromWhichChildWasRemoved) override |
| void | valueTreeChildOrderChanged (juce::ValueTree &parentTreeWhoseChildrenHaveMoved, int oldIndex, int newIndex) override |
Private Attributes | |
| std::shared_ptr< PluginManager > | pluginManager |
| std::shared_ptr< PluginManagerInstance > | currentInstance |
| juce::AudioProcessorEditor * | currentEditor |
| juce::Viewport | editorViewport |
| std::unique_ptr< PluginEditorHiddenWindow > | editorWindow |
| std::unique_ptr< MacNativeWindow > | nativeWindow |
| juce::Component | blankComponent |
| juce::ValueTree | projectValueTree |
Component that contains the selected plugin's editor. Embeds a heavy native window due to juce::Component rendering limitations around clipping.
| PluginInterface::PluginEditorComponent::PluginEditorComponent | ( | ) |
|
override |
|
private |
Embeds PluginEditorHiddenWindow into main window as a child window using native handles. On MacOS, this uses MacNativeWindow to run native Objective-C and NSView/NSWindow methods.
|
override |
|
override |
|
override |
|
private |
Checks if the plugin instance for pluginID has finished loading, then calls setPluginInstance() if it is not nullptr
|
private |
Adds plugin editor to PluginEditorHiddenWindow and call embedNativeWindow()
|
overrideprivate |
Calls selectPlugin()
|
overrideprivate |
|
overrideprivate |
|
overrideprivate |
|
overrideprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Local object holding the project value tree so it's in scope for the Listener subclass.