Audacity 3.2.0
StatelessPerTrackEffect.cpp
Go to the documentation of this file.
1/**********************************************************************
2
3 Audacity: A Digital Audio Editor
4
5 @file StatelessPerTrackEffect.cpp
6
7 Paul Licameli
8
9 **********************************************************************/
11#include "EffectEditor.h"
12#include "ShuttleGui.h"
13#include <wx/sizer.h>
14
15std::unique_ptr<EffectEditor> StatelessEffectUIServices::PopulateUI(
16 const EffectPlugin &, ShuttleGui &S, EffectInstance &instance,
17 EffectSettingsAccess &access, const EffectOutputs *pOutputs) const
18{
19 auto parent = S.GetParent();
20
21 // Subclass must provide something
22 auto result = MakeEditor(S, instance, access, pOutputs);
23 assert(result);
24
25 parent->SetMinSize(parent->GetSizer()->GetMinSize());
26
27 return result;
28}
29
#define S(N)
Definition: ToChars.cpp:64
Performs effect computation.
Hold values to send to effect output meters.
Factory of instances of an effect.
Definition: EffectPlugin.h:36
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:640
std::unique_ptr< EffectEditor > PopulateUI(const EffectPlugin &plugin, ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access, const EffectOutputs *pOutputs) const override
Adds controls to a panel that is given as the parent window of S
virtual std::unique_ptr< EffectEditor > MakeEditor(ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access, const EffectOutputs *pOutputs) const =0
Called only from PopulateUI, to add controls to effect panel.
~StatelessPerTrackEffect() override