11#ifndef __AUDACITY_ZOOM_HANDLE__
12#define __AUDACITY_ZOOM_HANDLE__
14#include "../../UIHandle.h"
31 (std::weak_ptr<ZoomHandle> &holder);
33 (std::weak_ptr<ZoomHandle> &holder,
const wxMouseState &state);
37 std::shared_ptr<const Track>
FindTrack()
const override;
53 wxWindow *pParent)
override;
62 const wxRect &rect,
unsigned iPass )
override;
66 const wxRect &rect,
const wxRect &panelRect,
unsigned iPass )
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...
Short-lived drawing and event-handling object associated with a TrackPanelCell.
Result Click(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
ZoomHandle & operator=(const ZoomHandle &)=default
Result Cancel(AudacityProject *pProject) override
bool IsDragZooming() const
Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
static UIHandlePtr HitAnywhere(std::weak_ptr< ZoomHandle > &holder)
HitTestPreview Preview(const TrackPanelMouseState &state, AudacityProject *pProject) override
ZoomHandle(const ZoomHandle &)=delete
bool HandlesRightClick() override
Whether the handle has any special right-button handling.
static HitTestPreview HitPreview(const wxMouseState &state, const AudacityProject *pProject)
std::shared_ptr< const Track > FindTrack() const override
void Draw(TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override
static UIHandlePtr HitTest(std::weak_ptr< ZoomHandle > &holder, const wxMouseState &state)
Result Drag(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
wxRect DrawingArea(TrackPanelDrawingContext &, const wxRect &rect, const wxRect &panelRect, unsigned iPass) override