1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-02 08:39:46 +02:00

221 Commits

Author SHA1 Message Date
Paul Licameli
df077d171a Exception framework: define AudacityException and GuardedCall...
AudacityException is an abstract base class for exceptions generated by
Audacity.

GuardedCall wraps any function (usually a lambda) in an appropriate catch
block.

It can also accept a second function that defines a catch block action, which
can rethrow or return a value for the GuardedCall.

It can also accept a third function, that defines another, delayed action that
executes in the main thread at idle time if the second function intercepts an
AudacityException and completes without rethrow.

Defaults for the second function simply return void or false.  Default for the
third function invokes a virtual method of AudacityException, which for
subclass MessageBoxException, displays a message box.
2017-03-17 17:52:57 -04:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
windinthew
639bfcbad4 Add sample-data-import 2016-11-24 06:22:58 +00:00
James Crook
474782eafe clicktrack.ny -> rhythmtrack.ny on windows too 2016-09-30 09:12:51 +01:00
Paul Licameli
924df495ff Make headers in import directory self-contained 2016-08-11 11:51:33 -04:00
windinthew
6aac29596c Remove Leveller from Windows project files 2016-07-03 16:09:01 +01:00
Paul Licameli
4739f3e27b Compensate for wxW 3 tab navigation deficiencies on Mac...
... using char hook event handlers.  We don't need to go the extreme length
of patching wxWidgets source.
2016-06-25 19:14:05 -04:00
Paul Licameli
6a4d6ceeda Separate source files for ScrubbingToolBar 2016-06-25 15:05:17 -04:00
Paul Licameli
a2a7d41c47 Add files to Windows build 2016-06-15 07:24:20 -04:00
James Crook
3cb560c7ab Precompiled headers for Windows release builds too.
Faster building of release builds on Windows.  This force-includes AudacityHeaders.h too.  We didn't used to do this because it could hide include file mistakes which would break the build on Linux.  We could build the Windows release version to check that includes hadn't been missed out.  Now that we have automated Travis builds on Linux we have a better way to check Linux builds aren't broken, and can have faster Windows building of release.
2016-06-10 13:42:17 +01:00
Benjamin Drung
787f2afd10 Introduce end-of-line normalization
Ensures that all files that Git considers to be text will have
normalized (LF) line endings in the repository. When core.eol is set to
native (which is the default), Git will convert the line endings of
normalized files in your working directory back to your platform's
native line ending.

See also https://git-scm.com/docs/gitattributes
2016-05-17 01:05:05 +02:00
Paul Licameli
7c2a531486 New base classes of TrackPanel just for the bitmap backing and overlay system...
... to make it reusable by other classes.

Also, don't create a second DC when repainting TrackPanel.
2016-05-09 11:37:32 -04:00
Paul Licameli
367b2c1011 Move command functors to a new header file, and generalize with templates...
... so that member functions of other than AudacityProject may be called.

