|
| WaveTrackControls (std::shared_ptr< Track > pTrack) |
|
| ~WaveTrackControls () override |
|
std::vector< UIHandlePtr > | HitTest (const TrackPanelMouseState &state, const AudacityProject *pProject) override |
|
PopupMenuTable * | GetMenuExtension (Track *pTrack) override |
|
const TCPLines & | GetTCPLines () const override |
|
const TCPLines & | GetTCPLines () const override |
|
| TrackControls (std::shared_ptr< Track > pTrack) |
|
| TrackControls (std::shared_ptr< Track > pTrack) |
|
virtual | ~TrackControls ()=0 |
|
virtual const TrackInfo::TCPLines & | GetTCPLines () const =0 |
|
| CommonTrackCell (const std::shared_ptr< Track > &pTrack) |
| Construct from a track. More...
|
|
| ~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 &)=delete |
|
TrackPanelCell & | operator= (const TrackPanelCell &)=delete |
|
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 () |
|
|
static unsigned | DefaultWaveTrackHeight () |
|
static void | GetVolumeRect (const wxRect &rect, wxRect &dest) |
|
static void | GetPanRect (const wxRect &rect, wxRect &dest) |
|
static LWSlider * | VolumeSlider (CellularPanel &panel, const WaveTrack &wt) |
|
static LWSlider * | VolumeSlider (const wxRect &sliderRect, const WaveTrack *t, bool captured, wxWindow *pParent) |
|
static LWSlider * | PanSlider (CellularPanel &panel, const WaveTrack &wt) |
|
static LWSlider * | PanSlider (const wxRect &sliderRect, const WaveTrack *t, bool captured, wxWindow *pParent) |
|
static void | ReCreateSliders () |
|
static const TCPLines & | StaticNoteTCPLines () |
|
static const TCPLines & | StaticWaveTCPLines () |
|
static void | GetMuteSoloRect (const wxRect &rect, wxRect &dest, bool solo, const Track *pTrack) |
|
static void | GetEffectsButtonRect (const wxRect &rect, wxRect &dest, const Track *pTrack) |
|
static TrackControls & | Get (Track &track) |
|
static const TrackControls & | Get (const Track &track) |
|
static wxRect | MaximizeWidth (const wxRect &rect, const wxRect &panelRect) |
|
static wxRect | MaximizeHeight (const wxRect &rect, const wxRect &panelRect) |
|
|
virtual std::vector< UIHandlePtr > | HitTest (const TrackPanelMouseState &state, const AudacityProject *) override=0 |
|
unsigned | DoContextMenu (const wxRect &rect, wxWindow *pParent, const wxPoint *pPosition, AudacityProject *pProject) override |
|
virtual PopupMenuTable * | GetMenuExtension (Track *pTrack)=0 |
|
void | Draw (TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override |
|
wxRect | DrawingArea (TrackPanelDrawingContext &, const wxRect &rect, const wxRect &panelRect, unsigned iPass) override |
|
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 |
|
std::weak_ptr< CloseButtonHandle > | mCloseHandle |
|
std::weak_ptr< MenuButtonHandle > | mMenuHandle |
|
std::weak_ptr< MinimizeButtonHandle > | mMinimizeHandle |
|
std::weak_ptr< TrackSelectHandle > | mSelectHandle |
|
Definition at line 28 of file WaveTrackControls.h.
Implements CommonTrackControls.
Definition at line 53 of file WaveTrackControls.cpp.
56{
57
58 const wxMouseState &state = st.
state;
59 const wxRect &rect = st.rect;
60 if (state.ButtonIsDown(wxMOUSE_BTN_LEFT)) {
62 std::vector<UIHandlePtr> results;
63 auto result = [&]{
67 return result;
68
71 return result;
72
75 return result;
76
79 return result;
80
83 return result;
84
85 return result;
86 }();
87 if (result) {
88 results.push_back(result);
89 return results;
90 }
91 }
92
94}
std::shared_ptr< UIHandle > UIHandlePtr
virtual std::vector< UIHandlePtr > HitTest(const TrackPanelMouseState &state, const AudacityProject *) override=0
std::shared_ptr< Track > FindTrack()
static UIHandlePtr HitTest(std::weak_ptr< PanSliderHandle > &holder, const wxMouseState &state, const wxRect &rect, const std::shared_ptr< Track > &pTrack)
static UIHandlePtr HitTest(std::weak_ptr< VolumeSliderHandle > &holder, const wxMouseState &state, const wxRect &rect, const std::shared_ptr< Track > &pTrack)
std::weak_ptr< MuteButtonHandle > mMuteHandle
std::weak_ptr< VolumeSliderHandle > mVolumeHandle
std::weak_ptr< PanSliderHandle > mPanHandle
std::weak_ptr< EffectsButtonHandle > mEffectsHandle
std::weak_ptr< SoloButtonHandle > mSoloHandle
References CommonTrackPanelCell::FindTrack(), CommonTrackControls::HitTest(), EffectsButtonHandle::HitTest(), MuteButtonHandle::HitTest(), PanSliderHandle::HitTest(), SoloButtonHandle::HitTest(), VolumeSliderHandle::HitTest(), mEffectsHandle, mMuteHandle, mPanHandle, mSoloHandle, mVolumeHandle, TrackPanelMouseState::rect, and TrackPanelMouseState::state.