ingo@20: package de.intevation.flys.client.client.ui; ingo@20: ingo@20: import com.google.gwt.core.client.GWT; ingo@20: ingo@20: import com.smartgwt.client.types.VerticalAlignment; ingo@20: import com.smartgwt.client.widgets.Canvas; ingo@20: import com.smartgwt.client.widgets.layout.HLayout; ingo@20: raimund@282: import de.intevation.flys.client.shared.model.Data; christian@4064: import de.intevation.flys.client.shared.model.DataList; ingo@20: ingo@20: ingo@20: /** ingo@20: * This UIProvider displays the DataItems contained in the Data object in a ingo@20: * combo box as SelectProvider does. Furthermore, there is a map displayed that ingo@20: * lets the user choose a river by selecting it on the map. ingo@20: * ingo@20: * @author Ingo Weinzierl ingo@20: */ ingo@20: public class MapSelection extends SelectProvider { ingo@20: christian@4064: private static final long serialVersionUID = 1261822454641198692L; christian@4064: raimund@282: protected ModuleSelection moduleSelection; ingo@39: ingo@20: public MapSelection() { ingo@20: } ingo@20: ingo@20: ingo@20: /** ingo@20: * This method currently returns a ingo@20: * {@link com.smartgwt.client.widgets.form.DynamicForm} that contains all ingo@20: * data items in a combobox stored in data.
ingo@20: * ingo@20: * TODO: The map panel for the river selection needs to be ingo@20: * implemented! ingo@20: * ingo@51: * @param data The {@link DataList} object. ingo@20: * ingo@20: * @return a combobox. ingo@20: */ christian@4064: @Override ingo@51: protected Canvas createWidget(DataList data) { ingo@20: GWT.log("MapSelection - create()"); ingo@20: ingo@20: HLayout h = new HLayout(); ingo@20: h.setAlign(VerticalAlignment.TOP); raimund@282: h.setHeight(100); raimund@282: moduleSelection = new ModuleSelection(); ingo@20: raimund@282: Canvas form = moduleSelection.create(data); christian@4573: form.setWidth(400); ingo@53: form.setLayoutAlign(VerticalAlignment.TOP); ingo@20: christian@4064: // TODO implement event handling in the river map (here? or in LinkSelection) ingo@20: ingo@20: h.addMember(form); ingo@20: ingo@20: return h; ingo@20: } raimund@282: christian@4064: @Override raimund@282: protected Data[] getData() { raimund@282: if (moduleSelection != null) { raimund@282: return moduleSelection.getData(); raimund@282: } raimund@282: else { raimund@282: return null; raimund@282: } raimund@282: } ingo@20: } ingo@20: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :