Skip to content

Commit

Permalink
Only update CAD canvas item geometry when necessary
Browse files Browse the repository at this point in the history
The call to setRect() in paint() handler was triggering canvas redraws
all the time, keeping one CPU core busy nearly all the time when
CAD dock was active.
  • Loading branch information
wonder-sk authored and 3nids committed Sep 12, 2017
1 parent 684e1da commit 407baf0
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/gui/qgsadvanceddigitizingcanvasitem.cpp
Expand Up @@ -42,7 +42,8 @@ void QgsAdvancedDigitizingCanvasItem::paint( QPainter* painter )
return;

QgsRectangle mapRect = mMapCanvas->extent();
setRect( mapRect );
if ( rect() != mapRect )
setRect( mapRect );

int nPoints = mAdvancedDigitizingDockWidget->pointsCount();
if ( !nPoints )
Expand Down

0 comments on commit 407baf0

Please sign in to comment.