14#ifndef __AUDACITY_EFFECTUI_H__
15#define __AUDACITY_EFFECTUI_H__
55 std::shared_ptr<EffectInstance> &pInstance,
57 const std::shared_ptr<RealtimeEffectState> &pPriorState = {});
83 void OnErase(wxEraseEvent & evt);
84 void OnPaint(wxPaintEvent & evt);
85 void OnClose(wxCloseEvent & evt);
86 void OnApply(wxCommandEvent & evt);
89 void OnDebug(wxCommandEvent & evt);
90 void OnMenu(wxCommandEvent & evt);
92 void OnPlay(wxCommandEvent & evt);
100 void OnExport(wxCommandEvent & evt);
103 void OnIdle(wxIdleEvent &evt);
109 wxBitmap
CreateBitmap(
const char *
const xpm[],
bool up,
bool pusher);
153 bool mClosed{
false };
161 DECLARE_EVENT_TABLE()
191 int flags = wxDEFAULT_DIALOG_STYLE,
192 int additionalButtons = 0);
196 bool TransferDataToWindow()
override;
197 bool TransferDataFromWindow()
override;
198 bool Validate()
override;
202 virtual void OnPreview(wxCommandEvent & evt);
203 virtual void OnOk(wxCommandEvent & evt);
209 DECLARE_EVENT_TABLE()
213#if defined(__WXMAC__)
void MacMakeWindowFloating(NSView *handle)
std::vector< RegistryPath > RegistryPaths
Base class for command in Audacity.
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
CommandContext provides additional information to an 'Apply()' command. It provides the project,...
Base class for many of the effects in Audacity.
Hold values to send to effect output meters.
std::shared_ptr< EffectSettingsAccess > EffectSettingsAccessPtr
void OnEnable(wxCommandEvent &evt)
void OnFactoryPreset(wxCommandEvent &evt)
RegistryPaths mUserPresets
void OnDefaults(wxCommandEvent &evt)
Observer::Subscription mAudioIOSubscription
bool HandleCommandKeystrokes() override
const EffectPlugin::EffectSettingsAccessPtr mpGivenAccess
wxPanel * BuildButtonBar(wxWindow *parent, bool graphicalUI)
void OnErase(wxEraseEvent &evt)
void OnPlayback(AudioIOEvent)
AudacityProject & mProject
std::shared_ptr< RealtimeEffectState > mpTempProjectState
EffectBase & mEffectUIHost
bool TransferDataToWindow() override
EffectPlugin::EffectSettingsAccessPtr mpAccess
const EffectOutputs *const mpOutputs
void OnUserPreset(wxCommandEvent &evt)
void OnDeletePreset(wxCommandEvent &evt)
void OnIdle(wxIdleEvent &evt)
wxButton * mPlayToggleBtn
Observer::Subscription mEffectStateSubscription
void OnCapture(AudioIOEvent)
EffectUIHost(wxWindow *parent, AudacityProject &project, EffectBase &effect, EffectUIServices &client, std::shared_ptr< EffectInstance > &pInstance, EffectSettingsAccess &access, const std::shared_ptr< RealtimeEffectState > &pPriorState={})
EffectUIServices & mClient
void OnClose(wxCloseEvent &evt)
EffectEditor * GetEditor() const
void OnExport(wxCommandEvent &evt)
void OnSaveAs(wxCommandEvent &evt)
const bool mHadPriorState
void OnOptions(wxCommandEvent &evt)
void OnInitDialog(wxInitDialogEvent &evt)
void OnMenu(wxCommandEvent &evt)
void OnDebug(wxCommandEvent &evt)
void OnCharHook(wxKeyEvent &evt)
EffectPlugin::EffectSettingsAccessPtr mpAccess2
void OnImport(wxCommandEvent &evt)
std::unique_ptr< EffectEditor > mpEditor
std::shared_ptr< EffectInstance > InitializeInstance()
void OnApply(wxCommandEvent &evt)
const bool mSupportsRealtime
void OnPlay(wxCommandEvent &evt)
const std::shared_ptr< EffectInstance > mpInstance
void OnCancel(wxCommandEvent &evt)
std::weak_ptr< RealtimeEffectState > mwState
wxBitmap CreateBitmap(const char *const xpm[], bool up, bool pusher)
bool IsOpenedFromEffectPanel() const
bool TransferDataFromWindow() override
void OnPaint(wxPaintEvent &evt)
A move-only handle representing a connection to a Publisher.
Defines a selected portion of a project.
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.
AUDACITY_DLL_API bool DoEffect(const PluginID &ID, const CommandContext &context, unsigned flags)
'Repeat Last Effect'.
AUDACITY_DLL_API DialogFactoryResults DialogFactory(wxWindow &parent, EffectBase &host, EffectUIServices &client, EffectSettingsAccess &access)