comparison 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
comparison
equal deleted inserted replaced
913:9976d99aea34 914:39a39e9be5af
39 import de.intevation.flys.client.client.services.MetaDataServiceAsync; 39 import de.intevation.flys.client.client.services.MetaDataServiceAsync;
40 40
41 import de.intevation.flys.client.shared.model.DataCageTree; 41 import de.intevation.flys.client.shared.model.DataCageTree;
42 import de.intevation.flys.client.shared.model.DataCageNode; 42 import de.intevation.flys.client.shared.model.DataCageNode;
43 import de.intevation.flys.client.shared.model.AttrList; 43 import de.intevation.flys.client.shared.model.AttrList;
44 import de.intevation.flys.client.shared.model.Recommendation;
44 45
45 import java.util.ArrayList; 46 import java.util.ArrayList;
46 import java.util.List; 47 import java.util.List;
47 import java.util.Stack; 48 import java.util.Stack;
48 49
50 /**
51 * Widget showing two Datacages and a plus-button.
52 * Insert a record into a listgrid when plus-button clicked.
53 */
49 public class DatacagePairWidget 54 public class DatacagePairWidget
50 extends VLayout 55 extends VLayout
51 { 56 {
52 protected FLYSConstants messages = 57 protected FLYSConstants messages =
53 GWT.create(FLYSConstants.class); 58 GWT.create(FLYSConstants.class);
69 74
70 75
71 /** 76 /**
72 * Two strings to be displayed in a GridList. 77 * Two strings to be displayed in a GridList.
73 */ 78 */
74 protected class StringPairRecord extends ListGridRecord { 79 protected class RecommendationPairRecord extends ListGridRecord {
75 public StringPairRecord() { 80 Recommendation first;
81 Recommendation second;
82
83 public RecommendationPairRecord() {
76 } 84 }
77 85
78 public StringPairRecord(String first, String second) { 86 public RecommendationPairRecord(Recommendation first, Recommendation second) {
79 setFirst(first); 87 setFirst(first);
80 setSecond(second); 88 setSecond(second);
81 } 89 }
82 90
83 91
84 public void setFirst(String first) { 92 public void setFirst(Recommendation first) {
85 setAttribute(ATTRIBUTE_FIRST, first); 93 this.first = first;
94 setAttribute(ATTRIBUTE_FIRST, first.getFactory() + first.getIDs());
86 } 95 }
87 96
88 97
89 public void setSecond(String second) { 98 public void setSecond(Recommendation second) {
90 setAttribute(ATTRIBUTE_SECOND, second); 99 this.second = second;
100 setAttribute(ATTRIBUTE_SECOND, second.getFactory() + second.getIDs());
91 } 101 }
102
103 public Recommendation getFirst() {return first;}
104 public Recommendation getSecond() {return second;}
92 } 105 }
93 106
94 107
95 /** 108 /**
96 * 109 *
130 */ 143 */
131 public void plusClicked() { 144 public void plusClicked() {
132 ToLoad toLoad1 = firstDatacageWidget.getSelection(); 145 ToLoad toLoad1 = firstDatacageWidget.getSelection();
133 ToLoad toLoad2 = secondDatacageWidget.getSelection(); 146 ToLoad toLoad2 = secondDatacageWidget.getSelection();
134 147
148 // TODO further sanitize (toRecommendations.length)
135 if (toLoad1 == null || toLoad2 == null) { 149 if (toLoad1 == null || toLoad2 == null) {
136 return; 150 return;
137 } 151 }
138 152
139 //grid.addData(new StringPairRecord((String)toLoad1.getKeys().toArray()[0], (String)toLoad2.getKeys().toArray()[0])); 153 grid.addData(new RecommendationPairRecord(
154 toLoad1.toRecommendations().get(0),
155 toLoad2.toRecommendations().get(0)));
140 } 156 }
141 } 157 }
142 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 158 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org