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