diff flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java @ 782:4a7ece57f44c

#159 The tables in the WQ panel for calculation 4 are now filled with data. flys-client/trunk@2273 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 01 Jul 2011 08:44:24 +0000
parents 6653cf54b45d
children 8ebaad41285b
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java	Thu Jun 30 11:59:02 2011 +0000
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java	Fri Jul 01 08:44:24 2011 +0000
@@ -15,13 +15,16 @@
 import com.smartgwt.client.widgets.tab.TabSet;
 import com.smartgwt.client.widgets.tab.Tab;
 
+import de.intevation.flys.client.shared.model.ArtifactDescription;
 import de.intevation.flys.client.shared.model.Data;
 import de.intevation.flys.client.shared.model.DataItem;
 import de.intevation.flys.client.shared.model.DataList;
 import de.intevation.flys.client.shared.model.DefaultData;
 import de.intevation.flys.client.shared.model.DefaultDataItem;
 
+import de.intevation.flys.client.client.Config;
 import de.intevation.flys.client.client.FLYSConstants;
+import de.intevation.flys.client.client.ui.range.DistanceInfoDataSource;
 import de.intevation.flys.client.client.ui.range.RangeTable;
 import de.intevation.flys.client.client.ui.range.LocationsTable;
 
@@ -296,6 +299,17 @@
 
 
     protected void initHelperPanel() {
+        Config config = Config.getInstance();
+        String url    = config.getServerUrl();
+        String river  = getRiverName();
+
+        distancesTable.setAutoFetchData(true);
+        locationsTable.setAutoFetchData(true);
+        distancesTable.setDataSource(new DistanceInfoDataSource(
+            url, river, "distances"));
+        locationsTable.setDataSource(new DistanceInfoDataSource(
+            url, river, "locations"));
+
         tabs = new TabSet();
         tabs.setWidth100();
         tabs.setHeight100();
@@ -311,5 +325,30 @@
 
         helperContainer.addChild(tabs);
     }
+
+
+    protected String getRiverName() {
+        ArtifactDescription adescr = artifact.getArtifactDescription();
+        DataList[] data = adescr.getOldData();
+
+        if (data != null && data.length > 0) {
+            for (int i = 0; i < data.length; i++) {
+                DataList dl = data[i];
+
+                if (dl.getState().equals("state.winfo.river")) {
+                    for (int j = 0; j < dl.size(); j++) {
+                        Data d = dl.get(j);
+                        DataItem[] di = d.getItems();
+
+                        if (di != null && di.length == 1) {
+                           return d.getItems()[0].getStringValue();
+                        }
+                    }
+                }
+            }
+        }
+
+        return null;
+    }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org