6#include "plugins/iplugin_host_window.h"
8namespace zrythm::plugins
19class JuceDocumentPluginHostWindow final
20 :
private juce::DocumentWindow,
24 using CloseHandler = std::function<void ()>;
26 JuceDocumentPluginHostWindow (
28 CloseHandler close_handler);
51 void setSize (
int width,
int height)
override
53 juce::DocumentWindow::setSize (width, height);
56 void setVisible (
bool shouldBeVisible)
override
58 juce::DocumentWindow::setVisible (shouldBeVisible);
69 void closeButtonPressed ()
override;
72 CloseHandler close_handler_;
Interface for top-level plugin hosting windows.
void setSize(int width, int height) override
Set the window size without centering.
WId getEmbedWindowId() const override
Gets a native window handle to embed in.
void setSizeAndCenter(int width, int height) override
Sets the window size and centers it on the screen.
void setJuceComponentContentNonOwned(juce::Component *content_non_owned) override
Sets the JUCE component (normally a juce editor component) as the child of this window.
Lightweight UTF-8 string wrapper with safe conversions.