11#ifndef __AUDACITY_ENVELOPE_HANDLE__
12#define __AUDACITY_ENVELOPE_HANDLE__
14#include "../../UIHandle.h"
33 (std::weak_ptr<EnvelopeHandle> &holder,
34 const wxMouseState &state,
const wxRect &rect,
36 Envelope *envelope,
float zoomMin,
float zoomMax,
37 bool dB,
float dBRange,
bool timeTrack);
48 (std::weak_ptr<EnvelopeHandle> &holder,
Envelope *envelope,
51 (std::weak_ptr<EnvelopeHandle> &holder,
52 const wxMouseState &state,
const wxRect &rect,
55 (std::weak_ptr<EnvelopeHandle> &holder,
56 const wxMouseState &state,
const wxRect &rect,
75 wxWindow *pParent)
override;
82 bool ForwardEventToEnvelopes
83 (
const wxMouseEvent &event,
const ViewInfo &viewInfo);
87 float mLower{}, mUpper{};
std::shared_ptr< UIHandle > UIHandlePtr
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
std::vector< std::unique_ptr< EnvelopeEditor > > mEnvelopeEditors
EnvelopeHandle & operator=(const EnvelopeHandle &)=delete
Envelope * GetEnvelope() const
EnvelopeHandle(const EnvelopeHandle &)=delete
bool StopsOnKeystroke() override
EnvelopeHandle(EnvelopeHandle &&)=default
EnvelopeHandle & operator=(EnvelopeHandle &&)=default
Piecewise linear or piecewise exponential function from double to double.
A kind of Track used to 'warp time'.
Short-lived drawing and event-handling object associated with a TrackPanelCell.
virtual void Enter(bool forward, AudacityProject *pProject)
virtual Result Drag(const TrackPanelMouseEvent &event, AudacityProject *pProject)=0
virtual Result Release(const TrackPanelMouseEvent &event, AudacityProject *pProject, wxWindow *pParent)=0
virtual HitTestPreview Preview(const TrackPanelMouseState &state, AudacityProject *pProject)=0
virtual Result Cancel(AudacityProject *pProject)=0
virtual Result Click(const TrackPanelMouseEvent &event, AudacityProject *pProject)=0
A Track that contains audio waveform data.