Audacity 3.2.0
TimeTrackView.h
Go to the documentation of this file.
1/**********************************************************************
2
3Audacity: A Digital Audio Editor
4
5TimeTrackView.h
6
7Paul Licameli split from class TimeTrack
8
9**********************************************************************/
10
11#ifndef __AUDACITY_TIME_TRACK_VIEW__
12#define __AUDACITY_TIME_TRACK_VIEW__
13
14#include "../../ui/CommonChannelView.h"
15
16class EnvelopeHandle;
17
18class TimeTrackView final : public CommonChannelView
19{
20 TimeTrackView( const TimeTrackView& ) = delete;
22
23public:
24 explicit TimeTrackView(const std::shared_ptr<Channel> &pChannel);
25 ~TimeTrackView() override;
26
27 std::shared_ptr<ChannelVRulerControls> DoGetVRulerControls() override;
28
29private:
30
31 std::vector<UIHandlePtr> DetailedHitTest
32 (const TrackPanelMouseState &state,
33 const AudacityProject *pProject, int currentTool, bool bMultiTool)
34 override;
35
36 std::weak_ptr<EnvelopeHandle> mEnvelopeHandle;
37
38 // TrackPanelDrawable implementation
39 void Draw(
41 const wxRect &rect, unsigned iPass ) override;
42};
43
44#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
Implements some hit-testing shared by many ChannelView subtypes.
~TimeTrackView() override
TimeTrackView & operator=(const TimeTrackView &)=delete
std::weak_ptr< EnvelopeHandle > mEnvelopeHandle
Definition: TimeTrackView.h:36
std::vector< UIHandlePtr > DetailedHitTest(const TrackPanelMouseState &state, const AudacityProject *pProject, int currentTool, bool bMultiTool) override
void Draw(TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override
std::shared_ptr< ChannelVRulerControls > DoGetVRulerControls() override
TimeTrackView(const TimeTrackView &)=delete