From f6f3945a866b300287212d837a1c40bef8ecd001 Mon Sep 17 00:00:00 2001 From: Vitaly Sverchinsky Date: Thu, 15 Jul 2021 14:15:31 +0300 Subject: [PATCH] Few new track art routines --- src/TrackArtist.cpp | 19 +++++++++++++++++++ src/TrackArtist.h | 4 ++++ 2 files changed, 23 insertions(+) diff --git a/src/TrackArtist.cpp b/src/TrackArtist.cpp index 3248c3140..72960e709 100644 --- a/src/TrackArtist.cpp +++ b/src/TrackArtist.cpp @@ -519,3 +519,22 @@ void TrackArt::DrawBackgroundWithSelection( } } +void TrackArt::DrawCursor(TrackPanelDrawingContext& context, + const wxRect& rect, const Track* track) +{ + const auto dc = &context.dc; + const auto artist = TrackArtist::Get(context); + const auto& selectedRegion = *artist->pSelectedRegion; + + if (selectedRegion.isPoint()) + { + const auto& zoomInfo = *artist->pZoomInfo; + auto x = static_cast(zoomInfo.TimeToPosition(selectedRegion.t0(), rect.x)); + if (x >= rect.GetLeft() && x <= rect.GetRight()) + { + AColor::CursorColor(dc); + AColor::Line(*dc, x, rect.GetTop(), x, rect.GetBottom()); + } + } +} + diff --git a/src/TrackArtist.h b/src/TrackArtist.h index df1c59918..a4eb6c495 100644 --- a/src/TrackArtist.h +++ b/src/TrackArtist.h @@ -58,6 +58,10 @@ namespace TrackArt { const wxBrush &selBrush, const wxBrush &unselBrush, bool useSelection = true); + AUDACITY_DLL_API + void DrawCursor(TrackPanelDrawingContext& context, + const wxRect& rect, const Track* track); + AUDACITY_DLL_API void DrawNegativeOffsetTrackArrows( TrackPanelDrawingContext &context, const wxRect & rect );