Reset digitizing tools when new project is loaded/created

Refs #4237 https://issues.qgis.org/issues/4237
This commit is contained in:
Sebastian Dietrich 2015-12-16 18:20:47 +01:00 committed by Matthias Kuhn
parent b00a60da01
commit 479e3cb736
No known key found for this signature in database
GPG Key ID: A0E766808764D73F
6 changed files with 22 additions and 10 deletions

View File

@ -114,11 +114,6 @@ Removes the last vertex from mRubberBand and mCaptureList
:rtype: bool
%End
void stopCapturing();
%Docstring
Stop capturing
%End
int size();
%Docstring
Number of points digitized
@ -146,6 +141,13 @@ Removes the last vertex from mRubberBand and mCaptureList
Close an open polygon
%End
protected slots:
void stopCapturing();
%Docstring
Stop capturing
%End
};
/************************************************************************

View File

@ -36,6 +36,8 @@ QgsMapToolAddCircularString::QgsMapToolAddCircularString( QgsMapToolCapture *par
{
connect( mCanvas, &QgsMapCanvas::mapToolSet, this, &QgsMapToolAddCircularString::setParentTool );
}
connect( QgisApp::instance(), SIGNAL( newProject() ), this, SLOT( stopCapturing() ) );
connect( QgisApp::instance(), SIGNAL( projectRead() ), this, SLOT( stopCapturing() ) );
}
QgsMapToolAddCircularString::QgsMapToolAddCircularString( QgsMapCanvas *canvas )

View File

@ -40,6 +40,8 @@ QgsMapToolAddFeature::QgsMapToolAddFeature( QgsMapCanvas *canvas, CaptureMode mo
, mCheckGeometryType( true )
{
mToolName = tr( "Add feature" );
connect( QgisApp::instance(), SIGNAL( newProject() ), this, SLOT( stopCapturing() ) );
connect( QgisApp::instance(), SIGNAL( projectRead() ), this, SLOT( stopCapturing() ) );
}
QgsMapToolAddFeature::~QgsMapToolAddFeature()

View File

@ -31,6 +31,8 @@ QgsMapToolAddPart::QgsMapToolAddPart( QgsMapCanvas *canvas )
: QgsMapToolCapture( canvas, QgisApp::instance()->cadDockWidget() )
{
mToolName = tr( "Add part" );
connect( QgisApp::instance(), SIGNAL( newProject() ), this, SLOT( stopCapturing() ) );
connect( QgisApp::instance(), SIGNAL( projectRead() ), this, SLOT( stopCapturing() ) );
}
QgsMapToolAddPart::~QgsMapToolAddPart()

View File

@ -29,6 +29,8 @@ QgsMapToolAddRing::QgsMapToolAddRing( QgsMapCanvas *canvas )
: QgsMapToolCapture( canvas, QgisApp::instance()->cadDockWidget(), QgsMapToolCapture::CapturePolygon )
{
mToolName = tr( "Add ring" );
connect( QgisApp::instance(), SIGNAL( newProject() ), this, SLOT( stopCapturing() ) );
connect( QgisApp::instance(), SIGNAL( projectRead() ), this, SLOT( stopCapturing() ) );
}
QgsMapToolAddRing::~QgsMapToolAddRing()

View File

@ -147,11 +147,6 @@ class GUI_EXPORT QgsMapToolCapture : public QgsMapToolAdvancedDigitizing
*/
bool isCapturing() const;
/**
* Stop capturing
*/
void stopCapturing();
/**
* Number of points digitized
*
@ -177,6 +172,13 @@ class GUI_EXPORT QgsMapToolCapture : public QgsMapToolAdvancedDigitizing
*/
void closePolygon();
protected slots:
/**
* Stop capturing
*/
void stopCapturing();
private:
//! whether tracing has been requested by the user
bool tracingEnabled();