Audacity  2.2.0
WaveTrackVZoomHandle Class Reference

#include <WaveTrackVZoomHandle.h>

Inheritance diagram for WaveTrackVZoomHandle:
UIHandle

Public Member Functions

 WaveTrackVZoomHandle (const std::shared_ptr< WaveTrack > &pTrack, const wxRect &rect, int y)
 
WaveTrackVZoomHandleoperator= (const WaveTrackVZoomHandle &)=default
 
virtual ~WaveTrackVZoomHandle ()
 
std::shared_ptr< WaveTrackGetTrack () const
 
void Enter (bool forward) override
 
Result Click (const TrackPanelMouseEvent &event, AudacityProject *pProject) override
 
Result Drag (const TrackPanelMouseEvent &event, AudacityProject *pProject) override
 
HitTestPreview Preview (const TrackPanelMouseState &state, const AudacityProject *pProject) override
 
Result Release (const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
 
Result Cancel (AudacityProject *pProject) override
 
void DrawExtras (DrawingPass pass, wxDC *dc, const wxRegion &updateRegion, const wxRect &panelRect) override
 
- Public Member Functions inherited from UIHandle
virtual ~UIHandle ()=0
 
virtual bool HasRotation () const
 
virtual bool Rotate (bool forward)
 
virtual bool HasEscape () const
 
virtual bool Escape ()
 
virtual bool StopsOnKeystroke ()
 
virtual void OnProjectChange (AudacityProject *pProject)
 
Result GetChangeHighlight () const
 
void SetChangeHighlight (Result val)
 

Static Public Member Functions

static void DoZoom (AudacityProject *pProject, WaveTrack *pTrack, bool shiftDown, bool rightUp, const wxRect &rect, int zoomStart, int zoomEnd, bool fixedMousePoint)
 
- Static Public Member Functions inherited from UIHandle
static UIHandle::Result NeedChangeHighlight (const UIHandle &, const UIHandle &)
 

Private Member Functions

 WaveTrackVZoomHandle (const WaveTrackVZoomHandle &)
 

Static Private Member Functions

static HitTestPreview HitPreview (const wxMouseState &state)
 

Private Attributes

std::weak_ptr< WaveTrackmpTrack
 
int mZoomStart {}
 
int mZoomEnd {}
 
wxRect mRect {}
 

Additional Inherited Members

- Public Types inherited from UIHandle
enum  DrawingPass { Cells, Panel }
 
using Result = unsigned
 
using Cell = TrackPanelCell
 
- Protected Attributes inherited from UIHandle
Result mChangeHighlight { 0 }
 

Constructor & Destructor Documentation

WaveTrackVZoomHandle::WaveTrackVZoomHandle ( const WaveTrackVZoomHandle )
private
WaveTrackVZoomHandle::WaveTrackVZoomHandle ( const std::shared_ptr< WaveTrack > &  pTrack,
const wxRect &  rect,
int  y 
)
explicit
WaveTrackVZoomHandle::~WaveTrackVZoomHandle ( )
virtual

Member Function Documentation

UIHandle::Result WaveTrackVZoomHandle::Cancel ( AudacityProject pProject)
overridevirtual

Implements UIHandle.

References RefreshCode::RefreshAll.

UIHandle::Result WaveTrackVZoomHandle::Click ( const TrackPanelMouseEvent event,
AudacityProject pProject 
)
overridevirtual

Implements UIHandle.

References RefreshCode::RefreshNone.

void WaveTrackVZoomHandle::DrawExtras ( DrawingPass  pass,
wxDC *  dc,
const wxRegion &  updateRegion,
const wxRect &  panelRect 
)
overridevirtual

Reimplemented from UIHandle.

References UIHandle::Cells, and TrackVRulerControls::DrawZooming().

void WaveTrackVZoomHandle::Enter ( bool  forward)
overridevirtual

Reimplemented from UIHandle.

References UIHandle::mChangeHighlight, and RefreshCode::RefreshCell.

std::shared_ptr<WaveTrack> WaveTrackVZoomHandle::GetTrack ( ) const
inline

References mpTrack.

HitTestPreview WaveTrackVZoomHandle::HitPreview ( const wxMouseState &  state)
staticprivate

References _(), and MakeCursor().

WaveTrackVZoomHandle& WaveTrackVZoomHandle::operator= ( const WaveTrackVZoomHandle )
default
HitTestPreview WaveTrackVZoomHandle::Preview ( const TrackPanelMouseState state,
const AudacityProject pProject 
)
overridevirtual

Implements UIHandle.

References TrackPanelMouseState::state.

Member Data Documentation

std::weak_ptr<WaveTrack> WaveTrackVZoomHandle::mpTrack
private

Referenced by GetTrack().

wxRect WaveTrackVZoomHandle::mRect {}
private
int WaveTrackVZoomHandle::mZoomEnd {}
private
int WaveTrackVZoomHandle::mZoomStart {}
private

The documentation for this class was generated from the following files: