James Crook
7030c9fc4f
More doxygen
2018-11-03 13:18:26 +00:00
Paul Licameli
26abe0255d
Precautions also in TrackIterRange::StaringWith() as in EndingAfter()
2018-10-30 11:37:08 -04:00
Paul Licameli
74a360f682
Bug2020: Fix sync-lock groupings
2018-10-30 10:54:37 -04:00
Paul Licameli
793949aa29
more comments about TrackIterRange operators
2018-10-30 09:32:29 -04:00
Paul Licameli
3be57fce49
Bug2015: crash repeatedly append-recording with sync-lock on
2018-10-29 20:35:45 -04:00
Paul Licameli
cda9715ce6
Fix TrackList event propagation
2018-10-27 21:26:07 -04:00
Paul Licameli
2741d58880
TrackList emits more events for certain changes of state of tracks...
...
... Also rewrote some of the existing event handling so all events from
TrackList are of the same, custom event class, and distinguishing addition
from resizing events, though this distinction is not yet used
2018-10-27 11:31:42 -04:00
Paul Licameli
75918918c4
Correct template parameters to std::iterator base of TrackIter...
...
... so that std::reverse_iterator<TrackIter<T>> works right, not making a
subtle error of return of reference to a temporary in its operator * with some
compilers.
2018-10-03 22:47:21 -04:00
Paul Licameli
32d767c7f5
Track::SetLinked() and Track::SetChannel() are private...
...
... but class WaveTrack needs to invoke SetLinked still during project load
2018-10-01 13:42:36 -04:00
Paul Licameli
7e6a543473
Define TrackList::GroupChannels()
2018-10-01 13:42:35 -04:00
Paul Licameli
2ee87082cb
Track::GetLink and GetLinked are private, but SetLinked isn't yet
2018-10-01 13:42:34 -04:00
Paul Licameli
b36c3efec1
Track::GetKind is private
2018-10-01 13:42:34 -04:00
Paul Licameli
b5f52e7c1c
Remove old style track iterator classes
2018-10-01 13:42:34 -04:00
Paul Licameli
b94e8fec96
Remove VisibleTrackIterator
2018-10-01 11:20:52 -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
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
34cc1ff577
Rename, rewrite, and simplify use of FindPendingChangedTrack
2018-09-13 13:56:47 -04:00
Paul Licameli
4b950927b5
TrackList::GetGroupHeight is const
2018-09-13 09:53:48 -04:00
James Crook
0ce83abbfb
Bug 1940 - Clicky play when adjusting Pan or Volume TCP controls
2018-08-24 22:30:20 +01:00
Paul Licameli
7f84e71324
Context menu handling is also in CellularPanel
2018-08-05 14:02:55 -04:00
Paul Licameli
35a97e09e7
Group arguments to StartStream, and a bit less of #ifdef for MIDI play...
...
... And pull choice of tracks and options out of DoRecord
2018-05-29 00:22:12 -04:00
Paul Licameli
4474dec9c2
Fix more hassle from the MSVC STL implementation.
2018-02-28 05:14:21 -05:00
Paul Licameli
bab8ea8393
Thanks for nothing, MSVC std::list<T>::iterator implementation...
...
... I worked around the unhelpful helps that made gratuitous runtime errors,
in debug builds but not in release.
2018-02-23 14:58:12 -05:00
Paul Licameli
080dd34e61
Get rid of wx object arrays, use std::vector
2018-02-21 19:33:27 -05:00
Paul Licameli
2fbe04eda0
Replace more Connect with Bind; needed redeclaration of custom events
2018-02-21 19:30:40 -05:00
Paul Licameli
e0d826a542
Prohibit copy of TrackList, no longer needed; allow swap and move
2018-02-21 19:21:01 -05:00
Paul Licameli
539e870302
Add machinery to TrackList for pending changes to tracks
2018-02-21 19:20:56 -05:00
Paul Licameli
33cfd92c0a
Define TrackId to identify tracks across undo states
2018-02-21 19:20:56 -05:00
Paul Licameli
3f05063681
Split "Do" functions out of the "Set" functions for some Track settings
2018-02-21 19:20:55 -05:00
Paul Licameli
242e9a5668
Some reimplementation of track iterators and GetLink() ...
...
... avoiding direct usage of the inherited end() and of the increment and
decrement of the std::list iterators
2018-02-21 19:20:55 -05:00
Paul Licameli
4ef8da8f16
Revert "Preliminaries to support better interaction of undo and recording"
...
This reverts commit 6e75ae58ac56d9c94af5a4ce97951f627808473a, reversing
changes made to 714d53e00f803643131bb775858ac930b39dd5b8.
2018-01-14 21:36:33 -05:00
Paul Licameli
950898dcb9
Revert "Bug 1823: Better interaction of undo and record..."
...
This reverts commit 1e8aba968da56374d74fb5589caa56caf5fe1283, reversing
changes made to 6e75ae58ac56d9c94af5a4ce97951f627808473a.
2018-01-14 21:27:41 -05:00
Paul Licameli
2409d46d4c
Prohibit copy of TrackList, no longer needed; allow swap and move
2018-01-14 19:33:39 -05:00
Paul Licameli
ce5a67a9e9
Iterate over the pending tracks for drawing
2018-01-14 19:04:03 -05:00
Paul Licameli
a0c3a4b43c
Add machinery to TrackList for pending changes to tracks
2018-01-14 19:03:57 -05:00
Paul Licameli
bd2c7e6abc
Define TrackId to identify tracks across undo states
2018-01-14 19:03:54 -05:00
Paul Licameli
8b60e7f02d
Split "Do" functions out of the "Set" functions for some Track settings
2018-01-14 19:03:52 -05:00
Paul Licameli
92ba1f10e1
Some reimplementation of track iterators and GetLink() ...
...
... avoiding direct usage of the inherited end() and of the increment and
decrement of the std::list iterators
2018-01-14 19:03:50 -05:00
Paul Licameli
0265b8792d
More stl idiom for TrackList and its iterators
2018-01-14 16:58:19 -05:00
Paul Licameli
a30defe8ca
Redo "Provide STL idiom for iterating tracks..." ...
...
... Being careful not to use operator == on a default-constructed
std::list::iterator, which violates assertions in the MSVC libraries.
This reverts commit 7fb5ec4b7ab4f9302bd94446db86924cd2b8d67f.
2018-01-14 14:25:02 -05:00
James Crook
7fb5ec4b7a
Revert "Provide STL idiom for iterating tracks..."
...
Unsafe on MSVC 2013.
2018-01-14 14:24:21 +00:00
Paul Licameli
f9dab3679c
Provide STL idiom for iterating tracks...
...
... and require qualified name access to use the underlying std::list iterators
that return shared_ptr to Track.
Which should not be done very much outside of class TrackList, but a few
places need it.
2018-01-13 19:37:05 -05:00