Audacity 3.2.0
NoteTrackVRulerControls.h
Go to the documentation of this file.
1/**********************************************************************
2
3Audacity: A Digital Audio Editor
4
5NoteTrackVRulerControls.h
6
7Paul Licameli split from TrackPanel.cpp
8
9**********************************************************************/
10
11#ifndef __AUDACITY_NOTE_TRACK_VRULER_CONTROLS__
12#define __AUDACITY_NOTE_TRACK_VRULER_CONTROLS__
13
14#include "../../../ui/ChannelVRulerControls.h"
15
17
19{
22
23public:
24 explicit
25 NoteTrackVRulerControls(const std::shared_ptr<ChannelView> &pChannelView)
26 : ChannelVRulerControls{ pChannelView } {}
28
29 std::vector<UIHandlePtr> HitTest
30 (const TrackPanelMouseState &state,
31 const AudacityProject *pProject) override;
32
33 unsigned HandleWheelRotation
34 (const TrackPanelMouseEvent &event,
35 AudacityProject *pProject) override;
36
37private:
38 // TrackPanelDrawable implementation
39 void Draw(
41 const wxRect &rect, unsigned iPass ) override;
42
43 // ChannelVRulerControls implementation
44 void UpdateRuler( const wxRect &rect ) override;
45
46 std::weak_ptr<NoteTrackVZoomHandle> mVZoomHandle;
47};
48
49#endif
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Definition: Project.h:90
void Draw(TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override
NoteTrackVRulerControls(const std::shared_ptr< ChannelView > &pChannelView)
std::weak_ptr< NoteTrackVZoomHandle > mVZoomHandle
std::vector< UIHandlePtr > HitTest(const TrackPanelMouseState &state, const AudacityProject *pProject) override
NoteTrackVRulerControls & operator=(const NoteTrackVRulerControls &)=delete
void UpdateRuler(const wxRect &rect) override
NoteTrackVRulerControls(const NoteTrackVRulerControls &)=delete
unsigned HandleWheelRotation(const TrackPanelMouseEvent &event, AudacityProject *pProject) override