Fix incorrect display of coordinates in status bar

This commit is contained in:
Nyall Dawson 2018-03-21 20:42:38 +10:00
parent 017b9343ce
commit 66c8a85b88
2 changed files with 7 additions and 2 deletions

View File

@ -61,7 +61,7 @@ QString QgsCoordinateFormatter::formatY( double y, QgsCoordinateFormatter::Forma
QString QgsCoordinateFormatter::format( const QgsPointXY &point, QgsCoordinateFormatter::Format format, int precision, FormatFlags flags )
{
return QStringLiteral( "%1,%2" ).arg( formatX( point.x(), format, precision, flags ),
formatY( point.x(), format, precision, flags ) );
formatY( point.y(), format, precision, flags ) );
}
QString QgsCoordinateFormatter::asPair( double x, double y, int precision )

View File

@ -14,7 +14,7 @@ __revision__ = '$Format:%H$'
import qgis
from qgis.testing import unittest
from qgis.core import QgsCoordinateFormatter
from qgis.core import QgsCoordinateFormatter, QgsPointXY
class TestQgsCoordinateFormatter(unittest.TestCase):
@ -48,6 +48,11 @@ class TestQgsCoordinateFormatter(unittest.TestCase):
self.assertEqual(QgsCoordinateFormatter.asPair(20, 10, 2), '20.00,10.00')
self.assertEqual(QgsCoordinateFormatter.asPair(20, -10, 2), '20.00,-10.00')
def testFormat(self):
self.assertEqual(QgsCoordinateFormatter.format(QgsPointXY(20.1, 30.2), QgsCoordinateFormatter.FormatPair, 0), '20,30')
self.assertEqual(QgsCoordinateFormatter.format(QgsPointXY(20.1, 30.2), QgsCoordinateFormatter.FormatPair, 1), '20.1,30.2')
self.assertEqual(QgsCoordinateFormatter.format(QgsPointXY(20, 30), QgsCoordinateFormatter.FormatDegreesMinutesSeconds, 0), '20°00″E,30°00″N')
def testFormatXFormatDegreesMinutesSeconds(self):
"""Test formatting x as DMS"""