1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-04-29 23:29:41 +02:00

405 Commits

Author SHA1 Message Date
Paul Licameli
e37d701bc0 WXINTL_NO_GETTEXT_MACRO defined in compiler options...
... so even if you neglect to include Audacity.h, it applies
2018-01-06 20:56:51 -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
fa7f1a455b Correct self-names for the two Chinese locales 2018-01-03 19:33:04 -05:00
Paul Licameli
e051de0b68 Abandon the drag-and-drop of plug ins for now. 2018-01-03 18:43:06 -05:00
Paul Licameli
b8df8e753b macOs magic to allow drag and drop of .ny file onto Audacity program icon 2018-01-03 03:26:34 -05:00
Paul Licameli
a1530c36a8 Rewrite "Interface preferences displays self-names of languages" ...
See original attempt at commit 7ec5fd79df65cd3e54d3d14c52df106d71d06c53

This eliminates the need for a resource file at run-time.

locale/LanguageNames.txt is intended as a "source file" that is infrequently
changed as the set of supported languages changes.

The intermediate step, of appropriately copying that file into the C++ source
code in src/Languages.cpp, was done by hand.

In XCode, I set locale/LanguagesNames.txt and src/Languages.cpp to be
interpreted as Western encoding, and then the copy-paste was easy in the
editor.

The resulting C++ source code file now has string literals that are not 7-bit
ASCII.
2018-01-02 17:08:06 -05:00
Paul Licameli
7ec5fd79df Interface preferences displays self-names of languages 2017-12-31 21:58:36 -05:00
Paul Licameli
08fba266b3 Bug1767: High Sierra: dbl-click 2 file icons, should get 1 app icon 2017-11-04 21:00:01 -04:00
Paul Licameli
c2f82181fc Update special case copying of wxstd.mo for Mac build 2017-10-13 13:12:31 -04:00
Paul Licameli
a2a08e8520 Fix extraneous copies of three .mo files in mac build 2017-10-10 16:24:34 -04:00
Paul Licameli
10e75a4bcf Fix missing Portuguese and Chinese, Simplified in Mac preferences 2017-09-25 03:08:24 -04:00
Paul Licameli
b1d9be00e4 Added eu_ES (Basque (Spain)) to supported languages 2017-09-22 00:22:42 -04:00
Paul Licameli
75d557463d Use -c (check) option in msgfmt when generating .mo files 2017-09-13 15:09:06 -04:00
Paul Licameli
ac558ce700 Copying of Audacity.sh not an intall-only step, for debug convenience 2017-07-27 13:56:27 -04:00
Paul Licameli
8b32eea8bb Bug290 (load LAME, FFmpeg from correct place): original fix again...
... That is, put a little shell script in the application bundle, and invoke
it (in Release, though not Debug where it interferes with Xcode debugging)

See commit 07661c186f7e8e6d978fa35485d65364b96dfb3a

The shell nulls the environment variable DYLD_LIBRARY_PATH and then executes
the main program.

This is needed because changes to DYLD_LIBRARY_PATH during the main program's
run fail to affect the loading of dynamic libraries afterward.

We need null in DYLD_LIBRARY_PATH to make absolute paths to libraries take
priority.

More info:

Documentation of workings of the macOS dynamic loader
https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/DynamicLibraryUsageGuidelines.html

The same problem and solution is discussed here
https://stackoverflow.com/questions/6713692/problems-with-using-setenv-and-then-making-the-dlopen-call

It is claimed there that Firefox did the same trick with a shell, which I do
not observe in my version, but GIMP 2.8.16 does this, as I can see by examining
package contents

Also note the mention in this commit's comments (where the script was removed
because bug543's fix left it unused), that the script also used to
interfere with signing.  I hope that there will be a way around that.

98186b9317adf842e0469fe98175b55da31d3210
2017-07-27 13:39:22 -04:00
Steve Daulton
32f3ccd08e Update file name
The current OS for Mac is macOS
2017-07-27 16:06:21 +01:00
Paul Licameli
4108b5abe0 XCode build: Remove ~1500 noisy warnings (unknown compiler options) 2017-07-11 14:54:12 -04:00
Paul Licameli
e3ea42ff7e Force error on Mac when return value is missing...
... What commit 776e4dfdaba198b0bd5a4eec3df56d67065e824b was supposed to do,
but the setting was changed in the expat library only, not Audacity.

This should prevent foolish mistakes like that fixed in the previous commit!
2017-07-11 00:00:42 -04:00
Paul Licameli
3d7471a612 new file 2017-07-09 12:34:26 -04:00
Paul Licameli
c1f667f170 Move some handle and cell classes into their own files 2017-07-09 06:38:54 -04:00
Paul Licameli
776e4dfdab Mismatched return values will cause compiler errors in Xcode build 2017-07-04 06:29:53 -04:00
Paul Licameli
bc281fa7b4 Fix one of the patches to wxWidgets source for Mac...
... an inline function in a header was declared to return bool, but returned
nothing.  Now its type is void.

