diff --git a/src/Snap.cpp b/src/Snap.cpp index 15b8fb062..3834d9fb6 100644 --- a/src/Snap.cpp +++ b/src/Snap.cpp @@ -408,3 +408,16 @@ bool SnapManager::Snap(Track *currentTrack, return SNAP_OFF; } + +#include "AColor.h" + +void SnapManager::Draw( wxDC *dc, wxInt64 left, wxInt64 right ) +{ + AColor::SnapGuidePen(dc); + if ( left >= 0 ) { + AColor::Line(*dc, (int)left, 0, (int)left, 30000); + } + if ( right >= 0 ) { + AColor::Line(*dc, (int)right, 0, (int)right, 30000); + } +} diff --git a/src/Snap.h b/src/Snap.h index b7ef72fe9..589f75f97 100644 --- a/src/Snap.h +++ b/src/Snap.h @@ -28,6 +28,7 @@ class WaveClip; class WaveTrack; class TrackList; class ZoomInfo; +class wxDC; class TrackClip { @@ -101,6 +102,8 @@ public: static const wxString & GetSnapValue(int index); static int GetSnapIndex(const wxString & value); + static void Draw( wxDC *dc, wxInt64 left, wxInt64 right ); + private: void Reinit(); diff --git a/src/TrackPanel.cpp b/src/TrackPanel.cpp index 9a6b6ada5..5a555ecd2 100644 --- a/src/TrackPanel.cpp +++ b/src/TrackPanel.cpp @@ -7364,15 +7364,8 @@ void TrackPanel::DrawEverythingElse(wxDC * dc, } // Draw snap guidelines if we have any - if ( mSnapManager && ( GetSnapLeft() >= 0 || GetSnapRight() >= 0 )) { - AColor::SnapGuidePen(dc); - if ( GetSnapLeft() >= 0 ) { - AColor::Line(*dc, (int)GetSnapLeft(), 0, GetSnapLeft(), 30000); - } - if ( GetSnapRight() >= 0 ) { - AColor::Line(*dc, (int)GetSnapRight(), 0, GetSnapRight(), 30000); - } - } + if ( mSnapManager ) + mSnapManager->Draw( dc, GetSnapLeft(), GetSnapRight() ); } /// Draw zooming indicator that shows the region that will