teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5993: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5993: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.client.ui.stationinfo; bjoern@4962: bjoern@4962: import java.util.Date; bjoern@4962: bjoern@4962: import com.google.gwt.core.client.GWT; bjoern@4962: import com.google.gwt.i18n.client.DateTimeFormat; bjoern@4962: import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; rrenkert@7933: import com.smartgwt.client.widgets.Label; rrenkert@7933: import com.smartgwt.client.widgets.layout.HLayout; bjoern@4962: import com.smartgwt.client.widgets.layout.VLayout; bjoern@4962: teichmann@5835: import org.dive4elements.river.client.client.FLYSConstants; teichmann@5835: import org.dive4elements.river.client.shared.model.MeasurementStation; bjoern@4962: bjoern@4962: public class MeasurementStationInfoPanel extends VLayout { bjoern@4962: bjoern@4962: /** The message class that provides i18n strings.*/ bjoern@4962: private FLYSConstants MSG = GWT.create(FLYSConstants.class); bjoern@4962: bjoern@4962: public MeasurementStationInfoPanel(MeasurementStation station) { bjoern@4962: setStyleName("infopanel"); bjoern@4962: setWidth100(); bjoern@4962: rrenkert@7933: VLayout grid = new VLayout(); bjoern@4962: rrenkert@7933: HLayout line1 = new HLayout(); bjoern@4962: String type = station.getMeasurementType(); bjoern@4962: if (type != null) { rrenkert@7933: Label key = new Label(MSG.measurement_station_type()); rrenkert@7933: Label value = new Label(type); rrenkert@7933: key.setWidth(150); rrenkert@7933: line1.addMember(key); rrenkert@7933: line1.addMember(value); rrenkert@7933: grid.addMember(line1); bjoern@4962: } bjoern@4962: rrenkert@7933: HLayout line2 = new HLayout(); bjoern@4962: String riverside = station.getRiverSide(); bjoern@4962: if (riverside != null) { rrenkert@7933: Label key = new Label(MSG.riverside()); rrenkert@7933: Label value = new Label(riverside); rrenkert@7933: key.setWidth(150); rrenkert@7933: line2.addMember(key); rrenkert@7933: line2.addMember(value); rrenkert@7933: grid.addMember(line2); bjoern@4962: } bjoern@4962: rrenkert@7933: HLayout line3 = new HLayout(); bjoern@4962: String gaugename = station.getGaugeName(); bjoern@4962: if (gaugename != null) { rrenkert@7933: Label key = new Label(MSG.measurement_station_gauge_name()); rrenkert@7933: Label value = new Label(gaugename); rrenkert@7933: key.setWidth(150); rrenkert@7933: line3.addMember(key); rrenkert@7933: line3.addMember(value); rrenkert@7933: grid.addMember(line3); bjoern@4962: } bjoern@4962: rrenkert@7933: HLayout line4 = new HLayout(); bjoern@4962: DateTimeFormat df = DateTimeFormat.getFormat( rrenkert@7933: PredefinedFormat.DATE_MEDIUM); bjoern@4962: bjoern@4962: Date starttime = station.getStartTime(); bjoern@4962: if (starttime != null) { rrenkert@7933: Label key = new Label(MSG.measurement_station_start_time()); rrenkert@7933: Label value = new Label(df.format(starttime)); rrenkert@7933: key.setWidth(150); rrenkert@7933: line4.addMember(key); rrenkert@7933: line4.addMember(value); rrenkert@7933: grid.addMember(line4); bjoern@4962: } bjoern@4962: rrenkert@7933: HLayout line5 = new HLayout(); bjoern@4962: String moperator = station.getOperator(); bjoern@4962: if (moperator != null) { rrenkert@7933: Label key = new Label(MSG.measurement_station_operator()); rrenkert@7933: Label value = new Label(moperator); rrenkert@7933: key.setWidth(150); rrenkert@7933: line5.addMember(key); rrenkert@7933: line5.addMember(value); rrenkert@7933: grid.addMember(line5); bjoern@4962: } bjoern@4962: bjoern@4962: addMember(grid); bjoern@4962: } bjoern@4962: }