10#ifndef __AUDACITY_EFFECT_UI_SERVICES__
11#define __AUDACITY_EFFECT_UI_SERVICES__
29 std::optional<std::unique_ptr<EffectSettingsAccess::Message>>;
51 enum :
long { DefaultMessageBoxStyle = wxOK | wxCENTRE };
54 long style = DefaultMessageBoxStyle,
75 virtual int ShowHostInterface(
EffectBase &plugin,
78 bool forceModal =
false);
85 wxWindow &parent, wxDialog &dialog,
86 EffectEditor *pEditor,
bool forceModal =
false)
const = 0;
std::optional< std::unique_ptr< EffectSettingsAccess::Message > > OptionalMessage
std::function< DialogFactoryResults(wxWindow &parent, EffectBase &, EffectUIServices &, EffectSettingsAccess &) > EffectDialogFactory
Type of function that creates a dialog for an effect.
static BasicUI::MessageBoxResult DoMessageBox(const TranslatableString &msg)
static Settings & settings()
Base class for many of the effects in Audacity.
Performs effect computation.
Hold values to send to effect output meters.
Factory of instances of an effect.
virtual void ShowOptions(const EffectPlugin &plugin) const =0
virtual bool ValidateUI(const EffectPlugin &context, EffectSettings &settings) const =0
virtual bool CloseUI() const =0
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
virtual OptionalMessage ImportPresets(const EffectPlugin &plugin, EffectSettings &settings) const =0
virtual void ExportPresets(const EffectPlugin &plugin, const EffectSettings &settings) const =0
virtual ~EffectUIServices()
virtual int ShowClientInterface(const EffectPlugin &plugin, wxWindow &parent, wxDialog &dialog, EffectEditor *pEditor, bool forceModal=false) const =0
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Holds a msgid for the translation catalog; may also bind format arguments.
std::shared_ptr< EffectInstance > pInstance
constructed and successfully Init()-ed; or null for failure
Externalized state of a plug-in.