1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-06 14:52:34 +02:00

39 Commits

Author SHA1 Message Date
Paul Licameli
f7780adbf5 Comments about CloseLock() functions 2016-04-12 00:54:55 -04:00
Paul Licameli
f94b3b3afa Add some const qualifiers to BlockFile methods 2016-04-10 21:05:20 -04:00
Paul Licameli
daf92c43f8 Sequence::Copy is a factory returning smart pointer. WaveClip stores it. 2016-04-10 20:47:45 -04:00
Paul Licameli
48a5f55179 More const qualifiers, for copying of tracks, and replacing in lists of tracks
... (the tracks may be const, not the list, when replacing)
2016-02-27 17:30:30 -05: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
990080ae7d Replace virtual with override wherever possible; eliminate needless virtual...
... for functions in final classes.

override is like const -- it's not necessary, but it helps the compiler to
catch mistakes.

There may be some overriding functions not explicitly declared virtual and I did
not identify such cases, in which I might also add override.
2016-02-26 12:35:38 -05:00
Paul Licameli
7824e94030 Harmlessly qualify classes as final (or explicitly comment not)...
... Should have no effect on generated code, except perhaps some slight faster
virtual function calls.  Mostly useful as documentation of design intent.

Tried to mark every one of our classes that inherits from another, or is a
base for others, or has abstract virtual functions, and a few others besides.
2016-02-24 20:58:30 -05:00
Paul Licameli
9bf098c7d9 Sweep unnecessary wxString copies: rest 2016-02-23 02:15:56 -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
321d5259a2 More uses of SampleBuffer, eliminating explicit DeleteSamples calls 2016-02-01 10:16:00 -05:00
Paul Licameli
7544a35a6e Improve calculation of reassigned spectrogram at screen boundaries 2015-08-17 10:03:45 -04:00
Paul Licameli
84ee685ee9 reassignment, internals, implementing time correction, but -- ...
... it does not yet interact correctly with caching, so results may be
slightly wrong if you scroll the view by less than a screen.
2015-08-17 09:17:46 -04:00
Paul Licameli
e4fe449021 more simplification of arguments 2015-08-16 21:14:41 -04:00
Paul Licameli
5aba06a8a2 simplify argument passing for drawing pitch views 2015-08-16 19:45:09 -04:00
Leland Lucius
3064f1715f Better tooltip for ASlider
This fixes the problem on GTK where the text was unreadable when
using a "dark" theme.

And fixes the double display of the real tooltip and the tip panel
being displayed at the same time on GTK and OSX.  It seems that
the "disabling/reenabling" of tooltips doesn't take affect right
away anymore...maybe it never did.
2015-08-09 06:03:42 -05:00
Paul Licameli
f81231efae Remove Sequence.h from other headers 2015-07-28 10:02:08 -04:00
Paul Licameli
f74713f020 WaveTrack::WaveTrackDisplay does not encode scale or spectral selection...
... SpectrogramSettings does that instead, and Preferences or View Settings
are the user interface for changing it.

Handle invalidation of spectrogram pixel cache for scale type changes,
just as for other changes of settings.  No more
TrackArtist::InvalidateSpectrumCache().

View type of track now switches to Spectrum when applying or OKing the
View Settings... dialog and the Spectrogram page is open (and for now
it is still the only page)
2015-07-27 23:01:04 -04:00
Paul Licameli
8664c877ba WaveDisplay may or may not manage its own memory. 2015-07-19 11:44:16 -04:00
Paul Licameli
c14b326913 Publicize class SpecCache. TrackArtist will re-use it. 2015-07-19 11:44:15 -04:00
Paul Licameli
b24e0f9115 Change min/max frequency in spectrogram prefs causes display refresh (again)
... Sorry I broke that!
2015-06-10 14:49:04 -04:00
Paul Licameli
976eb6164f More reorganization of wave and spectrum caches, and performance...
Simplify the partial copying of wave and spectrum caches.  Use memcpy for speed.

