diff --git a/src/Track.h b/src/Track.h index 6442734b8..c7fc7def5 100644 --- a/src/Track.h +++ b/src/Track.h @@ -287,8 +287,8 @@ class AUDACITY_DLL_API Track /* not final */ // Return another, associated TrackPanelCell object that implements the // drop-down, close and minimize buttons, etc. - std::shared_ptr GetTrackControl(); - std::shared_ptr GetTrackControl() const; + std::shared_ptr GetTrackControl(); + std::shared_ptr GetTrackControl() const; // Return another, associated TrackPanelCell object that implements the // mouse actions for the vertical ruler diff --git a/src/TrackPanel.cpp b/src/TrackPanel.cpp index 478df53f6..edcae2e11 100644 --- a/src/TrackPanel.cpp +++ b/src/TrackPanel.cpp @@ -99,7 +99,6 @@ is time to refresh some aspect of the screen. #include "toolbars/ControlToolBar.h" #include "toolbars/ToolsToolBar.h" -#include "tracks/ui/TrackControls.h" // for inheritance relation #include "tracks/ui/TrackVRulerControls.h" // for inheritance relation //This loads the appropriate set of cursors, depending on platform. @@ -1283,9 +1282,6 @@ void TrackPanel::DrawEverythingElse(TrackPanelDrawingContext &context, target->DrawExtras(UIHandle::Panel, dc, region, clip); } -// Make this #include go away! -#include "tracks/ui/TrackControls.h" - void TrackInfo::DrawItems ( TrackPanelDrawingContext &context, const wxRect &rect, const Track &track ) diff --git a/src/TrackPanelResizeHandle.cpp b/src/TrackPanelResizeHandle.cpp index 77a8289f3..e164c4c24 100644 --- a/src/TrackPanelResizeHandle.cpp +++ b/src/TrackPanelResizeHandle.cpp @@ -19,7 +19,6 @@ Paul Licameli split from TrackPanel.cpp #include "RefreshCode.h" #include "Track.h" #include "TrackPanelMouseEvent.h" -#include "tracks/ui/TrackControls.h" HitTestPreview TrackPanelResizeHandle::HitPreview(bool bLinked) { diff --git a/src/tracks/ui/ButtonHandle.cpp b/src/tracks/ui/ButtonHandle.cpp index a6f95c22d..81b1c4f2f 100644 --- a/src/tracks/ui/ButtonHandle.cpp +++ b/src/tracks/ui/ButtonHandle.cpp @@ -15,7 +15,6 @@ Paul Licameli #include "../../RefreshCode.h" #include "../../Track.h" #include "../../TrackPanelMouseEvent.h" -#include "../ui/TrackControls.h" ButtonHandle::ButtonHandle ( const std::shared_ptr &pTrack, const wxRect &rect ) diff --git a/src/tracks/ui/SelectHandle.cpp b/src/tracks/ui/SelectHandle.cpp index bfc9ccf5f..01c63b737 100644 --- a/src/tracks/ui/SelectHandle.cpp +++ b/src/tracks/ui/SelectHandle.cpp @@ -14,7 +14,6 @@ Paul Licameli split from TrackPanel.cpp #include "../../Experimental.h" #include "Scrubbing.h" -#include "TrackControls.h" #include "../../AColor.h" #include "../../FreqWindow.h" diff --git a/src/tracks/ui/TimeShiftHandle.cpp b/src/tracks/ui/TimeShiftHandle.cpp index c9101f786..4c82c8599 100644 --- a/src/tracks/ui/TimeShiftHandle.cpp +++ b/src/tracks/ui/TimeShiftHandle.cpp @@ -13,7 +13,6 @@ Paul Licameli split from TrackPanel.cpp #include "../../Experimental.h" -#include "TrackControls.h" #include "../../AColor.h" #include "../../HitTestResult.h" #include "../../NoteTrack.h" diff --git a/src/tracks/ui/TrackControls.cpp b/src/tracks/ui/TrackControls.cpp index 40693f319..d970efc15 100644 --- a/src/tracks/ui/TrackControls.cpp +++ b/src/tracks/ui/TrackControls.cpp @@ -55,7 +55,9 @@ std::vector TrackControls::HitTest auto pTrack = FindTrack(); // shared pointer to this: - auto sThis = pTrack->GetTrackControl(); + auto sThis = + std::static_pointer_cast( pTrack->GetTrackControl() ); + wxASSERT( this == sThis.get() ); if (NULL != (result = CloseButtonHandle::HitTest( mCloseHandle, state, rect, this))) diff --git a/src/tracks/ui/TrackSelectHandle.cpp b/src/tracks/ui/TrackSelectHandle.cpp index 887ed6f0c..63738bc54 100644 --- a/src/tracks/ui/TrackSelectHandle.cpp +++ b/src/tracks/ui/TrackSelectHandle.cpp @@ -11,7 +11,6 @@ Paul Licameli split from TrackPanel.cpp #include "../../Audacity.h" #include "TrackSelectHandle.h" -#include "TrackControls.h" #include "../../Menus.h" #include "../../Project.h" #include "../../ProjectAudioIO.h" diff --git a/src/tracks/ui/TrackUI.cpp b/src/tracks/ui/TrackUI.cpp index 6ef527749..2d09e5331 100644 --- a/src/tracks/ui/TrackUI.cpp +++ b/src/tracks/ui/TrackUI.cpp @@ -83,7 +83,7 @@ std::shared_ptr Track::ContextMenuDelegate() return FindTrack()->GetTrackControl(); } -std::shared_ptr Track::GetTrackControl() +std::shared_ptr Track::GetTrackControl() { if (!mpControls) // create on demand @@ -91,7 +91,7 @@ std::shared_ptr Track::GetTrackControl() return mpControls; } -std::shared_ptr Track::GetTrackControl() const +std::shared_ptr Track::GetTrackControl() const { return const_cast< Track* >( this )->GetTrackControl(); }