view gwt-client/src/main/java/org/dive4elements/river/client/client/ui/HWSDatacagePanel.java @ 9416:05405292a7ca

Navigationtheme panel now shows themes of dWt and WQ charts grayed out, if the current station is outside the valid range of the theme.
author gernotbelger
date Thu, 16 Aug 2018 16:28:03 +0200
parents e3c2ae1887e8
children
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU AGPL (>=v3)
 * and comes with ABSOLUTELY NO WARRANTY! Check out the
 * documentation coming with Dive4Elements River for details.
 */

package org.dive4elements.river.client.client.ui;

import java.util.ArrayList;
import java.util.List;

import org.dive4elements.river.client.shared.model.Data;
import org.dive4elements.river.client.shared.model.DataItem;
import org.dive4elements.river.client.shared.model.DataList;
import org.dive4elements.river.client.shared.model.DefaultData;
import org.dive4elements.river.client.shared.model.DefaultDataItem;
import org.dive4elements.river.client.shared.model.User;

import com.google.gwt.core.client.GWT;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.Label;
import com.smartgwt.client.widgets.layout.HLayout;
import com.smartgwt.client.widgets.layout.VLayout;

public class HWSDatacagePanel extends DatacagePanel {

    private static final long serialVersionUID = 1L;

    private static final String OUT = "floodmap_hws_panel";

    private static final String PARAMETERS = "hws:true;load-system:true";

    public HWSDatacagePanel(final User user) {
        super(user, OUT, PARAMETERS, true);
    }

    @Override
    public List<String> validate() {
        final List<String> errors = new ArrayList<String>();

        return errors;
    }

    @Override
    public Canvas createOld(final DataList dataList) {
        GWT.log("old datacage##########################################");
        final HLayout layout = new HLayout();
        final VLayout vLayout = new VLayout();
        layout.setWidth("400px");

        final Label label = new Label(dataList.getLabel());
        label.setWidth("200px");

        final int size = dataList.size();
        for (int i = 0; i < size; i++) {
            final Data data = dataList.get(i);
            final DataItem[] items = data.getItems();

            for (final DataItem item : items) {
                final HLayout hLayout = new HLayout();

                hLayout.addMember(label);
                hLayout.addMember(new Label(item.getLabel()));

                vLayout.addMember(hLayout);
                vLayout.setWidth("130px");
            }
        }

        final Canvas back = getBackButton(dataList.getState());

        layout.addMember(label);
        layout.addMember(vLayout);
        layout.addMember(back);

        return layout;
    }

    @Override
    protected Data[] getData() {
        final String[] selection = getSelectionTitles();
        String result = "";
        boolean first = true;
        if (selection != null) {
            for (final String record : selection) {
                if (first) {
                    result += record;
                    first = false;
                } else {
                    result += ";" + record;
                }
            }
        }
        if (result.length() == 0) {
            result = MSG.notselected();
        }
        final Data[] data = new Data[1];
        final DataItem item = new DefaultDataItem("uesk.hws", "uesk.hws", result);
        data[0] = new DefaultData("uesk.hws", null, null, new DataItem[] { item });

        return data;
    }
}

http://dive4elements.wald.intevation.org