1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-02-09 21:22:05 +01:00

Reimplement Track::Pointer using std::enable_shared_from_this...

... now the Track need not be owned yet by a TrackList
This commit is contained in:
Paul Licameli
2018-11-18 20:50:24 -05:00
parent 3dba70120c
commit 6f89c48873
19 changed files with 74 additions and 73 deletions

View File

@@ -42,7 +42,7 @@ void SelectionState::SelectTrack(
channel->SetSelected(selected);
if (updateLastPicked)
mLastPickedTrack = Track::Pointer( &track );
mLastPickedTrack = track.SharedPointer();
//The older code below avoids an anchor on an unselected track.
@@ -92,11 +92,11 @@ void SelectionState::ChangeSelectionOnShiftClick
// If our track is at or after the first, extend from the first.
if( pFirst && track.GetIndex() >= pFirst->GetIndex() )
pExtendFrom = Track::Pointer( pFirst );
pExtendFrom = pFirst->SharedPointer();
// Our track was earlier than the first. Extend from the last.
if( !pExtendFrom )
pExtendFrom = Track::Pointer( *trackRange.rbegin() );
pExtendFrom = (*trackRange.rbegin())->SharedPointer();
}
SelectNone( tracks );