1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-14 09:03:54 +01:00
Commit Graph

786 Commits

Author SHA1 Message Date
Paul Licameli
72df562c4a Conversion of TranslatableString to wxString is private 2019-12-01 18:17:57 -05:00
Paul Licameli
e4a7c9ba5b Uses of TranslatableString as value of XO macro...
... It is not implicitly convertible from wxString, compelling many uses of
the new type to fix compilation.
2019-12-01 18:05:20 -05:00
Paul Licameli
c707edad7a Don't lose split view after undo & redo, or an effect 2019-11-26 04:49:15 -05:00
Lars Wendler
b280253e60 build: Fix bad include path
tracks/labeltrack/ui/LabelTextHandle.cpp:25:10: fatal error: ../../../images/Cursors.h: No such file or directory
     25 | #include "../../../images/Cursors.h"
        |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  compilation terminated.

Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
2019-11-24 21:04:10 +00:00
Paul Licameli
54e0df5660 Implement a dragging handle to adjust wave track sub-view heights 2019-11-23 16:44:42 -05:00
Paul Licameli
d26b55ee3c WaveTrackSubView has a back-pointer to the WaveTrackView 2019-11-23 15:27:04 -05:00
Paul Licameli
af9959dc98 Rewrite WaveTrackView::GetSubViews to cache last computed heights 2019-11-23 15:02:09 -05:00
Paul Licameli
125b8ad0da Wave track context menu has non-exclusive check items for display type 2019-11-23 14:57:29 -05:00
Alexander Tsoy
7a91b6c5e9 Fix compilation without USE_MIDI 2019-08-28 00:17:39 +03:00
James Crook
06af0c6296 Bug 803 - Incorrect pointer (cursor) when rearranging tracks
There is no wxCURSOR_REARRANGE so made a custom cursor instead.
2019-08-18 14:47:17 +01:00
David Bailes
664452b1a8 Bug 2183 - Characters in labels cannot be deleted
Fix: update the actual label (labelStruct is a copy).
2019-08-03 09:13:53 +01:00
Paul Licameli
05997dc267 Bug2180: complete the fix...
... Don't forget the unbinding of the event handler

See previous commit, e589ed8ecf
2019-08-01 06:33:52 -04:00
Paul Licameli
e589ed8ecf Bug2180: Type-to-create labels twice should work...
Bug began at 0750f62e88

Track::SetSelected is virtual, after all, but then LabelTrack informs
LabelTrackView of selection changes by events, so that LabelTrack remains
independent of LabelTrackView.

This might make much of the rest of the guily commit unnecessary (the resetting
of selected index to -1 only lazily), but it is harmless.
2019-07-31 16:40:16 -04:00
Paul Licameli
a87748b123 spelling 2019-07-29 15:41:07 -04:00
David Bailes
ee46155d82 Bug 2176 - Crash when attempting to time shift multiple tracks
Steps to reproduce:
1. create a new project in Audacity
2. add several tracks.
3. turn on Sync-Lock (Tracks, Sync-Lock Tracks checked)
4. Click on the Time Shift Tool.
5. Attempt to move tracks to the right (for example), clicking in the bottom track
6. It crashes.

In the function: void TimeShiftHandle::CreateListOfCapturedClips(), the problem was the first occurrence of the line:
auto &trackClip = state.capturedClipArray[i];
The subsequent call to AddClipsToCaptured(), can reallocate the array and so invalidate the reference.

Fix: Don't use a reference. (TrackClip is not a large object.)
2019-07-27 13:16:15 +01:00
Paul Licameli
960fe47412 Bugs2151,2156: playhead ruler overlay was leaving black marks behind 2019-07-26 11:57:30 -04:00
Paul Licameli
93bb862aa2 Remove unnecessary #include 2019-07-18 15:05:37 -04:00
James Crook
13348841c0 Bug 1780 - Sample Rate dialog does not appear when track has custom sample rate
With radio items there is no change event, if radio button was already chosen.
2019-07-17 20:14:01 +01:00
Paul Licameli
33f3d4b82d Heavyweight version of SelectedRegion stored in ViewInfo emits events 2019-07-17 12:43:39 -04:00
James Crook
2852d07a1e Fix build on Ubuntu 2019-07-16 08:09:33 +01:00
Paul Licameli
e4d6e8569f Bug2144: track name should overpaint channel separator of minimized track 2019-07-14 07:15:26 -04:00
Paul Licameli
beb378f61a Revert the change of radio items to check items at fa6b5de 2019-07-11 12:54:36 -04:00
Paul Licameli
633153c91f Delegate DoDetailedHitTest through base class WaveTrackSubView 2019-07-11 10:37:30 -04:00
Paul Licameli
dd369da6a0 Define WaveTrackView::GetAllSubViews 2019-07-10 11:35:57 -04:00
Paul Licameli
fa6b5dea88 Generalize WaveTrackView::GetDisplay to return multiple values...
... something better might be done in Nyquist Lisp, where we still pass a
single value
2019-07-10 10:19:04 -04:00
Paul Licameli
2f544bda7a Reimplement WaveTrackView::SetDisplay, eliminating mDisplay...
... and much generality for the future in reporting the sub-view division to
TrackPanel.

