1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-27 06:07:59 +02:00

205 Commits

Author SHA1 Message Date
Paul Licameli
cb403954fa Use std::[tr1::]unordered_(set|map), not the wxWidgets container macros 2018-01-08 18:22:51 -05:00
Paul Licameli
8a074770e8 IdentInterface::GetDescription() returns a translated string...
... See commit 3b90538b84411f6b08e10682406984e5f499fd74 which removed the
only use of the untranslated strings.

Also follows better i18n guidelines for composing the VSTEffect description.
2018-01-07 21:16:26 -05:00
Paul Licameli
c6bbe4c3da Fix subtle error revealed by the previous commit ...
... A "translated" effect family string, plus "/Enable",  was used as a
registry key for lookup!  It is wrong to key on a translation.

But in fact exhaustive search for "/Enable" shows that the only such strings
for which a written (by EffectsPrefs) registry value could be found were

AudioUnit
Ladspa
LV2
Nyquist
VAMP
VST

And none of these was actually a msgid in audacity.pot.  So nothing bad can
really have happened in other locale settings.
2018-01-05 18:39:43 -05:00
Paul Licameli
cafbff9ff8 Separate plugin accessors for translated and unstranslated strings...
... because I want to make a type distinction later.

Replace calls to GetXXX() without argument, with GetTranslatedXXX() --
this reveals a subtle error, see next commit.
2018-01-05 18:30:35 -05:00
Paul Licameli
91b0e82c11 PluginDescriptor versions are in fact untranslated; make that clear...
... though the version (like the description) really wasn't yet used for
anything but to write and read again from the registry, still keep writing it.

Because it is appropriate to write untranslated strings to the registry, and
perhaps the values in old registries really will find a future use.
2018-01-05 18:24:22 -05:00
Paul Licameli
3b90538b84 Remove description from PluginDescriptor...
... it was simply written to registry and read again, serving no other
purpose.

But still write a blank to registry for backwards compatibility of the .cfg
file.

This makes it irrelevant whether the value of IdentInterface::GetDescription()
ought to be localized (registry values should probably not be).

Therefore IdentInterface::GetDescription can return localized, and it's all
right that the return be computed (as in VST effects), rather than
an unlocalized msgid that we rely on as an internal identifier.
2018-01-05 18:24:10 -05:00
Paul Licameli
c66eae1a46 Fix uses of wxPLURAL and update audacity.pot ...
so that
(1) we really get msgid_plural entries in the .pot
(2) i18n-comments get extracted too (needs workaround of xgettext bug)
2018-01-05 00:35:04 -05:00
Paul Licameli
0df94faad8 The message is not in fact a format 2018-01-03 16:55:46 -05:00
Paul Licameli
50d6e75185 null checks -- fix Linux crash in drag-dropping files onto app icon? 2018-01-03 15:35:49 -05:00
Paul Licameli
191945c8f7 Make enablement of plug-in after drag-and-drop persistent 2018-01-03 03:26:31 -05:00
Paul Licameli
7fd78183d2 Remove needless uses of wxString::c_str() in wxString::Format...
... and similar wx "variadics," which all treat wxString smartly enough that
you don't need this.

Don't need c_str either to convert wxString to const wxChar * because
wxString has a conversion operator that does the same.
2018-01-01 20:34:33 -05:00
Paul Licameli
ccb4bbac33 Translate "Message" as default title of message box...
... This required a sweeping change of all calls to wxMessageBox!  But it seems
safe to me, despite the great number of touched files.
2018-01-01 17:50:02 -05:00
Paul Licameli
3c9cdac778 Drag-and-drop checks file extensions first for plug-in candidates...
... Avoids big delays in drag-and-drop importation caused by
765ca0c8136134a1d65bfad0ea39682a83d3d984
2018-01-01 10:29:26 -05:00
Paul Licameli
2e8a73bab1 Fix Windows build 2017-12-31 20:04:35 -05:00
Paul Licameli
2c2db0fe09 Implement drag-and-drop of Nyquist, LADSPA, VST plug-ins...
... I'm not sure how to make it work for AudioUnits, LV2, or Vamp, for which
the API for identifying a plug-in doesn't map straightforwardly to a file name.
2017-12-31 18:09:41 -05:00
Paul Licameli
8cfb8d2400 Change ModuleInterface for support of drag-and-drop of plug-in files 2017-12-31 18:09:36 -05:00
Paul Licameli
0f8bd45a7c ModuleInterface::RegisterPlugin can report an error message 2017-12-27 15:19:36 -05:00
Paul Licameli
5f298accbd Translated effect name and description in many places in Effect.cpp...
... including titles of dialogs,
messages,
About sub-menu of the Manage button,
long-form names of Undo items (in history view),
message for why command is not allowed when there is no selection

Also one place in Effect Rack code but it's commented out
2017-09-10 19:21:35 -04:00
Paul Licameli
34f8e79623 Bug1590: Mac skips plugin cfg entries for .ny's of other versions...
... This conservative fix depends on where you put the executable bundle.

Assuing the executable is in /Applications, and the other Audacity version
(past or future) is there too (either bundled as for 2.1.3 and later, or
in a folder as for 2.1.2 and previous):

