Mercurial > dive4elements > river
changeset 3719:e82acd5c86f7
Merged revisions 5495-5496,5509,5514-5515,5521-5526 via svnmerge from
file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-client/trunk
........
r5495 | ingo | 2012-09-17 14:55:09 +0200 (Mo, 17 Sep 2012) | 1 line
Added missing i18n strings for minfo state description.
........
r5496 | ingo | 2012-09-17 15:47:43 +0200 (Mo, 17 Sep 2012) | 1 line
Tagged 'flys-client' as 2.9.1
........
r5509 | teichmann | 2012-09-18 17:54:37 +0200 (Di, 18 Sep 2012) | 1 line
Removed trailing whitespace.
........
r5514 | bricks | 2012-09-19 09:56:42 +0200 (Mi, 19 Sep 2012) | 2 lines
Add missing Changelog entry for r5472
........
r5515 | bricks | 2012-09-19 09:59:35 +0200 (Mi, 19 Sep 2012) | 2 lines
Implement a scrolling gauge info tree
........
r5521 | bricks | 2012-09-19 14:41:48 +0200 (Mi, 19 Sep 2012) | 2 lines
Add station info to the gauges
........
r5522 | bricks | 2012-09-19 14:43:43 +0200 (Mi, 19 Sep 2012) | 2 lines
Improve the handling of the GaugePanel in the ParameterList
........
r5523 | bricks | 2012-09-19 14:51:02 +0200 (Mi, 19 Sep 2012) | 4 lines
Improve the GaugePanel
Be locale aware and only load the gauge info if the river name changes.
........
r5524 | bricks | 2012-09-19 15:14:46 +0200 (Mi, 19 Sep 2012) | 5 lines
Fix a NullPointerException
When iterating over a list it must be checked if the reference to the list is
valid.
........
r5525 | bricks | 2012-09-19 15:16:24 +0200 (Mi, 19 Sep 2012) | 2 lines
Don't display the GaugePanel if no river is selected
........
r5526 | bricks | 2012-09-19 15:18:36 +0200 (Mi, 19 Sep 2012) | 2 lines
Use the wstunit from the river as unit for the Pegelnullpunkt
........
flys-client/tags/2.9.1@5528 c6561f87-3c4e-4783-a992-168aeb5c3f6f
line wrap: on
line diff
--- a/flys-client/ChangeLog Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/ChangeLog Wed Sep 19 14:42:48 2012 +0000 @@ -1,3 +1,62 @@ +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/server/GaugeOverviewInfoServiceImpl.java, + src/main/java/de/intevation/flys/client/shared/model/DefaultGaugeInfo.java, + src/main/java/de/intevation/flys/client/shared/model/GaugeInfo.java, + src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java: + Use the wstunit from the river as unit for the Pegelnullpunkt. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: + Don't display the GaugePanel if no river is selected. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java: + Fix NullPointerException when going back in WINFO artifact to the river + selection. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, + src/main/java/de/intevation/flys/client/client/FLYSConstants.java, + src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, + src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, + src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java: + Add locale aware formatting of the gauge values. + Don't reload the gauges if the river doesn't change. + Correctly handle kmup of the river. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: + Improve handling of the GaugePanel and don't delete members of the + GaugePanel. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/java/de/intevation/flys/client/server/GaugeOverviewInfoServiceImpl.java, + src/main/java/de/intevation/flys/client/shared/model/DefaultGaugeInfo.java, + src/main/java/de/intevation/flys/client/shared/model/GaugeInfo.java: + Add station information to the gauges. + +2012-09-19 Björn Ricks <bjoern.ricks@intevation.de> + + * src/main/webapp/FLYS.css, + src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java: + Get a working GaugeInfo solution with scrolling adjustments if gauge info + elements are folded in an out. + +2012-09-15 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/client/client/FLYSConstants.java: + Removed trailing whitespace. + +2012-09-17 Ingo Weinzierl <ingo@intevation.de> + + Tagged RELEASE 2.9.1 + 2012-09-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, @@ -26,6 +85,16 @@ 2012-09-14 Björn Ricks <bjoern.ricks@intevation.de> + * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, + src/main/java/de/intevation/flys/client/client/FLYSConstants.java, + src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, + src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, + src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, + src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java: + Add first draft for the gauge overview info ui + +2012-09-14 Björn Ricks <bjoern.ricks@intevation.de> + * src/main/java/de/intevation/flys/client/client/services/GaugeOverviewInfoService.java, src/main/java/de/intevation/flys/client/client/services/GaugeOverviewInfoServiceAsync.java, src/main/java/de/intevation/flys/client/shared/model/GaugeInfo.java,
--- a/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants.java Wed Sep 19 14:42:48 2012 +0000 @@ -535,6 +535,8 @@ String soundings(); + String soundings(); + // ERRORS String error_read_minmax_values(); @@ -1008,5 +1010,9 @@ String fix_parameters(); String sq_overview(); + + String gauge_zero(); + + String gauge_q_unit(); } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :
--- a/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants.properties Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants.properties Wed Sep 19 14:42:48 2012 +0000 @@ -524,3 +524,6 @@ fix_parameters = CSV sq_overview=Overview + +gauge_zero = Gauge zero ground +gauge_q_unit = m\u00b3/s
--- a/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties Wed Sep 19 14:42:48 2012 +0000 @@ -523,3 +523,6 @@ fix_parameters_export = Angepasste Koeffizienten fix_parameters = CSV sq_overview=\u00dcbersicht + +gauge_zero = Pegelnullpunkt +gauge_q_unit = m\u00b3/s
--- a/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties Wed Sep 19 14:42:48 2012 +0000 @@ -524,3 +524,6 @@ fix_parameters_export = Adjusted coefficient fix_parameters = CSV sq_overview=Overview + +gauge_zero = Gauge zero ground +gauge_q_unit = m\u00b3/s
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/GaugePanel.java Wed Sep 19 14:42:48 2012 +0000 @@ -1,20 +1,27 @@ package de.intevation.flys.client.client.ui; +import java.util.ArrayList; +import java.util.Iterator; import java.util.List; import com.google.gwt.core.client.GWT; +import com.google.gwt.i18n.client.NumberFormat; import com.google.gwt.user.client.rpc.AsyncCallback; +import com.google.gwt.user.client.ui.DecoratorPanel; +import com.google.gwt.user.client.ui.Grid; +import com.google.gwt.user.client.ui.HorizontalPanel; +import com.google.gwt.user.client.ui.Label; +import com.google.gwt.user.client.ui.ScrollPanel; import com.google.gwt.user.client.ui.Tree; import com.google.gwt.user.client.ui.TreeItem; -import com.google.gwt.user.client.ui.Grid; -import com.google.gwt.user.client.ui.DecoratorPanel; +import com.smartgwt.client.types.Alignment; import com.smartgwt.client.types.Overflow; -import com.smartgwt.client.types.Alignment; +import com.smartgwt.client.widgets.events.ResizedEvent; +import com.smartgwt.client.widgets.events.ResizedHandler; +import com.smartgwt.client.widgets.layout.HLayout; import com.smartgwt.client.widgets.layout.SectionStackSection; -import com.smartgwt.client.widgets.layout.HLayout; import com.smartgwt.client.widgets.layout.VLayout; -import com.smartgwt.client.widgets.Label; import de.intevation.flys.client.client.FLYSConstants; import de.intevation.flys.client.client.services.GaugeOverviewInfoService; @@ -27,7 +34,7 @@ * It extends the VLayout by two methods to show and hide the * section stack section. */ -public class GaugePanel extends VLayout { +public class GaugePanel extends VLayout implements ResizedHandler { /** SectionStackSection where this GaugePanel belongs in*/ private SectionStackSection sectionStack; @@ -41,22 +48,32 @@ protected GaugeOverviewInfoServiceAsync gaugeOverviewInfoService = GWT.create(GaugeOverviewInfoService.class); + protected GaugeTree gaugetree = new GaugeTree(); + + protected RiverInfoPanel riverinfopanel; + /** * Creates a new VLayout with a SectionStackSection * The GaugePanel's SectionStackSection is hidden by default. * @param sectionStack The section stack section to place the VLayout in. */ public GaugePanel(SectionStackSection sectionStack) { - super(); + setOverflow(Overflow.HIDDEN); + sectionStack.setHidden(true); sectionStack.setItems(this); - sectionStack.setHidden(true); this.sectionStack = sectionStack; - setStyleName("gaugeoverview"); + setStyleName("gaugepanel"); + addResizedHandler(this); } + /** + * Sets and loads the river data if river is not the current set river + */ public void setRiver(String river) { - this.river = river; - this.refresh(); + if (!river.equals(this.river)) { + this.river = river; + this.refresh(); + } } /** @@ -71,38 +88,39 @@ public void onSuccess(RiverInfo riverinfo) { GWT.log("Loaded river info"); renderGaugeOverviewInfo(riverinfo); + gaugetree.openAll(); } }); } public void renderGaugeOverviewInfo(RiverInfo riverinfo) { - setStyleName("gaugepanel"); - sectionStack.setResizeable(true); - - RiverInfoPanel riverinfopanel = new RiverInfoPanel(riverinfo); - - addMember(riverinfopanel); - - VLayout treewrapper = new VLayout(); - Tree gaugetree = new Tree(); - gaugetree.setHeight("100%"); + removeMembers(getMembers()); - treewrapper.addMember(gaugetree); - treewrapper.setHeight100(); - treewrapper.setOverflow(Overflow.AUTO); - - addMember(treewrapper); + riverinfopanel = new RiverInfoPanel(riverinfo); + addMember(riverinfopanel); + addMember(gaugetree); - List<GaugeInfo> gauges = riverinfo.getGauges(); - if (!gauges.isEmpty()) { + gaugetree.setGauges(riverinfo); + } - for (GaugeInfo gauge : gauges) { - TreeItem gaugeitem = new GaugeInfoItem(gauge); - gaugetree.addItem(gaugeitem); - } + @Override + public void onResized(ResizedEvent event) { + /* this height calculation is only an approximation and doesn't reflect + * the real height of the the gaugetree. */ + int height = getInnerContentHeight() - + (RiverInfoPanel.HEIGHT + + (2 * RiverInfoPanel.BORDER_WIDTH) + + (2 * RiverInfoPanel.PADDING) + + (2 * RiverInfoPanel.MARGIN)); + + if (height < 0) { + height = 0; } + + gaugetree.setHeight("" + height + "px"); } + /** * Hide the section stack section. */ @@ -119,25 +137,84 @@ this.sectionStack.setHidden(false); } - class RiverInfoPanel extends HLayout { + class GaugeTree extends ScrollPanel { + + private Tree tree; + + public GaugeTree() { + tree = new Tree(); + setWidget(tree); + } + + /** + * Resets the items of the tree. + * If the list of gauges is empty or null the tree will be empty. + */ + public void setGauges(RiverInfo riverinfo) { + tree.clear(); + + List<GaugeInfo> gauges = riverinfo.getGauges(); + + if (gauges != null && !gauges.isEmpty()) { + + ArrayList<GaugeInfo> emptygauges = new ArrayList<GaugeInfo>(); + + if (!riverinfo.isKmUp()) { + for (GaugeInfo gauge : gauges) { + addGauge(gauge, emptygauges); + } + } + else { + for (int i = gauges.size(); i >= 0; i--) { + GaugeInfo gauge = gauges.get(i); + addGauge(gauge, emptygauges); + } + } + + // put empty gauges to the end + for (GaugeInfo gauge : emptygauges) { + addGauge(gauge); + } + } + } + + private void addGauge(GaugeInfo gauge, List<GaugeInfo> empty) { + if (gauge.getKmStart() != null && gauge.getKmEnd() != null) { + addGauge(gauge); + } + else { + empty.add(gauge); + } + } + + private void addGauge(GaugeInfo gauge) { + TreeItem gaugeitem = new GaugeInfoItem(gauge); + tree.addItem(gaugeitem); + } + + public void openAll() { + for (Iterator<TreeItem> it = tree.treeItemIterator(); it.hasNext();) { + TreeItem item = it.next(); + item.setState(true); + } + } + } + + class RiverInfoPanel extends HorizontalPanel { + + public final static int HEIGHT = 30; + public final static int BORDER_WIDTH = 3; + public final static int PADDING = 8; + public final static int MARGIN = 10; public RiverInfoPanel(RiverInfo riverinfo) { - setStyleName("riverinfo"); - setShowEdges(true); - setEdgeSize(3); - setBackgroundColor("white"); - setEdgeImage(""); - setEdgeBackgroundColor("#CFE1F1"); - setPadding(8); - setOverflow(Overflow.VISIBLE); - setAutoHeight(); - setWidth100(); - setMembersMargin(10); - setMinHeight(30); + setStyleName("riverinfopanel"); + setHeight("" + HEIGHT + "px"); + setVerticalAlignment(ALIGN_MIDDLE); - Label label = new Label(riverinfo.getName()); - label.setWidth("*"); - addMember(label); + NumberFormat nf = NumberFormat.getDecimalFormat(); + + addLabel(riverinfo.getName(), false); String kmtext = ""; Double start = riverinfo.getKmStart(); @@ -149,36 +226,36 @@ start = tmp; } if (end != null) { - kmtext += end.toString(); + kmtext += nf.format(end); kmtext += " - "; } if (start != null) { - kmtext += start.toString(); + kmtext += nf.format(start); } kmtext += " km"; - label = new Label(kmtext); - label.setWidth("*"); - label.setAlign(Alignment.CENTER); - addMember(label); + addLabel(kmtext, false); String qtext = ""; Double qmin = riverinfo.getMinQ(); Double qmax = riverinfo.getMaxQ(); if (qmin != null) { - qtext += qmin.toString(); - qtext += " qm/s"; + qtext += nf.format(qmin); + qtext += " " + MSG.gauge_q_unit(); qtext += " - "; } if (qmax != null) { - qtext += qmax.toString(); - qtext += " qm/s"; + qtext += nf.format(qmax); + qtext += " " + MSG.gauge_q_unit(); } - label = new Label(qtext); - label.setWidth("*"); - label.setAlign(Alignment.CENTER); - addMember(label); + addLabel(qtext, false); + } + + private void addLabel(String text, boolean wordwrap) { + Label label = new Label(text, wordwrap); + add(label); + setCellHeight(label, "" + HEIGHT + "px"); } } @@ -195,44 +272,88 @@ public GaugeInfoHead(GaugeInfo gauge) { setStyleName("gaugeinfohead"); - setOverflow(Overflow.VISIBLE); setAutoHeight(); setAutoWidth(); - Label label = new Label(gauge.getName()); + NumberFormat nf = NumberFormat.getDecimalFormat(); + + Label label = new Label(gauge.getName(), true); addMember(label); - Double start = gauge.getKmStart(); - Double end = gauge.getKmEnd(); + Double start; + Double end; + + if (!gauge.isKmUp()) { + start = gauge.getKmStart(); + end = gauge.getKmEnd(); + } + else { + start = gauge.getKmEnd(); + end = gauge.getKmStart(); + } + String kmtext = ""; if (start != null) { - kmtext += start.toString(); + kmtext += nf.format(start); kmtext += " - "; } if (end != null) { - kmtext += end.toString(); + kmtext += nf.format(end); } - kmtext +=" km"; + if (start != null || end != null) { + kmtext += " km"; + } label = new Label(kmtext); addMember(label); + + Double station = gauge.getStation(); + if (station != null) { + String stext = nf.format(station); + stext += " km"; + label = new Label(stext); + addMember(label); + } } } class GaugeInfoPanel extends DecoratorPanel { + public GaugeInfoPanel(GaugeInfo gauge) { setStyleName("gaugeinfopanel"); Grid grid = new Grid(4, 2); - grid.setText(0, 0, "W-Bereich [cm]"); - grid.setText(0, 1, "" + gauge.getMinW() + " - " + gauge.getMaxW()); - grid.setText(1, 0, "Q-Bereich [m²/s]"); - grid.setText(1, 1, "" + gauge.getMinQ() + " - " + gauge.getMaxQ()); - grid.setText(2, 0, "AEO [km²]"); - grid.setText(2, 1, "" + gauge.getAeo()); - grid.setText(3, 0, "Pegelnullpunk [NN+m]"); - grid.setText(3, 1, "" + gauge.getDatum()); + NumberFormat nf = NumberFormat.getDecimalFormat(); + + Double minw = gauge.getMinW(); + Double maxw = gauge.getMaxW(); + if (minw != null && maxw != null) { + grid.setText(0, 0, MSG.wq_value_q()); + grid.setText(0, 1, "" + nf.format(minw) + + " - " + nf.format(maxw)); + } + + Double minq = gauge.getMinQ(); + Double maxq = gauge.getMaxQ(); + if (minq != null && maxq != null) { + grid.setText(1, 0, MSG.wq_value_w()); + grid.setText(1, 1, "" + nf.format(minq) + + " - " + nf.format(maxq)); + } + + Double aeo = gauge.getAeo(); + if (aeo != null) { + grid.setText(2, 0, "AEO [km²]"); + grid.setText(2, 1, "" + nf.format(aeo)); + } + + Double datum = gauge.getDatum(); + if (datum != null) { + grid.setText(3, 0, MSG.gauge_zero() + " [" + + gauge.getWstUnit() + "]"); + grid.setText(3, 1, "" + nf.format(datum)); + } setWidget(grid); }
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/ParameterList.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/ParameterList.java Wed Sep 19 14:42:48 2012 +0000 @@ -224,7 +224,7 @@ } }; gaugePanel.setWidth100(); - gaugePanel.setHeight("20%"); + gaugePanel.setHeight100(); // This canvas is used to render helper widgets. final SectionStackSection helperSection = new SectionStackSection(); @@ -701,11 +701,6 @@ helperPanel.removeMembers(c); } - c = gaugePanel.getMembers(); - if (c != null && c.length > 0) { - gaugePanel.removeMembers(c); - } - Artifact art = event.getNewValue(); ArtifactDescription desc = art.getArtifactDescription(); @@ -748,8 +743,13 @@ } } if (art instanceof WINFOArtifact) { - renderGaugeInfo(desc.getRiver()); - gaugePanel.show(); + String river = desc.getRiver(); + if (river != null) { + renderGaugeInfo(desc.getRiver()); + } + else { + gaugePanel.hide(); + } } addOldDatas(
--- a/flys-client/src/main/java/de/intevation/flys/client/server/GaugeOverviewInfoServiceImpl.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/server/GaugeOverviewInfoServiceImpl.java Wed Sep 19 14:42:48 2012 +0000 @@ -123,12 +123,15 @@ ArtifactNamespaceContext.NAMESPACE_URI, "maxq"); String gmaxw = gaugeele.getAttributeNS( ArtifactNamespaceContext.NAMESPACE_URI, "maxw"); + String gstation = gaugeele.getAttributeNS( + ArtifactNamespaceContext.NAMESPACE_URI, "station"); logger.debug("Found gauge with name " + gname); GaugeInfo gaugeinfo = new DefaultGaugeInfo( gname, kmup, + parseDouble(gstation), parseDouble(gstart), parseDouble(gend), parseDouble(gdatum), @@ -136,7 +139,8 @@ parseDouble(gminq), parseDouble(gmaxq), parseDouble(gminw), - parseDouble(gmaxw) + parseDouble(gmaxw), + rwstunit ); gauges.add(gaugeinfo);
--- a/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java Wed Sep 19 14:42:48 2012 +0000 @@ -161,6 +161,9 @@ public String getDataValueAsString(String name) { + if (oldData == null) { + return null; + } for (DataList list: oldData) { List<Data> dataList = list.getAll();
--- a/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultGaugeInfo.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/shared/model/DefaultGaugeInfo.java Wed Sep 19 14:42:48 2012 +0000 @@ -15,6 +15,8 @@ private Double minw; private Double maxw; private boolean kmup; + private Double station; + private String wstunit; public DefaultGaugeInfo() { } @@ -22,6 +24,7 @@ public DefaultGaugeInfo( String name, boolean kmup, + Double station, Double start, Double end, Double datum, @@ -29,17 +32,20 @@ Double minq, Double maxq, Double minw, - Double maxw) + Double maxw, + String wstunit) { - this.name = name; - this.start = start; - this.end = end; - this.datum = datum; - this.aeo = aeo; - this.minq = minq; - this.maxq = maxq; - this.minw = minw; - this.maxw = maxw; + this.name = name; + this.station = station; + this.start = start; + this.end = end; + this.datum = datum; + this.aeo = aeo; + this.minq = minq; + this.maxq = maxq; + this.minw = minw; + this.maxw = maxw; + this.wstunit = wstunit; } /** * Returns the name of the gauge @@ -107,4 +113,18 @@ public boolean isKmUp() { return this.kmup; } + + /** + * Returns the station km of the gauge or null if not available + */ + public Double getStation() { + return this.station; + } + + /** + * Returns the wst unit as a String + */ + public String getWstUnit() { + return this.wstunit; + } }
--- a/flys-client/src/main/java/de/intevation/flys/client/shared/model/GaugeInfo.java Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/shared/model/GaugeInfo.java Wed Sep 19 14:42:48 2012 +0000 @@ -53,4 +53,14 @@ Double getAeo(); boolean isKmUp(); + + /** + * Returns the station km of the gauge or null if not available + */ + Double getStation(); + + /** + * Returns the wst unit as a String + */ + String getWstUnit(); }
--- a/flys-client/src/main/webapp/FLYS.css Mon Sep 17 13:47:43 2012 +0000 +++ b/flys-client/src/main/webapp/FLYS.css Wed Sep 19 14:42:48 2012 +0000 @@ -171,3 +171,16 @@ #authentication table { margin-bottom: 1em; } + +.riverinfopanel { + border: 3px solid #CFE1F1; + padding: 8px; + margin-top: 10px; + margin-left: 10px; + margin-bottom: 10px; + font-size: 1.3em; +} + +.riverinfopanel .gwt-Label { + margin-right: 10px; +}