comparison gwt-client/src/main/java/org/dive4elements/river/client/client/ui/RadioPanel.java @ 9063:b6919e3c2d86

work on uinfo-inundation_duration states
author gernotbelger
date Tue, 08 May 2018 15:21:23 +0200
parents 5e38e2924c07
children b5d7a9d79837
comparison
equal deleted inserted replaced
9062:5198066492a9 9063:b6919e3c2d86
6 * documentation coming with Dive4Elements River for details. 6 * documentation coming with Dive4Elements River for details.
7 */ 7 */
8 8
9 package org.dive4elements.river.client.client.ui; 9 package org.dive4elements.river.client.client.ui;
10 10
11 import com.google.gwt.core.client.GWT; 11 import java.util.LinkedHashMap;
12
13 import com.smartgwt.client.widgets.Canvas;
14 import com.smartgwt.client.widgets.Label;
15 import com.smartgwt.client.widgets.form.DynamicForm;
16 import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
17 import com.smartgwt.client.widgets.layout.HLayout;
18 import com.smartgwt.client.widgets.layout.VLayout;
19 12
20 import org.dive4elements.river.client.shared.model.Data; 13 import org.dive4elements.river.client.shared.model.Data;
21 import org.dive4elements.river.client.shared.model.DataItem; 14 import org.dive4elements.river.client.shared.model.DataItem;
22 import org.dive4elements.river.client.shared.model.DataList; 15 import org.dive4elements.river.client.shared.model.DataList;
23 import org.dive4elements.river.client.shared.model.DefaultData; 16 import org.dive4elements.river.client.shared.model.DefaultData;
24 import org.dive4elements.river.client.shared.model.DefaultDataItem; 17 import org.dive4elements.river.client.shared.model.DefaultDataItem;
25 18
26 import java.util.LinkedHashMap; 19 import com.google.gwt.core.client.GWT;
20 import com.smartgwt.client.widgets.Canvas;
21 import com.smartgwt.client.widgets.Label;
22 import com.smartgwt.client.widgets.form.DynamicForm;
23 import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
24 import com.smartgwt.client.widgets.layout.HLayout;
25 import com.smartgwt.client.widgets.layout.VLayout;
27 26
28 public class RadioPanel extends AbstractUIProvider { 27 public class RadioPanel extends AbstractUIProvider {
29 28
30 private static final long serialVersionUID = 3357071563224461043L; 29 private static final long serialVersionUID = 3357071563224461043L;
31 30
32 protected String dataName; 31 protected String dataName;
33 protected DynamicForm form; 32 protected DynamicForm form;
34 33
35 @Override 34 @Override
36 public Canvas createOld(DataList dataList) { 35 public Canvas createOld(final DataList dataList) {
37 Data data = dataList.get(0); 36 final Data data = dataList.get(0);
38 DataItem[] items = data.getItems(); 37 final DataItem[] items = data.getItems();
39 38
40 HLayout layout = new HLayout(); 39 final HLayout layout = new HLayout();
41 Label label = new Label(dataList.getLabel()); 40 final Label label = new Label(dataList.getLabel());
42 Label value = new Label(items[0].getLabel()); 41 final Label value = new Label(items[0].getLabel());
43 42
44 layout.setHeight(35); 43 layout.setHeight(35); // hat Einfluss auf Layout in der Übersicht (oben) nach Setzen des Wertes für den State
45 layout.setWidth(400); 44 layout.setWidth(400);
46 label.setWidth(200); 45 label.setWidth(200);
47 46
48 layout.addMember(label); 47 layout.addMember(label);
49 layout.addMember(value); 48 layout.addMember(value);
51 50
52 return layout; 51 return layout;
53 } 52 }
54 53
55 @Override 54 @Override
56 public Canvas create(DataList dataList) { 55 public Canvas create(final DataList dataList) {
57 Data data = dataList.get(0); 56 final Data data = dataList.get(0);
58 DataItem[] items = data.getItems(); 57 final DataItem[] items = data.getItems();
59 58
60 this.dataName = data.getLabel(); 59 this.dataName = data.getLabel();
61 60
62 VLayout layout = new VLayout(); 61 final VLayout layout = new VLayout();
63 Label label = new Label(data.getDescription()); 62 final Label label = new Label(data.getDescription());
64 RadioGroupItem rgi = new RadioGroupItem("selection"); 63 final RadioGroupItem rgi = new RadioGroupItem("selection");
65 rgi.setShowTitle(false); 64 rgi.setShowTitle(false);
66 GWT.log("items: " + items.length); 65 GWT.log("items: " + items.length);
67 LinkedHashMap<String, String> elems = 66 final LinkedHashMap<String, String> elems = new LinkedHashMap<String, String>();
68 new LinkedHashMap<String, String>(); 67 for (final DataItem item : items) {
69 for (int i = 0; i < items.length; i++) { 68 GWT.log(item.getStringValue() + "; " + item.getLabel());
70 GWT.log(items[i].getStringValue() + "; " + items[i].getLabel()); 69 elems.put(item.getStringValue(), item.getLabel());
71 elems.put(items[i].getStringValue(), items[i].getLabel());
72 } 70 }
73 rgi.setValueMap(elems); 71 rgi.setValueMap(elems);
74 rgi.setDefaultValue(items[0].getStringValue()); 72 rgi.setDefaultValue(items[0].getStringValue());
75 73
76 form = new DynamicForm(); 74 this.form = new DynamicForm();
77 form.setFields(rgi); 75 this.form.setFields(rgi);
78 layout.setMembersMargin(10); 76 layout.setMembersMargin(10);
79 layout.setHeight(35); 77 layout.setHeight(35);
80 label.setHeight(35); 78 label.setHeight(35);
81 79
82 layout.addMember(label); 80 layout.addMember(label);
83 layout.addMember(form); 81 layout.addMember(this.form);
84 layout.addMember(getNextButton()); 82 layout.addMember(getNextButton());
85 layout.setMembersMargin(10); 83 layout.setMembersMargin(10);
86 84
87 //initDefaultValues(dataList); 85 // initDefaultValues(dataList);
88 86
89 return layout; 87 return layout;
90 } 88 }
91 89
92 @Override 90 @Override
93 protected Data[] getData() { 91 protected Data[] getData() {
94 String value = form.getValueAsString("selection"); 92 final String value = this.form.getValueAsString("selection");
95 DataItem item = new DefaultDataItem( 93 final DataItem item = new DefaultDataItem(this.dataName, this.dataName, value);
96 this.dataName, this.dataName, value); 94 return new Data[] { new DefaultData(this.dataName, null, null, new DataItem[] { item }) };
97 return new Data[] { new DefaultData(
98 this.dataName, null, null, new DataItem[]{item})};
99 } 95 }
100 96
101 protected String getTitle(DataItem item) { 97 protected String getTitle(final DataItem item) {
102 return item.getLabel(); 98 return item.getLabel();
103 } 99 }
104 } 100 }

http://dive4elements.wald.intevation.org