This function's undefined return value was not used anywhere.
2017-07-04 06:25:35 -04:00
Paul Licameli
8349888460 Permute the list of source files in XCode project 2017-06-25 16:16:26 -04:00
Paul Licameli
f79a4c3c4f Revert "XCode project won't forgive missing return values"
This reverts commit a2192b3734565002dbfbee52371561a76d218cf6.
2017-06-25 16:00:48 -04:00
Paul Licameli
a2192b3734 XCode project won't forgive missing return values 2017-06-25 15:32:12 -04:00
Paul Licameli
770b3b52ef TrackPanel no longer implements the selection tool or MIDI stretch...
This one's big!

Also restores the effect of ctrl-click on label track.

Also adds ESC key handling for the Stretch.
2017-06-15 08:54:59 -04:00
Paul Licameli
efdb9889b1 TrackPanel no longer implements label keystrokes, drags, text selection...
... also implemented ESC key for those drags

... temporarily loses the special CTRL click handling
2017-06-15 08:54:58 -04:00
Paul Licameli
bbfa574790 Move track resizing code out of TrackPanel.cpp, though it still...
... cooperates more closely with TrackPanel than the other UIHandle subclasses
do.
2017-06-15 08:54:58 -04:00
Paul Licameli
703abe87bc TrackPanel no longer implements track selection click or rearrange drag...
... also implement ESC key for the drag
2017-06-15 08:54:57 -04:00
Paul Licameli
8ef5f696d8 Define BackgoundCell, move some things into it 2017-06-15 08:21:41 -04:00
Paul Licameli
c3f5fea5fc TrackPanel still draws Miminize and Close, but no longer handles...
clicks on them...

... also implemented ESC key for those drags
2017-06-15 08:21:36 -04:00
Paul Licameli
7cab380192 TrackPanel still draws Velocity, but no longer handles clicks on it...
... also implemented ESC key for that drag
2017-06-15 08:21:35 -04:00
Paul Licameli
a569476e79 TrackPanel still draws Gain and Pan, but no longer handles clicks on them...
... also implemented ESC key for those drags
2017-06-15 08:21:35 -04:00
Paul Licameli
5ee73f944d TrackPanel still draws Mute and Solo, but no longer handles clicks on them...
... also implemented ESC key for those drags
2017-06-15 08:21:34 -04:00
Paul Licameli
c6e7e5d99b Define a base class that will be useful for several track control sliders 2017-06-15 08:21:34 -04:00
Paul Licameli
d28b8f072b Define a base class that will be useful for several track control buttons 2017-06-15 08:21:33 -04:00
Paul Licameli
43968c4ac9 TrackPanel no longer implements clip joining or cutline expansion/deletion...
... also implement ESC key for these and added status bar message for
mouse-over
2017-06-15 08:21:30 -04:00
Paul Licameli
2496b0d7bc TrackPanel no longer implements the envelope tool...
... also implement ESC key for it
2017-06-15 08:21:02 -04:00
Paul Licameli
251976d93d TrackPanel no longer implements the time shift tool...
... also implement ESC key for it
2017-06-15 08:21:01 -04:00
Paul Licameli
f1f254f974 TrackPanel no longer implements the draw tool...
... also implement ESC key for it
2017-06-15 08:21:00 -04:00
Paul Licameli
85c03bb3b3 TrackPanel no longer implements the zoom tool...
... Also changed the behavior of drawing of dashed lines: make them
disappear when they approach close enough that right-up will zoom out,
not in.
2017-06-15 08:20:59 -04:00
Paul Licameli
cba51e1bf8 Define class PopupMenuTable to make it easy to attach and detach handlers...
... to the parent TrackPanel window
2017-06-15 08:20:59 -04:00
Paul Licameli
14d45eda33 Define and use the UIHandle and TrackPanelCell protocols, but...
...no actions reimplemented to them yet.

Later commits will move special cases one at a time from TrackPanel, preserving
all click and drag capabilities at each step.  With a few exceptions, but those
lost abilities are restored in yet later commits.  (Ctrl+Click on the Label
track being one.)
2017-06-15 08:20:56 -04:00
Paul Licameli
a594207265 Define class SelectionState; move some TrackPanel functions into it 2017-06-11 10:22:52 -04:00
Steve Daulton
51517fa631 Fix Mac build 2017-04-27 15:16:05 +01:00
Paul Licameli
9fde75268f Define an AudacityException subclass for unready on-demand data 2017-03-17 17:52:58 -04:00
Paul Licameli
acf3c018bb Define an AudacityException subclass for user cancellation of progress 2017-03-17 17:52:58 -04:00
Paul Licameli
195509a033 Define an AudacityException subclass for file errors 2017-03-17 17:52:58 -04:00
Paul Licameli
f1cce8aa78 Define an AudacityException subclass for assertion violations 2017-03-17 17:52:57 -04:00
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