16#include "../../AdornedRulerPanel.h"
18#include "../../ProjectWindows.h"
21#include "../../TrackPanel.h"
27 template <
class LOW,
class MID,
class HIGH >
30 return (m >= l && m < h);
36 auto result = std::make_shared< EditCursorOverlay >( &parent );
59 const auto &selection = viewInfo.selectedRegion;
60 if (!selection.isPoint()) {
71 return std::make_pair(
97 viewInfo.GetScreenEndTime());
137 dc.SetPen(*wxBLACK_PEN);
139 auto rect =
ruler->GetInnerRect();
static const AudacityProject::AttachedObjects::RegisteredFactory sOverlayKey
declares abstract base class Track, TrackList, and iterators over TrackList
static void Line(wxDC &dc, wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2)
This is an Audacity Specific ruler panel which additionally has border, selection markers,...
static AdornedRulerPanel & Get(AudacityProject &project)
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Client code makes static instance from a factory of attachments; passes it to Get or Find as a retrie...
std::shared_ptr< EditCursorOverlay > mPartner
unsigned SequenceNumber() const override
This number determines an ordering of overlays, so that those with higher numbers overpaint those wit...
void Draw(OverlayPanel &panel, wxDC &dc) override
EditCursorOverlay(AudacityProject *project, bool isMaster=true)
std::pair< wxRect, bool > DoGetRectangle(wxSize size) override
AudacityProject * mProject
void AddOverlay(const std::weak_ptr< Overlay > &pOverlay)
static TrackPanel & Get(AudacityProject &project)
static ViewInfo & Get(AudacityProject &project)
bool between_incexc(LOW l, MID m, HIGH h)