11#ifndef __AUDACITY_CUTLINE_HANDLE__
12#define __AUDACITY_CUTLINE_HANDLE__
14#include "../../../../UIHandle.h"
15#include "../../../../WaveTrackLocation.h"
28 (
const std::shared_ptr<WaveTrack> &pTrack,
36 (std::weak_ptr<CutlineHandle> &holder,
37 const wxMouseState &state,
const wxRect &rect,
39 const std::shared_ptr<WaveTrack> &pTrack);
62 wxWindow *pParent)
override;
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...
const WaveTrackLocation & GetLocation()
bool StopsOnKeystroke() override
CutlineHandle(const CutlineHandle &)=delete
static HitTestPreview HitPreview(bool cutline, bool unsafe)
Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
static UIHandlePtr HitAnywhere(const AudacityProject *pProject, bool cutline, UIHandlePtr ptr)
WaveTrackLocation mLocation
CutlineHandle & operator=(const CutlineHandle &)=default
HitTestPreview Preview(const TrackPanelMouseState &state, AudacityProject *pProject) override
std::shared_ptr< WaveTrack > mpTrack
std::shared_ptr< WaveTrack > GetTrack()
Result Drag(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
void Enter(bool forward, AudacityProject *) override
static UIHandlePtr HitTest(std::weak_ptr< CutlineHandle > &holder, const wxMouseState &state, const wxRect &rect, const AudacityProject *pProject, const std::shared_ptr< WaveTrack > &pTrack)
bool HandlesRightClick() override
Whether the handle has any special right-button handling.
Result Click(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
Result Cancel(AudacityProject *pProject) override
Short-lived drawing and event-handling object associated with a TrackPanelCell.
A Track that contains audio waveform data.