Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter Class Referencefinal
Inheritance diagram for anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter:
[legend]
Collaboration diagram for anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter:
[legend]

Public Member Functions

 VST3DiscreteParameter (wxWindow *parent, wxWindowID id, Steinberg::Vst::ParamID paramId, int maxValue, const wxString &title, const wxString &units, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxSL_HORIZONTAL, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxSliderNameStr)
 
void SetNormalizedValue (Steinberg::Vst::IEditController &editController, Steinberg::Vst::ParamValue value) override
 
void UpdateAccessible (Steinberg::Vst::IEditController &editController, Steinberg::Vst::ParamValue value) override
 
Steinberg::Vst::ParamValue GetNormalizedValue (Steinberg::Vst::IEditController &editController) const override
 
- Public Member Functions inherited from VST3ParameterControl
 VST3ParameterControl (Steinberg::Vst::ParamID id)
 
virtual ~VST3ParameterControl ()
 
virtual void SetNormalizedValue (Steinberg::Vst::IEditController &, Steinberg::Vst::ParamValue value)=0
 
virtual Steinberg::Vst::ParamValue GetNormalizedValue (Steinberg::Vst::IEditController &editController) const =0
 
virtual void UpdateAccessible (Steinberg::Vst::IEditController &editController, Steinberg::Vst::ParamValue value)
 
Steinberg::Vst::ParamID GetParameterId () const noexcept
 

Private Attributes

const wxString mTitle
 
const wxString mUnits
 

Detailed Description

Definition at line 156 of file VST3ParametersWindow.cpp.

Constructor & Destructor Documentation

◆ VST3DiscreteParameter()

anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::VST3DiscreteParameter ( wxWindow *  parent,
wxWindowID  id,
Steinberg::Vst::ParamID  paramId,
int  maxValue,
const wxString &  title,
const wxString &  units,
const wxPoint &  pos = wxDefaultPosition,
const wxSize &  size = wxDefaultSize,
long  style = wxSL_HORIZONTAL,
const wxValidator &  validator = wxDefaultValidator,
const wxString &  name = wxSliderNameStr 
)
inline

Definition at line 162 of file VST3ParametersWindow.cpp.

173 : wxSlider(parent, id, 0, 0, maxValue, pos, size, style, validator, name)
174 , VST3ParameterControl(paramId)
175 , mTitle(title)
176 , mUnits(units)
177 {
178#if wxUSE_ACCESSIBILITY
179 SetAccessible(safenew WindowAccessible(this));
180#endif
181 }
const TranslatableString name
Definition: Distortion.cpp:76
#define safenew
Definition: MemoryX.h:9
static const auto title
VST3ParameterControl(Steinberg::Vst::ParamID id)
An alternative to using wxWindowAccessible, which in wxWidgets 3.1.1 contained GetParent() which was ...

References safenew.

Member Function Documentation

◆ GetNormalizedValue()

Steinberg::Vst::ParamValue anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::GetNormalizedValue ( Steinberg::Vst::IEditController &  editController) const
inlineoverridevirtual

Implements VST3ParameterControl.

Definition at line 196 of file VST3ParametersWindow.cpp.

197 {
198 return editController.plainParamToNormalized(GetParameterId(), GetValue());
199 }
Steinberg::Vst::ParamID GetParameterId() const noexcept

◆ SetNormalizedValue()

void anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::SetNormalizedValue ( Steinberg::Vst::IEditController &  editController,
Steinberg::Vst::ParamValue  value 
)
inlineoverridevirtual

Implements VST3ParameterControl.

Definition at line 183 of file VST3ParametersWindow.cpp.

184 {
185 SetValue(static_cast<int>(editController.normalizedParamToPlain(GetParameterId(), value)));
186 UpdateAccessible(editController, value);
187 }
void UpdateAccessible(Steinberg::Vst::IEditController &editController, Steinberg::Vst::ParamValue value) override

◆ UpdateAccessible()

void anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::UpdateAccessible ( Steinberg::Vst::IEditController &  editController,
Steinberg::Vst::ParamValue  value 
)
inlineoverridevirtual

Reimplemented from VST3ParameterControl.

Definition at line 189 of file VST3ParametersWindow.cpp.

190 {
191 Steinberg::Vst::String128 str{ };
192 editController.getParamStringByValue(GetParameterId(), value, str);
193 SetName(wxString::Format("%s %s %s", mTitle, VST3Utils::ToWxString(str), mUnits));
194 }
#define str(a)
static wxString ToWxString(const Steinberg::Vst::TChar *str)
Definition: VST3Utils.cpp:93

References str, and VST3Utils::ToWxString().

Here is the call graph for this function:

Member Data Documentation

◆ mTitle

const wxString anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::mTitle
private

Definition at line 158 of file VST3ParametersWindow.cpp.

◆ mUnits

const wxString anonymous_namespace{VST3ParametersWindow.cpp}::VST3DiscreteParameter::mUnits
private

Definition at line 159 of file VST3ParametersWindow.cpp.


The documentation for this class was generated from the following file: