16#include "../../../../RefreshCode.h"
17#include "../../../../TrackPanelMouseEvent.h"
32 if (event.
event.GetButton() != wxMOUSE_BTN_LEFT)
39 auto affordanceControl = std::dynamic_pointer_cast<WaveTrackAffordanceControls>(event.
pCell);
41 if (affordanceControl)
43 result |= affordanceControl->OnAffordanceClick(event,
project);
44 if (!event.
event.GetSkipped())
46 event.event.Skip(
false);
55 viewInfo.selectedRegion.setTimes(
mTarget->GetPlayStartTime(),
mTarget->GetPlayEndTime());
72 if (event.
event.RightUp())
73 result |=
event.pCell->DoContextMenu(event.
rect, pParent,
nullptr, pProject);
Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
Result Click(const TrackPanelMouseEvent &evt, AudacityProject *pProject) override
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
static PitchAndSpeedDialog & Get(AudacityProject &project)
void TryRetarget(const TrackPanelMouseEvent &event)
void ModifyState(bool bWantsAutoSave)
static ProjectHistory & Get(AudacityProject &project)
static ViewInfo & Get(AudacityProject &project)
static bool ClipDetailsVisible(const ClipTimes &clip, const ZoomInfo &zoomInfo, const wxRect &viewRect)
bool HandlesRightClick() override
Whether the handle has any special right-button handling.
std::shared_ptr< ClipTimes > mTarget
WaveTrackAffordanceHandle(const std::shared_ptr< Track > &track, const std::shared_ptr< ClipTimes > &target)
Result Click(const TrackPanelMouseEvent &event, AudacityProject *project) override
UIHandle::Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
UIHandle::Result SelectAt(const TrackPanelMouseEvent &event, AudacityProject *project) override
std::shared_ptr< TrackPanelCell > pCell