Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect Class Referencefinal
Inheritance diagram for anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect:
[legend]
Collaboration diagram for anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect:
[legend]

Public Member Functions

 EmptyPanelRect (const std::shared_ptr< Channel > &pChannel, int fillBrushName)
 
 ~EmptyPanelRect ()
 
void Draw (TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass) override
 
std::shared_ptr< TrackDoFindTrack () override
 
std::vector< UIHandlePtrHitTest (const TrackPanelMouseState &state, const AudacityProject *pProject) override
 
- Public Member Functions inherited from CommonTrackPanelCell
 CommonTrackPanelCell ()
 
virtual ~CommonTrackPanelCell ()=0
 
HitTestPreview DefaultPreview (const TrackPanelMouseState &, const AudacityProject *) override
 
std::shared_ptr< TrackFindTrack ()
 
std::shared_ptr< const TrackFindTrack () const
 
virtual std::vector< MenuItemGetMenuItems (const wxRect &rect, const wxPoint *pPosition, AudacityProject *pProject)
 Return a list of items for DoContextMenu() (empties for separators) More...
 
- Public Member Functions inherited from TrackPanelCell
 TrackPanelCell ()=default
 
 TrackPanelCell (const TrackPanelCell &)=delete
 
TrackPanelCelloperator= (const TrackPanelCell &)=delete
 
virtual ~TrackPanelCell ()=0
 
virtual HitTestPreview DefaultPreview (const TrackPanelMouseState &state, const AudacityProject *pProject)
 
virtual std::vector< UIHandlePtrHitTest (const TrackPanelMouseState &state, const AudacityProject *pProject)=0
 
virtual unsigned HandleWheelRotation (const TrackPanelMouseEvent &event, AudacityProject *pProject)
 
virtual std::shared_ptr< TrackPanelCellContextMenuDelegate ()
 
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)
 
- Public Member Functions inherited from TrackPanelNode
 TrackPanelNode ()
 
virtual ~TrackPanelNode ()=0
 
- Public Member Functions inherited from TrackPanelDrawable
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)
 

Private Attributes

std::shared_ptr< ChannelmpChannel
 
int mFillBrushName
 

Additional Inherited Members

- Static Public Member Functions inherited from TrackPanelDrawable
static wxRect MaximizeWidth (const wxRect &rect, const wxRect &panelRect)
 
static wxRect MaximizeHeight (const wxRect &rect, const wxRect &panelRect)
 
- Protected Member Functions inherited from CommonTrackPanelCell
virtual std::shared_ptr< TrackDoFindTrack ()=0
 
unsigned DoContextMenu (const wxRect &rect, wxWindow *pParent, const wxPoint *pPosition, AudacityProject *pProject) override
 
unsigned HandleWheelRotation (const TrackPanelMouseEvent &event, AudacityProject *pProject) override
 

Detailed Description

Definition at line 1215 of file TrackPanel.cpp.

Constructor & Destructor Documentation

◆ EmptyPanelRect()

anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::EmptyPanelRect ( const std::shared_ptr< Channel > &  pChannel,
int  fillBrushName 
)
inlineexplicit
Precondition
pChannel != nullptr

Definition at line 1224 of file TrackPanel.cpp.

1226 : mpChannel{ pChannel }, mFillBrushName{ fillBrushName }
1227 {
1228 }

◆ ~EmptyPanelRect()

anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::~EmptyPanelRect ( )
inline

Definition at line 1230 of file TrackPanel.cpp.

1230{ }

Member Function Documentation

◆ DoFindTrack()

std::shared_ptr< Track > anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::DoFindTrack ( )
inlineoverridevirtual

Implements CommonTrackPanelCell.

Definition at line 1245 of file TrackPanel.cpp.

1246 {
1247 return GetTrack(*mpChannel).shared_from_this();
1248 }
Track & GetTrack(Channel &channel)

References anonymous_namespace{TrackPanel.cpp}::GetTrack().

Here is the call graph for this function:

◆ Draw()

void anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::Draw ( TrackPanelDrawingContext context,
const wxRect &  rect,
unsigned  iPass 
)
inlineoverridevirtual

Reimplemented from TrackPanelDrawable.

Definition at line 1232 of file TrackPanel.cpp.

1234 {
1235 if (iPass == TrackArtist::PassBackground)
1236 {
1237 context.dc.SetPen(*wxTRANSPARENT_PEN);
1239 context.dc.DrawRectangle(rect);
1240 wxRect bevel(rect.x, rect.y, rect.width - 1, rect.height - 1);
1241 AColor::BevelTrackInfo(context.dc, true, bevel, false);
1242 }
1243 }
static void BevelTrackInfo(wxDC &dc, bool up, const wxRect &r, bool highlight=false)
Definition: AColor.cpp:338
static void UseThemeColour(wxDC *dc, int iBrush, int iPen=-1, int alpha=255)
Definition: AColor.cpp:366

References AColor::BevelTrackInfo(), TrackPanelDrawingContext::dc, TrackArtist::PassBackground, and AColor::UseThemeColour().

Here is the call graph for this function:

◆ HitTest()

std::vector< UIHandlePtr > anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::HitTest ( const TrackPanelMouseState state,
const AudacityProject pProject 
)
inlineoverridevirtual

Implements TrackPanelCell.

Definition at line 1250 of file TrackPanel.cpp.

1252 {
1253 return {};
1254 }

Member Data Documentation

◆ mFillBrushName

int anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::mFillBrushName
private

Definition at line 1219 of file TrackPanel.cpp.

◆ mpChannel

std::shared_ptr<Channel> anonymous_namespace{TrackPanel.cpp}::EmptyPanelRect::mpChannel
private

Definition at line 1218 of file TrackPanel.cpp.


The documentation for this class was generated from the following file: