1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-15 23:21:12 +02:00

Move drawing code for snap guidelines

This commit is contained in:
Paul Licameli
2019-06-21 15:10:11 -04:00
parent e6dae33038
commit dc216d669b
9 changed files with 55 additions and 108 deletions

View File

@@ -21,6 +21,8 @@ Paul Licameli split from TrackPanel.cpp
#include "../../ProjectHistory.h"
#include "../../ProjectSettings.h"
#include "../../RefreshCode.h"
#include "../../TrackArtist.h"
#include "../../TrackPanelDrawingContext.h"
#include "../../TrackPanelMouseEvent.h"
#include "../../UndoManager.h"
#include "../../WaveClip.h"
@@ -848,14 +850,25 @@ UIHandle::Result TimeShiftHandle::Cancel(AudacityProject *pProject)
return RefreshCode::RefreshAll;
}
void TimeShiftHandle::DrawExtras
(DrawingPass pass,
wxDC * dc, const wxRegion &, const wxRect &)
void TimeShiftHandle::Draw(
TrackPanelDrawingContext &context,
const wxRect &rect, unsigned iPass )
{
if (pass == Panel) {
if ( iPass == TrackArtist::PassSnapping ) {
auto &dc = context.dc;
// Draw snap guidelines if we have any
if ( mSnapManager )
mSnapManager->Draw
( dc, mClipMoveState.snapLeft, mClipMoveState.snapRight );
if ( mSnapManager ) {
mSnapManager->Draw(
&dc, mClipMoveState.snapLeft, mClipMoveState.snapRight );
}
}
}
wxRect TimeShiftHandle::DrawingArea(
const wxRect &rect, const wxRect &panelRect, unsigned iPass )
{
if ( iPass == TrackArtist::PassSnapping )
return MaximizeHeight( rect, panelRect );
else
return rect;
}