view flys-client/src/main/java/de/intevation/flys/client/client/ui/Toolbar.java @ 4254:33b15ac17fd1

Only create and add GaugePanel when necessary The GaugePanel isn't created always and only show if WINFO and a river is selected now. It is only created on demand. Therefore all access to the GaugePanel is abstraced via methods that check if the GaugePanel is null before accessing it's methods.
author Björn Ricks <bjoern.ricks@intevation.de>
date Thu, 25 Oct 2012 13:58:53 +0200
parents 0be65bc65cee
children
line wrap: on
line source
package de.intevation.flys.client.client.ui;

import com.smartgwt.client.types.Overflow;
import com.smartgwt.client.widgets.events.CloseClickEvent;
import com.smartgwt.client.widgets.events.CloseClickHandler;
import com.smartgwt.client.widgets.layout.HLayout;

import de.intevation.flys.client.client.event.RedrawRequestHandler;
import de.intevation.flys.client.shared.model.Artifact;
import de.intevation.flys.client.shared.model.User;


public abstract class Toolbar extends HLayout {

    protected OutputTab outputTab;


    public Toolbar(OutputTab outputTab) {
        super();

        // Set overflow to hidden in order to prevent nasty scrollbars in IE
        setOverflow(Overflow.HIDDEN);

        this.outputTab = outputTab;
    }


    public OutputTab getOutputTab() {
        return outputTab;
    }


    public Artifact getArtifact() {
        return outputTab.getCollectionView().getArtifact();
    }


    public User getUser() {
        return outputTab.getCollectionView().getUser();
    }


    protected void openDatacageWindow(RedrawRequestHandler handler) {
        Artifact artifact = getArtifact();
        User     user     = getUser();

        String outs = getOutputTab().getOutputName();

        final DatacageWindow dc = new DatacageWindow(
            artifact, user, outs, outputTab.getCollectionView());
        dc.addRedrawRequestHandler(handler);
        dc.addCloseClickHandler(new CloseClickHandler() {
            @Override
            public void onCloseClick(CloseClickEvent event) {
                dc.destroy();
            }
        });
        dc.show();
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org