Audacity 3.2.0
SpectrumVRulerControls.h
Go to the documentation of this file.
1/**********************************************************************
2
3Audacity: A Digital Audio Editor
4
5SpectrumVRulerControls.h
6
7Paul Licameli split from WaveChannelVRulerControls.h
8
9**********************************************************************/
10
11#ifndef __AUDACITY_SPECTRUM_VRULER_CONTROLS__
12#define __AUDACITY_SPECTRUM_VRULER_CONTROLS__
13
14#include "../../../ui/ChannelVRulerControls.h" // to inherit
15
16class WaveTrack;
18
20{
23
24public:
25 explicit
26 SpectrumVRulerControls(const std::shared_ptr<ChannelView> &pChannelView)
27 : ChannelVRulerControls{ pChannelView } {}
29
30 std::vector<UIHandlePtr> HitTest(
31 const TrackPanelMouseState &state,
32 const AudacityProject *) override;
33
34 unsigned HandleWheelRotation(
35 const TrackPanelMouseEvent &event,
36 AudacityProject *pProject) override;
37 static unsigned DoHandleWheelRotation(
38 const TrackPanelMouseEvent &evt, AudacityProject *pProject,
39 WaveTrack *wt);
40
41private:
42 // TrackPanelDrawable implementation
43 void Draw(
45 const wxRect &rect, unsigned iPass ) override;
46
47 // ChannelVRulerControls implementation
48 void UpdateRuler( const wxRect &rect ) override;
49
50 static void DoUpdateVRuler(const wxRect &rect, const WaveTrack *wt);
51
52 std::weak_ptr<SpectrumVZoomHandle> mVZoomHandle;
53};
54
55#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
SpectrumVRulerControls & operator=(const SpectrumVRulerControls &)=delete
static void DoUpdateVRuler(const wxRect &rect, const WaveTrack *wt)
std::weak_ptr< SpectrumVZoomHandle > mVZoomHandle
static unsigned DoHandleWheelRotation(const TrackPanelMouseEvent &evt, AudacityProject *pProject, WaveTrack *wt)
unsigned HandleWheelRotation(const TrackPanelMouseEvent &event, AudacityProject *pProject) override
void UpdateRuler(const wxRect &rect) override
~SpectrumVRulerControls() override
std::vector< UIHandlePtr > HitTest(const TrackPanelMouseState &state, const AudacityProject *) override
SpectrumVRulerControls(const SpectrumVRulerControls &)=delete
void Draw(TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override
SpectrumVRulerControls(const std::shared_ptr< ChannelView > &pChannelView)
A Track that contains audio waveform data.
Definition: WaveTrack.h:227