SetDisplay will have the effect of making one of possibly multiple views take
up all the height.  Where we need to save and restore or otherwise copy the
sub-views, there is more information now than just one enum value.
2019-07-10 10:10:41 -04:00
Paul Licameli
6ccca16a75 Move display type from WaveTrack to WaveTrackView 2019-07-09 20:09:59 -04:00
Paul Licameli
c28e47bd38 Define static Get functions for WaveTrackView 2019-07-09 20:09:59 -04:00
Paul Licameli
99a1e5a11d Remove some unnecessary tests of WaveTrack::GetDisplay()...
... trust the hit-tests of the views to guarantee these conditions
2019-07-09 20:09:59 -04:00
Paul Licameli
3715c079b4 Test view class, not track display type, for spectral selection 2019-07-09 20:09:59 -04:00
Paul Licameli
bac841f497 TrackView wasn't using TrackControls 2019-07-09 14:55:33 -04:00
Paul Licameli
db16150366 Break cycle: TrackPanelResizerCell, TrackPanelResizeHandle, TrackView 2019-07-09 14:55:31 -04:00
Paul Licameli
7d75f1bfc4 Remove unnecessary #include 2019-07-09 10:55:18 -04:00
Paul Licameli
d7a0fa72db WaveTrackView does not depend on SpectrumView, WaveformView 2019-07-09 10:23:49 -04:00
Paul Licameli
22dbe69f5c Remove friends 2019-07-09 09:51:37 -04:00
Paul Licameli
2bec03ac08 TrackView subclasses do not depend on corresponding TrackControls...
... use an AttachedVirtualFunction to compute the default view height from
the controls.

This frees LabelTrackControls from cycles.

Also made Track::DoSetHeight non-virtual
2019-07-09 00:05:01 -04:00
Paul Licameli
9ca295c9f7 Remove some unnecessary #include-s 2019-07-08 23:53:41 -04:00
Paul Licameli
51e0c2221f Remove duplicate call to DrawItems introduced at 488cb46 2019-07-08 22:13:51 -04:00
Paul Licameli
fd7e06e458 Undo the temporary rewrites of WaveTrackView draw and hit-test...
... switching on display type and replicating what the sub-view classes did;
now these methods of WaveTrackView should not be reached
2019-07-08 11:44:44 -04:00
Paul Licameli
8d29746af9 Classes no more instantiated after previous commit become namespaces 2019-07-08 10:56:17 -04:00
Paul Licameli
c7b888b903 WaveTrackView now delegates to the proper sub-view...
... by a redefined area subdivision policy in TrackPanel

So the SpectrumView, WaveformView, and associated ruler and handle classes
find real use, while WaveTrackView is really used only for its height and to
supply the delegate, and WaveTrackVRulerControls and WaveTrackVZoomHandle
are not used

There is also some anticipation of multiple track views
2019-07-08 10:27:43 -04:00
Paul Licameli
ecbbf7afe8 Cut and paste spectrum and waveform views to new files 2019-07-08 10:27:41 -04:00
Paul Licameli
96e5525646 Fill in the methods for Spectrum & Waveform views...
... Keeping WaveTrackView functioning
2019-07-08 10:18:15 -04:00
Paul Licameli
d36ce45381 Declare pointers to WaveTrack sub-views, with stub methods for now 2019-07-08 09:46:00 -04:00
Paul Licameli
28dcf45bbe Cut and paste spectrum and waveform vruler controls into new files 2019-07-08 09:46:00 -04:00
Paul Licameli
32ae2e718f Fill in the methods for Spectrum & Waveform VRuler controls...
... Keeping WaveTrackVRulerControls functioning
2019-07-08 09:46:00 -04:00
Paul Licameli
cffbf6f401 Separate classes for waveform, spectrum VRulers, stub methods for now 2019-07-08 09:46:00 -04:00
Paul Licameli
bc823294f2 Cut and paste waveform and spectrum vzoom handle functions 2019-07-08 09:46:00 -04:00
Paul Licameli
d991295efb Implement classes SpectrumVZoomHandle, WaveformVZoomHandle 2019-07-08 09:46:00 -04:00
Paul Licameli
f7dc21436d Separate functions for vertical zooming of spectrum and waveform 2019-07-08 09:46:00 -04:00