1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-01-07 17:07:22 +01:00
Commit Graph

4419 Commits

Author SHA1 Message Date
James Crook
028ed19d90 Sync with DarkAudacity 2017-04-02 23:07:13 +01:00
Paul Licameli
5963f278f1 void returns from many WaveClip methods, comment safety guarantees 2017-04-02 12:49:47 -04:00
Paul Licameli
aa83c4cf29 Implement the more than weak guarantees needed for recording...
... in WaveClip and WaveTrack, to save as much recording as we can,
assuming the strong guarantees that Sequence will give.

Also comment that some other WaveTrack methods can give strong guarantee,
incidentally to making HandleClear give strong.
2017-04-02 12:46:47 -04:00
Paul Licameli
e3d4a8dcfe Comment the strength of guarantees of some WaveTrack methods 2017-04-02 12:43:21 -04:00
Paul Licameli
3db132f9b0 Fix WaveTrack::SplitAt 2017-04-02 12:43:21 -04:00
Pokechu22
1c93198d08 Re-implement note tracks in MixerBoard
This commit adds note tracks into the mixerboard.  It's done as a separate
slider this time instead of via subclasses (as PRL requested), so which
should be easier to use.

This also changes some of the gaurds to EXPERIMENTAL_MIDI_OUT from
USE_MIDI, as it's meaningless to have the note track code in mixerboard
when it cannot do anything (depends on methods that exist behind
EXPERIMENTAL_MIDI_OUT).
2017-04-01 12:48:44 -04:00
Pokechu22
59d740ad77 Use a dedicated velocity slider for note tracks
This gets rid of the offset rectangle hack that was needed to re-use gain
sliders for note track velocities.  It also removes the need for changing
the style of a single slider.  Perhaps most importantly, it fixes link
errors regarding GainSlider(int).

See https://sourceforge.net/p/audacity/mailman/message/35752524/ for
details on why this change is needed and what caused it.
2017-04-01 12:48:43 -04:00
Paul Licameli
7195f9a3f4 fix windows build 2017-03-31 22:53:58 -04:00
Paul Licameli
0d7250578d Other methods of WaveTrack return void, will throw on failure instead 2017-03-31 18:26:52 -04:00
Paul Licameli
e1473dfe76 void return, not boolean success, from some Track virtual functions...
... The return codes were mostly ignored anyway, and exceptions will be thrown
instead.

It seems there was also confusion whether the return values of Track::Paste
and Track::SyncLockAdjust were to indicate success or indicate whether there
was any change.  No matter now.
2017-03-31 18:26:52 -04:00
Paul Licameli
6b84dc1c1d Factory methods will return non-NULL or throw 2017-03-31 18:14:29 -04:00
Paul Licameli
f1b354b141 More pure virtuals in Track, supply Note and Time overrides 2017-03-31 18:03:37 -04:00
Paul Licameli
ad34145ded Clarify paste logic, throw to rollback on error, keep TimeTrack unique...
... though TimeTracks are not yet ever cut or copied; but next commit will
change that.
2017-03-31 18:02:22 -04:00
Paul Licameli
608dcc9b3f Reimplement prohibitions on moving clips by throwing exceptions...
... Also comment some strong and weak guarantees
2017-03-31 17:47:19 -04:00
Paul Licameli
8e2e4a53b8 Define SimpleMessageBoxException 2017-03-31 17:47:18 -04:00
Paul Licameli
d1cbac4181 more finally, more const, remove unused, fix warnings 2017-03-31 17:47:18 -04:00
Paul Licameli
a1b88fe8d6 Fix assertion in MIDI prefs when there are no devices 2017-03-31 13:02:57 -04:00
Paul Licameli
8928bd4d7b Correct MixerTrackCluster::GetRight() 2017-03-31 00:48:04 -04:00
Paul Licameli
a936aed643 Another use of type AudioTrack 2017-03-30 20:48:27 -04:00
Steve Daulton
a9879bddf0 Refactor clipfix.ny to fix multiple problems
Basically a rewrite based on the original algorithm.
2017-03-31 00:01:18 +01:00
Paul Licameli
23dc35a18c Bug1614: fix crash duplicating a clip 2017-03-30 16:48:52 -04:00
Paul Licameli
7bda40f656 Common functions read and write mute and solo in Wave and Note 2017-03-30 16:00:27 -04:00
Paul Licameli
1a86819b4b Fixes for clang build with 64 bit unsigned long 2017-03-30 10:46:44 -04:00
Paul Licameli
82f909fe31 Again, fix compilation without USE_MIDI 2017-03-30 10:22:20 -04:00
Paul Licameli
d109142693 Make mute and solo of NoteTrack persistent, if EXPERIMENTAL_MIDI_OUT 2017-03-29 13:58:20 -04:00
Paul Licameli
6c4cf46c06 Move mute and solo state into PlayableTrack 2017-03-29 13:45:08 -04:00
Paul Licameli
ed0088491c Remove MixerTrackClusters right to left, remove assertion 2017-03-29 13:45:07 -04:00
Paul Licameli
b2ab9b5087 Simplify MixerBoard.cpp using the PlayableTrack type 2017-03-29 13:42:51 -04:00
Paul Licameli
f1bec85675 use AudioTrack 2017-03-29 13:27:22 -04:00
Paul Licameli
c391a8f884 Define AudioTrack and PlayableTrack as common bases for Wave and Note 2017-03-29 13:27:22 -04:00
Paul Licameli
80984c9f1d From Pokechu22: Rename gain to velocity on note tracks
"Velocity" is the technical term, and it's the term that's used everywhere.
"Gain" was probably only used because "gain" is used on wave tracks; since
note tracks aren't wave tracks (and shouldn't be treated as them) the
corresponding variables should be named velocity.
2017-03-29 13:27:22 -04:00
Paul Licameli
9dadc5af6d Revert "Needed to compile Pokechu22's fix-midi-output on Mac"
This reverts commit 5badb9174a.
2017-03-27 23:40:10 -04:00
Paul Licameli
5badb9174a Needed to compile Pokechu22's fix-midi-output on Mac 2017-03-27 01:37:38 -04:00
Pokechu22
2d912f3c93 Replace assert calls with wxASSERT 2017-03-27 01:26:42 -04:00
Pokechu22
0ce9598274 Fix midi-related compile problems in AudioIO and NoteTrack
The compilation was broken in 67cec5a but fixed in ed8c7fd.  However, the warnings weren't fixed.  The same general sign-related changes from 67cec5a were applied, fixing several warnings.

