Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java @ 1389:d29a9fa10313
Issue 265.
Hide the barrier layer and deactivate draw control on stacksection
minimize.
flys-client/trunk@3206 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Wed, 09 Nov 2011 18:00:12 +0000 |
parents | e2749cc3b7ad |
children | bc06a671ef60 |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java Wed Nov 09 17:07:36 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/DigitizePanel.java Wed Nov 09 18:00:12 2011 +0000 @@ -11,6 +11,8 @@ import com.smartgwt.client.widgets.events.ResizedHandler; import com.smartgwt.client.widgets.tab.events.TabSelectedHandler; import com.smartgwt.client.widgets.tab.events.TabSelectedEvent; +import com.smartgwt.client.widgets.events.VisibilityChangedHandler; +import com.smartgwt.client.widgets.events.VisibilityChangedEvent; import org.gwtopenmaps.openlayers.client.Map; import org.gwtopenmaps.openlayers.client.feature.VectorFeature; @@ -35,12 +37,13 @@ public class DigitizePanel extends SelectProvider -implements TabSelectedHandler { +implements TabSelectedHandler, VisibilityChangedHandler { protected MapInfoServiceAsync mapInfo = GWT.create(MapInfoService.class); protected FloodMap floodMap; + protected MapPanel mapPanel; public static final String UESK_BARRIERS = "uesk.barriers"; @@ -53,6 +56,8 @@ public Canvas create(DataList list) { List<Data> data = list.getAll(); + helperContainer.addVisibilityChangedHandler(this); + Data barriers = null; for (int i = data.size()-1; i >= 0; i--) { Data d = data.get(i); @@ -117,7 +122,7 @@ public void createMapWidget(MapInfo mapInfo, String geojson) { - final MapPanel mapPanel = new MapPanel(mapInfo, true); + mapPanel = new MapPanel(mapInfo, true); floodMap = mapPanel.getFloodMap(); Map map = floodMap.getMap(); @@ -188,5 +193,15 @@ floodMap.showBarrierLayer(); } } + + public void onVisibilityChanged(VisibilityChangedEvent vce) { + if (!vce.getIsVisible()) { + floodMap.hideBarrierLayer(); + mapPanel.getMapToolbar().activateDrawFeature(false); + } + else { + floodMap.showBarrierLayer(); + } + } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :