1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-19 14:17:41 +02:00

52 Commits

Author SHA1 Message Date
James Crook
c8b2cc9d31 Bug 641 - ASSERT when adding recording not at start of track.
Cause by testing the track length before setting the track length.
2017-05-14 17:26:33 +01:00
Paul Licameli
a9160cf803 Envelope::InsertSpace preserves limiting values of the split point 2017-05-09 09:22:06 -04:00
Paul Licameli
aba52bc79e Update envelope properly for TimeTrack and WaveTrack editing...
... Formerly this was done correctly only for cut and delete from WaveTrack,
paste into WaveTrack, and sync-lock adjustment of WaveTrack (either lengthening
or shortening).

Now also properly done for TimeTrack cut and paste, and also for:

Split cut
Split delete
Trim
2017-05-09 09:22:06 -04:00
Paul Licameli
2d84c65c94 When Envelope domain is shortened, evaluation inside won't change...
... It doesn't happen in practice yet, all present calls to SetTrackLen
make the track the same length or longer.  But this is for completeness.
2017-05-09 09:20:31 -04:00
Paul Licameli
945e411e2c Partial range copy of Envelope will not leave coincident points 2017-05-09 09:20:31 -04:00
Paul Licameli
f5a7e4ce7c Define private Envelope evaluator functions taking relative time...
... To be very sure we can avoid roundoff errors from adding mOffset and
subtracting it again; so that evaluation exactly at a control point time gives
the exact value of that point.
2017-05-09 09:20:31 -04:00
Paul Licameli
01b99f2849 Remove pointer back to Envelope from EnvPoint 2017-05-09 09:20:31 -04:00
Paul Licameli
2e7f806e90 Fix EqualRange for case of zero tolerance 2017-05-09 09:20:31 -04:00
Paul Licameli
ebd1de4ffc Interim fixes for envelopes 2017-05-09 09:19:01 -04:00
Paul Licameli
d2acf1f3e5 Bug842: rescale clip offsets, envelope times when setting track rate 2017-05-07 11:12:24 -04:00
Paul Licameli
7ad910c0a6 Simplify envelope binary search and uses of it 2017-05-07 11:00:55 -04:00
Paul Licameli
30e67bcb8e some reindentation 2017-05-07 11:00:55 -04:00
Paul Licameli
26c4d65bd4 Public Envelope methods all take & return ABSOLUTE time values...
... rather than some of them being relative to the Envelope's offset.

In case of the envelopes used in TimeTrack or Equalization, offset was
always zero, so this doesn't matter, except to make the contract of the
Envelope class more explicit and sensible in isolation.

In case of InsertSpace at least, this does fix an obscure bug, which could
only happen when you have a clip, with an envelope, that starts before zero,
and you select a region overlapping that clip and some other clip, with a void
between, and you use the Join command.

Aren't you relieved that's fixed now?
2017-05-07 11:00:55 -04:00
Paul Licameli
9c683a4f19 Rename some member functions of Envelope 2017-05-07 11:00:55 -04:00
Paul Licameli
4be19128c0 Better constructors for Envelope 2017-05-07 11:00:55 -04:00
Paul Licameli
5963f278f1 void returns from many WaveClip methods, comment safety guarantees 2017-04-02 12:49:47 -04:00
Paul Licameli
23dc35a18c Bug1614: fix crash duplicating a clip 2017-03-30 16:48:52 -04:00
Paul Licameli
b81cdee7e3 Comment where xml writing functions may throw 2017-03-18 11:45:05 -04:00
Paul Licameli
0af9b46eac Move many fields out of Envelope that are needed only during editing 2017-03-17 17:52:31 -04:00
Paul Licameli
81285ee0c1 More const and override 2017-03-17 17:52:20 -04:00
Paul Licameli
9ddb5bb1f3 more use of size_t 2017-03-17 17:52:20 -04:00
Paul Licameli
f993f1eadf Regularize casts as (int), so they are easier to find and review 2016-09-20 08:42:11 -04:00
Paul Licameli
70c1d57591 More const qualifications, and mutables, for functions that draw tracks...
... The display related  members that had to become mutable are probably
ones that don't belong in the track classes, ultimately.
2016-02-27 12:35:17 -05:00
Paul Licameli
7c4c45a0d5 "new"->"NEW" in comments, easier to find remaining naked operator new 2016-02-14 18:52:41 -05:00
Paul Licameli
56e7653343 "delete"->"DELETE" in comments, easier to find remaining naked operator delete 2016-02-14 18:50:45 -05:00
Paul Licameli
fbc75907dd One less indirection accessing EnvPoint 2016-02-02 11:49:52 -05:00
Paul Licameli
409cbb2996 Bugs 994, 1030: Scrubbing behavior with pointer outside of the track panel...
... first: suspend scrubbing only when the application is deactivated -- not
necessarily when track panel loses focus; resume when reactivated.

