56 return XO(
"Audacity");
61 return AUDACITY_VERSION_STRING;
73 return {
wxT(
"Audacity"),
XO(
"Built-in") };
137 name,
wxT(
"Parameters"), parms))
152 name,
wxT(
"Parameters"), parms);
197 return wxT(
"SavedState");
261 S.SetForValidating( &eap );
272 result = {
nullptr };
273 S.SetForWriting( &eap );
282 XO(
"%s: Could not load settings below. Default settings will be used.\n\n%s")
286 result = {
nullptr };
387 return previewLength;
Toolkit-neutral facade for basic user interface services.
#define BUILTIN_EFFECT_PREFIX
RegistryPath UserPresetsGroup(const RegistryPath &name)
Compute part of a registry path, given a name which may be empty.
const RegistryPath & FactoryDefaultsGroup()
Component of a configuration key path, for default state of MakeSettings()
const RegistryPath & CurrentSettingsGroup()
Component of a configuration key path, for last-used destructive settings.
std::optional< std::unique_ptr< EffectSettingsAccess::Message > > OptionalMessage
wxString PluginPath
type alias for identifying a Plugin supplied by a module, each module defining its own interpretation...
std::vector< RegistryPath > RegistryPaths
IteratorRange< Iterator > make_iterator_range(const Iterator &i1, const Iterator &i2)
static Settings & settings()
virtual ProgressResult Poll(unsigned long long numerator, unsigned long long denominator, const TranslatableString &message={})=0
Update the bar and poll for clicks. Call only on the main thread.
Generates EffectParameterMethods overrides from variadic template arguments.
CommandParameters, derived from wxFileConfig, is essentially doing the same things as the SettingsVis...
bool GetParameters(wxString &parms)
TranslatableString GetName() const
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
const wxString & Internal() const
WaveTrackFactory * mFactory
BasicUI::ProgressDialog * mProgress
bool DoEffect(EffectSettings &settings, const InstanceFinder &finder, double projectRate, TrackList *list, WaveTrackFactory *factory, NotifyingSelectedRegion &selectedRegion, unsigned flags, const EffectSettingsAccessPtr &pAccess) override
std::shared_ptr< TrackList > mTracks
static InstanceFinder DefaultInstanceFinder(EffectPlugin &plugin)
const AudacityProject * FindProject() const
RealtimeSince
In which versions of Audacity was an effect realtime capable?
Base class for many of the effects in Audacity.
bool SaveSettings(const EffectSettings &settings, CommandParameters &parms) const override
Store settings as keys and values.
RealtimeSince RealtimeSupport() const override
Since which version of Audacity has the effect supported realtime?
const EffectSettingsManager & GetDefinition() const override
bool TrackGroupProgress(int whichGroup, double frac, const TranslatableString &={}) const
bool SaveUserPreset(const RegistryPath &name, const EffectSettings &settings) const override
Save settings in the configuration file as a user-named preset.
void SetBatchProcessing() override
OptionalMessage LoadFactoryDefaults(EffectSettings &settings) const override
bool Delegate(Effect &delegate, EffectSettings &settings, InstanceFinder finder={})
Re-invoke DoEffect on another Effect object that implements the work.
bool VisitSettings(SettingsVisitor &visitor, EffectSettings &settings) override
bool SaveSettingsAsString(const EffectSettings &settings, wxString &parms) const override
void GetBounds(const WaveTrack &track, sampleCount *start, sampleCount *len)
OptionalMessage LoadSettingsFromString(const wxString &parms, EffectSettings &settings) const override
virtual NumericFormatID GetSelectionFormat()
bool SupportsAutomation() const override
Whether the effect has any automatable controls.
bool LoadSettings(const CommandParameters &parms, EffectSettings &settings) const override
Restore settings from keys and values.
virtual const EffectParameterMethods & Parameters() const
TranslatableString GetDescription() const override
double CalcPreviewInputLength(const EffectSettings &settings, double previewLength) const override
Default implementation returns previewLength
OptionalMessage LoadFactoryPreset(int id, EffectSettings &settings) const override
bool TotalProgress(double frac, const TranslatableString &={}) const
bool TrackProgress(int whichTrack, double frac, const TranslatableString &={}) const
bool HasOptions() const override
wxString GetVersion() const override
bool CheckWhetherSkipEffect(const EffectSettings &settings) const override
Default implementation returns false.
PluginPath GetPath() const override
wxString GetSavedStateGroup()
bool IsBatchProcessing() const override
VendorSymbol GetVendor() const override
OptionalMessage LoadUserPreset(const RegistryPath &name, EffectSettings &settings) const override
bool CanExportPresets() const override
Whether the effect supports export of presets to files, and importing too.
ComponentInterfaceSymbol GetSymbol() const override
EffectFamilySymbol GetFamily() const override
Report identifier and user-visible name of the effect protocol.
void UnsetBatchProcessing() override
bool IsDefault() const override
Whether the effect sorts "above the line" in the menus.
unsigned TestUIFlags(unsigned mask)
RegistryPaths GetFactoryPresets() const override
Report names of factory presets.
bool IsInteractive() const override
Whether the effect needs a dialog for entry of settings.
Interface for manipulations of an Effect's settings.
virtual bool Set(Effect &effect, const CommandParameters &parms, EffectSettings &settings) const =0
virtual void Get(const Effect &effect, const EffectSettings &settings, CommandParameters &parms) const =0
virtual void Visit(Effect &effect, SettingsVisitor &visitor, EffectSettings &settings) const =0
static const wxString kUserPresetIdent
std::function< std::optional< InstancePointer >(EffectSettings &settings) > InstanceFinder
static const wxString kFactoryPresetIdent
static const wxString kCurrentSettingsIdent
static const wxString kFactoryDefaultsIdent
EffectSettingsManager is an EffectDefinitionInterface that adds a factory function for EffectSettings...
virtual EffectSettings MakeSettings() const
bool setTimes(double t0, double t1)
Visitor of effect or command parameters. This is a base class with lots of virtual functions that do ...
SettingsVisitor that gets parameter values into a string.
SettingsVisitor that sets parameters to a value (from a string)
Holds a msgid for the translation catalog; may also bind format arguments.
A Track that contains audio waveform data.
double GetStartTime() const override
Implement WideSampleSequence.
double GetEndTime() const override
Implement WideSampleSequence.
sampleCount TimeToLongSamples(double t0) const
Positions or offsets within audio files need a wide type.
MessageBoxResult ShowMessageBox(const TranslatableString &message, MessageBoxOptions options={})
Show a modal message box with either Ok or Yes and No, and optionally Cancel.
bool SetConfig(const EffectDefinitionInterface &ident, ConfigurationType type, const RegistryPath &group, const RegistryPath &key, const Value &value)
bool GetConfig(const EffectDefinitionInterface &ident, ConfigurationType type, const RegistryPath &group, const RegistryPath &key, Value &var, const Value &defval)
const char * end(const char *str) noexcept
MessageBoxOptions && Caption(TranslatableString caption_) &&
Externalized state of a plug-in.