ingo@533: package de.intevation.flys.client.client.ui.chart; ingo@533: ingo@533: import com.google.gwt.core.client.GWT; ingo@533: ingo@533: import com.smartgwt.client.widgets.Button; ingo@533: import com.smartgwt.client.widgets.layout.HLayout; ingo@533: import com.smartgwt.client.widgets.events.ClickEvent; ingo@533: import com.smartgwt.client.widgets.events.ClickHandler; ingo@533: import com.smartgwt.client.widgets.events.CloseClickHandler; ingo@533: import com.smartgwt.client.widgets.events.CloseClientEvent; ingo@533: ingo@533: import de.intevation.flys.client.shared.model.Artifact; ingo@533: ingo@533: import de.intevation.flys.client.client.FLYSConstants; ingo@533: import de.intevation.flys.client.client.ui.CollectionView; ingo@533: import de.intevation.flys.client.client.ui.DatacageWindow; ingo@533: ingo@533: ingo@533: /** ingo@533: * @author Ingo Weinzierl ingo@533: */ ingo@533: public class ChartToolbar extends HLayout { ingo@533: ingo@533: protected static FLYSConstants MSG = GWT.create(FLYSConstants.class); ingo@533: ingo@533: ingo@533: public static final int PANEL_HEIGHT = 30; ingo@533: ingo@533: ingo@533: protected CollectionView view; ingo@533: ingo@533: protected Button datacage; ingo@533: ingo@533: ingo@533: public ChartToolbar(CollectionView view) { ingo@533: super(); ingo@533: ingo@533: this.view = view; ingo@533: ingo@533: datacage = new Button(MSG.databasket()); ingo@533: datacage.addClickHandler(new ClickHandler() { ingo@533: public void onClick(ClickEvent event) { ingo@533: GWT.log("Clicked 'datacage' button."); ingo@533: openDatacageWindow(getArtifact()); ingo@533: } ingo@533: }); ingo@533: ingo@533: initLayout(); ingo@533: } ingo@533: ingo@533: ingo@533: public Artifact getArtifact() { ingo@533: return view.getArtifact(); ingo@533: } ingo@533: ingo@533: ingo@533: protected void initLayout() { ingo@533: setWidth100(); ingo@533: setHeight(PANEL_HEIGHT); ingo@533: setMembersMargin(10); ingo@533: setPadding(5); ingo@533: setBorder("1px solid black"); ingo@533: ingo@533: addMember(datacage); ingo@533: } ingo@533: ingo@533: ingo@533: protected void openDatacageWindow(Artifact artifact) { ingo@533: final DatacageWindow dc = new DatacageWindow(artifact); ingo@533: dc.addCloseClickHandler(new CloseClickHandler() { ingo@533: public void onCloseClick(CloseClientEvent event) { ingo@533: dc.destroy(); ingo@533: } ingo@533: }); ingo@533: dc.show(); ingo@533: } ingo@533: } ingo@533: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :