diff flys-client/src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java @ 906:39acba4b5f0b

Added formatter for numeric columns that converts the decimal separator. (Issue200) flys-client/trunk@2758 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Thu, 15 Sep 2011 14:48:31 +0000
parents dd702348b878
children ee55a8ab5f5e
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java	Thu Sep 15 12:55:36 2011 +0000
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java	Thu Sep 15 14:48:31 2011 +0000
@@ -21,6 +21,8 @@
 import com.smartgwt.client.widgets.layout.VLayout;
 import com.smartgwt.client.widgets.grid.ListGrid;
 import com.smartgwt.client.widgets.grid.ListGridField;
+import com.smartgwt.client.widgets.grid.ListGridRecord;
+import com.smartgwt.client.widgets.grid.CellFormatter;
 import com.smartgwt.client.widgets.grid.events.RecordClickHandler;
 import com.smartgwt.client.widgets.grid.events.RecordClickEvent;
 import com.smartgwt.client.widgets.grid.events.CellClickHandler;
@@ -258,10 +260,47 @@
         ddescr.setType(ListGridFieldType.TEXT);
         ddescr.setWidth("*");
         ListGridField from = new ListGridField("from", MESSAGES.from());
-        from.setType(ListGridFieldType.FLOAT);
+        from.setCellFormatter(new CellFormatter() {
+            public String format(
+                Object value,
+                ListGridRecord record,
+                int rowNum, int colNum) {
+                    if (value == null) return null;
+                    try {
+                        NumberFormat nf;
+                        double v = Double.parseDouble((String)value);
+                        nf = NumberFormat.getFormat("###0.00##");
+                        return nf.format(v);
+                    }
+                    catch (Exception e) {
+                        return value.toString();
+                    }
+                }
+            }
+        );
+
         from.setWidth("12%");
         ListGridField to = new ListGridField("to", MESSAGES.to());
         to.setType(ListGridFieldType.FLOAT);
+        to.setCellFormatter(new CellFormatter() {
+            public String format(
+                Object value,
+                ListGridRecord record,
+                int rowNum, int colNum) {
+                    if (value == null) return null;
+                    try {
+                        NumberFormat nf;
+                        double v = Double.parseDouble((String)value);
+                        nf = NumberFormat.getFormat("###0.00##");
+                        return nf.format(v);
+                    }
+                    catch (Exception e) {
+                        return value.toString();
+                    }
+                }
+            }
+        );
+
         to.setWidth("12%");
         ListGridField dside = new ListGridField("riverside",
                 MESSAGES.riverside());

http://dive4elements.wald.intevation.org