annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/stationinfo/GaugeListGrid.java @ 8303:519023ce3500

Updated the client to build a default artifact for gauge discharge curve. * Removed code for special gauge discharge artifact * Updated GaugeListGrid in info panel to create a the new project * Updated i18n
author Raimund Renkert <rrenkert@intevation.de>
date Mon, 22 Sep 2014 17:08:48 +0200
parents f7f86f4e4c8d
children 5e38e2924c07
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.stationinfo;
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
10
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
11 import java.util.ArrayList;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
12 import java.util.List;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
13
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
14 import com.google.gwt.core.client.GWT;
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
15 import com.google.gwt.user.client.rpc.AsyncCallback;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
16 import com.smartgwt.client.util.SC;
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
17 import com.smartgwt.client.widgets.Canvas;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.grid.ListGridField;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
19 import com.smartgwt.client.widgets.grid.ListGridRecord;
4960
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
20 import com.smartgwt.client.widgets.grid.events.RecordClickEvent;
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
21 import com.smartgwt.client.widgets.grid.events.RecordClickHandler;
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
22
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
23 import org.dive4elements.river.client.client.Config;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
24 import org.dive4elements.river.client.client.FLYS;
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
25 import org.dive4elements.river.client.client.services.AdvanceService;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
26 import org.dive4elements.river.client.client.services.AdvanceServiceAsync;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
27 import org.dive4elements.river.client.client.services.ArtifactService;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
28 import org.dive4elements.river.client.client.services.ArtifactServiceAsync;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
29 import org.dive4elements.river.client.client.services.CreateCollectionService;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
30 import org.dive4elements.river.client.client.services.CreateCollectionServiceAsync;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
31 import org.dive4elements.river.client.client.services.StepForwardService;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
32 import org.dive4elements.river.client.client.services.StepForwardServiceAsync;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
33 import org.dive4elements.river.client.client.ui.CollectionView;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
34 import org.dive4elements.river.client.shared.model.Artifact;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
35 import org.dive4elements.river.client.shared.model.Collection;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
36 import org.dive4elements.river.client.shared.model.Data;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
37 import org.dive4elements.river.client.shared.model.DataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
38 import org.dive4elements.river.client.shared.model.DataList;
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
39 import org.dive4elements.river.client.shared.model.DefaultData;
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
40 import org.dive4elements.river.client.shared.model.DefaultDataItem;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
41 import org.dive4elements.river.client.shared.model.GaugeInfo;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
42 import org.dive4elements.river.client.shared.model.RiverInfo;
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
43
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
44
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
45 /**
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
46 * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a>
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
47 */
4960
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
48 public class GaugeListGrid extends InfoListGrid implements RecordClickHandler {
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
49
4961
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
50 private static final int ABFLUSSTAFEL_COLUMN = 6;
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
51
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
52 /** The ArtifactService used to communicate with the Artifact server. */
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
53 protected ArtifactServiceAsync artifactService =
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
54 GWT.create(ArtifactService.class);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
55
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
56 /** The StepForwardService used to put data into an existing artifact. */
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
57 protected StepForwardServiceAsync forwardService =
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
58 GWT.create(StepForwardService.class);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
59
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
60 /** The ArtifactService used to communicate with the Artifact server. */
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
61 protected CreateCollectionServiceAsync createCollectionService =
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
62 GWT.create(CreateCollectionService.class);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
63
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
64 /** The StepForwardService used to put data into an existing artifact. */
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
65 protected AdvanceServiceAsync advanceService =
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
66 GWT.create(AdvanceService.class);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
67
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
68 public GaugeListGrid(FLYS flys) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
69 super(flys);
5816
76d40d257c8c Use the correct i18n string for gauge info grid header.
Raimund Renkert <rrenkert@intevation.de>
parents: 4981
diff changeset
70 //TODO i18n!!!
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
71 ListGridField nfield = new ListGridField("name", "Pegel");
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
72 ListGridField sfield = new ListGridField("kmstart", "Start [km]", 60);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
73 ListGridField efield = new ListGridField("kmend", "Ende [km]", 60);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
74 ListGridField stfield = new ListGridField("station", "Station [km]");
6272
24be0cc1c67c Replaced the 'old school' wiki link buttons with default links.
Raimund Renkert <rrenkert@intevation.de>
parents: 6190
diff changeset
75 ListGridField lfield = new ListGridField("infolink", "Info");
5816
76d40d257c8c Use the correct i18n string for gauge info grid header.
Raimund Renkert <rrenkert@intevation.de>
parents: 4981
diff changeset
76 ListGridField cfield = new ListGridField("curvelink", MSG.gauge_curve_link());
4959
2b7886ba7bb2 Display Ablusstafel/-kurve in Pegelinfo
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4957
diff changeset
77 cfield.addRecordClickHandler(this);
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
78
6272
24be0cc1c67c Replaced the 'old school' wiki link buttons with default links.
Raimund Renkert <rrenkert@intevation.de>
parents: 6190
diff changeset
79 this.setShowRecordComponents(true);
24be0cc1c67c Replaced the 'old school' wiki link buttons with default links.
Raimund Renkert <rrenkert@intevation.de>
parents: 6190
diff changeset
80 this.setShowRecordComponentsByCell(true);
4959
2b7886ba7bb2 Display Ablusstafel/-kurve in Pegelinfo
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4957
diff changeset
81 this.setFields(nfield, sfield, efield, stfield, lfield, cfield);
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
82 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
83
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
84 public void setRiverInfo(RiverInfo riverinfo) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
85 List<GaugeInfo> gauges = riverinfo.getGauges();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
86
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
87 if (gauges != null && !gauges.isEmpty()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
88
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
89 ArrayList<GaugeInfo> emptygauges = new ArrayList<GaugeInfo>();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
90
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
91 if (!riverinfo.isKmUp()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
92 for (GaugeInfo gauge : gauges) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
93 addGauge(gauge, emptygauges);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
94 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
95 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
96 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
97 for (int i = gauges.size()-1; i >= 0; i--) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
98 GaugeInfo gauge = gauges.get(i);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
99 addGauge(gauge, emptygauges);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
100 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
101 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
102
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
103 // put empty gauges to the end
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
104 for (GaugeInfo gauge : emptygauges) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
105 addGauge(gauge);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
106 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
107 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
108 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
109
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
110 private void addGauge(GaugeInfo gauge, List<GaugeInfo> empty) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
111 if (gauge.getKmStart() != null && gauge.getKmEnd() != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
112 addGauge(gauge);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
113 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
114 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
115 empty.add(gauge);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
116 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
117 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
118
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
119 private void addGauge(GaugeInfo gauge) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
120 this.addData(new GaugeRecord(gauge));
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
121 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
122
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
123 public void open() {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
124 ArrayList<Double> locations = new ArrayList<Double>();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
125
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
126 if (data != null && data.length > 0) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
127 for (int i = 0; i < data.length; i++) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
128 DataList dl = data[i];
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
129 String state = dl.getState();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
130 GWT.log("GaugeListGrid - open " + state);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
131 if (state.equals("state.winfo.location_distance")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
132 Double ldfrom = null;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
133 Double ldto = null;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
134
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
135 for (int j = dl.size()-1; j >= 0; --j) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
136 Data d = dl.get(j);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
137 String label = d.getLabel();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
138 GWT.log("GaugeListGrid - setData - label " + label + " " + d.getStringValue());
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
139 if (label.equals("ld_from")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
140 ldfrom = getDoubleValue(d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
141 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
142 else if (label.equals("ld_to")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
143 ldto = getDoubleValue(d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
144 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
145 else if (label.equals("ld_locations")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
146 getLocationsFromData(locations, d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
147 openOnLocations(locations);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
148 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
149 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
150 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
151 if (ldfrom != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
152 openOnDistance(ldfrom, ldto);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
153 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
154 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
155 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
156 else if(state.equals("state.winfo.distance_only") ||
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
157 state.equals("state.winfo.distance")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
158 Double ldfrom = null;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
159 Double ldto = null;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
160
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
161 for (int j = dl.size()-1; j >= 0; --j) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
162 Data d = dl.get(j);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
163 String label = d.getLabel();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
164 GWT.log("GaugeListGrid - setData - label " + label + " " + d.getStringValue());
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
165 if (label.equals("ld_from")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
166 ldfrom = getDoubleValue(d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
167 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
168 else if (label.equals("ld_to")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
169 ldto = getDoubleValue(d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
170 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
171 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
172
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
173 if (ldfrom != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
174 openOnDistance(ldfrom, ldto);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
175 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
176 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
177 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
178 else if (state.equals("state.winfo.location")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
179 getLocations("ld_locations", locations, dl);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
180 openOnLocations(locations);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
181 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
182 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
183 else if (state.equals("state.winfo.reference.curve.input.start")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
184 getLocations("reference_startpoint", locations, dl);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
185 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
186 else if (state.equals("state.winfo.reference.curve.input.end")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
187 getLocations("reference_endpoint", locations, dl);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
188 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
189 else if (state.equals("state.winfo.historicalq.reference_gauge")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
190 for (int j = dl.size()-1; j >= 0; --j) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
191 Data d = dl.get(j);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
192 String label = d.getLabel();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
193 if (label.equals("reference_gauge")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
194 String tmp = d.getStringValue();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
195 if (tmp != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
196 Long gaugereference = Long.valueOf(tmp);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
197 if (gaugereference != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
198 openOnReference(gaugereference);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
199 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
200 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
201 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
202 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
203 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
204 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
205 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
206 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
207 if (!locations.isEmpty()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
208 openOnLocations(locations);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
209 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
210 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
211 openAll();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
212 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
213 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
214
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
215 void getLocations(String labelname, List<Double> locations, DataList dl) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
216 for (int j = dl.size()-1; j >= 0; --j) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
217 Data d = dl.get(j);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
218 String label = d.getLabel();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
219 if (label.equals(labelname)) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
220 getLocationsFromData(locations, d);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
221 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
222 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
223 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
224
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
225 void getLocationsFromData(List<Double> locations, Data data) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
226 DataItem[] items = data.getItems();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
227 for (int k = 0; k < items.length; k++) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
228 String tmp = items[k].getStringValue();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
229 GWT.log("GaugeListGrid - getLocationsFromData " + tmp);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
230 if (tmp != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
231 if (tmp.contains(" ")) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
232 // string contains several values ...
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
233 String[] values = tmp.split(" ");
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
234 for(int i=0; i < values.length; i++) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
235 Double value = Double.valueOf(values[i]);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
236 if (value != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
237 locations.add(value);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
238 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
239 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
240 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
241 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
242 Double value = Double.valueOf(tmp);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
243 if (value != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
244 locations.add(value);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
245 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
246 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
247 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
248 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
249 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
250
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
251 public void openOnReference(Long number) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
252 GWT.log("GaugeListGrid - openOnReference " + number);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
253 for (ListGridRecord record: this.getRecords()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
254 GaugeRecord item = (GaugeRecord)record;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
255 if (item.getOfficialNumber().equals(number)) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
256 expandRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
257 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
258 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
259 collapseRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
260 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
261 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
262 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
263
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
264 public void openOnDistance(Double start, Double end) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
265 GWT.log("GaugeListGrid - openOnDistance " + start + " " + end);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
266
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
267 for (ListGridRecord record: this.getRecords()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
268 GaugeRecord item = (GaugeRecord)record;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
269 if (end == null && item.getKmStart() != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
270 if (item.getKmStart() >= start) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
271 expandRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
272 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
273 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
274 collapseRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
275 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
276 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
277 else if (item.getKmStart() != null && item.getKmEnd() != null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
278 // as getStart()/getEnd() return Double objects, they can be null and
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
279 // can cause NPEs when comparing with double... strange...
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
280 GWT.log("GaugeListGrid - openOnDistance item " + item.getKmStart() + " " + item.getKmEnd());
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
281 if ((start >= item.getKmStart() && start <= item.getKmEnd()) ||
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
282 (end >= item.getKmStart() && end <= item.getKmEnd()) ||
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
283 (start <= item.getKmStart() && end >= item.getKmEnd())) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
284 expandRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
285 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
286 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
287 collapseRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
288 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
289 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
290 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
291 collapseRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
292 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
293 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
294 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
295
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
296 /**
4980
e70ff0a600a3 flys-client: Whitespace and doc cosemtics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
297 * Open Gauge entry if a location fits to the gauge.
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
298 */
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
299 public void openOnLocations(List<Double> locations) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
300 GWT.log("GaugeListGrid - openOnLocations " + locations);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
301
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
302 if (locations == null || locations.isEmpty()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
303 return;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
304 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
305
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
306 for (ListGridRecord record: this.getRecords()) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
307 GaugeRecord item = (GaugeRecord)record;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
308 boolean isset = false;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
309 for (Double location: locations) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
310 if (locations == null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
311 continue;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
312 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
313
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
314 Double start = item.getKmStart();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
315 Double end = item.getKmEnd();
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
316 if (start == null || end == null) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
317 // should not occur but avoid NullPointerException
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
318 continue;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
319 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
320
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
321 if (location >= start && location <= end) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
322 isset = true;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
323 break;
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
324 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
325 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
326 if (isset) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
327 expandRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
328 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
329 else {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
330 collapseRecord(item);
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
331 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
332 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
333 }
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
334
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
335 @Override
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
336 protected Canvas getExpandPanel(ListGridRecord record) {
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
337 GaugeRecord item = (GaugeRecord)record;
7935
6f8f13d829e5 Removed unnecessary container widgets and layouts.
Raimund Renkert <rrenkert@intevation.de>
parents: 6316
diff changeset
338 return new GaugeInfoPanel(item, flys);
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
339 }
4960
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
340
6032
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
341 /**
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
342 * When clicked on the gauge discharge link, open new Gauge Discharge
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
343 * Curve view.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
344 */
4960
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
345 @Override
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
346 public void onRecordClick(RecordClickEvent event) {
8303
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
347 final GaugeRecord gauge = (GaugeRecord)event.getRecord();
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
348 Config config = Config.getInstance();
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
349 final String locale = config.getLocale();
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
350 createCollectionService.create(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
351 locale,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
352 flys.getCurrentUser().identifier(),
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
353 new AsyncCallback<Collection>() {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
354 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
355 public void onFailure(Throwable caught) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
356 GWT.log("Could not create the new collection.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
357 SC.warn(FLYS.getExceptionString(MSG, caught));
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
358 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
359
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
360 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
361 public void onSuccess(Collection collection) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
362 GWT.log("Successfully created a new collection.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
363 createArtifact(collection, locale, gauge);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
364 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
365 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
366 );
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
367 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
368
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
369 private void createArtifact(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
370 final Collection collection,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
371 final String locale,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
372 final GaugeRecord gauge
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
373 ) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
374 artifactService.create(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
375 locale, "gaugedischargecurve", null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
376 new AsyncCallback<Artifact>() {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
377 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
378 public void onFailure(Throwable caught) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
379 GWT.log("Could not create the new artifact.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
380 SC.warn(FLYS.getExceptionString(MSG, caught));
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
381 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
382
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
383 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
384 public void onSuccess(Artifact artifact) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
385 GWT.log("Successfully created a new artifact.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
386
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
387 DataItem riverItem = new DefaultDataItem(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
388 "river",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
389 "river",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
390 gauge.getRiverName());
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
391 Data river = new DefaultData(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
392 "river",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
393 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
394 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
395 new DataItem[]{riverItem});
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
396
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
397 DataItem refItem = new DefaultDataItem(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
398 "reference_gauge",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
399 "reference_gauge",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
400 gauge.getOfficialNumber().toString());
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
401 Data ref = new DefaultData(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
402 "reference_gauge",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
403 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
404 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
405 new DataItem[]{refItem});
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
406
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
407 DataItem locItem = new DefaultDataItem(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
408 "ld_locations",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
409 "ld_locations",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
410 gauge.getStation().toString());
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
411 Data loc = new DefaultData(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
412 "ld_locations",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
413 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
414 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
415 new DataItem[]{locItem});
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
416
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
417 DataItem nameItem = new DefaultDataItem(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
418 "gauge_name",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
419 "gauge_name",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
420 gauge.getName());
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
421 Data name = new DefaultData(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
422 "gauge_name",
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
423 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
424 null,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
425 new DataItem[]{nameItem});
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
426
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
427 Data[] data = new Data[]{river, ref, loc, name};
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
428 forwardService.go(locale, artifact, data,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
429 new AsyncCallback<Artifact>() {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
430 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
431 public void onFailure(Throwable caught) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
432 GWT.log("Could not feed the artifact.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
433 SC.warn(caught.getMessage());
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
434 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
435
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
436 @Override
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
437 public void onSuccess(Artifact artifact) {
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
438 GWT.log("Successfully feed the artifact.");
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
439 CollectionView view = new CollectionView(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
440 flys,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
441 collection,
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
442 artifact);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
443 flys.getWorkspace().addView(
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
444 collection.identifier(),
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
445 view);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
446 view.addArtifactToCollection(artifact);
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
447 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
448 });
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
449 }
519023ce3500 Updated the client to build a default artifact for gauge discharge curve.
Raimund Renkert <rrenkert@intevation.de>
parents: 8023
diff changeset
450 });
4960
a3a59055ed5e Add click handler to create an artifact for Abflusstafel-/kurve from a pegel cell
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4959
diff changeset
451 }
4961
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
452
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
453 @Override
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
454 public String getCellCSSText(ListGridRecord record, int rowNum,
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
455 int colNum) {
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
456 if (colNum == ABFLUSSTAFEL_COLUMN) {
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
457 // display the ablfusstafel cell like a link
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
458 return "text-decoration: underline; color: #0000EE; cursor: pointer;";
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
459 }
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
460 else {
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
461 return super.getCellCSSText(record, rowNum, colNum);
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
462 }
27b4d5d20dc8 Render text in Abflusstafel/-kurve cell like a "normal" html link
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4960
diff changeset
463 }
4956
f46a07c11324 Refactor Pegel- and Messtelleninfo in client ui
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
464 }

http://dive4elements.wald.intevation.org