package org.gcube.portlets.user.geoportaldataviewer.client.ui; import org.gcube.portlets.user.geoportaldataviewer.client.gis.OsmExample; import com.github.gwtbootstrap.client.ui.Button; import com.github.gwtbootstrap.client.ui.Tab; import com.google.gwt.core.client.GWT; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; public class GeonaDataViewMainPanel extends Composite { private static GeonaDataViewMainPanelUiBinder uiBinder = GWT.create(GeonaDataViewMainPanelUiBinder.class); interface GeonaDataViewMainPanelUiBinder extends UiBinder { } @UiField Tab mapTabPanel; @UiField Button dataPointSelection; @UiField Button dataBoxSelection; private MapPanel mapPanel; private OsmExample map; public GeonaDataViewMainPanel() { initWidget(uiBinder.createAndBindUi(this)); mapPanel = new MapPanel("600px"); mapTabPanel.add(mapPanel); dataPointSelection.setToggle(true); dataBoxSelection.setToggle(true); bindHandlers(); } public void setMapHeight(int height) { mapPanel.setHeight(height +"px"); } public MapPanel getMapPanel() { return mapPanel; } public void setMap(OsmExample map) { this.map = map; } public void bindHandlers(){ dataPointSelection.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { map.removeInteractions(); map.addPointVectorSource(); } }); dataBoxSelection.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { map.removeInteractions(); map.addExtentInteraction(); } }); } }