![]() |
Audacity 3.2.0
|
#include <VST3UIValidator.h>
Public Member Functions | |
VST3UIValidator (wxWindow *parent, VST3Wrapper &wrapper, EffectBase &effect, EffectSettingsAccess &access, bool useNativeUI) | |
~VST3UIValidator () override | |
bool | IsGraphicalUI () override |
bool | UpdateUI () override |
Update appearance of the panel for changes in settings. More... | |
bool | ValidateUI () override |
Get settings data from the panel; may make error dialogs and return false. More... | |
void | OnClose () override |
![]() | |
EffectUIValidator (EffectUIClientInterface &effect, EffectSettingsAccess &access) | |
virtual | ~EffectUIValidator () |
virtual bool | ValidateUI ()=0 |
Get settings data from the panel; may make error dialogs and return false. More... | |
virtual bool | UpdateUI () |
Update appearance of the panel for changes in settings. More... | |
virtual bool | IsGraphicalUI () |
virtual void | Disconnect () |
On the first call only, may disconnect from further event handling. More... | |
virtual void | OnClose () |
![]() | |
Publisher (ExceptionPolicy *pPolicy=nullptr, Alloc a={}) | |
Constructor supporting type-erased custom allocation/deletion. More... | |
Publisher (Publisher &&)=default | |
Publisher & | operator= (Publisher &&)=default |
Subscription | Subscribe (Callback callback) |
Connect a callback to the Publisher; later-connected are called earlier. More... | |
Subscription | Subscribe (Object &obj, Return(Object::*callback)(Args...)) |
Overload of Subscribe takes an object and pointer-to-member-function. More... | |
Private Member Functions | |
void | OnIdle (wxIdleEvent &) |
bool | TryLoadNativeUI (wxWindow *parent) |
Private Attributes | |
VST3Wrapper & | mWrapper |
Steinberg::IPtr< Steinberg::IPlugView > | mPlugView |
Steinberg::IPtr< Steinberg::IPlugFrame > | mPlugFrame |
wxWindow * | mParent { nullptr } |
NumericTextCtrl * | mDuration { nullptr } |
VST3ParametersWindow * | mPlainUI { nullptr } |
Additional Inherited Members | |
![]() | |
using | message_type = EffectSettingChanged |
using | CallbackReturn = std::conditional_t< true, void, bool > |
using | Callback = std::function< CallbackReturn(const EffectSettingChanged &) > |
Type of functions that can be connected to the Publisher. More... | |
![]() | |
static bool | EnableApply (wxWindow *parent, bool enable=true) |
Enable or disable the Apply button of the dialog that contains parent. More... | |
static bool | EnablePreview (wxWindow *parent, bool enable=true) |
![]() | |
static constexpr int | kPlayID = 20102 |
![]() | |
static constexpr bool | notifies_all |
![]() | |
template<typename EventTag , typename Class , typename Event > | |
void | BindTo (wxEvtHandler &src, const EventTag &eventType, void(Class::*pmf)(Event &)) |
![]() | |
CallbackReturn | Publish (const EffectSettingChanged &message) |
Send a message to connected callbacks. More... | |
![]() | |
EffectUIClientInterface & | mEffect |
EffectSettingsAccess & | mAccess |
bool | mUIClosed { false } |
Definition at line 19 of file VST3UIValidator.h.
VST3UIValidator::VST3UIValidator | ( | wxWindow * | parent, |
VST3Wrapper & | wrapper, | ||
EffectBase & | effect, | ||
EffectSettingsAccess & | access, | ||
bool | useNativeUI | ||
) |
Definition at line 16 of file VST3UIValidator.cpp.
References _, NumericTextCtrl::Options::AutoPos(), VST3Wrapper::BeginParameterEdit(), EffectTypeGenerate, EffectSettings::extra, EffectSettingsAccess::Get(), EffectDefinitionInterface::GetType(), id, EffectUIValidator::mAccess, VST3Wrapper::mComponentHandler, mDuration, VST3Wrapper::mEditController, mParent, mPlainUI, VST3Wrapper::mSetup, mWrapper, OnIdle(), VST3Wrapper::ParamChangedHandler, Observer::Publisher< EffectSettingChanged >::Publish(), safenew, NumericTextCtrl::SetName(), VST3ParametersWindow::Setup(), NumericConverter::TIME, TryLoadNativeUI(), and XO().
|
override |
Definition at line 70 of file VST3UIValidator.cpp.
References mWrapper, and VST3Wrapper::ParamChangedHandler.
|
overridevirtual |
Default implementation returns false
Reimplemented from EffectUIValidator.
Definition at line 131 of file VST3UIValidator.cpp.
References mPlugView.
|
overridevirtual |
Handle the UI OnClose event. Default implementation calls mEffect.CloseUI()
Reimplemented from EffectUIValidator.
Definition at line 149 of file VST3UIValidator.cpp.
References VST3Wrapper::EndParameterEdit(), EffectSettingsAccess::Flush(), VST3Wrapper::FlushParameters(), NumericConverter::GetValue(), EffectUIValidator::mAccess, mDuration, EffectSettingsAccess::ModifySettings(), mParent, mPlainUI, mPlugFrame, mPlugView, mWrapper, EffectUIValidator::OnClose(), VST3Wrapper::ParamChangedHandler, settings(), and VST3Wrapper::StoreSettings().
|
private |
Definition at line 75 of file VST3UIValidator.cpp.
References VST3Wrapper::FlushParameters(), VST3Wrapper::IsActive(), EffectUIValidator::mAccess, EffectSettingsAccess::ModifySettings(), mWrapper, settings(), and VST3Wrapper::StoreSettings().
Referenced by VST3UIValidator().
|
private |
Definition at line 92 of file VST3UIValidator.cpp.
References VST3Wrapper::mEditController, mPlugFrame, mPlugView, mWrapper, and safenew.
Referenced by VST3UIValidator().
|
overridevirtual |
Update appearance of the panel for changes in settings.
Default implementation does nothing, returns true
Reimplemented from EffectUIValidator.
Definition at line 183 of file VST3UIValidator.cpp.
References VST3Wrapper::FetchSettings(), EffectSettingsAccess::Flush(), EffectUIValidator::mAccess, EffectSettingsAccess::ModifySettings(), mPlainUI, mWrapper, VST3ParametersWindow::ReloadParameters(), and settings().
|
overridevirtual |
Get settings data from the panel; may make error dialogs and return false.
Implements EffectUIValidator.
Definition at line 136 of file VST3UIValidator.cpp.
References VST3Wrapper::FlushParameters(), NumericConverter::GetValue(), EffectUIValidator::mAccess, mDuration, EffectSettingsAccess::ModifySettings(), mWrapper, settings(), and VST3Wrapper::StoreSettings().
|
private |
Definition at line 28 of file VST3UIValidator.h.
Referenced by OnClose(), ValidateUI(), and VST3UIValidator().
|
private |
Definition at line 27 of file VST3UIValidator.h.
Referenced by OnClose(), and VST3UIValidator().
|
private |
Definition at line 30 of file VST3UIValidator.h.
Referenced by OnClose(), UpdateUI(), and VST3UIValidator().
|
private |
Definition at line 26 of file VST3UIValidator.h.
Referenced by OnClose(), and TryLoadNativeUI().
|
private |
Definition at line 25 of file VST3UIValidator.h.
Referenced by IsGraphicalUI(), OnClose(), and TryLoadNativeUI().
|
private |
Definition at line 23 of file VST3UIValidator.h.
Referenced by OnClose(), OnIdle(), TryLoadNativeUI(), UpdateUI(), ValidateUI(), VST3UIValidator(), and ~VST3UIValidator().