![]() |
Audacity 3.2.0
|
#include <WaveTrackView.h>
Public Types | |
using | Display = WaveTrackViewConstants::Display |
using | Type = WaveTrackSubViewType |
![]() | |
enum | : unsigned { DefaultHeight = 150 } |
using | Refinement = std::vector< std::pair< wxCoord, std::shared_ptr< TrackView > > > |
Public Member Functions | |
WaveTrackSubView (WaveTrackView &waveTrackView) | |
virtual const Type & | SubViewType () const =0 |
virtual void | CopyToSubView (WaveTrackSubView *destSubView) const |
std::pair< bool, std::vector< UIHandlePtr > > | DoDetailedHitTest (const TrackPanelMouseState &state, const AudacityProject *pProject, int currentTool, bool bMultiTool, const std::shared_ptr< WaveTrack > &wt) |
![]() | |
std::shared_ptr< TrackPanelCell > | ContextMenuDelegate () override |
std::vector< UIHandlePtr > | HitTest (const TrackPanelMouseState &, const AudacityProject *pProject) final override |
void | TimeShiftHitTest () |
virtual int | GetMinimizedHeight () const override |
TrackView (const std::shared_ptr< Track > &pTrack) | |
![]() | |
TrackView (const std::shared_ptr< Track > &pTrack) | |
virtual | ~TrackView ()=0 |
void | CopyTo (Track &track) const override |
Copy state, for undo/redo purposes. More... | |
bool | GetMinimized () const |
void | SetMinimized (bool minimized) |
int | GetCumulativeHeightBefore () const |
int | GetExpandedHeight () const |
virtual int | GetMinimizedHeight () const =0 |
int | GetHeight () const |
void | SetCumulativeHeightBefore (int y) |
Set cached value dependent on position within the track list. More... | |
void | SetExpandedHeight (int height) |
std::shared_ptr< TrackVRulerControls > | GetVRulerControls () |
std::shared_ptr< const TrackVRulerControls > | GetVRulerControls () const |
virtual std::shared_ptr< CommonTrackCell > | GetAffordanceControls () |
void | WriteXMLAttributes (XMLWriter &) const override |
Serialize persistent attributes. More... | |
bool | HandleXMLAttribute (const std::string_view &attr, const XMLAttributeValueView &valueView) override |
Deserialize an attribute, returning true if recognized. More... | |
virtual Refinement | GetSubViews (const wxRect &rect) |
virtual bool | IsSpectral () const |
virtual void | DoSetMinimized (bool isMinimized) |
![]() | |
CommonTrackCell (const std::shared_ptr< Track > &pTrack) | |
~CommonTrackCell () | |
std::shared_ptr< Track > | DoFindTrack () override |
void | Reparent (const std::shared_ptr< Track > &parent) override |
Object may be shared among tracks but hold a special back-pointer to one of them; reassign it. More... | |
![]() | |
CommonTrackPanelCell () | |
virtual | ~CommonTrackPanelCell ()=0 |
HitTestPreview | DefaultPreview (const TrackPanelMouseState &, const AudacityProject *) override |
std::shared_ptr< Track > | FindTrack () |
std::shared_ptr< const Track > | FindTrack () const |
virtual std::vector< MenuItem > | GetMenuItems (const wxRect &rect, const wxPoint *pPosition, AudacityProject *pProject) |
Return a list of items for DoContextMenu() (empties for separators) More... | |
![]() | |
TrackPanelCell ()=default | |
TrackPanelCell (const TrackPanelCell &) PROHIBITED | |
TrackPanelCell & | operator= (const TrackPanelCell &) PROHIBITED |
virtual | ~TrackPanelCell ()=0 |
virtual HitTestPreview | DefaultPreview (const TrackPanelMouseState &state, const AudacityProject *pProject) |
virtual std::vector< UIHandlePtr > | HitTest (const TrackPanelMouseState &state, const AudacityProject *pProject)=0 |
virtual unsigned | HandleWheelRotation (const TrackPanelMouseEvent &event, AudacityProject *pProject) |
virtual std::shared_ptr< TrackPanelCell > | ContextMenuDelegate () |
virtual unsigned | DoContextMenu (const wxRect &rect, wxWindow *pParent, const wxPoint *pPosition, AudacityProject *pProject) |
virtual unsigned | CaptureKey (wxKeyEvent &event, ViewInfo &viewInfo, wxWindow *pParent, AudacityProject *project) |
virtual unsigned | KeyDown (wxKeyEvent &event, ViewInfo &viewInfo, wxWindow *pParent, AudacityProject *project) |
virtual unsigned | KeyUp (wxKeyEvent &event, ViewInfo &viewInfo, wxWindow *pParent, AudacityProject *project) |
virtual unsigned | Char (wxKeyEvent &event, ViewInfo &viewInfo, wxWindow *pParent, AudacityProject *project) |
virtual unsigned | LoseFocus (AudacityProject *project) |
![]() | |
TrackPanelNode () | |
virtual | ~TrackPanelNode ()=0 |
![]() | |
virtual | ~TrackPanelDrawable ()=0 |
virtual void | Draw (TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) |
virtual wxRect | DrawingArea (TrackPanelDrawingContext &context, const wxRect &rect, const wxRect &panelRect, unsigned iPass) |
![]() | |
virtual | ~TrackAttachment () |
virtual void | CopyTo (Track &track) const |
Copy state, for undo/redo purposes. More... | |
virtual void | Reparent (const std::shared_ptr< Track > &parent) |
Object may be shared among tracks but hold a special back-pointer to one of them; reassign it. More... | |
virtual void | WriteXMLAttributes (XMLWriter &) const |
Serialize persistent attributes. More... | |
virtual bool | HandleXMLAttribute (const std::string_view &attr, const XMLAttributeValueView &valueView) |
Deserialize an attribute, returning true if recognized. More... | |
![]() | |
virtual | ~Base () |
Protected Member Functions | |
std::weak_ptr< WaveTrackView > | GetWaveTrackView () const |
std::vector< MenuItem > | GetMenuItems (const wxRect &rect, const wxPoint *pPosition, AudacityProject *pProject) override |
Return a list of items for DoContextMenu() (empties for separators) More... | |
![]() | |
virtual std::vector< UIHandlePtr > | DetailedHitTest (const TrackPanelMouseState &, const AudacityProject *pProject, int currentTool, bool bMultiTool)=0 |
![]() | |
virtual std::shared_ptr< TrackVRulerControls > | DoGetVRulerControls ()=0 |
![]() | |
virtual std::shared_ptr< Track > | DoFindTrack ()=0 |
unsigned | DoContextMenu (const wxRect &rect, wxWindow *pParent, const wxPoint *pPosition, AudacityProject *pProject) override |
unsigned | HandleWheelRotation (const TrackPanelMouseEvent &event, AudacityProject *pProject) override |
Static Protected Member Functions | |
static void | DrawBoldBoundaries (TrackPanelDrawingContext &context, const WaveTrack *track, const wxRect &rect) |
Private Attributes | |
std::weak_ptr< SubViewCloseHandle > | mCloseHandle |
std::weak_ptr< TrackPanelResizeHandle > | mResizeHandle |
std::weak_ptr< SubViewAdjustHandle > | mAdjustHandle |
std::weak_ptr< SubViewRearrangeHandle > | mRearrangeHandle |
std::weak_ptr< WaveClipTrimHandle > | mClipTrimHandle |
std::weak_ptr< CutlineHandle > | mCutlineHandle |
std::weak_ptr< WaveTrackView > | mwWaveTrackView |
Additional Inherited Members | |
![]() | |
static void | GetEnvelopeValues (const Envelope &env, double aligned_time, double sampleDur, double *buffer, int bufferLen, int leftOffset, const ZoomInfo &zoomInfo) |
Get many envelope points for pixel columns at once, but don't assume uniform time per pixel. More... | |
![]() | |
static int | GetTrackHeight (const Track *pTrack) |
static int | GetChannelGroupHeight (const Track *pTrack) |
static int | GetCumulativeHeight (const Track *pTrack) |
static int | GetTotalHeight (const TrackList &list) |
static TrackView & | Get (Track &) |
static const TrackView & | Get (const Track &) |
static TrackView * | Find (Track *) |
static const TrackView * | Find (const Track *) |
![]() | |
static wxRect | MaximizeWidth (const wxRect &rect, const wxRect &panelRect) |
static wxRect | MaximizeHeight (const wxRect &rect, const wxRect &panelRect) |
![]() | |
std::weak_ptr< TimeShiftHandle > | mTimeShiftHandle |
![]() | |
std::weak_ptr< SelectHandle > | mSelectHandle |
![]() | |
std::shared_ptr< TrackVRulerControls > | mpVRulerControls |
Definition at line 39 of file WaveTrackView.h.
Definition at line 43 of file WaveTrackView.h.
Definition at line 44 of file WaveTrackView.h.
|
explicit |
Definition at line 880 of file WaveTrackView.cpp.
References mwWaveTrackView.
|
virtual |
std::pair< bool, std::vector< UIHandlePtr > > WaveTrackSubView::DoDetailedHitTest | ( | const TrackPanelMouseState & | state, |
const AudacityProject * | pProject, | ||
int | currentTool, | ||
bool | bMultiTool, | ||
const std::shared_ptr< WaveTrack > & | wt | ||
) |
Definition at line 697 of file WaveTrackView.cpp.
References AssignUIHandlePtr(), TrackList::Channels(), WaveTrackView::DoDetailedHitTest(), CutlineHandle::HitTest(), SubViewAdjustHandle::HitTest(), SubViewCloseHandle::HitTest(), SubViewRearrangeHandle::HitTest(), WaveClipTrimHandle::HitTest(), WaveTrackView::kChannelSeparatorThickness, mAdjustHandle, mClipTrimHandle, mCloseHandle, mCutlineHandle, mRearrangeHandle, mResizeHandle, mwWaveTrackView, TrackPanelMouseState::rect, and TrackPanelMouseState::state.
Referenced by SpectrumView::DetailedHitTest(), and WaveformView::DetailedHitTest().
|
staticprotected |
Definition at line 777 of file WaveTrackView.cpp.
References TrackPanelDrawingContext::dc, WaveTrackLocations::Get(), TrackArtist::Get(), CutlineHandle::GetTrack(), AColor::Line(), WaveTrackLocation::locationCutLine, TrackPanelDrawingContext::target, and AColor::uglyPen.
Referenced by SpectrumView::DoDraw(), and WaveformView::DoDraw().
|
overrideprotectedvirtual |
Return a list of items for DoContextMenu() (empties for separators)
If the vector is empty (as in the default), there is no context menu.
Commands are invoked with temporary selection fields of CommandContext set to a point selected region at the mouse pick, and the cell's track.
A function may be given, but if it is null, then the command can be found by name in the CommandManager.
An item in the list with no command name marks a menu separator.
The menu item is enabled only if it contains a true flag, but if looked up in the command manager, it must also satisfy the command manager's conditions.
Reimplemented from CommonTrackPanelCell.
Definition at line 823 of file WaveTrackView.cpp.
References anonymous_namespace{TrackPanel.cpp}::FindTrack(), ViewInfo::Get(), and XO().
|
protected |
Definition at line 818 of file WaveTrackView.cpp.
References mwWaveTrackView.
Referenced by SpectrumView::Draw(), and WaveformView::Draw().
|
pure virtual |
Implemented in SpectrumView, and WaveformView.
Referenced by WaveTrackView::DoSetDisplay(), WaveTrackView::GetDisplays(), and WaveTrackView::ToggleSubView().
|
private |
Definition at line 77 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 79 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 75 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 80 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 78 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 76 of file WaveTrackView.h.
Referenced by DoDetailedHitTest().
|
private |
Definition at line 81 of file WaveTrackView.h.
Referenced by DoDetailedHitTest(), GetWaveTrackView(), and WaveTrackSubView().