Audacity  3.0.3
AffordanceHandle.h
Go to the documentation of this file.
1 /*!********************************************************************
2 *
3  Audacity: A Digital Audio Editor
4 
5  AffordanceHandle.h
6 
7  Vitaly Sverchinsky
8 
9  **********************************************************************/
10 
11 #pragma once
12 
13 #include "TimeShiftHandle.h"
14 
15 class AUDACITY_DLL_API AffordanceHandle : public TimeShiftHandle
16 {
17  static HitTestPreview HitPreview(const AudacityProject*, bool unsafe, bool moving);
18 public:
19 
20  void Enter(bool forward, AudacityProject* pProject) override;
21  HitTestPreview Preview(const TrackPanelMouseState& mouseState, AudacityProject* pProject) override;
22 
23  AffordanceHandle(const std::shared_ptr<Track>& track);
24 
25  Result Click(const TrackPanelMouseEvent& evt, AudacityProject* pProject) override;
26  Result Release(const TrackPanelMouseEvent& event, AudacityProject* pProject, wxWindow* pParent) override;
27 
28 protected:
29  virtual Result SelectAt(const TrackPanelMouseEvent& event, AudacityProject* pProject) = 0;
30 };
TimeShiftHandle.h
AffordanceHandle::SelectAt
virtual Result SelectAt(const TrackPanelMouseEvent &event, AudacityProject *pProject)=0
TimeShiftHandle::Enter
void Enter(bool forward, AudacityProject *) override
Definition: TimeShiftHandle.cpp:53
AffordanceHandle
Definition: AffordanceHandle.h:16
UIHandle::Result
unsigned Result
Definition: UIHandle.h:38
TimeShiftHandle::HitPreview
static HitTestPreview HitPreview(const AudacityProject *pProject, bool unsafe)
Definition: TimeShiftHandle.cpp:61
TimeShiftHandle::Release
Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent) override
Definition: TimeShiftHandle.cpp:956
TimeShiftHandle::Preview
HitTestPreview Preview(const TrackPanelMouseState &state, AudacityProject *pProject) override
Definition: TimeShiftHandle.cpp:947
HitTestPreview
Definition: HitTestResult.h:20
TimeShiftHandle
Definition: TimeShiftHandle.h:262
AudacityProject
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Definition: Project.h:92
TrackPanelMouseEvent
Definition: TrackPanelMouseEvent.h:46
TrackPanelMouseState
Definition: TrackPanelMouseEvent.h:28
TimeShiftHandle::Click
Result Click(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
Definition: TimeShiftHandle.cpp:496