Index: /applications/editors/josm/plugins/measurement/build.xml
===================================================================
--- /applications/editors/josm/plugins/measurement/build.xml	(revision 30103)
+++ /applications/editors/josm/plugins/measurement/build.xml	(revision 30104)
@@ -4,5 +4,5 @@
     <property name="commit.message" value="recompile dure to core change"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="6162"/>
+    <property name="plugin.main.version" value="6422"/>
     
     <!-- Configure these properties (replace "..." accordingly).
Index: /applications/editors/josm/plugins/measurement/src/org/openstreetmap/josm/plugins/measurement/MeasurementDialog.java
===================================================================
--- /applications/editors/josm/plugins/measurement/src/org/openstreetmap/josm/plugins/measurement/MeasurementDialog.java	(revision 30103)
+++ /applications/editors/josm/plugins/measurement/src/org/openstreetmap/josm/plugins/measurement/MeasurementDialog.java	(revision 30104)
@@ -105,15 +105,15 @@
         valuePanel.add(new JLabel(tr("Path Length")));
 
-        pathLengthLabel = new JLabel(NavigatableComponent.getDistText(0));
+        pathLengthLabel = new JLabel(getDistText(0));
         valuePanel.add(pathLengthLabel);
 
         valuePanel.add(new JLabel(tr("Selection Length")));
 
-        selectLengthLabel = new JLabel(NavigatableComponent.getDistText(0));
+        selectLengthLabel = new JLabel(getDistText(0));
         valuePanel.add(selectLengthLabel);
 
         valuePanel.add(new JLabel(tr("Selection Area")));
 
-        selectAreaLabel = new JLabel(NavigatableComponent.getAreaText(0));
+        selectAreaLabel = new JLabel(getAreaText(0));
         valuePanel.add(selectAreaLabel);
 
@@ -135,4 +135,16 @@
     }
 
+    protected String getDistText(double v) {
+        return NavigatableComponent.getSystemOfMeasurement().getDistText(v, new DecimalFormat("#0.000"), 1e-3);
+    }
+
+    protected String getAreaText(double v) {
+        return NavigatableComponent.getSystemOfMeasurement().getAreaText(v, new DecimalFormat("#0.000"), 1e-3);
+    }
+
+    protected String getAngleText(double v) {
+        return new DecimalFormat("#0.0").format(v) + " \u00b0";
+    }
+
     /**
      * Cleans the active Measurement Layer
@@ -142,6 +154,6 @@
     }
 
-	@Override
-	public void selectionChanged(Collection<? extends OsmPrimitive> newSelection) {
+    @Override
+    public void selectionChanged(Collection<? extends OsmPrimitive> newSelection) {
         double length = 0.0;
         double segAngle = 0.0;
@@ -186,7 +198,7 @@
         }
         
-        final String lengthLabel = NavigatableComponent.getDistText(length);
-        final String angleLabel = new DecimalFormat("#0.0").format(segAngle) + " \u00b0";
-        final String areaLabel = NavigatableComponent.getAreaText(area);
+        final String lengthLabel = getDistText(length);
+        final String angleLabel = getAngleText(segAngle);
+        final String areaLabel = getAreaText(area);
         
         GuiHelper.runInEDT(new Runnable() {
