Change vertex marker to box and segment marker to double triangle

This commit is contained in:
Martin Dobias 2017-10-27 16:29:24 +02:00
parent b508bf7f1c
commit b726ba2936
4 changed files with 13 additions and 4 deletions

View File

@ -37,7 +37,8 @@ class QgsVertexMarker : QgsMapCanvasItem
ICON_CROSS, ICON_CROSS,
ICON_X, ICON_X,
ICON_BOX, ICON_BOX,
ICON_CIRCLE ICON_CIRCLE,
ICON_DOUBLE_TRIANGLE,
}; };
QgsVertexMarker( QgsMapCanvas *mapCanvas /TransferThis/ ); QgsVertexMarker( QgsMapCanvas *mapCanvas /TransferThis/ );

View File

@ -57,13 +57,13 @@ void QgsSnapIndicator::setMatch( const QgsPointLocator::Match &match )
if ( match.hasVertex() ) if ( match.hasVertex() )
{ {
if ( match.layer() ) if ( match.layer() )
iconType = QgsVertexMarker::ICON_CROSS; // vertex snap iconType = QgsVertexMarker::ICON_BOX; // vertex snap
else else
iconType = QgsVertexMarker::ICON_X; // intersection snap iconType = QgsVertexMarker::ICON_X; // intersection snap
} }
else // must be segment snap else // must be segment snap
{ {
iconType = QgsVertexMarker::ICON_BOX; iconType = QgsVertexMarker::ICON_DOUBLE_TRIANGLE;
} }
mSnappingMarker->setIconType( iconType ); mSnappingMarker->setIconType( iconType );

View File

@ -91,6 +91,13 @@ void QgsVertexMarker::paint( QPainter *p )
case ICON_CIRCLE: case ICON_CIRCLE:
p->drawEllipse( QPointF( 0, 0 ), s, s ); p->drawEllipse( QPointF( 0, 0 ), s, s );
break; break;
case ICON_DOUBLE_TRIANGLE:
p->drawLine( QLineF( -s, -s, s, -s ) );
p->drawLine( QLineF( -s, s, s, s ) );
p->drawLine( QLineF( -s, -s, s, s ) );
p->drawLine( QLineF( s, -s, -s, s ) );
break;
} }
} }

View File

@ -53,7 +53,8 @@ class GUI_EXPORT QgsVertexMarker : public QgsMapCanvasItem
ICON_CROSS, ICON_CROSS,
ICON_X, ICON_X,
ICON_BOX, ICON_BOX,
ICON_CIRCLE ICON_CIRCLE,
ICON_DOUBLE_TRIANGLE, //!< Added in QGIS 3.0
}; };
QgsVertexMarker( QgsMapCanvas *mapCanvas SIP_TRANSFERTHIS ); QgsVertexMarker( QgsMapCanvas *mapCanvas SIP_TRANSFERTHIS );