Keep track of the last created plugin view

For implementing `IPlugView::resizeView()`. This approach is safe
because there's only a single defined view type.
This commit is contained in:
Robbert van der Helm
2020-12-22 14:27:56 +01:00
parent da6ddccf07
commit 3bc3409929
2 changed files with 21 additions and 2 deletions
@@ -123,6 +123,18 @@ class Vst3PluginProxyImpl : public Vst3PluginProxy {
tresult PLUGIN_API initialize(FUnknown* context) override;
tresult PLUGIN_API terminate() override;
/**
* An unmanaged, raw pointer to the `IPlugView` instance returned in our
* implementation of `IEditController::createView()`. We need this to handle
* `IPlugFrame::resizeView()`, since that expects a pointer to the view that
* gets resized.
*
* XXX: This approach of course won't work with multiple views, but the SDK
* currently only defines a single type of view so that shouldn't be an
* issue
*/
Steinberg::IPlugView* last_created_plug_view = nullptr;
/**
* The component handler the host passed to us during
* `IEditController::setComponentHandler()`. When the plugin makes a