The .ny files that are part of the other version's shipment are ignored, and
therefore the Effects menu avoids duplicates.

But the .cfg file is not rewritten to eliminate them, in case you want to
switch back to the other version.  If that other version is 2.1.3 or earlier,
sorry but you will see duplicates.
2017-07-25 23:25:33 -04:00
Steve Daulton
9816cc8c7b Reinstate FileNames::PlugInDir() for Linux
Reverting its removal in commit 1dd6b848c28.
Path added to Nyquist *SYSTEM-DIR* PLUG-IN property.
2017-06-04 18:01:49 +01:00
Steve Daulton
1dd6b848c2 Enable Help button for Nyquist effects 2017-05-20 14:49:07 +01:00
Paul Licameli
692a033968 Remove naked new[] in: various 2017-03-17 17:52:47 -04:00
Paul Licameli
aa0d55ac83 Use enum class ProgressResult, don't interconvert with int or bool 2017-03-17 17:52:24 -04:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
James Crook
e4260e9581 Bug 1587 - Mac: Ghost duplicate Nyquist effects after upgrade
Fix removes ghost Nyquist effects from the effects menu and generators from generate menu.
2017-02-05 20:27:56 +00:00
James Crook
28b3461bb2 Change Mac search paths to be in-app 2016-12-12 18:00:53 +00:00
Paul Licameli
49e699b1df Remove overloads for sampleCount from ConfigInterface...
... The value was always cast to int anyway when writing, and it was used
only for one value in VST effect, which did not need 64 bits
2016-08-21 09:11:44 -04:00
Paul Licameli
942c62b6f6 Remove some naked new amd delete in: various 2016-08-08 07:51:24 -04:00
Paul Licameli
84c0337aba Fix TAB key navigation on Mac for all dialogs (not only for panels) 2016-07-10 17:12:27 -04:00
Paul Licameli
db137ddf76 wxWindow takes ownership of its wxAccessible, so we can use safenew. 2016-05-06 21:03:37 -04:00
Paul Licameli
6b954dc0f4 Fix mac build 2016-04-11 07:42:51 -04:00
Paul Licameli
f00144e9a5 Sweep for filename copying: various 2016-04-10 22:26:28 -04:00
Paul Licameli
df5fcc3581 Make static "Destroy" methods for certain singletons unnecessary. 2016-04-06 16:24:46 -04:00
Paul Licameli
a9afad17ca Plugin instances managed without naked new and delete 2016-04-06 16:06:27 -04:00
Paul Licameli
cea79d5b73 Bug1282: change of enabled state of Stereo To Mono should be persistent 2016-04-05 18:43:43 -04:00
Paul Licameli
990080ae7d Replace virtual with override wherever possible; eliminate needless virtual...
... for functions in final classes.

override is like const -- it's not necessary, but it helps the compiler to
catch mistakes.

There may be some overriding functions not explicitly declared virtual and I did
not identify such cases, in which I might also add override.
2016-02-26 12:35:38 -05:00
Paul Licameli
7824e94030 Harmlessly qualify classes as final (or explicitly comment not)...
... Should have no effect on generated code, except perhaps some slight faster
virtual function calls.  Mostly useful as documentation of design intent.

Tried to mark every one of our classes that inherits from another, or is a
base for others, or has abstract virtual functions, and a few others besides.
2016-02-24 20:58:30 -05:00
Paul Licameli
9bf098c7d9 Sweep unnecessary wxString copies: rest 2016-02-23 02:15:56 -05:00
Paul Licameli
dbaa811577 Stack-allocate where possible! ...
... Removed many unnecessary naked news and deletes.
2016-02-17 18:15:57 -05:00
Paul Licameli
7c4c45a0d5 "new"->"NEW" in comments, easier to find remaining naked operator new 2016-02-14 18:52:41 -05:00
Leland Lucius
d1fdf05b49 Fix for bug #1192 2015-09-09 01:27:22 -05:00
Paul Licameli
9c483e2e86 Add (redundant) #include "Experimental.h" in all .cpp files using the symbols 2015-08-31 17:56:10 -04:00
Leland Lucius
1e195ecea6 Fix many wx3.1.0 assertions now to prevent double testing 2015-07-30 02:05:23 -05:00
Leland Lucius
6960270270 Fix for bug #1016 2015-06-12 23:13:11 -05:00
Leland Lucius
1ebe0d5868 Fix for bug #1025 2015-06-12 10:09:59 -05:00
David Bailes
f98678c03a Fix for accessibility name of plug-in manager dialog. Just fixing a typo. 2015-06-10 09:00:39 +01:00
Leland Lucius
f040dd75b0 Change accessible title as well 2015-06-09 12:48:16 -05:00
Leland Lucius
19baefd186 Change plugin manager title 2015-06-09 12:35:01 -05:00
Leland Lucius
7d3c055200 Fix for bug #1017 2015-06-09 00:39:25 -05:00
David Bailes
b65a3e00b7 Screen reader fix for radio buttons in Plug-in manager dialog. When setting radio button, nvda was also reading the selected item in the list. Fix is that the accessibility object for the list item is selected by not focused. 2015-06-08 11:43:22 +01:00