Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/minfo/SedLoadOffEpochPanel.java @ 8597:ba2a34a4e440
(issue1051) Validate epochs before adding them to the list
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 19 Mar 2015 16:28:40 +0100 |
parents | b6371be363b1 |
children |
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 |
8231
dded480e17c9
(issue1448) Add Panel for new sq_ti_select state
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8230
diff
changeset
|
48 protected ListGrid sedLoadTable; |
4299
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 |
6728
d56a19830e04
issue1393/SedLoadOffEpochPanel: Request the correct (off-epoch) data
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6712
diff
changeset
|
62 /** Create layout for data entered previously. */ |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
63 @Override |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
64 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
|
65 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
|
66 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
|
67 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
|
68 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
|
69 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
|
70 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
|
71 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
|
72 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
73 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
|
74 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
|
75 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
|
76 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
77 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
|
78 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
|
79 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
|
80 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
|
81 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
|
82 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
|
83 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
84 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
|
85 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
|
86 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
|
87 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
|
88 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
89 return layout; |
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 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
92 @Override |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
93 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
|
94 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
|
95 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
|
96 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
|
97 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
98 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
|
99 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
|
100 |
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(widget); |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
102 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
|
103 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
104 fetchSedimentLoadData(); |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
105 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
106 return layout; |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
107 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
108 |
6712
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
109 /** 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
|
110 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
|
111 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
|
112 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
|
113 sedLoadTable.setWidth100(); |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
114 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
|
115 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
|
116 sedLoadTable.setHeight100(); |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
117 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
|
118 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
|
119 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
|
120 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
121 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
|
122 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
|
123 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
|
124 |
6731
a8910581ff03
issue1393: Fix display, no description, just years needed to select official epochs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6728
diff
changeset
|
125 sedLoadTable.setFields(date); |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
126 return sedLoadTable; |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
127 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
128 |
6734 | 129 /** Get data via listgrid selection. */ |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
130 @Override |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
131 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
|
132 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
|
133 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
134 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
|
135 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
|
136 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
|
137 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
138 String d = ""; |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
139 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
|
140 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
|
141 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
|
142 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
|
143 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
|
144 d += ";"; |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
145 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
146 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
|
147 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
|
148 "epochs", |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
149 null, |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
150 null, |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
151 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
|
152 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
|
153 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
154 |
6734 | 155 /** Fetch load info from service and populate table. */ |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
156 protected void fetchSedimentLoadData() { |
6712
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
157 Config config = Config.getInstance(); |
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
158 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
|
159 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
160 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
|
161 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
|
162 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
163 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
|
164 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
|
165 |
8230
f54c4b858213
(issue1448) Extend SedimentLoadInfo request to handle sq time intervals
Andre Heinecke <andre.heinecke@intevation.de>
parents:
6734
diff
changeset
|
166 sedLoadInfoService.getSedimentLoadInfo(locale, river, "off_epoch", km[0], km[1], "", |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
167 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
|
168 public void onFailure(Throwable caught) { |
6712
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
169 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
|
170 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
|
171 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
172 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
173 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
|
174 int num = sedLoad != null ? sedLoad.length :0; |
6712
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
175 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
|
176 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
177 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
|
178 return; |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
179 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
180 |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
181 addSedimentLoadInfo(sedLoad); |
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 } |
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 |
6734 | 188 /** Add record to input helper listgrid. */ |
4299
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
189 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
|
190 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
|
191 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
|
192 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
|
193 } |
abd304085bd4
Added helper panel to sediment load UI to display sediemnt load overviews.
Raimund Renkert <rrenkert@intevation.de>
parents:
4223
diff
changeset
|
194 } |
4223
015b219a97af
Added new UI provider for sediment load parameter input.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
195 } |
6712
e1ec4d4f53c6
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
196 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |