annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/stationinfo/GaugeInfoPanel.java @ 5462:f2371f3aaf03

Show top level folder icons only if node has no factory If you have an empty folder the folder icon is still shown. This makes it possible to add functional "Top Level" entries in the Datacage
author Andre Heinecke <aheinecke@intevation.de>
date Tue, 26 Mar 2013 18:29:13 +0100
parents 5ae8b8b46323
children
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;
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
8 import com.smartgwt.client.widgets.layout.HLayout;
4962
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
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
28 NumberFormat nf = NumberFormat.getDecimalFormat();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
29
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
30 VLayout grid = new VLayout();
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
31 HLayout line1 = new HLayout();
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
32
4962
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) {
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
36 Label key = new Label(MSG.wq_value_q());
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
37 Label value = new Label(nf.format(minw) +
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
38 " - " + nf.format(maxw));
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
39 key.setWidth(150);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
40 line1.addMember(key);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
41 line1.addMember(value);
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
42 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
43
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
44 HLayout line2 = new HLayout();
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
45 Double minq = gauge.getMinQ();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
46 Double maxq = gauge.getMaxQ();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
47 if (minq != null && maxq != null) {
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
48 Label key = new Label(MSG.wq_value_w());
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
49 Label value = new Label( nf.format(minq) +
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
50 " - " + nf.format(maxq));
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
51 key.setWidth(150);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
52 line2.addMember(key);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
53 line2.addMember(value);
4962
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
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
56 HLayout line3 = new HLayout();
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
57 Double aeo = gauge.getAeo();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
58 if (aeo != null) {
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
59 Label key = new Label("AEO [km²]");
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
60 Label value = new Label(nf.format(aeo));
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
61 key.setWidth(150);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
62 line3.addMember(key);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
63 line3.addMember(value);
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
64 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
65
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
66 HLayout line4 = new HLayout();
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
67 Double datum = gauge.getDatum();
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
68 if (datum != null) {
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
69 Label key = new Label(MSG.gauge_zero() + " [" +
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
70 gauge.getWstUnit() + "]");
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
71 Label value = new Label(nf.format(datum));
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
72 key.setWidth(150);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
73 line4.addMember(key);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
74 line4.addMember(value);
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
75 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
76
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
77 HLayout line5 = new HLayout();
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
78 line5.addMember(new GaugeMainValueAnchor(flys, gauge));
4988
e2053fbcd165 GaugeInfoPanel: Smarter formatten link, i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4981
diff changeset
79
5030
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
80 grid.addMember(line1);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
81 grid.addMember(line2);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
82 grid.addMember(line3);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
83 grid.addMember(line4);
5ae8b8b46323 Removed last gwt part from gauge info panel.
Raimund Renkert <rrenkert@intevation.de>
parents: 4988
diff changeset
84 grid.addMember(line5);
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
85 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
86 }
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
87
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
88
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
89 /**
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
90 * 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
91 * 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
92 */
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
93 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
94
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
95 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
96 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
97
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
98 public GaugeMainValueAnchor(FLYS flys, GaugeInfo gauge) {
4988
e2053fbcd165 GaugeInfoPanel: Smarter formatten link, i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4981
diff changeset
99 super(MSG.show_mainvalues());
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
100 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
101 this.gauge = gauge;
4988
e2053fbcd165 GaugeInfoPanel: Smarter formatten link, i18n.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4981
diff changeset
102 this.setHeight("5");
4981
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
103
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
104 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
105 }
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
106
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
107 @Override
0e6e44e6725f flys-client: (first draft) In GaugeInfo show link to show main values.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4962
diff changeset
108 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
109 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
110 " " + 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
111 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
112 }
4962
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
113 }
6f6461e07854 Move classes to its own java file
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
114 }

http://dive4elements.wald.intevation.org