1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-08-09 00:21:16 +02:00

Rearrange some logic in TimeShiftHandle::Click

This commit is contained in:
Paul Licameli 2018-09-26 19:48:30 -04:00
parent 68eb24545b
commit 4998a5cea5

View File

@ -373,35 +373,37 @@ UIHandle::Result TimeShiftHandle::Click
clickTime >= viewInfo.selectedRegion.t0() && clickTime >= viewInfo.selectedRegion.t0() &&
clickTime < viewInfo.selectedRegion.t1()); clickTime < viewInfo.selectedRegion.t1());
WaveTrack *wt = pTrack->GetKind() == Track::Wave mClipMoveState.capturedClip = NULL;
? static_cast<WaveTrack*>(pTrack.get()) : nullptr; mClipMoveState.capturedClipArray.clear();
if ((wt bool ok = true;
#ifdef USE_MIDI bool captureClips = false;
|| pTrack->GetKind() == Track::Note
#endif if (!event.ShiftDown()) {
) && !event.ShiftDown()) WaveTrack *wt = pTrack->GetKind() == Track::Wave
{ ? static_cast<WaveTrack*>(pTrack.get()) : nullptr;
#ifdef USE_MIDI if (wt)
if (!wt)
mClipMoveState.capturedClip = nullptr;
else
#endif
{ {
mClipMoveState.capturedClip = wt->GetClipAtX(event.m_x); if (nullptr ==
if (mClipMoveState.capturedClip == NULL) (mClipMoveState.capturedClip = wt->GetClipAtX(event.m_x)))
return Cancelled; ok = false;
else
captureClips = true;
} }
#ifdef USE_MIDI
else if (pTrack->GetKind() == Track::Note)
{
captureClips = true;
}
#endif
}
if ( ! ok )
return Cancelled;
else if ( captureClips )
CreateListOfCapturedClips CreateListOfCapturedClips
( mClipMoveState, viewInfo, *pTrack, *trackList, ( mClipMoveState, viewInfo, *pTrack, *trackList,
pProject->IsSyncLocked(), clickTime ); pProject->IsSyncLocked(), clickTime );
}
else {
// Shift was down, or track was not Wave or Note
mClipMoveState.capturedClip = NULL;
mClipMoveState.capturedClipArray.clear();
}
mSlideUpDownOnly = event.CmdDown() && !multiToolModeActive; mSlideUpDownOnly = event.CmdDown() && !multiToolModeActive;
mRect = rect; mRect = rect;