1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-12 22:30:26 +02:00

79 Commits

Author SHA1 Message Date
Paul Licameli
9481587fa8 Move menu handling functions out of class AudacityProject 2018-09-29 12:10:27 -04:00
James Crook
ca694a1b22 Bug 1854 - Un-warned export file overwrite danger in 2.2.2 Chains and 2.3.0 MacrosWindow
Now we add a suffix of 001, 002 and so on up to 100.  Then fall back to prompting.
2018-08-11 12:54:24 +01:00
James Crook
c94df54157 Bug 1856 - Applying Macros to Files is no longer a batch process
This restores the 2.2.2 behaviour, with a subdirectory called 'cleaned'.  The problem was that 2.2.2 used special cases for MP3 Ogg and WAV exports, which were stripped out in favour of using the built-in Export command.  However, the differences in behaviour (prompting) between batch and non batch mode were not taken into account.
2018-08-04 19:16:32 +01:00
Paul Licameli
e3c54a769e Use IdentInterfaceSymbol in PluginDescriptor 2018-04-11 11:13:40 -04:00
James Crook
7ef7e80e19 Fix FadeEnds Macro
This was broken by the change over to use internal names for enum values.
2018-04-08 20:34:29 +01:00
James Crook
b92e334873 Bug 1861 - SplitLabels command fails in Macros 2018-03-27 19:55:57 +01:00
andheh
b56059a77c fixed some warnings in debug mode (GCC/Linux) 2018-03-24 10:15:47 +00:00
James Crook
a02c9de789 Use capital 'M' for Macro in history. 2018-03-19 17:33:40 +00:00
James Crook
0797da0415 Remove Select to Ends Macro
There is a now a better version as a menu command.
2018-03-19 16:12:36 +00:00
James Crook
b421a2b0ec Add new 'Select to Ends' default Macro 2018-03-17 19:17:55 +00:00
James Crook
d7406b3b0f Update Fade-Ends Macro, and RelativeTo enums.
- FromEnd boolean parameter is now replaced by RelativeTo enum.
2018-03-17 19:17:54 +00:00
James Crook
205b7d6a02 Rename 'chain' to 'macro' in history and comments. 2018-03-16 18:47:39 +00:00
Paul Licameli
b75e356df6 Now use that extra information 2018-03-15 23:32:15 -04:00
Paul Licameli
d258385e3a Use TranslatedInternalString in MacroCommandsCatalog 2018-03-15 19:53:38 -04:00
Paul Licameli
cc7bf5c328 Migrate old chains...
... Copy old Chains files to Macros, once only per session, never overwriting.

Leave old files in place in case the user downgrades their Audacity.

When removing a Macro, remove also any like-named legacy chain.
2018-03-15 05:21:04 -04:00
Paul Licameli
c3adc0141c Translate the two built-in macro names...
... If you only ever use one Audacity locale, then the two persistent macro
files will be created with appropriately translated names.

If you ever do use more than one locale and open Macros... , then
you will get duplicate files differing only by translation of the name.
Nothing causes an automatic purge of the macros in the non-current language.
2018-03-14 19:23:25 -04:00
Paul Licameli
59d41db63a In "Select Command" translate all...
... Not only the menu command names, as previously, but also:

Effect and Command names
Special command names
2018-03-14 19:11:42 -04:00
Paul Licameli
357b05efd2 If not English locale, don't show short command name in (parentheses) 2018-03-14 19:11:42 -04:00
James Crook
7910688c03 Add Align commands to repertoire.
Previously we ignored the 'multis'.
2018-03-14 19:57:26 +00:00
James Crook
86cd720d99 Fix two MSVC compile warnings. 2018-03-14 19:28:29 +00:00
Paul Licameli
b8cc764e29 Fix MSVC2013 compiler crash for Windows debug build 2018-03-08 12:26:11 -05:00
Paul Licameli
77f720b0c8 Show friendly names of commands in message boxes...
... With spaces in the English; maybe later they will localize
2018-03-07 23:55:19 -05:00
Paul Licameli
ffadd64a56 Define MacroCommandsCatalog to associate friendly and internal names...
... friendly names are still English only.  Not yet localized, but ought to be.
2018-03-06 18:47:56 -05:00
James Crook
585a4c6170 Prevent excessive macro reentry.
User could have made a macro call itself.
Or could have an 'exploding' macro chain with 'too much' in it.
So limit it to a macro can call a macro, but not deeper.
2018-03-04 18:41:17 +00:00
James Crook
153da3a94d Fix Fade-Ends MacroCommands
- Split parameters from command name.
- Improve test for 'fixed Macros'.
2018-03-04 18:41:16 +00:00
James Crook
6e40d6d969 Add Fade-Ends macro. (a new item in Tools menu) 2018-03-03 20:36:13 +00:00
James Crook
c0dcba66dd Rename Chains to Macros.
Lots of renaming.
Did not rename the containing files (yet) since that will require makefile updates.
2018-03-03 19:17:18 +00:00
James Crook
ef63f716e3 Remove duplicate commands from 'Select Commands' dialog.
- Removed special commands that now have menu equivalents.
- Removed duplicated commands in the list, e.g. from multiple instances of Nyquist effects.
2018-03-01 19:57:02 +00:00
James Crook
bf03fd874b Add details box to BatchCommandDialog
It is now populated with the CommandID and the command type.
Later we can add the command help string.

Std::pair changed to std::tuple to accommodate the extra information.
2018-03-01 19:55:34 +00:00
James Crook
859fe69a15 Case insensitive command names. 2018-02-24 14:20:28 -05:00
James Crook
8ebf502cd6 Cleaner class hierarchy 2018-02-24 14:20:24 -05:00
James Crook
1c988b4e3a Automation: AudacityCommand
This is a squash of 50 commits.

This merges the capabilities of BatchCommands and Effects using a new
AudacityCommand class.  AudacityCommand provides one function to specify the
parameters, and then we leverage that one function in automation, whether by chains,
mod-script-pipe or (future) Nyquist.

- Now have AudacityCommand which is using the same mechanism as Effect
- Has configurable parameters
- Has data-entry GUI (built using shuttle GUI)
- Registers with PluginManager.
- Menu commands now provided in chains, and to python batch.
   - Tested with Zoom Toggle.

- ShuttleParams now can set, get, set defaults, validate and specify
the parameters.
- Bugfix: Don't overwrite values with defaults first time out.
- Add DefineParams function for all built-in effects.
- Extend CommandContext to carry output channels for results.

We abuse EffectsManager.  It handles both Effects and
AudacityCommands now.  In time an Effect should become a special case of
AudacityCommand and we'll split and rename the EffectManager class.

- Don't use 'default' as a parameter name.
- Massive renaming for CommandDefinitionInterface
- EffectIdentInterface becomes EffectDefinitionInterface
- EffectAutomationParameters becomes CommandAutomationParameters
- PluginType is now a bit field.

This way we can search for related types at the same time.

- Most old batch commands made into AudacityCommands.
The ones that weren't are for a reason.  They are used by mod-script-pipe
to carry commands and responses across from a non-GUI thread to the GUI
thread.

- Major tidy up of ScreenshotCommand
- Reworking of SelectCommand
- GetPreferenceCommand and SetPreferenceCommand
- GetTrackInfo and SetTrackInfo
- GetInfoCommand
- Help, Open, Save, Import and Export commands.
- Removed obsolete commands ExecMenu, GetProjectInfo and SetProjectInfo
  which are now better handled by other commands.

- JSONify "GetInfo: Commands" output, i.e. commas in the right places.

- General work on better Doxygen.
    - Lyrics -> LyricsPanel
    - Meter -> MeterPanel
- Updated Linux makefile.
- Scripting commands added into Extra menu.
- Distinct names for previously duplicated find-clipping parameters.
- Fixed longstanding error with erroneous status field number which
  previously caused an ASSERT in debug.
- Sensible formatting of numbers in Chains, 0.1 not 0.1000000000137
2018-02-24 14:20:22 -05:00
Paul Licameli
0319d6ea68 Friendlier command names in the Edit Chains dialogs...
... Both the pane that lists the steps of the chain, and the selection dialog
for adding a new step.

NOT translating command names yet, though.
2018-01-10 09:09:05 -05:00
James Crook
27d2b7c51b Add AutomationCommands class
- AutomationCommands replaces GetAllMenuCommands, and can provide
information about menus, buttons and toolbars to a script.
- BatchCommands can now return textual results to a script.
- There's a new GUID for mod-script-pipe and it is included in the .sln.
2018-01-06 19:27:45 +00:00
Paul Licameli
77c392d29c AudacityProject::OnEffect wraps new function DoEffect 2018-01-05 09:27:28 -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
e5c07fae84 some missed translations, i18n-hints 2017-11-05 21:01:53 -05:00
Paul Licameli
70b5076b0b Fix some untranslated prompts and messages...
... Even if some commented out.  Such don't enlarge the .pot file, but make
them right in case they are ever un-commented.
2017-09-10 19:24:41 -04:00
Paul Licameli
5f7353af66 Chain export commands: no cwd; use the default export path, not open 2017-08-03 08:04:47 -04:00
Paul Licameli
d7ac0d30db Fix some missed internationalizations 2017-08-03 07:04:42 -04:00
Paul Licameli
464828d88f Exception safety in: batch processing 2017-03-21 14:11:21 -04:00
Paul Licameli
195732f074 Exception safety in: BatchCommands 2017-03-21 14:11:20 -04:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
Paul Licameli
67cec5ad83 Make many counts of tracks and channels unsigned...
... And in some places where a library uses signed types, assert that
the reported number is not negative.

What led me to this, is that there are many places where a size_t value for
an allocation is the product of a number of channels and some other number.
2016-09-07 10:11:41 -04:00
James Crook
763485b0dc Add error check comments.
These are places where we don't properly handle error returns.
2016-07-10 21:40:48 +01:00
Paul Licameli
f00144e9a5 Sweep for filename copying: various 2016-04-10 22:26:28 -04:00
Paul Licameli
9bf098c7d9 Sweep unnecessary wxString copies: rest 2016-02-23 02:15:56 -05:00
Paul Licameli
7c4c45a0d5 "new"->"NEW" in comments, easier to find remaining naked operator new 2016-02-14 18:52:41 -05:00
Steve Daulton
1d6d08c47d Don't push effects that can't be undone onto the Undo Stack 2016-01-21 02:07:28 +00:00