raimund@2505: package de.intevation.flys.client.client.ui.fixation;
raimund@2505:
raimund@2505: import java.util.List;
raimund@2505: import java.util.ArrayList;
raimund@2505:
raimund@2505: import com.google.gwt.core.client.GWT;
raimund@2505:
raimund@2505: import com.smartgwt.client.widgets.Canvas;
raimund@2505: import com.smartgwt.client.widgets.Label;
raimund@2505:
raimund@2505: import com.smartgwt.client.widgets.layout.HLayout;
raimund@2505: import com.smartgwt.client.widgets.layout.VLayout;
raimund@2505:
raimund@2505: import de.intevation.flys.client.client.FLYSConstants;
raimund@2505:
raimund@2505: import de.intevation.flys.client.shared.model.Data;
raimund@2505: import de.intevation.flys.client.shared.model.DataList;
raimund@2505:
raimund@2505: /**
raimund@2505: * This UIProvider creates a panel for location or distance input.
raimund@2505: *
raimund@2505: * @author Raimund Renkert
raimund@2505: */
raimund@2505: public class FixEventSelect
raimund@2505: extends FixationPanel
raimund@2505: {
raimund@2505: /** The message class that provides i18n strings. */
raimund@2505: protected FLYSConstants MESSAGES = GWT.create(FLYSConstants.class);
raimund@2505:
raimund@2505: protected List events;
raimund@2505:
raimund@2505: public FixEventSelect() {
raimund@2505: htmlOverview = "";
raimund@2505: events = new ArrayList();
raimund@2505: }
raimund@2505:
raimund@2505: public Canvas createWidget(DataList data) {
raimund@2505: instances.put(this.artifact.getUuid(), this);
raimund@2505:
raimund@2505: VLayout layout = new VLayout();
raimund@2505:
raimund@2505: Canvas title = new Label(MESSAGES.eventselect());
raimund@2505: title.setHeight("25px");
raimund@2505:
raimund@2505: layout.addMember(title);
raimund@2505: return layout;
raimund@2505: }
raimund@2505:
raimund@2505: @Override
raimund@2505: public Canvas createOld(DataList dataList) {
raimund@2505: HLayout layout = new HLayout();
raimund@2505: layout.setWidth("400px");
raimund@2505:
raimund@2505: Label label = new Label(dataList.getLabel());
raimund@2505: label.setWidth("200px");
raimund@2505:
raimund@2505: Canvas back = getBackButton(dataList.getState());
raimund@2505:
raimund@2505: layout.addMember(label);
raimund@2505: layout.addMember(back);
raimund@2505:
raimund@2505: return layout;
raimund@2505: }
raimund@2505:
raimund@2505:
raimund@2505: /**
raimund@2505: * This method returns the selected data.
raimund@2505: *
raimund@2505: * @return the selected/inserted data.
raimund@2505: */
raimund@2505: public Data[] getData() {
raimund@2505: List data = new ArrayList();
raimund@2505:
raimund@2505: return (Data[]) data.toArray(new Data[data.size()]);
raimund@2505: }
raimund@2505:
raimund@2505:
raimund@2505: @Override
raimund@2505: public void setValues(String cid, boolean checked) {
raimund@2505: if (checked) {
raimund@2505: events.add(cid);
raimund@2505: }
raimund@2505: else {
raimund@2505: if (events.contains(cid)) {
raimund@2505: events.remove(cid);
raimund@2505: }
raimund@2505: }
raimund@2505: }
raimund@2505:
raimund@2505:
raimund@2505: @Override
raimund@2505: public boolean renderCheckboxes() {
raimund@2505: return true;
raimund@2505: }
raimund@2505:
raimund@2505:
raimund@2505: public void dumpGWT(String cid) {
raimund@2505: GWT.log("Setting values for cId: " + cid);
raimund@2505: GWT.log("River: " + fixInfo.getRiver());
raimund@2505: GWT.log("Date: " + fixInfo.getEventByCId(cid).getDate());
raimund@2505: GWT.log("Name: " + fixInfo.getEventByCId(cid).getName());
raimund@2505: }
raimund@2505: }