mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-19 09:30:06 +02:00
Use a static unique_ptr for the global clipboard
This commit is contained in:
parent
c5a70126eb
commit
7d1ea7b82e
@ -3999,7 +3999,7 @@ void AudacityProject::OnPaste()
|
||||
double t1 = mViewInfo.selectedRegion.t1();
|
||||
|
||||
TrackListIterator iter(mTracks);
|
||||
TrackListIterator clipIter(msClipboard);
|
||||
TrackListIterator clipIter(msClipboard.get());
|
||||
|
||||
Track *n = iter.First();
|
||||
Track *c = clipIter.First();
|
||||
@ -4139,7 +4139,7 @@ void AudacityProject::OnPaste()
|
||||
// selected tracks.
|
||||
if ( n && !c )
|
||||
{
|
||||
TrackListOfKindIterator clipWaveIter(Track::Wave, msClipboard);
|
||||
TrackListOfKindIterator clipWaveIter(Track::Wave, msClipboard.get());
|
||||
c = clipWaveIter.Last();
|
||||
|
||||
while (n) {
|
||||
@ -4246,7 +4246,7 @@ bool AudacityProject::HandlePasteNothingSelected()
|
||||
return false;
|
||||
else
|
||||
{
|
||||
TrackListIterator iterClip(msClipboard);
|
||||
TrackListIterator iterClip(msClipboard.get());
|
||||
Track* pClip = iterClip.First();
|
||||
if (!pClip)
|
||||
return true; // nothing to paste
|
||||
|
@ -164,7 +164,7 @@ scroll information. It also has some status flags.
|
||||
|
||||
#include "../images/AudacityLogoAlpha.xpm"
|
||||
|
||||
TrackList *AudacityProject::msClipboard = new TrackList();
|
||||
std::unique_ptr<TrackList> AudacityProject::msClipboard{ safenew TrackList() };
|
||||
double AudacityProject::msClipT0 = 0.0;
|
||||
double AudacityProject::msClipT1 = 0.0;
|
||||
AudacityProject *AudacityProject::msClipProject = NULL;
|
||||
@ -4166,17 +4166,13 @@ void AudacityProject::UpdateMixerBoard()
|
||||
//static
|
||||
TrackList *AudacityProject::GetClipboardTracks()
|
||||
{
|
||||
return msClipboard;
|
||||
return msClipboard.get();
|
||||
}
|
||||
|
||||
//static
|
||||
void AudacityProject::DeleteClipboard()
|
||||
{
|
||||
if (msClipboard) {
|
||||
msClipboard->Clear();
|
||||
delete msClipboard;
|
||||
msClipboard = NULL;
|
||||
}
|
||||
msClipboard.reset();
|
||||
}
|
||||
|
||||
//static
|
||||
|
@ -549,7 +549,7 @@ public:
|
||||
TrackList *mLastSavedTracks;
|
||||
|
||||
// Clipboard (static because it is shared by all projects)
|
||||
static TrackList *msClipboard;
|
||||
static std::unique_ptr<TrackList> msClipboard;
|
||||
static AudacityProject *msClipProject;
|
||||
static double msClipT0;
|
||||
static double msClipT1;
|
||||
|
Loading…
x
Reference in New Issue
Block a user