SteveDaulton
9a0ee24c5c
bug 2290: Add error message
...
See https://bugzilla.audacityteam.org/show_bug.cgi?id=2290#c9
2020-01-23 12:59:53 +00:00
SteveDaulton
32a60103b4
bug 2290: Bail if no DTMF sequence
2020-01-20 21:29:50 +00:00
Paul Licameli
bbdc27b462
LoadEffects.cpp doesn't depend on individual effect classes...
2020-01-19 19:16:51 -05:00
Paul Licameli
69dab8b552
Each built-in effect class registers itself with BuiltinEffectsModule
2020-01-19 19:16:51 -05:00
Paul Licameli
4579835911
Eliminate one of the ## macro hacks in LoadEffects
2020-01-19 19:16:51 -05:00
Paul Licameli
83be5b3045
All loaded built-in effects have nullary constructors
2020-01-19 19:16:50 -05:00
Paul Licameli
f2ed21f9e5
Fix some comments
2020-01-19 13:23:30 -05:00
Paul Licameli
2570b56176
Rename Maybe and its members more like std::optional of C++17
2020-01-19 11:38:12 -05:00
Paul Licameli
d2ccde77e7
Remove another exhaustive switch on view sub-types, in Nyquist.cpp
2020-01-18 20:28:53 -05:00
Paul Licameli
7cff170cf7
Sub-view objects report their complete type, not just an enum value
2020-01-18 20:28:53 -05:00
Paul Licameli
d9ddb41410
Un-fix smart single quotes in Nyquist prompt too; see commit 45a0ce1
2020-01-18 19:34:40 -05:00
Paul Licameli
73fd60543d
Amending commit 1176b61 to avoid compatiblity break in macros using EQ
2020-01-18 11:14:41 -05:00
Paul Licameli
705d4a26a5
Don't supply "Waveform (dB)" to the 'VIEW property in Nyquist...
...
... consistently with the drop-down menu, and now the Tracks Preferences too.
Only distinguish Waveform and Spectrogram and nil.
See also commit e3d9fd9.
2020-01-17 22:48:23 -05:00
James Crook
1176b61953
Wording changes, per wiki:
...
https://wiki.audacityteam.org/wiki/Wording
2020-01-10 17:02:31 +00:00
Paul Licameli
66fd95f3d6
Rewrite the path through NyquistEffect, in the case that...
...
... you use the prompt, and you enter a complete script with control comments
that are reinterpreted to put up a second dialog.
This simplifies Effect::Delegate() and avoids mutual recursion of ShowInterface
with DoEffect.
2020-01-08 16:48:37 -05:00
Paul Licameli
e8c8db8b33
Parent and dialog factory arguments of Effect::DoEffect are optional
2020-01-08 16:47:21 -05:00
Paul Licameli
4385326e9d
Fewer calls to Effect::FindProject when only rate is needed
2020-01-07 18:38:56 -05:00
SteveDaulton
8b1ecf03a4
Fix bug 2280
2020-01-07 16:47:50 +00:00
Paul Licameli
6a0aed3884
Eliminate uses of GetActiveProject in src/effects
2020-01-06 14:14:21 -05:00
Paul Licameli
a93c4472f5
TrackList has back-pointer to project...
...
... and Track::GetOwner() is publicized, so that now you can find the
the AudacityProject, if any, that owns a given Track; this will help eliminate
some uses of GetActiveProject
2020-01-06 14:14:21 -05:00
Paul Licameli
c7984a2c83
Fix mistaken usage of ProjectSettings
2020-01-06 13:48:51 -05:00
Paul Licameli
ed9871d6b5
Eliminate GetActiveProject in EffectUI.cpp...
...
... This changes visible behavior.
If a realtime effect was open (say, AUGraphicEQ on Mac), and there were multiple
projects, then the window was associated with one of the projects.
But the "Apply" button could apply the effect to the active project, even if
that was not the associated one. But the associated project was queried for
the existence of a selection.
Now, EffectUIHost::OnApply consistently examines and changes only the associated
project, even if it is not active.
You have to close the window and reopen it with the other project if you really
want to change the other.
You can't have two realtime effects open at once, even if for different
projects. To overcome that limitation, we would have to make
RealtimeEffectsManager store state per-project, not globally.
2020-01-06 11:30:48 -05:00
Paul Licameli
723c5256c0
Don't call GetActiveProject when constructing EffectUIHost...
...
... relying on guarantees in the previous commit
2020-01-06 11:30:47 -05:00
Paul Licameli
bb26b2f2c4
Require a ProjectWindow as ancestor of effect dialog...
...
... by passing parent as reference, not pointer, and testing in the dialog
factory function.
This is important so that we know the lifetime of an effect dialog, even when
it is non-modal, is bounded by the lifetime of the associated project.
2020-01-06 11:30:47 -05:00
Leland Lucius
2803bc30a6
Fix Windows build
...
2>c:\users\yam\documents\aud\audacity\src\effects\effectui.h(215): warning C4099: 'CommandContext': type name first seen using 'class' now seen using 'struct'
...
2>BatchCommands.obj : error LNK2019: unresolved external symbol "bool __cdecl EffectUI::DoEffect(class wxString const &,class CommandContext const &,unsigned int)" (?DoEffect@EffectUI@@YA_NABVwxString@@ABVCommandContext@@I@Z) referenced in function "public: bool __thiscall MacroCommands::ApplyEffectCommand(class wxString const &,class TranslatableString const &,class TaggedIdentifier<struct CommandIdTag,0> const &,class wxString const &,class CommandContext const &)" (?ApplyEffectCommand@MacroCommands@@QAE_NABVwxString@@ABVTranslatableString@@ABV?$TaggedIdentifier@UCommandIdTag@@$0A@@@0ABVCommandContext@@@Z)
2>PluginMenus.obj : error LNK2001: unresolved external symbol "bool __cdecl EffectUI::DoEffect(class wxString const &,class CommandContext const &,unsigned int)" (?DoEffect@EffectUI@@YA_NABVwxString@@ABVCommandContext@@I@Z)
2>TrackMenus.obj : error LNK2001: unresolved external symbol "bool __cdecl EffectUI::DoEffect(class wxString const &,class CommandContext const &,unsigned int)" (?DoEffect@EffectUI@@YA_NABVwxString@@ABVCommandContext@@I@Z)
2>C:\Users\Yam\Documents\aud\audacity\win\Debug\Audacity.exe : fatal error LNK1120: 1 unresolved externals
2020-01-06 00:00:14 -06:00
Paul Licameli
91515520bc
Remove the nullary override of Effect::Preview
2020-01-05 19:59:30 -05:00
Paul Licameli
8bbc22e47a
Cut and paste; EffectManager doesn't need EffectUI; cycle of 3 broken!
2020-01-05 16:11:55 -05:00
Paul Licameli
91c45dd32a
Move static EffectManager::DoEffect into new namespace
2020-01-05 16:11:55 -05:00
Paul Licameli
23a0206d2a
Remove CreateUI; pass dialog factory to effect client instead
2020-01-05 16:11:55 -05:00
Paul Licameli
738c5c5e90
Remove Effect::PromptUser...
...
... it was only a thin wrapper of ShowInterface when not overridden, not
clearly serving a distinct purpose.
2020-01-05 16:11:55 -05:00
Paul Licameli
fb678c0eb8
Remove EffectHostInterface::Apply so Effect doesn't use EffectManager
2020-01-05 16:11:54 -05:00
Paul Licameli
8c4d8db133
Move classes EffectUIHost and EffectPanel to EffectUI.cpp
2020-01-05 16:11:54 -05:00
Paul Licameli
91536d734f
Rename EffectRack.* as EffectUI
2020-01-05 16:11:54 -05:00
Paul Licameli
129c9deb99
Remove GetActiveProject from EffectRack...
...
... and make one EffectRack window per project
2020-01-04 16:36:55 -05:00
Paul Licameli
275797bbb4
Fewer uses of ::GetActiveProject()...
...
... where we have a window, ascend the chain of parent pointers instead to
find the project window.
2020-01-04 12:59:37 -05:00
Leland Lucius
04dcc8994d
Remove leftover debugging code
2020-01-04 00:43:52 -06:00
Paul Licameli
914bb1dc95
Remove some uses of GetActiveProject in src/effects
2020-01-02 13:32:04 -05:00
Paul Licameli
45a0ce1819
Bug2268: should be able to use " in Nyquist Prompt for Mac...
...
... We need to un-correct the smart quote characters back to dumb quotes
before passing the input to the Lisp interpreter.
The smart quote correction is a consequence of the move to the MacOS 10.9 SDK.
Stopping the correction at the source would require objective-C hacks in a
custom build of wxWidgets, and just not worth the effort.
This fix only corrects the text input at one wxTextCtrl. Should we reexamine
other uses of that class?
2019-12-31 15:31:45 -05:00
Paul Licameli
de4edb0424
Nyquist output dialog uses ShuttleGui
2019-12-29 17:46:02 -05:00
Paul Licameli
aa39f9ade2
Rewrite FileNames::SelectFile using FileTypes...
...
... And more uniformity in the descriptions of file types used in more than
one place
Also fixes missing translations in VSTEffect.cpp
2019-12-29 15:35:04 -05:00
Paul Licameli
c64b3cb31f
Rewrite FileDialogWrapper using FileNames::FileTypes...
...
... also removing some repeated code and using the config keys /DefaultOpenType
and /LastOpenType only in Import.cpp
2019-12-29 15:35:03 -05:00
Paul Licameli
0704f6919a
EffectPresetsDialog::SetPrefix takes TranslatableString
2019-12-29 00:01:57 -05:00
Paul Licameli
6e14d2e56c
RulerPanel uses TranslatableString for units string...
...
... also fixing missed translation of "k" in spectrum vertical ruler
2019-12-28 23:49:18 -05:00
Paul Licameli
3b9442a000
Fewer uses of macro _ in Nyquist.cpp
2019-12-28 23:49:18 -05:00
Paul Licameli
956e0813c4
SliderAx uses TranslatableString
2019-12-28 23:49:17 -05:00
Paul Licameli
18942d9909
Rename a function in Distortion.cpp
2019-12-28 19:56:59 -05:00
Paul Licameli
d6cd48cde1
Eliminate uses of macro _ in Distortion
2019-12-28 19:56:59 -05:00
Paul Licameli
cf5c18b9b3
Rewrite export of data in Contrast.cpp
2019-12-26 22:11:44 -05:00
Paul Licameli
23cd7f40f3
Fix export of Contrast data on Mac
2019-12-26 20:36:34 -05:00
Paul Licameli
d396472c9f
Rewrite overload of TieChoice that took wxString& instead of int& ...
...
... let it take TranslatableString& instead.
It was used only in AudioUnitEffect.cpp.
2019-12-26 15:33:47 -05:00