1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-25 16:48:44 +02:00

240 Commits

Author SHA1 Message Date
Steve Daulton
837d5e18f3 Fix Audacity failing silently on new instance
Should now behave the same on Linux as on Windows.
2018-04-29 21:03:13 +01:00
andheh
1bc7943560 fixed "unknown pragma" warnings for GCC 2018-03-06 21:29:51 +00: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
2fbe04eda0 Replace more Connect with Bind; needed redeclaration of custom events 2018-02-21 19:30:40 -05:00
Paul Licameli
539e870302 Add machinery to TrackList for pending changes to tracks 2018-02-21 19:20:56 -05:00
James Crook
b384f99e62 Bug 1825 - Import Uncompressed File Dialog Incorrect Reference to Menu Item 2018-01-17 13:27:00 +00:00
Paul Licameli
4ef8da8f16 Revert "Preliminaries to support better interaction of undo and recording"
This reverts commit 6e75ae58ac56d9c94af5a4ce97951f627808473a, reversing
changes made to 714d53e00f803643131bb775858ac930b39dd5b8.
2018-01-14 21:36:33 -05:00
Paul Licameli
a0c3a4b43c Add machinery to TrackList for pending changes to tracks 2018-01-14 19:03:57 -05:00
Paul Licameli
c6696f1b49 Move definition of _ and related into Internat.h 2018-01-06 21:03:32 -05:00
James Crook
d2fe7b1757 Clean up most remaining MSVC warnings. 2018-01-06 13:03:48 +00:00
Paul Licameli
ab6de1181d No more functor objects; all command handler functions take same args 2018-01-05 09:27:29 -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
af290d73c0 Define AudacityTextEntryDialog wrapper around wxTextEntryDialog...
... Prohibiting use of the default caption which is unlocalized.  (But we
didn't use it in fact anywhere.)
2018-01-01 17:50:03 -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
4d978bcefb Use wxPrintf not printf 2017-12-16 11:54:32 -05:00
Paul Licameli
6a8bba0a99 Fix all remaining misuses of macro _ in static initializers...
... I found them using a rewritten macro _ that dynamically checked
that translations have been initialized.  But I do not commit that changed
macro.
2017-10-01 17:20:05 -04:00
Paul Licameli
025eb3075a One more trick needed to get eu distinct from eu_ES in preferences 2017-09-25 03:06:24 -04:00
Paul Licameli
a5594537bb "/DefaultOpenPath" is now in only one place 2017-08-03 08:05:22 -04:00
Paul Licameli
e359383d3b Mac: Don't execve in main or fork & crash to evade its ill effects...
This at once reverts fixes for bugs 543 and 290;

290 being a problem loading libraries,
543 being a minor problem with the fix for 290, resulting in a rewrite of the
fix, but this rewrite having bad consequences, as in bugs 1567 and 1703.

See discussion in bug 1702 for the detailed history

See also commits
a05d039055909d7d1dc2d4f31e1fe0659a3207dd (fork and crash)
36361a6b86dac4b0f2b16b7017007b4cc7717c7a (introduced execve)
2017-07-27 12:22:30 -04:00
Paul Licameli
d88371b4b7 Revert stuff 2017-07-23 12:40:29 -04:00
Paul Licameli
e9576bf198 work 2017-07-23 11:51:26 -04:00
Pokechu22
681161f60b Add MIDI device diagnostics
* MIDI Device Info menu item, like Audio Device Info

 * MIDI device info in crash reports

 * Only enabled with EXPERIMENTAL_MIDI_OUT, but tracks info related to the (unimplemented) EXPERIMENTAL_MIDI_IN
2017-07-16 10:58:53 -04:00
Henric Jungheim
f1213e453e Use the _DEBUG flag instead of __wxDEBUG__ for selecting the link libraries.
The include directories are determined by the configuration, which
is indicated by _DEBUG.  Using __wxDEBUG__ means that the
debug libraries might get used with the release includes (or the
reverse).
2017-07-12 21:04:41 +01:00
James Crook
cecb704abb Stop splash screen position jumping (on single monitor)
This is a new problem from Windows 10 Creator's update.  The fix fixes it on single monitors, but on dual monitor it may appear first on the main monitor and then jump across.
2017-06-09 14:28:37 +01:00
James Crook
8b14ac0359 Bug 718 - On dual monitors the splash screen is positioned incorrectly 2017-05-15 10:45:49 +01:00
James Crook
028ed19d90 Sync with DarkAudacity 2017-04-02 23:07:13 +01:00
Paul Licameli
1552ff188f When opening a file into a new project, delete the project on failure 2017-03-21 14:11:28 -04:00
Paul Licameli
f508493561 more guarded calls 2017-03-17 17:53:02 -04:00
Paul Licameli
a1bc6948f4 Define application-level exception handler of last resort. 2017-03-17 17:53:00 -04:00
Paul Licameli
1126925438 Remove naked malloc (or similar) and free in: various 2017-03-17 17:52:54 -04:00
Paul Licameli
6a57987f88 safer use of weak pointer 2017-03-17 17:52:34 -04:00
Paul Licameli
3e51fd5078 fix some comments 2017-03-17 17:52:22 -04:00
James Crook
fc42fd9b0d Bug 1597 - Tweak: make version check on welcome user-initiated.
The welcome screen now has an extra prelude for Alphas, and as result no longer needs to force a version check onto our website.  Users can still do that by clicking "check online".

I've also rearranged the version check code a little, so that there is better reuse.  E.g. we can change the URL in just one place in the code.
2017-02-28 19:05:06 +00:00
James Crook
c53e2dbb77 Bug 1597 - Enh: Greater clarity over status of versions needed
- For ALPHA builds we do a check version with the Welcome screen (if welcome screen is enabled).
- A 'Check Online' in the About box provides a new route to check version
- Check Version now passes CommitId and Build Date/Time to identify a version.

To actually close the bug we need the javascript on the server page to put up informative messages.
2017-02-25 23:00:39 +00:00
Paul Licameli
a05d039055 Bug1567: intermittent failure to load libraries, plugins on Sierra...
... At startup, spawn a copy process in main() and crash it at once.  The
child process continues.  (The fix was ineffective when the parent continued
and the child crashed.)

Re-activiation of the application is also needed or else the windows are
hidden behind other applications.

Another sleep when closing a project, to fix occurrences of the bug caused by
closing of a project window without saving changes.
2017-01-25 22:15:02 +00:00
James Crook
e65d0ca77d Bug 1538 - Mac: "Audacity > Quit audacity" does not have Audacity capitalised
This was caused by using the #define AUDACITY_NAME which had changed to use
lower case 'a' in Audacity.
2017-01-04 14:46:15 +00:00
James Crook
90738ce2ad Create temporary directory recursively + Reduced search path.
Previously this could/would fail to create a temporary directory if the earlier
components in the path did not exist.  The user would then be prompted
unnecessarily for a location to store temporary files.

Also now disallow blank as a temporary directory name.

Also no longer search entire dmg for plug ins.  Just search the app itself.
2017-01-03 15:35:22 +00:00
Paul Licameli
a6bec5b195 Bug1561, addendum: should still quit after benchmark from cmd line 2016-12-25 20:07:43 -05:00
Paul Licameli
426cb9c40c Bug1561: delay the recovery dialog until after application init 2016-12-19 17:56:52 -05:00
James Crook
f229aab58a Bug 1329 - Adjustment: Part of the fix only applies to OSX; No longer apply to Linux too.
Adjustment proposed/tested by Steve Daulton.
2016-12-06 12:27:42 +00:00
Paul Licameli
ba263d0779 Bug1329: not wholly satisfactory fix...
... Partial reversion of commit 2e8ee5fe75789d60869b19fe1986c8d47cf0b995

Now, if you open an effect dialog, Return key will apply it.  But, if you
cycle among windows with alt+f6, then the focus moves among the controls in
the effect dialog, and I don't know how to prevent that.

At least so it is in Mac.  I have not verified it with Linux.
2016-12-03 20:01:16 -05:00
Paul Licameli
ea1015596c Bug1511: REBUILD WXWIDGETS: Mac Quit via tooldock doesn't crash...
... in case at least three projects are open, or skip save prompts either,
in case at least two projects with unsaved changes are open.
2016-10-03 14:38:56 -04:00
Paul Licameli
2e8ee5fe75 Bugs 868, 1196 again: Fix alt-f6 cycle but not changing button focus
Mac and Linux problem only.

See commits 58e3f3da839694ea8da6db4aa5dce8a439a1484d
and a00f866b5425572dbb8032d93ad2627fa07e1d08
2016-09-28 11:54:17 -04:00
James Crook
086ddb62c1 Fix compiler warning "unknown escape sequence".
Debugger shows that this change has zero effect on the string (and it fixes the warning too).
2016-09-22 19:29:52 +01:00
windinthew
950f62a548 Apply Mac fixes for bugs 868, 1196 to Linux 2016-09-22 18:56:26 +01:00
Paul Licameli
d783762737 Remove unnecessary std::move in return statements...
... and comment where it is necessary.
2016-09-15 07:39:46 -04:00
James Crook
65c7e8051a ThomasFeher - Unused parameters clean up. 2016-09-11 20:31:49 +01:00
James Crook
545d741eb2 Make Audacity source more like DarkAudacity source. 2016-09-11 13:03:37 +01:00
James Crook
06b623bbb1 Bug 1220 - (Residual) OS X: Exclude directories with substring /tmp/ in them. 2016-09-03 17:49:57 +01:00
James Crook
9787bf7978 Bug 1220 - (Residual) OS X: Audacity's temp dir defaults to location that is cleaned up on reboot. 2016-09-01 22:09:37 +01:00