void QgsMapToolAdvancedDigitizing::canvasReleaseEvent( QMouseEvent* e )
{
  QgsMapMouseEvent::SnappingMode mode = mSnapOnRelease ? QgsMapMouseEvent::SnapProjectConfig : QgsMapMouseEvent::NoSnapping;
  if ( mCadDockWidget->cadEnabled() )
    mode = mCadDockWidget->snappingMode();
  QgsMapMouseEvent* event = new QgsMapMouseEvent( this, e, mode );
  if ( !mCadDockWidget->canvasReleaseEventFilter( event ) )
  {
    canvasMapReleaseEvent( event );
  }
  delete event;
}
void QgsMapToolAdvancedDigitizing::canvasReleaseEvent( QMouseEvent* e )
{
  bool doSnap = mSnapOnRelease;
  if ( mCadDockWidget->cadEnabled() )
    doSnap = mCadDockWidget->snappingEnabled();
  QgsMapMouseEvent* event = new QgsMapMouseEvent( this, e, doSnap );
  if ( !mCadDockWidget->canvasReleaseEventFilter( event ) )
  {
    canvasMapReleaseEvent( event );
  }
  delete event;
}