1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-07 23:32:53 +02:00

91 Commits

Author SHA1 Message Date
Paul Licameli
0857118916 Put labels directly in a vector, not pointers to them...
... but this brings back some "mutable" members, not in LabelTrack, but in
LabelStruct.

To make that go away, and still have the Draw function const, figure out how to
update the label track layout at the right times, outside of the draw function.
2016-07-10 03:21:06 -04:00
Paul Licameli
590d492782 Simplify iterations over labels 2016-07-10 03:21:06 -04:00
Paul Licameli
6e772a3569 Use stl container idioms 2016-07-10 03:21:05 -04:00
Paul Licameli
7c07cb3b42 Avoid repeated subexpressions accessing labels 2016-07-10 03:21:05 -04:00
Paul Licameli
8fefea6d36 Rewrite LabelTrack::SortLabels 2016-07-10 03:21:05 -04:00
Paul Licameli
15bb2f0434 Lower a piece of text box dragging logic out of TrackPanel...
... This might cause more redrawing of label tracks for left click without
Shift, but who cares.
2016-07-10 03:21:05 -04:00
Paul Licameli
815d75b305 LabelTrack::HandleClick rearranged 2016-07-10 03:21:05 -04:00
Paul Licameli
7060dc4088 Simplify cut, copy, paste, delete routines of LabelTrack 2016-07-10 03:21:05 -04:00
Paul Licameli
d99c8abcf2 Various simplifications of LabelTrack code 2016-07-10 03:21:05 -04:00
Paul Licameli
7055a0f7c0 Remove two more unnecessary LabelTrack members; no more mutables! 2016-07-10 03:21:05 -04:00
Paul Licameli
06fd481815 Don't need to delay certain state changes of LabelTrack until drawing 2016-07-10 03:21:05 -04:00
Paul Licameli
7a7379c6fc Label text coordinate calculations don't need a window 2016-07-10 03:21:05 -04:00
Paul Licameli
f01fc64a2d More safenew, const functions, remove unnecessary members 2016-07-10 03:21:05 -04:00
Paul Licameli
53e30e5533 Label context menu can bring up the edit dialog 2016-06-26 13:34:52 -04:00
Paul Licameli
39063fba94 Guarantee default selection shows in Label Track's Font listbox...
On my Macintosh, with no audacity.cfg, selection is Lucida Grande when the
dialog opens.

Formerly, I saw no selection.
2016-06-23 13:45:22 -04:00
Paul Licameli
d787703fd9 foo 2016-06-23 12:40:37 -04:00
Paul Licameli
3015a9c8d9 Track cut and copy functions return a unique_ptr argument...
... Because they are factory functions.
2016-03-26 11:50:13 -04:00
Paul Licameli
5ef4dd46a5 TrackFactory functions return std::unique_ptr, although some callers...
... release() them for now.
2016-03-26 11:50:12 -04:00
Paul Licameli
f42a953752 Track duplication methods return unique_ptr, although some callers...
... simply release() them for now.
2016-03-26 11:50:10 -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
d097c7fad4 More const qualifications. The source of a paste is const. 2016-02-27 12:54:57 -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
ba4006a454 Removed unused functions of LabelTrack, but was there an error? 2016-02-26 12:35:28 -05:00
Paul Licameli
a5b6c9fd8f Add some const qualifiers; define TrackListConstIterator 2016-02-24 19:10:39 -05:00
Paul Licameli
cd9bd79d83 Use an enumeration for UndoManager::PushState 2016-02-24 19:10:35 -05:00
Paul Licameli
73ced7b93f Remove UndoManager.h from other headers 2016-02-24 19:10:34 -05:00
Paul Licameli
dbaa811577 Stack-allocate where possible! ...
... Removed many unnecessary naked news and deletes.
2016-02-17 18:15:57 -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
39399d6d8c Bug30: Safer fix avoids crashes! 2016-01-23 11:35:37 -05:00
Paul Licameli
116ea61d11 Bug30: During playback, after CTRL+M, chars, ENTER -- restore track focus. 2016-01-21 10:18:41 -05:00
Paul Licameli
f5f436a3d1 Define LabelTrack::OverATextBox for future use 2015-08-29 13:49:54 -04:00
Paul Licameli
439fdc66ff weaken dependency of TrackPanel.cpp on LabelTrack.h, a bit 2015-08-23 19:02:06 -04:00
Paul Licameli
684bd0285c Replace some unexplained magic numbers with constants, add comments...
... This commit changes no behavior, fixes no bugs
2015-08-21 00:35:04 -04:00
Leland Lucius
b2b23f1250 Hopefully the last round of keyboard handling changes 2015-08-15 21:52:30 -05:00
Paul Licameli
5dd4cac5bd travis 2015-08-10 20:27:38 -04:00
Paul Licameli
5580aececc Untangle the control flow of mouse event handling in label tracks 2015-08-10 20:02:24 -04:00
Leland Lucius
4a93e5cff4 Fix for bug #1138 2015-08-10 16:38:39 -05:00
Paul Licameli
2091185b07 Bug1074: Drag or stretch label only with left button...
... and be sure it always makes an undo item
2015-08-08 15:27:39 -04:00
Leland Lucius
f36fe29f96 Fixes for bugs 1122 and 1113
Several other issues were also fixed (hopefully ;-)).

This is a major change to accelerator handling and keyboard
capturing.  Menu shortcuts, non-menu commands, label editing,
navigation, and basically anything else were you might use
the keyboard should be thoroughly tested.
2015-08-08 00:01:24 -05:00
Leland Lucius
80a5a118d4 Delete menu when done 2015-07-31 16:03:32 -05:00
Leland Lucius
442c39d46f Include the OSX keycode to open the context menu
And OSX doesn't like menu IDs of 0.
2015-07-30 14:36:25 -05:00
Leland Lucius
c07accfc1e Include the "other" application menu key for Linux 2015-07-30 11:23:10 -05:00
Leland Lucius
7877615454 Move label context menu handling to label track
Application key now brings up the context menu while editing labels
as it should.  This wasn't possible with the old keyboard handling.
2015-07-30 10:38:03 -05:00
Leland Lucius
5bdfcff97d Menu shortcut hiding has been removed
It had been causing problems in Unity for a while now and they
were missing on OSX as well in wx3.  So, the old menu Open/Close
method of hiding has been removed and replaced with an event
filter/monitor which looks for wxEVT_CHAR_HOOK events to pass
key events to the handler that has the keyboard captured.
2015-07-28 14:35:09 -05:00
Leland Lucius
3fe146f306 Merge remote-tracking branch 'upstream/master' into wx3 2015-07-19 18:00:02 -05: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
1f9113f5cc Label track event handler does not directly use zoom (pps) values 2015-07-19 11:44:07 -04:00
Leland Lucius
9b9c8cc073 Round 5 of wx3 changes
FileDialog now complete on Linux.  Needs some fine tuning on
Windows and OSX.
Builds with wx3 and gtk2 or gtk3.
Still more effect work to do.
2015-07-14 23:33:53 -05:00
Leland Lucius
d1f66d768f Updates for wx3
A long way to go yet, but many OSX issues fixed including
conversion of Audio Unit effects.
2015-06-30 11:25:32 -05:00