From 8905e52ee010a37d8488f8de28c32aa597339f1b Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Sat, 28 Dec 2019 13:22:17 -0500 Subject: [PATCH] Override TrackPanelDrawable::DrawingArea() properly for track names --- src/tracks/ui/CommonTrackView.cpp | 16 ++++++++++++++++ src/tracks/ui/CommonTrackView.h | 4 ++++ 2 files changed, 20 insertions(+) diff --git a/src/tracks/ui/CommonTrackView.cpp b/src/tracks/ui/CommonTrackView.cpp index 61ea1f7a3..0044db76d 100644 --- a/src/tracks/ui/CommonTrackView.cpp +++ b/src/tracks/ui/CommonTrackView.cpp @@ -187,6 +187,22 @@ static void DrawTrackName( nameRect.y + MarginY); } +wxRect CommonTrackView::DrawingArea( + TrackPanelDrawingContext &context, + const wxRect &rect, const wxRect &panelRect, unsigned iPass ) +{ + auto result = rect; + if ( iPass == TrackArtist::PassBorders ) { + if ( true ) { + wxCoord textWidth, textHeight; + GetTrackNameExtent( context.dc, FindTrack().get(), + &textWidth, &textHeight ); + result = GetTrackNameRect( rect, textWidth, textHeight ); + } + } + return rect; +} + void CommonTrackView::Draw( TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass ) { diff --git a/src/tracks/ui/CommonTrackView.h b/src/tracks/ui/CommonTrackView.h index 485869bdb..ace7a4d18 100644 --- a/src/tracks/ui/CommonTrackView.h +++ b/src/tracks/ui/CommonTrackView.h @@ -34,6 +34,10 @@ public: void TimeShiftHitTest(); // TrackPanelDrawable implementation + wxRect DrawingArea( + TrackPanelDrawingContext &context, + const wxRect &rect, const wxRect &panelRect, unsigned iPass ) override; + void Draw( TrackPanelDrawingContext &context, const wxRect &rect, unsigned iPass ) override;