second: click and drag to seek happens only when the pointer is in the track
panel, and either over a wave track, or over no track.
2015-08-18 11:06:53 -04:00
Paul Licameli
cf45a58fdc dB range is now in Waveforms preferences and view settings, and ...
... the preference is independent of those in Interface and Recording
preferences, which affect meters, sound activated recordings, time track,
and Plot Spectrum
2015-08-15 18:07:29 -04:00
Paul Licameli
7bba4500c4 Move mdBr from TrackPanel to ViewInfo, no more lookup of prefs in Envelope.cpp 2015-07-28 11:53:01 -04:00
Steve Daulton
df8ddde874 Added dB - linear amplitude conversion macros. 2015-07-24 21:59:34 +01:00
Paul Licameli
c5754ee751 Remove Envelope::GetValueAtX 2015-07-19 11:44:19 -04:00
Paul Licameli
e0f4595485 TrackArtist, LabelTrack, TimeTrack, Envelope functions take ZoomInfo...
... and SelectedRegion, and not ViewInfo or zoom level as a double.

Also some leftOffset arguments.

Assumptions of uniform zoom level persist in TrackArtist::DrawClipSpectrum and
in TrackArtist::DrawClipWaveform but no longer in the rest.
2015-07-19 11:44:13 -04:00
Paul Licameli
5316032fee An overload of Envelope::GetValues for nonuniform time steps, taking ZoomInfo 2015-07-19 11:44:11 -04:00
Paul-Licameli
bd08c7c778 Envelope event handlers do not directly use zoom (pps) values 2015-07-19 11:44:08 -04:00
Paul Licameli
68174ad657 Envelope::GetValue works faster when called in a loop with increasing arugments 2015-07-19 11:43:50 -04:00
Paul Licameli
162418ff07 Fix compilation warnings 2015-06-10 02:04:07 -04:00
Paul Licameli
e900a2b21c Fix uninitialized variable 2015-06-02 19:24:46 -04:00
Paul Licameli
437e28db1a Moved ValueOfPixel into global namespace, it wants to live next to its inverse 2015-06-02 19:16:05 -04:00
Daniel Winzen
92d522132e Variable cleanup 2015-04-23 18:30:38 +02:00
Paul-Licameli
5abfd25a34 Support backwards play, a requirement for scrubbing
Uncomment the line at the top of ControlToolBar::PlayPlayRegion to play
everything backwards and test it

It even works correctly with a time track
2015-04-17 02:25:52 -04:00
Paul-Licameli
fe12fce270 Bug830 - Paste should not destroy envelope information in the clipboard 2015-04-09 19:49:01 -04:00
benjamin.drung@gmail.com
277932dccb Remove trailing spaces. 2014-06-03 20:30:19 +00:00
RichardAsh1981@gmail.com
28e9f0ca73 make many functions which do not require access to class member variables static so they can be called without an object to do so with. Based on part of a patch by Campbell Barton 2013-09-21 19:15:42 +00:00
james.k.crook@gmail.com
dba81b3f1c Cleanup: Fixed lots of trivial MSVC warnings. 2013-08-25 21:51:26 +00:00
RichardAsh1981@gmail.com
8d8e008b45 Patch by Maarten Baert for compatibility with project files from previous versions of Audacity, by re-scaling on load. Opening newer project files in older builds works but the time track gets messed up. This needs to be release noted. 2013-01-06 16:55:19 +00:00
RichardAsh1981@gmail.com
2326bb8347 Commit most of patch-envelope-range-2.patch from Maarten Baert, excluding an unrelated change and some independent ones already committed. There is an outstanding potential issue with the TimeTrack:: copy constructor awaiting further input 2012-12-29 16:28:28 +00:00
richardash1981
55be06c9e4 commit a large patch by Maarten Baert maarten-baert<at>hotmail<dot>com to fix and improve time track support. Several fix-me issues remain but none are new with this patch. 2012-12-19 21:49:25 +00:00
v.audacity
a7a6c2b557 See http://bugzilla.audacityteam.org/show_bug.cgi?id=528#c11 (P2). 2012-07-20 03:31:10 +00:00
v.audacity
4038f214cd (bug 451, p2) Add some asserts against mMaxSamples. In Sequence::Paste(), correct var largerBlockLen declaration to be sampleCount, not the smaller int, that can overflow on comparing to sampleCount and add log error msg. Add alert dialog, log warning, and limitation in Sequence::WriteXML() if mMaxSamples exceeded. Obviate EnvPoint::WriteXML(), unused. A few comments on some "TODO" comments. Make DirManager::WriteXML() fail in debug mode, as it should not be called. 2011-11-01 04:39:14 +00:00
martynshaw99
9b79a37e42 Remove asserts that fire under safe conditions 2011-03-15 00:07:06 +00:00