annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/stationinfo/GaugeInfoPanel.java @ 4981:0e6e44e6725f

flys-client: (first draft) In GaugeInfo show link to show main values.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Thu, 14 Feb 2013 09:32:29 +0100
parents 6f6461e07854
children e2053fbcd165
rev   line source
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui.stationinfo;
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
2
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
4 import com.google.gwt.event.dom.client.ClickEvent;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
5 import com.google.gwt.event.dom.client.ClickHandler;
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
6 import com.google.gwt.i18n.client.NumberFormat;
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
7 import com.google.gwt.user.client.ui.Anchor;
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
8 import com.google.gwt.user.client.ui.Grid;
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
9 import com.smartgwt.client.widgets.layout.VLayout;
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
10 import com.smartgwt.client.widgets.Label;
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
11
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
12 import de.intevation.flys.client.client.FLYS;
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
13 import de.intevation.flys.client.client.FLYSConstants;
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
14 import de.intevation.flys.client.shared.model.GaugeInfo;
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
15
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
16 public class GaugeInfoPanel extends VLayout {
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
17
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
18 /** The message class that provides i18n strings.*/
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
19 private FLYSConstants MSG = GWT.create(FLYSConstants.class);
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
20
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
21 /** Application instance. */
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
22 private FLYS flys;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
23
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
24 public GaugeInfoPanel(GaugeInfo gauge, FLYS flys) {
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
25 this.flys = flys;
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
26 setStyleName("gaugeinfopanel");
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
27 setWidth100();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
28
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
29 Grid grid = new Grid(4, 2);
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
30
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
31 NumberFormat nf = NumberFormat.getDecimalFormat();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
32
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
33 Double minw = gauge.getMinW();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
34 Double maxw = gauge.getMaxW();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
35 if (minw != null && maxw != null) {
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
36 grid.setText(0, 0, MSG.wq_value_q());
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
37 grid.setText(0, 1, nf.format(minw) +
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
38 " - " + nf.format(maxw));
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
39 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
40
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
41 Double minq = gauge.getMinQ();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
42 Double maxq = gauge.getMaxQ();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
43 if (minq != null && maxq != null) {
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
44 grid.setText(1, 0, MSG.wq_value_w());
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
45 grid.setText(1, 1, nf.format(minq) +
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
46 " - " + nf.format(maxq));
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
47 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
48
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
49 Double aeo = gauge.getAeo();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
50 if (aeo != null) {
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
51 grid.setText(2, 0, "AEO [kmĀ²]");
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
52 grid.setText(2, 1, nf.format(aeo));
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
53 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
54
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
55 Double datum = gauge.getDatum();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
56 if (datum != null) {
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
57 grid.setText(3, 0, MSG.gauge_zero() + " [" +
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
58 gauge.getWstUnit() + "]");
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
59 grid.setText(3, 1, nf.format(datum));
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
60 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
61
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
62 addMember(grid);
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
63 addMember(new GaugeMainValueAnchor(flys, gauge));
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
64 }
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
65
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
66
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
67 /**
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
68 * Clickable anchor that asks application to show window with
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
69 * main values for gauge.
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
70 */
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
71 class GaugeMainValueAnchor extends Anchor implements ClickHandler {
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
72
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
73 private FLYS flys;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
74 private GaugeInfo gauge;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
75
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
76 public GaugeMainValueAnchor(FLYS flys, GaugeInfo gauge) {
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
77 super("TODO:i18n MainVALUES");
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
78 // TODO i18n mainvalues
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
79 this.flys = flys;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
80 this.gauge = gauge;
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
81
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
82 addClickHandler(this);
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
83 }
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
84
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
85 @Override
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
86 public void onClick(ClickEvent ev) {
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
87 GWT.log("GaugeMainValueAnchor - onClick " + gauge.getRiverName() +
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
88 " " + gauge.getOfficialNumber());
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
89 flys.newGaugeMainValueTable(gauge);
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
90 }
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
91 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
92 }

http://dive4elements.wald.intevation.org