diff flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacagePairWidget.java @ 914:39a39e9be5af

Made DatacageTwinPanel somewhat usable. flys-client/trunk@2775 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Fri, 16 Sep 2011 11:21:38 +0000
parents 6e678b5d08a4
children b48c36076e17
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacagePairWidget.java	Fri Sep 16 11:09:39 2011 +0000
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacagePairWidget.java	Fri Sep 16 11:21:38 2011 +0000
@@ -41,11 +41,16 @@
 import de.intevation.flys.client.shared.model.DataCageTree;
 import de.intevation.flys.client.shared.model.DataCageNode;
 import de.intevation.flys.client.shared.model.AttrList;
+import de.intevation.flys.client.shared.model.Recommendation;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Stack;
 
+/**
+ * Widget showing two Datacages and a plus-button.
+ * Insert a record into a listgrid when plus-button clicked.
+ */
 public class DatacagePairWidget
 extends      VLayout
 {
@@ -71,24 +76,32 @@
     /**
      * Two strings to be displayed in a GridList.
      */
-    protected class StringPairRecord extends ListGridRecord {
-        public StringPairRecord() {
+    protected class RecommendationPairRecord extends ListGridRecord {
+        Recommendation first;
+        Recommendation second;
+
+        public RecommendationPairRecord() {
         }
 
-        public StringPairRecord(String first, String second) {
+        public RecommendationPairRecord(Recommendation first, Recommendation second) {
             setFirst(first);
             setSecond(second);
         }
 
 
-        public void setFirst(String first) {
-            setAttribute(ATTRIBUTE_FIRST, first);
+        public void setFirst(Recommendation first) {
+            this.first = first;
+            setAttribute(ATTRIBUTE_FIRST, first.getFactory() + first.getIDs());
         }
 
 
-        public void setSecond(String second) {
-            setAttribute(ATTRIBUTE_SECOND, second);
+        public void setSecond(Recommendation second) {
+            this.second = second;
+            setAttribute(ATTRIBUTE_SECOND, second.getFactory() + second.getIDs());
         }
+
+        public Recommendation getFirst() {return first;}
+        public Recommendation getSecond() {return second;}
     }
 
 
@@ -132,11 +145,14 @@
         ToLoad toLoad1 = firstDatacageWidget.getSelection();
         ToLoad toLoad2 = secondDatacageWidget.getSelection();
 
+        // TODO further sanitize (toRecommendations.length)
         if (toLoad1 == null || toLoad2 == null) {
             return;
         }
 
-        //grid.addData(new StringPairRecord((String)toLoad1.getKeys().toArray()[0], (String)toLoad2.getKeys().toArray()[0]));
+        grid.addData(new RecommendationPairRecord(
+            toLoad1.toRecommendations().get(0),
+            toLoad2.toRecommendations().get(0)));
     }
 }
 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org