Don't memcpy out of the caches into temporary buffers for TrackArtist,
just pass
pointers.

More vectors in the cache classes, fewer deletes.

Pulled big loop, and its body, out of the spectrogram routine into functions.
2015-06-06 11:43:10 -04:00
Paul Licameli
afa2fe9fb4 Keep FFT windows for Spectrograms in one place in SpectrogramSettings...
... not redundantly in each WaveClip.
2015-06-04 11:29:18 -04:00
Paul Licameli
38f24a42ef Don't invalidate SpecCache for changes of min, max, gain or range...
... because those do not affect it.  They only affect the SpecPxCache.

Did other things to that class:  renamed fields, new constructors.
2015-06-04 11:29:16 -04:00
Paul Licameli
ba5738446c Bug1009: Correct interaction of Zero Padding and Frequency Gain...
... also an excuse to pull out a function I will want to reuse in a later
project.  The real fix was simply to use fftLen not windowSize.
2015-06-03 15:01:54 -04:00
Paul Licameli
1df1effb71 Quiet compilation warnings 2015-06-02 19:15:29 -04:00
Paul Licameli
14b8607017 compilation fix 2015-06-02 09:16:07 -04:00
unknown
29fb5a2ffe Simplified passing of min/min/rmx/bl/where values for drawing waveforms 2015-06-01 22:58:18 -04:00
Paul Licameli
6a1227f039 zero-padding factor for spectrograms, internals 2015-05-31 16:43:09 -04:00
Paul Licameli
e6ccd51326 Use WaveTrackCache for spectrograms
Zooming-in of spectrograms (or other view changes that invalidate the
whole pixel cache of the WaveClip) used to do at least one opening and
closing of a block file for each column of pixels.  With this change,
open each block file not more than once for each repopulation of the
cache.

Improved speed may be more noticeable on less powerful computers, or when
the audio file is in a slower storage device.
2015-05-26 20:02:38 -04:00
Paul-Licameli
fe8d3535d8 Bug819 - Paste should not change clipboard contents when sample formats differ 2015-04-08 19:11:50 -04:00
benjamin.drung@gmail.com
277932dccb Remove trailing spaces. 2014-06-03 20:30:19 +00:00
v.audacity
9d0daf8662 Campbell Barton's patch to turn many, many tabs to our 3-space convenbtion 2013-02-20 23:42:58 +00:00
clayton.otey
71dedc3d35 Revert r11214 (sbsms timescale effect update) & r11215 (mixed-radix-fft narrow/broaden spectrum menu items) to honor the feature freeze. 2011-07-06 09:49:59 +00:00
clayton.otey
df9865f26a Added an sse enabled mixed-radix-fft implementation and a menu/view/{narrow,broaden} spectrum item which adjusts the spectrogram window size 2011-07-02 18:42:38 +00:00
mchinen
fbe3a80ab1 Bug 373/378 (P2) - Fix a case where one track of an aligned stereo pair could be moved independently 2011-04-26 16:47:06 +00:00
mchinen
9321b1634e Bug 377 (P2) - fix case where the R channel of a stereo clip wouldn't be dragged if it was off-screen and sync-lock was off 2011-04-25 18:10:32 +00:00
v.audacity
1b1b05947e It is an error to copy a WaveClip without specifying the DirManager. Defined break-inducing copy constructor and assignment operator methods so that if some developer makes the mistake of calling a single-arg copy constructor rather than the one below (that requires a DirManager*), rather than it going to C++-generated default copy constructor, it goes here and the error is made clear to that developer.
These are a good idea to add in *many* other places...
2010-09-10 22:02:04 +00:00
v.audacity
a46081d5b5 Get rid of unused copy constructor that's "fatal" to call (although it didn't crash, just frightened the user!). 2010-09-09 22:15:21 +00:00
ra
e74978ba77 Locate and position the current Audacity source code, and clear a variety of old junk out of the way into junk-branches 2010-01-23 19:44:49 +00:00