annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/minfo/SedLoadOffEpochPanel.java @ 6712:e1ec4d4f53c6

Cosmetics.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Tue, 30 Jul 2013 15:56:34 +0200
parents ea9eef426962
children d56a19830e04
rev   line source
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
6 * documentation coming with Dive4Elements River for details.
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
9 package org.dive4elements.river.client.client.ui.minfo;
4223
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
10
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
11 import java.util.ArrayList;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
12 import java.util.List;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
13
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
14 import com.google.gwt.core.client.GWT;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
15 import com.google.gwt.user.client.rpc.AsyncCallback;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
16 import com.smartgwt.client.data.Record;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
17 import com.smartgwt.client.types.ListGridFieldType;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
18 import com.smartgwt.client.types.SelectionAppearance;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
19 import com.smartgwt.client.util.SC;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
20 import com.smartgwt.client.widgets.Canvas;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
21 import com.smartgwt.client.widgets.Label;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
22 import com.smartgwt.client.widgets.grid.ListGrid;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
23 import com.smartgwt.client.widgets.grid.ListGridField;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
24 import com.smartgwt.client.widgets.grid.ListGridRecord;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
25 import com.smartgwt.client.widgets.layout.HLayout;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
26 import com.smartgwt.client.widgets.layout.VLayout;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
27
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
28 import org.dive4elements.river.client.client.Config;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
29 import org.dive4elements.river.client.client.services.SedimentLoadInfoService;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
30 import org.dive4elements.river.client.client.services.SedimentLoadInfoServiceAsync;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
31 import org.dive4elements.river.client.client.ui.PeriodPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
32 import org.dive4elements.river.client.shared.model.ArtifactDescription;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
33 import org.dive4elements.river.client.shared.model.Data;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
34 import org.dive4elements.river.client.shared.model.DataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
35 import org.dive4elements.river.client.shared.model.DataList;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
36 import org.dive4elements.river.client.shared.model.DefaultData;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
37 import org.dive4elements.river.client.shared.model.DefaultDataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
38 import org.dive4elements.river.client.shared.model.SedimentLoadInfoObject;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
39 import org.dive4elements.river.client.shared.model.SedimentLoadInfoRecord;
4223
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
41 /** Show input to select an official epoch. */
4223
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42 public class SedLoadOffEpochPanel
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 extends PeriodPanel
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44 {
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
45 protected SedimentLoadInfoServiceAsync sedLoadInfoService =
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
46 GWT.create(SedimentLoadInfoService.class);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
47
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
48 private ListGrid sedLoadTable;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
49
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
50 /** Creates layout with title. */
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
51 public Canvas createWidget(DataList data) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
52 VLayout root = new VLayout();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
53
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
54 Label title = new Label(data.get(0).getDescription());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
55 title.setHeight("25px");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
56
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
57 root.addMember(title);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
58
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
59 return root;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
60 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
61
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
62 @Override
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
63 public Canvas createOld(DataList dataList) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
64 HLayout layout = new HLayout();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
65 layout.setWidth("400px");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
66 VLayout vLayout = new VLayout();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
67 vLayout.setWidth(130);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
68 Label label = new Label(dataList.getLabel());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
69 label.setWidth("200px");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
70 label.setHeight(25);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
71
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
72 List<Data> items = dataList.getAll();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
73 Data str = getData(items, "epochs");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
74 DataItem[] strItems = str.getItems();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
75
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
76 String[] pairs = strItems[0].getLabel().split(";");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
77 for (int i = 0; i < pairs.length; i++) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
78 String[] vals = pairs[i].split(",");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
79 Label dateLabel = new Label(vals[0] + " - " + vals[1]);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
80 dateLabel.setHeight(20);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
81 vLayout.addMember(dateLabel);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
82 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
83 Canvas back = getBackButton(dataList.getState());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
84 layout.addMember(label);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
85 layout.addMember(vLayout);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
86 layout.addMember(back);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
87
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
88 return layout;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
89 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
90
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
91 @Override
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
92 public Canvas create(DataList data) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
93 VLayout layout = new VLayout();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
94 Canvas helper = createHelper();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
95 this.helperContainer.addMember(helper);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
96
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
97 Canvas submit = getNextButton();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
98 Canvas widget = createWidget(data);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
99
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
100 layout.addMember(widget);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
101 layout.addMember(submit);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
102
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
103 fetchSedimentLoadData();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
104
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
105 return layout;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
106 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
107
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
108 /** Creates the helper grid in which off epochs can be selected. */
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
109 protected Canvas createHelper() {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
110 sedLoadTable = new ListGrid();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
111 sedLoadTable.setShowHeaderContextMenu(false);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
112 sedLoadTable.setWidth100();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
113 sedLoadTable.setShowRecordComponents(true);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
114 sedLoadTable.setShowRecordComponentsByCell(true);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
115 sedLoadTable.setHeight100();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
116 sedLoadTable.setEmptyMessage(MSG.empty_table());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
117 sedLoadTable.setCanReorderFields(false);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
118 sedLoadTable.setSelectionAppearance(SelectionAppearance.CHECKBOX);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
119
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
120 ListGridField date = new ListGridField("date", MSG.year());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
121 date.setType(ListGridFieldType.TEXT);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
122 date.setWidth(100);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
123
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
124 ListGridField descr =
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
125 new ListGridField("description", MSG.description());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
126 descr.setType(ListGridFieldType.TEXT);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
127 descr.setWidth("*");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
128
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
129 sedLoadTable.setFields(date, descr);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
130 return sedLoadTable;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
131 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
132
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
133 @Override
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
134 public Data[] getData() {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
135 List<Data> data = new ArrayList<Data>();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
136
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
137 ListGridRecord[] lgr = sedLoadTable.getSelectedRecords();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
138 if (lgr.length == 0) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
139 return new Data[0];
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
140 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
141 String d = "";
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
142 for (int i = 0; i < lgr.length; i++) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
143 Record r = (Record) lgr[i];
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
144 String date = r.getAttribute("date");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
145 String[] range = date.split(" - ");
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
146 d += range[0] + "," + range[1];
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
147 d += ";";
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
148 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
149 DataItem item = new DefaultDataItem("epochs", null, d);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
150 data.add(new DefaultData(
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
151 "epochs",
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
152 null,
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
153 null,
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
154 new DataItem[] { item }));
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
155 return data.toArray(new Data[data.size()]);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
156 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
157
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
158 protected void fetchSedimentLoadData() {
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
159 Config config = Config.getInstance();
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
160 String locale = config.getLocale ();
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
161
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
162 ArtifactDescription adescr = artifact.getArtifactDescription();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
163 DataList[] data = adescr.getOldData();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
164
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
165 double[] km = artifact.getArtifactDescription().getKMRange();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
166 String river = artifact.getArtifactDescription().getRiver();
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
167
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
168 sedLoadInfoService.getSedimentLoadInfo(locale, river, "epoch", km[0], km[1],
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
169 new AsyncCallback<SedimentLoadInfoObject[]>() {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
170 public void onFailure(Throwable caught) {
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
171 GWT.log("Could not receive sediment load informations.");
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
172 SC.warn(caught.getMessage());
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
173 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
174
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
175 public void onSuccess(SedimentLoadInfoObject[] sedLoad) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
176 int num = sedLoad != null ? sedLoad.length :0;
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
177 GWT.log("Received " + num + " sediment load informations.");
4299
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
178
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
179 if (num == 0) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
180 return;
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
181 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
182
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
183 addSedimentLoadInfo(sedLoad);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
184 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
185 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
186 );
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
187 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
188
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
189
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
190 protected void addSedimentLoadInfo (SedimentLoadInfoObject[] sedLoad) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
191 for(SedimentLoadInfoObject sl: sedLoad) {
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
192 SedimentLoadInfoRecord rec = new SedimentLoadInfoRecord(sl);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
193 sedLoadTable.addData(rec);
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
194 }
abd304085bd4 Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents: 4223
diff changeset
195 }
4223
015b219a97af Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
196 }
6712
e1ec4d4f53c6 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
197 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org