Paul Licameli
1e32309d24
Rewrite MenuCommandHandler::HandleAlign
2018-10-01 11:19:18 -04:00
Paul Licameli
b6a6b8e73e
Rewrite iterations over sync-lock groups
2018-10-01 11:09:20 -04:00
Paul Licameli
bb3aa00f50
Effect::CopyInputTracks was only called with two values...
...
So now it simply takes a bool.
2018-10-01 11:06:31 -04:00
Paul Licameli
2e11844f6a
Effect::inputTracks() now gives only const access
2018-10-01 10:59:48 -04:00
Paul Licameli
1be3187b99
Use TrackIterRange::Visit
2018-10-01 10:59:24 -04:00
Paul Licameli
17089d03bf
Rewrite MenuCommandHandler::OnPaste with TypeSwitch and new iterators
2018-10-01 10:59:09 -04:00
Paul Licameli
51842fc78b
Use TypeSwitch and track_cast
2018-10-01 10:58:47 -04:00
Paul Licameli
fd10ed26cd
Use TypeSwitch and track_cast in TrackPanel
2018-10-01 10:58:33 -04:00
Paul Licameli
e17c4acd5d
Rewrite sorting of tracks
2018-10-01 10:54:37 -04:00
Paul Licameli
1a59ba6331
Simplify some internals of TrackList, don't assume at most 2 channels
2018-10-01 10:54:14 -04:00
Paul Licameli
7ec734b087
Rewrite TrackList::SwapNodes without GetLink(ed)
2018-10-01 10:54:04 -04:00
Paul Licameli
05ddfaf82b
Remove TrackList::Select
2018-10-01 10:47:51 -04:00
Paul Licameli
5c6fd64a0e
TrackList::GetPrev and ::GetNext are private
2018-10-01 10:44:58 -04:00
Paul Licameli
a0e15cfbbd
Remove TrackListIterator::RemoveCurrent
2018-10-01 10:42:02 -04:00
Paul Licameli
89748cbe3c
Remove "skiplinked" argument of old track iterators
2018-10-01 10:35:46 -04:00
Paul Licameli
52848e4483
Define Track::TypeSwitch for type-safe dispatching
2018-10-01 10:32:48 -04:00
Paul Licameli
a3cdb08ee0
Classes and functions for type-safe iteration over tracks
2018-09-29 22:17:55 -04:00
Paul Licameli
6a9f9d7899
Define track_cast, like dynamic_cast...
...
... but perhaps faster using our custom type-query method.
2018-09-29 21:41:47 -04:00
Paul Licameli
6930b63192
Redo track kind as an enum class defined at global scope
2018-09-29 21:41:47 -04:00
James Crook
e7c4e8bde9
Help intellisense find MenuCommandHandlers
...
Once the struct definition is in the Menus.h file, intellisense can find the definitions of the functions.
2018-09-29 22:56:34 +01:00
Paul Licameli
4998a5cea5
Rearrange some logic in TimeShiftHandle::Click
2018-09-29 14:13:30 -04:00
Paul Licameli
68eb24545b
More factoring of TimeShiftHandle::Drag
2018-09-29 14:12:54 -04:00
Paul Licameli
d812513979
More factoring of TimeShiftHandle::Drag
2018-09-29 14:11:50 -04:00
Paul Licameli
fc5f7331d1
More factoring of TimeShiftHandle::Drag
2018-09-29 14:08:40 -04:00
Paul Licameli
aa3c3a8d5a
More factoring of TimeShiftHandle::Drag
2018-09-29 14:07:23 -04:00
Paul Licameli
37b3968dd6
Some factoring of TimeShiftHandle::Drag
2018-09-29 14:06:00 -04:00
Paul Licameli
b79f5d9291
Simplification and better comments relating to time-shift...
...
... fewer switches on USE_MIDI. In fact capturedClipArray is nonempty
whenever capturedClip is not null.
2018-09-29 13:55:34 -04:00
Paul Licameli
4a55b0d0cc
Remove unused functions
2018-09-29 13:55:34 -04:00
Paul Licameli
debf96028e
Provide missing piece of menu refactor, commit 9481587
2018-09-29 13:54:42 -04:00
Paul Licameli
920970c7c0
Enable snapping to other tracks, time-shifting with Shift key down...
...
...It seems that was inadvertently disabled when note tracks were first added.
Also remove unnecessary #ifdef branch.
2018-09-29 13:26:04 -04:00
Paul Licameli
2ff75acffa
Remove transform_iterator and related, no clear need for it yet
2018-09-29 12:58:41 -04:00
Paul Licameli
d6dea3d224
Correct transform_iterator ?
2018-09-29 12:57:57 -04:00
Paul Licameli
7ab97c969c
Use std::numeric_limits<...>::lowest...
...
... not the negation of max(), which is wrong for unsigned types, and not
min(), which gives least normalized positive value for floating point types.
lowest() wasn't available before C++11.
2018-09-29 12:57:53 -04:00
Paul Licameli
e456b53344
Add and remove some private: and public:
2018-09-29 12:48:52 -04:00
Paul Licameli
af06691982
casting of Track* to WaveTrack* happens at lower level in OD manager
2018-09-29 12:46:45 -04:00
Paul Licameli
03dc815aee
Pointer downcasts should use static_cast not reinterpret_cast
2018-09-29 12:46:19 -04:00
Paul Licameli
bba16b3b37
Clarify the logic for drop of channels during playback
2018-09-29 12:45:01 -04:00
Paul Licameli
35f5555216
Track::mChannel has an enum type
2018-09-29 12:42:46 -04:00
Paul Licameli
998556205d
Replace wxWidgets arrays with std::vector
2018-09-29 12:10:28 -04:00
Paul Licameli
7c924012fb
A redundant high-level GuardedCall around macro command execution...
...
... Redundant with the guard already in ApplyAndSendResponse, but this makes it
easier to reason about the exception safety of calls into Audacity from
Nyquist tools.
2018-09-29 12:10:27 -04:00
Paul Licameli
4710d69f4c
Bug1988: Don't lose data in unusual inter-project copy-paste case
2018-09-29 12:10:27 -04:00
Paul Licameli
d852bd3783
Translated time (& freq & bandwidth) formats in numeric controls...
...
... This had been done correctly in the popup menu to change the format, but
not in the control itself.
2018-09-29 12:10:27 -04:00
Paul Licameli
9481587fa8
Move menu handling functions out of class AudacityProject
2018-09-29 12:10:27 -04:00
James Crook
3ed43a9f12
Up version number to 2.3.1
...
Also set AUDACITY_BUILD_LEVEL back to 0.
2018-09-29 15:30:35 +01:00
James Crook
9a45c02002
Bug 1983 residual - A better fix for the residual.
...
The previous fix did not handle the case of the mixer toolbar being smaller than its minimum size.
The new fix does, and the code is simpler.
2018-09-20 15:35:07 +01:00
James Crook
ce31c371b9
Bug 1983 residual - Width of mixer toolbar changes.
2018-09-20 14:33:19 +01:00
James Crook
f07e40a4c0
Bug 1983 - Preference updates do not preserve toolbar widths
2018-09-20 13:16:09 +01:00
James Crook
e4bdd68c70
Bug 1981 - Mac: Background of pan/gain sliders wrong color in Light theme.
2018-09-19 16:48:52 +01:00
David Bailes
42efe53884
Bug 1980: NVDA 2018.3 and check boxes with empty accessibility names
...
Problem. NVDA 2018.3 does not read buttons, check boxes or radio buttons which have empty accessibility names. In fact for Scriptable dialogs which start with a check box with an empty accessibility name, none of the controls in the dialog are read.
This problem is connected with the new Audacity appModule in NVDA 2018.3 which was supplied by Robert and myself. For reasons which aren't immediately obvious, it has a problem when the accessibility name of the object is empty.
Fix: for check boxes which have an empty label, set the accessibility name to "\a", which is non-empty, but not read by screen readers.
Note: If someone ever wanted to have buttons or radio buttons with empty labels, there could be a similar fix. But there is unlikely to be a demand for such controls.
2018-09-18 16:33:26 +01:00
James Crook
6302e9b825
Set AUDACITY_BUILD_LEVEL to 2
2018-09-18 09:50:40 +01:00