Skip to content

Commit f66c461

Browse files
committedFeb 14, 2014
replace list of snapping markers with a single marker
1 parent e6c2ecd commit f66c461

File tree

2 files changed

+10
-16
lines changed

2 files changed

+10
-16
lines changed
 

‎src/app/qgsmaptoolcapture.cpp‎

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,7 @@ QgsMapToolCapture::QgsMapToolCapture( QgsMapCanvas* canvas, enum CaptureMode too
5151

5252
QgsMapToolCapture::~QgsMapToolCapture()
5353
{
54-
while ( !mSnappingMarkers.isEmpty() )
55-
delete mSnappingMarkers.takeFirst();
54+
delete mSnappingMarker;
5655

5756
stopCapturing();
5857

@@ -65,8 +64,7 @@ QgsMapToolCapture::~QgsMapToolCapture()
6564

6665
void QgsMapToolCapture::deactivate()
6766
{
68-
while ( !mSnappingMarkers.isEmpty() )
69-
delete mSnappingMarkers.takeFirst();
67+
delete mSnappingMarker;
7068

7169
QgsMapToolEdit::deactivate();
7270
}
@@ -107,18 +105,14 @@ void QgsMapToolCapture::canvasMoveEvent( QMouseEvent * e )
107105
QList<QgsSnappingResult> snapResults;
108106
if ( mSnapper.snapToBackgroundLayers( e->pos(), snapResults ) == 0 )
109107
{
110-
while ( !mSnappingMarkers.isEmpty() )
111-
delete mSnappingMarkers.takeFirst();
108+
delete mSnappingMarker;
109+
110+
mSnappingMarker = new QgsVertexMarker( mCanvas );
111+
mSnappingMarker->setIconType( QgsVertexMarker::ICON_CROSS );
112+
mSnappingMarker->setColor( Qt::magenta );
113+
mSnappingMarker->setPenWidth( 3 );
114+
mSnappingMarker->setCenter( snapPointFromResults(snapResults,e->pos()) );
112115

113-
foreach ( const QgsSnappingResult &r, snapResults )
114-
{
115-
QgsVertexMarker *m = new QgsVertexMarker( mCanvas );
116-
m->setIconType( QgsVertexMarker::ICON_CROSS );
117-
m->setColor( Qt::magenta );
118-
m->setPenWidth( 3 );
119-
m->setCenter( r.snappedVertex );
120-
mSnappingMarkers << m;
121-
}
122116

123117
if ( mCaptureMode != CapturePoint && mTempRubberBand && mCapturing )
124118
{

‎src/app/qgsmaptoolcapture.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ class APP_EXPORT QgsMapToolCapture : public QgsMapToolEdit
119119

120120
bool mCaptureModeFromLayer;
121121

122-
QList<QgsVertexMarker *> mSnappingMarkers;
122+
QgsVertexMarker* mSnappingMarker;
123123
};
124124

125125
#endif

0 commit comments

Comments
 (0)
Please sign in to comment.