This also changes the arguments for NoteTrack's label click handler, to match the ones found in TrackPanel.  That's needed to handle some other const-related changes.

Additionally, EXPERIMENTAL_MIDI_PLAYBACK was changed to EXPERIMENTAL_MIDI_OUT in the documentation, as that is the correct name.
2017-03-27 01:12:16 -04:00
Pokechu22
bdb0790150 Fix compiling when USE_MIDI not is defined
Compilation broke in TrackPanel in ed277ec and in TrackpanelAx in a96c719c.
2017-03-27 01:12:16 -04:00
windinthew
e2a7282690 Fix wording issues reported on Wiki
No ellipses in title bar of file open/import dialogs
Auto Recovery Discard dialogs say only recoverable projects are discarded
Capitalised button in Dependency dialogue per MS guidelines.
2017-03-27 05:36:10 +01:00
James Crook
78149bc3da Disable command-list capture code, by default.
Also added a comment to say what it is.
2017-03-23 18:48:00 +00:00
James Crook
3ffcc29bf6 Add code to capture command List
Capture the commands and key bindings to debug channel:
a) From the menus
b) from the preferences.
2017-03-23 18:42:54 +00:00
Steve Daulton
a07bf9c325 Rearrange 'Skip to' menu
Group "cursor to project start / end" with other "Cursor to" commands.
Move remaining two "Skip to" commands to View menu (subject to change).
Access keys to be decided.
2017-03-23 11:39:36 +00:00
Steve Daulton
260044bcb0 Ffix wx assert in debug build 2017-03-22 20:26:39 +00:00
Paul Licameli
def0d2bada Fix Linux build 2017-03-22 16:25:49 -04:00
James Crook
1dce83006f Record on same track is now the default.
Record new track is now accessed by SHIFT+R and is so named in the menu and tool tip.
2017-03-22 16:42:40 +00:00
David Bailes
5f6a013a87 Fix windows build
Paul should check this fix.
2017-03-22 11:33:10 +00:00
Paul Licameli
38b8e57e4e Specify whether to throw on bad read in Mixer and WaveTrackCache...
... Do throw when exporting or mixing-and-rendering; don't if playing back or
drawing a spectrogram, but then just use zeroes.
2017-03-21 17:23:35 -04:00
Paul Licameli
987b038fd8 Exception safety in overrides of WriteSummary 2017-03-21 17:23:35 -04:00
Paul Licameli
39b8d99a56 WaveTrack::Get, WaveClip::GetSamples take a mayThrow=true argument...
... and pass non-default in all needed places.

Don't throw, don't put up error dialogs, in drawing or hit-test code.
2017-03-21 17:23:34 -04:00
Paul Licameli
98d1468a01 BlockFile::ReadData overrides: on failure, pad with 0s or throw...
... as the mayThrow argument directs.
2017-03-21 14:19:03 -04:00
Paul Licameli
70d9e4bdc7 GetMinMax, GetRMS functions take a mayThrow argument, return numbers 2017-03-21 14:19:02 -04: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