Will use this new generality soon for scrubbing menu items.
2016-04-23 02:05:36 -04:00
Paul Licameli
1722ee9e32 Define TrackPanelOverlay, use it to reimplement play indicator and cursor...
... but scrub speed display is disabled
2016-04-18 14:31:36 -04:00
Paul Licameli
b6fdffbab2 Don't copy wxFileName often, it's not lightweight! Use wxFileNameWrapper...
... which is a new class that defines moves.
2016-04-16 11:57:39 -04:00
Paul Licameli
093f055f1d Make GStreamer compilable (but it doesn't link), and rewrite with lots of RAII 2016-04-09 20:45:12 -04:00
Paul Licameli
3ced1503ee Make EXPERIMENTAL_EQ_SSE_THREADED compilable, at least on Windows. 2016-04-03 11:37:18 -04:00
Paul Licameli
0c9deb398c Fix mac build. No standard headers in Audacity.h. 2016-03-01 12:22:37 -05:00
henric
25a6d3b99b Enable the DEP and ASLR flags.
More precisely, /DYNAMICBASE and /NXCOMPAT are set unless explicitly disabled.
2016-01-24 02:13:46 -07:00
James Crook
d59871d341 Updated Windows build for renamed .po files 2015-09-08 10:53:05 +01:00
Paul Licameli
05de64e251 Remove unused fns; fix missing & misspelled headers in make & project files 2015-08-30 13:19:08 -04:00
Paul Licameli
b9db3bd83d Define and use TranslatableStringArray. This lets you define "listeners"...
... for language changes, without inserting extra code to send the
notifications.
2015-08-17 12:04:21 -04:00
Leland Lucius
5b7ef6e3f1 Fix the reference version number in flac files 2015-08-16 01:29:12 -05:00
Leland Lucius
fc203d0cd9 Add WXDEBUG_LEVEL=0 to Release builds 2015-07-29 13:46:43 -05:00
Leland Lucius
e3f1c40c30 Fix Windows Release build 2015-07-29 02:49:45 -05:00
Leland Lucius
37168ebbf6 Merge remote-tracking branch 'upstream/master' into wx3 2015-07-28 15:06:25 -05:00
Paul Licameli
e0621819ed Move ENV_DB_RANGE out of Envelope.h; that file can be included in fewer places. 2015-07-28 11:55:52 -04:00
Paul Licameli
85cf4e6fff Solution explorer tree better parallels the source directory tree 2015-07-28 11:15:37 -04:00
Paul Licameli
d39eaa4e65 Remove WaveTrack.h from other headers 2015-07-28 10:02:05 -04:00
Paul Licameli
0c4418af22 Boilerplate for empty waveform preferences, analogous to Spectra 2015-07-28 08:08:10 -04:00
Paul Licameli
045828d744 Define class NumberScale and enum NumberScaleType 2015-07-27 23:01:10 -04:00
Paul Licameli
786c1da645 Move class SpectrogramSettings to its own file 2015-07-26 21:10:13 -04:00
Leland Lucius
ac4c4faadc Round 8 of wx3 changes
VST control working on Windows...further changes will be required
2015-07-16 14:30:04 -05:00
Leland Lucius
553308fc29 Round 6 of wx3 changes
A bit of fine tuning the FileDialog on Windows
Deleted Visual Studio 2008 project files
2015-07-15 01:12:41 -05:00
Leland Lucius
2f760c4bac Round 4 of wx3 changes
This gets FileDialog updated and working on Windows.  It also
removes removes the "wx3" build configurations and makes the default
Debug and Release builds wx3-only.

Still need to get VSTs updated.
2015-07-13 16:38:24 -05:00
Leland Lucius
5e09785840 Add new vocalridso.ny plugin 2015-06-27 13:07:20 -05:00
James Crook
1a2944765d Added .pot file to windows project Updated README for 2.1.1 2015-06-24 18:08:30 +01:00
Leland Lucius
c9327a9df0 Addition fix/changes for bug #673
This changes the way "unofficial" Inno Setup translations
are handled.

The first time a user compiles the .iss, the "unofficial" translations
will be downloaded to:

   C:\Program Files (x86)\Inno Setup 5/Languages/unofficial

Any translations supported by Audacity that do not have an Inno
translation will be automatically created from the Default.isl in:

   C:\Program Files (x86)\Inno Setup 5/Languages/dummy

This is all handled by the Inno Preprocessor.  Powershell is used
to do the actual download.

Once downloaded, they will not be downloaded again, so if updates
are made, they will need to be deleted from the above directories
and allowed to download again.

In addition, I extracted the "Reset Preferences" translations from
the Audacity .po files and added them to the .iss file.

Audacity private Inno translation files are still supported in
win/InnoSetupLanguages, but I've removed the samples I'd previously
committed.

While not exactly related to this change, there were 2 languages
that weren't being set properly after being selected during
installation:

   ca@valencia (Valencian)
   bs (Bosnian)

The reason Valencian wasn't be displayed in preferences was twofold.
It was incorrectly named and the search loop in Languages:GetLanguages()
didn't include a range sufficient enough to pull the Valencian info.

The Bosnian language is supported by wxWidgets 2.8.12 (it is in wx3)
so, even though we have a translation, it was unavailable for
selection.

The changes required to fix those issues were:

1)  Renamed ca@valencia to ca_ES@valencia
2)  Instead of iterating over all wxWidgets languages and trying to
    match them with our translations, I reversed it.  It now iterates
    over our translations and asks wxWidgets for the associated
    language info.  This provides support for both of the above
    languages.
3)  By doing #2, we are now able to add additional user languages that
    may not yet be supported by wxWidgets.  So, I added the Bosnian
    language info.
2015-06-04 14:19:06 -05:00
Leland Lucius
36de22efc7 Add new plugins to Windows project 2015-06-03 01:27:12 -05:00
Leland Lucius
7b7065a2d3 Update Windows build for flac 1.3.1 2015-05-01 04:26:20 -05:00
James Crook
604a555b13 Disable Help Project
Release builds were doing a zillion wgets to fetch the manual.
2015-04-23 23:12:33 +01:00
Paul-Licameli
96585b3377 Add empty ViewInfo.cpp 2015-04-18 16:49:21 -04:00
James Crook
13f8333873 First use of Diags.
Refined the Diags Macros, and used to actually monitor timings.
2015-04-17 22:43:14 +01:00
James Crook
fafe3f105a Added DIAG macros for countdown logging
Also for tracking memory use and for timing.
2015-04-17 22:43:14 +01:00
Leland Lucius
8fbfa460c4 Migrating the remaining effects
This brings the builtin, LV2, and VAMP effects inline with the
Audio Units, LADSPA, and VST effects.  All effects now share
a common UI.

This gives all effects (though not implemented for all):

User and factory preset capability
Preset import/export capability
Shared or private configuration options

Builtin effects can now be migrated to RTP, depending on algorithm.
LV2 effects now support graphical interfaces if the plugin supplies one.
Nyquist prompt enhanced to provide some features of the Nyquist Workbench.

It may not look like it, but this was a LOT of work, so trust me, there
WILL be problems and everything effect related should be suspect.  Keep
a sharp eye (or two) open.
2015-04-16 23:36:28 -05:00
Leland Lucius
a03d65ef4d Cleanup lib-src
Removing:

id3lib
libresample
libsamplerate
taglib
2015-04-16 14:41:41 -05:00
Paul-Licameli
7d6de21e3a Enh809 - Add persistency of spectral selections, including those in labels 2015-04-10 15:20:50 -04:00
James Crook
291a465a76 Build Revision Info Added
Travis now overwrites RevisionIdent.h to place a commit reference into the Build Info of the AboutDialog
I also added .opensdf to .gitignore.
2015-04-09 20:41:21 +01:00
Leland Lucius
2e408895f6 Add new Nyquist runtime files to Windows project 2015-04-08 13:16:50 -05:00
Leland Lucius
a66184f259 Adding changes that I missed when redoing my branches. 2015-04-08 10:21:17 -05:00