Audacity 3.2.0
StatefulEffectUIServices.h
Go to the documentation of this file.
1/**********************************************************************
2
3 Audacity: A Digital Audio Editor
4
5 StatefulEffectUIServices.h
6
7 Dominic Mazzoni
8 Vaughan Johnson
9
10 Paul Licameli split from Effect.h
11
12**********************************************************************/
13#ifndef __AUDACITY_STATEFUL_EFFECT_UI_SERVICES__
14#define __AUDACITY_STATEFUL_EFFECT_UI_SERVICES__
15
17#include <wx/event.h>
18
19class AUDACITY_DLL_API StatefulEffectUIServices
20 : public wxEvtHandler
22{
23public:
25
27 std::unique_ptr<EffectEditor> PopulateUI(const EffectPlugin &plugin,
29 const EffectOutputs *pOutputs) const override;
30
32
36 virtual std::unique_ptr<EffectEditor> PopulateOrExchange(
37 ShuttleGui & S, EffectInstance &instance, EffectSettingsAccess &access,
38 const EffectOutputs *pOutputs);
39
42 virtual bool TransferDataToWindow(const EffectSettings &settings);
43
46 virtual bool TransferDataFromWindow(EffectSettings &settings);
47};
48
49#endif
#define S(N)
Definition: ToChars.cpp:64
static Settings & settings()
Definition: TrackInfo.cpp:47
Performs effect computation.
Hold values to send to effect output meters.
Factory of instances of an effect.
Definition: EffectPlugin.h:36
virtual std::unique_ptr< EffectEditor > PopulateUI(const EffectPlugin &plugin, ShuttleGui &S, EffectInstance &instance, EffectSettingsAccess &access, const EffectOutputs *pOutputs) const =0
Adds controls to a panel that is given as the parent window of S
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:640
~StatefulEffectUIServices() override
Externalized state of a plug-in.