bjoern@4956: package de.intevation.flys.client.client.ui.stationinfo; bjoern@4956: bjoern@4956: import com.google.gwt.core.client.GWT; bjoern@4956: import com.smartgwt.client.widgets.Canvas; bjoern@4956: import com.smartgwt.client.widgets.grid.ListGrid; bjoern@4956: import com.smartgwt.client.widgets.grid.ListGridRecord; bjoern@4956: import com.smartgwt.client.widgets.layout.VLayout; bjoern@4956: bjoern@4956: import de.intevation.flys.client.client.FLYS; bjoern@4956: import de.intevation.flys.client.client.FLYSConstants; bjoern@4956: import de.intevation.flys.client.shared.model.Data; bjoern@4956: import de.intevation.flys.client.shared.model.DataList; bjoern@4956: import de.intevation.flys.client.shared.model.RiverInfo; bjoern@4956: bjoern@4956: /** bjoern@4956: * @author Björn Ricks bjoern@4956: */ bjoern@4956: public abstract class InfoListGrid extends ListGrid { bjoern@4956: bjoern@4956: protected FLYS flys; bjoern@4956: protected DataList[] data; bjoern@4956: bjoern@4956: public InfoListGrid(FLYS flys) { bjoern@4956: super(); bjoern@4956: this.flys = flys; bjoern@4956: this.setCanExpandRecords(true); bjoern@4956: this.setCanExpandMultipleRecords(true); bjoern@4956: } bjoern@4956: bjoern@4956: /** The message class that provides i18n strings.*/ bjoern@4956: protected FLYSConstants MSG = GWT.create(FLYSConstants.class); bjoern@4956: bjoern@4956: public void openAll() { bjoern@4956: GWT.log("InfoListGrid - openAll"); bjoern@4956: for (ListGridRecord record: this.getRecords()) { bjoern@4956: expandRecord(record); bjoern@4956: } bjoern@4956: } bjoern@4956: bjoern@4956: public void setData(DataList[] data) { bjoern@4956: GWT.log("InfoListGrid - setData"); bjoern@4956: this.data = data; bjoern@4956: this.open(); bjoern@4956: } bjoern@4956: bjoern@4956: protected Double getDoubleValue(Data d) { bjoern@4956: String tmp = d.getStringValue(); bjoern@4956: if (tmp != null) { bjoern@4956: return Double.valueOf(tmp); bjoern@4956: } bjoern@4956: return null; bjoern@4956: } bjoern@4956: bjoern@4956: @Override bjoern@4956: protected Canvas getExpansionComponent(ListGridRecord record) { bjoern@4956: VLayout layout = new VLayout(); bjoern@4956: layout.setPadding(5); bjoern@4956: layout.addMember(this.getExpandPanel(record)); bjoern@4956: return layout; bjoern@4956: } bjoern@4956: bjoern@4956: public abstract void open(); bjoern@4956: bjoern@4956: public abstract void setRiverInfo(RiverInfo riverinfo); bjoern@4956: bjoern@4956: protected abstract Canvas getExpandPanel(ListGridRecord record); bjoern@4956: }