Skip to content
Permalink
Browse files

Fix last segment length in measure dialog is incorrect after

completing measurement with right mouse click
  • Loading branch information
nyalldawson committed Oct 5, 2016
1 parent 03bff50 commit bad137283b7d22ab2f7bf889bc72b1088efaa742
Showing with 15 additions and 7 deletions.
  1. +15 −7 src/app/qgsmeasuredialog.cpp
@@ -213,16 +213,24 @@ void QgsMeasureDialog::removeLastPoint()
//remove final row
delete mTable->takeTopLevelItem( mTable->topLevelItemCount() - 1 );

QgsPoint p1( mTool->points().last() );
double d = mDa.measureLine( p1, mLastMousePoint );

mTotal = mDa.measureLine( mTool->points() );
editTotal->setText( formatDistance( mTotal + d ) );

d = convertLength( d, mDistanceUnits );
if ( !mTool->done() )
{
// need to add the distance for the temporary mouse cursor point
QgsPoint p1( mTool->points().last() );
double d = mDa.measureLine( p1, mLastMousePoint );

QTreeWidgetItem *item = mTable->topLevelItem( mTable->topLevelItemCount() - 1 );
item->setText( 0, QLocale::system().toString( d, 'f', mDecimalPlaces ) );
d = convertLength( d, mDistanceUnits );

QTreeWidgetItem *item = mTable->topLevelItem( mTable->topLevelItemCount() - 1 );
item->setText( 0, QLocale::system().toString( d, 'f', mDecimalPlaces ) );
editTotal->setText( formatDistance( mTotal + d ) );
}
else
{
editTotal->setText( formatDistance( mTotal ) );
}
}
}

1 comment on commit bad1372

@3nids

This comment has been minimized.

Copy link
Member

@3nids 3nids commented on bad1372 Oct 5, 2016

oh! I tried once to change the behavior of the map tool so that the right-click finishes without adding point (to be coherent with add line/polygon) but I end up on this issue... I will resurrect this, thanks!

Please sign in to comment.
You can’t perform that action at this time.