11#ifndef __AUDACITY_STRETCH_HANDLE__
12#define __AUDACITY_STRETCH_HANDLE__
14#include "../../../../UIHandle.h"
60 (
const std::shared_ptr<NoteTrack> &pTrack,
66 (std::weak_ptr<StretchHandle> &holder,
68 const std::shared_ptr<NoteTrack> &pTrack );
72 std::shared_ptr<const Track>
FindTrack()
const override;
86 wxWindow *pParent)
override;
97 int trackLeftEdge,
Channel *pChannel);
std::shared_ptr< UIHandle > UIHandlePtr
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
A Track that is used for Midi notes. (Somewhat old code).
Result Click(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
Result Drag(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
StretchState mStretchState
static double GetT0(const Track &track, const ViewInfo &viewInfo)
bool StopsOnKeystroke() override
std::shared_ptr< NoteTrack > mpTrack
static double GetT1(const Track &track, const ViewInfo &viewInfo)
Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
std::shared_ptr< const Track > FindTrack() const override
HitTestPreview Preview(const TrackPanelMouseState &state, AudacityProject *pProject) override
StretchHandle(const StretchHandle &)
static HitTestPreview HitPreview(StretchEnum stretchMode, bool unsafe)
static UIHandlePtr HitTest(std::weak_ptr< StretchHandle > &holder, const TrackPanelMouseState &state, const AudacityProject *pProject, const std::shared_ptr< NoteTrack > &pTrack)
StretchHandle & operator=(const StretchHandle &)=default
void Stretch(AudacityProject *pProject, int mouseXCoordinate, int trackLeftEdge, Channel *pChannel)
Result Cancel(AudacityProject *pProject) override
Abstract base class for an object holding data associated with points on a time axis.
Short-lived drawing and event-handling object associated with a TrackPanelCell.
QuantizedTimeAndBeat mBeatCenter
QuantizedTimeAndBeat mBeat0
double mOrigSel1Quantized
QuantizedTimeAndBeat mBeat1
double mOrigSel0Quantized
std::pair< double, double > QuantizedTimeAndBeat