annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/uinfo/VegetationzonesTablePanel.java @ 9066:b5d7a9d79837

uinfo.inundation_duration ui
author gernotbelger
date Fri, 11 May 2018 17:04:35 +0200
parents
children a5cf8d7bff3c
rev   line source
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
2 * Software engineering by Intevation GmbH
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
3 *
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
7 */
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
8
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
9 package org.dive4elements.river.client.client.ui.uinfo;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
10
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
11 import java.util.ArrayList;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
12 import java.util.List;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
13
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
14 import org.dive4elements.river.client.client.ui.AbstractUIProvider;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
15 import org.dive4elements.river.client.client.ui.PanelHelper;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
16 import org.dive4elements.river.client.shared.model.Data;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
17 import org.dive4elements.river.client.shared.model.DataItem;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
18 import org.dive4elements.river.client.shared.model.DataList;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
19 import org.dive4elements.river.client.shared.model.DefaultData;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
20 import org.dive4elements.river.client.shared.model.DefaultDataItem;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
21
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
22 import com.smartgwt.client.data.Record;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
23 import com.smartgwt.client.widgets.Canvas;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
24 import com.smartgwt.client.widgets.Label;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
25 import com.smartgwt.client.widgets.form.fields.TextItem;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
26 import com.smartgwt.client.widgets.form.validator.IsIntegerValidator;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
27 import com.smartgwt.client.widgets.form.validator.IsStringValidator;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
28 import com.smartgwt.client.widgets.grid.ListGrid;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
29 import com.smartgwt.client.widgets.grid.ListGridField;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
30 import com.smartgwt.client.widgets.grid.ListGridRecord;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
31 import com.smartgwt.client.widgets.layout.HLayout;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
32 import com.smartgwt.client.widgets.layout.VLayout;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
33
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
34 public class VegetationzonesTablePanel extends AbstractUIProvider {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
35 private static final long serialVersionUID = 1L;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
36
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
37 protected ListGrid elements;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
38 private TextItem vegzone;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
39 private TextItem start;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
40 private TextItem end;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
41 private ListGrid table;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
42
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
43 private static final String datakey = "vegzones";
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
44
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
45 public Canvas createWidget(final DataList data) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
46
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
47 final VLayout root = new VLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
48 final HLayout input = new HLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
49 final VLayout tableLayout = new VLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
50
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
51 this.elements = new ListGrid();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
52
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
53 final Label title = new Label(data.get(0).getDescription());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
54 title.setHeight("35px"); // orig:25
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
55
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
56 this.vegzone = PanelHelper.createItem("uinfo_vegetation_zone_label", this.MSG.uinfo_vegetation_zone_label(), 200, new IsStringValidator());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
57 this.start = PanelHelper.createItem("uinfo_vegetation_zones_from", this.MSG.uinfo_vegetation_zones_from(), 40, new IsIntegerValidator());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
58 this.end = PanelHelper.createItem("uinfo_vegetation_zones_to", this.MSG.uinfo_vegetation_zones_to(), 40, new IsIntegerValidator());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
59
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
60 final Label sel = new Label(this.MSG.select());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
61 sel.setHeight(25);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
62 this.elements.setWidth(450); // 185
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
63 this.elements.setHeight(500); // 120
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
64 this.elements.setShowHeaderContextMenu(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
65 this.elements.setCanReorderFields(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
66 this.elements.setCanSort(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
67 this.elements.setCanEdit(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
68 final ListGridField vegzone = new ListGridField("vegzone", this.MSG.uinfo_vegetation_zones_label());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
69 final ListGridField from = new ListGridField("from", this.MSG.uinfo_vegetation_zones_from());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
70 final ListGridField to = new ListGridField("to", this.MSG.uinfo_vegetation_zones_to());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
71 vegzone.setWidth(285);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
72 from.setWidth(70);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
73 to.setWidth(70);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
74
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
75 for (final Data dataItem : data.getAll()) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
76 createEntry(dataItem);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
77 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
78
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
79 this.elements.setFields(vegzone, from, to);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
80
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
81 tableLayout.addMember(this.elements);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
82 root.addMember(title);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
83 root.addMember(input);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
84 root.addMember(tableLayout);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
85 root.addMember(PanelHelper.getSpacer(10));
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
86
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
87 return root;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
88 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
89
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
90 private void createEntry(final Data data) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
91
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
92 if (data.getItems() != null) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
93 for (final DataItem dataItem : data.getItems()) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
94 if (dataItem.getStringValue() != null) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
95 if (dataItem.getStringValue().contains(",")) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
96 final String[] vals = dataItem.getStringValue().split(",");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
97 if (vals.length == 3) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
98 final String vegzone = vals[0];
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
99 final String from = vals[1];
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
100 final String to = vals[2];
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
101
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
102 if (vegzone == null || from == null || to == null) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
103 return;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
104 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
105
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
106 final ListGridRecord r = new ListGridRecord();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
107 r.setAttribute("vegzone", vegzone);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
108 r.setAttribute("from", from);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
109 r.setAttribute("to", to);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
110 this.elements.addData(r);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
111
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
112 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
113 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
114 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
115 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
116 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
117 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
118
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
119 @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
120 public Canvas createOld(final DataList dataList) { // TODO: Veg-Table übersichtlich oben anzeigen, irgendwie abkürzen (etwa "20 Einträge")
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
121 final HLayout layout = new HLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
122 layout.setWidth("400px");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
123 final VLayout vLayout = new VLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
124 vLayout.setWidth(130);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
125 final Label label = new Label(dataList.getLabel());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
126 label.setWidth("200px");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
127 label.setHeight(25);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
128
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
129 final List<Data> items = dataList.getAll();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
130 final Data str = getData(items, datakey);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
131 final DataItem[] strItems = str.getItems();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
132
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
133 final String[] entries = strItems[0].getLabel().split(";");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
134 for (final String entry : entries) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
135 final String[] vals = entry.split(",");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
136 final Label dateLabel = new Label(vals[0] + " TODO: MAKE SELECTED ENTRIES VEGZONE FOR ARTIFACT" + vals[1]);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
137 dateLabel.setHeight(20);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
138 vLayout.addMember(dateLabel);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
139 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
140 final Canvas back = getBackButton(dataList.getState());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
141 layout.addMember(label);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
142 layout.addMember(vLayout);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
143 layout.addMember(back);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
144
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
145 return layout;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
146 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
147
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
148 @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
149 public Canvas create(final DataList data) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
150 final VLayout layout = new VLayout();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
151 final Canvas helper = createHelper();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
152 this.helperContainer.addMember(helper);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
153
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
154 final Canvas submit = getNextButton();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
155 // if (data.size() == 0) { // TODO: GET DATA
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
156
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
157 data.add(getDummyData());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
158
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
159 // }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
160 final Canvas widget = createWidget(data);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
161
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
162 layout.addMember(widget);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
163 layout.addMember(submit); // TODO: SUBMIT
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
164
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
165 // fetchSedimentLoadData(); //TODO: feed from database...
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
166
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
167 return layout;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
168 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
169
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
170 private Canvas createHelper() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
171 this.table = new ListGrid();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
172 this.table.setShowHeaderContextMenu(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
173 this.table.setWidth100();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
174 this.table.setShowRecordComponents(true);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
175 this.table.setShowRecordComponentsByCell(true);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
176 this.table.setHeight100();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
177 this.table.setEmptyMessage(this.MSG.empty_table());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
178 this.table.setCanReorderFields(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
179
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
180 /* Input support pins */
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
181 // final String baseUrl = GWT.getHostPageBaseURL();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
182 // final ListGridField pinFrom = new ListGridField("fromIcon", this.MSG.uinfo_vegetation_zones_from());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
183 // pinFrom.setWidth(300);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
184 // pinFrom.setType(ListGridFieldType.ICON);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
185 // pinFrom.setCellIcon(baseUrl + this.MSG.markerGreen());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
186 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
187 // final ListGridField pinTo = new ListGridField("toIcon", this.MSG.uinfo_vegetation_zones_to());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
188 // pinTo.setType(ListGridFieldType.ICON);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
189 // pinTo.setWidth(300);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
190 // pinTo.setCellIcon(baseUrl + this.MSG.markerRed());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
191 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
192 // pinFrom.addRecordClickHandler(new RecordClickHandler() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
193 // @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
194 // public void onRecordClick(final RecordClickEvent e) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
195 // final Record r = e.getRecord();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
196 // VegetationzonesTableEditPanel.this.vegzone.setValue(r.getAttribute("date")); // date??
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
197 // }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
198 // });
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
199 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
200 // pinFrom.addRecordClickHandler(new RecordClickHandler() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
201 // @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
202 // public void onRecordClick(final RecordClickEvent e) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
203 // final Record r = e.getRecord();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
204 // VegetationzonesTableEditPanel.this.start.setValue(r.getAttribute("date"));
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
205 // }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
206 // });
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
207 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
208 // pinTo.addRecordClickHandler(new RecordClickHandler() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
209 // @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
210 // public void onRecordClick(final RecordClickEvent e) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
211 // final Record r = e.getRecord();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
212 // VegetationzonesTableEditPanel.this.end.setValue(r.getAttribute("date"));
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
213 // }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
214 // });
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
215 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
216 // final ListGridField date = new ListGridField("date", this.MSG.year());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
217 // date.setType(ListGridFieldType.TEXT);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
218 // date.setWidth(100);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
219 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
220 // final ListGridField descr = new ListGridField("description", this.MSG.description());
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
221 // descr.setType(ListGridFieldType.TEXT);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
222 // descr.setWidth("*");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
223 //
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
224 // this.table.setFields(pinFrom, pinTo, date, descr);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
225 return this.table;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
226 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
227
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
228 @Override
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
229 protected Data[] getData() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
230 final List<Data> data = new ArrayList<Data>();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
231
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
232 final ListGridRecord[] lgr = this.elements.getRecords();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
233 if (lgr.length == 0) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
234 return getDummyData();// return new Data[0];
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
235 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
236 String d = "";
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
237 for (final ListGridRecord element : lgr) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
238 final Record r = element;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
239 d += r.getAttribute("vegzone") + "," + r.getAttribute("from") + "," + r.getAttribute("to");
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
240 d += ";";
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
241 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
242
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
243 final DataItem item = new DefaultDataItem(datakey, null, d); // DATA-key
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
244 data.add(new DefaultData(datakey, null, null, new DataItem[] { item }));
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
245 return data.toArray(new Data[data.size()]);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
246 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
247
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
248 private Data[] getDummyData() {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
249 final List<Data> data = new ArrayList<Data>();
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
250 String d = "";
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
251 d = d + "Zonaler Wald" + "," + "0" + "," + "5";
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
252 final DataItem item = new DefaultDataItem(datakey, "entryDescription", d); // DATA-key
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
253 data.add(new DefaultData(datakey, null, null, new DataItem[] { item }));
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
254 return data.toArray(new Data[data.size()]);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
255 }
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
256
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents:
diff changeset
257 }

http://dive4elements.wald.intevation.org