annotate flys-client/src/main/java/org/dive4elements/river/client/client/ui/map/MapToolbar.java @ 5834:f507086aa94b

Repaired internal references.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 12:31:32 +0200
parents flys-client/src/main/java/de/intevation/flys/client/client/ui/map/MapToolbar.java@0d8564196d73
children 821a02bbfb4e
rev   line source
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui.map;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
4472
dc7e41efd5ba Work (in progress) on a print settings dialog.
Christian Lins <christian.lins@intevation.de>
parents: 4436
diff changeset
4
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
5 import com.smartgwt.client.types.Alignment;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6 import com.smartgwt.client.types.SelectionType;
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
7 import com.smartgwt.client.util.SC;
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
8 import com.smartgwt.client.widgets.Button;
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
9 import com.smartgwt.client.widgets.Canvas;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10 import com.smartgwt.client.widgets.ImgButton;
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
11 import com.smartgwt.client.widgets.Label;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 import com.smartgwt.client.widgets.events.ClickEvent;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import com.smartgwt.client.widgets.events.ClickHandler;
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
14 import com.smartgwt.client.widgets.layout.HLayout;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
15
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
16 import de.intevation.flys.client.client.FLYSConstants;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
17 import de.intevation.flys.client.client.ui.ImgLink;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
18 import de.intevation.flys.client.client.ui.Toolbar;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
19 import de.intevation.flys.client.client.utils.EnableDisableCmd;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
20 import de.intevation.flys.client.shared.model.Collection;
4473
6db783627137 Map print does now submit additional parameters to MapPrintServiceImpl.
Christian Lins <christian.lins@intevation.de>
parents: 4472
diff changeset
21 import de.intevation.flys.client.shared.model.Property;
6db783627137 Map print does now submit additional parameters to MapPrintServiceImpl.
Christian Lins <christian.lins@intevation.de>
parents: 4472
diff changeset
22 import de.intevation.flys.client.shared.model.PropertySetting;
6db783627137 Map print does now submit additional parameters to MapPrintServiceImpl.
Christian Lins <christian.lins@intevation.de>
parents: 4472
diff changeset
23 import de.intevation.flys.client.shared.model.Settings;
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
24 import de.intevation.flys.client.shared.model.ThemeList;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25
4473
6db783627137 Map print does now submit additional parameters to MapPrintServiceImpl.
Christian Lins <christian.lins@intevation.de>
parents: 4472
diff changeset
26 import java.util.List;
6db783627137 Map print does now submit additional parameters to MapPrintServiceImpl.
Christian Lins <christian.lins@intevation.de>
parents: 4472
diff changeset
27
4436
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
28 import org.gwtopenmaps.openlayers.client.Map;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
29 import org.gwtopenmaps.openlayers.client.control.DragPan;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
30 import org.gwtopenmaps.openlayers.client.control.SelectFeature;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
31 import org.gwtopenmaps.openlayers.client.control.SelectFeatureOptions;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
32 import org.gwtopenmaps.openlayers.client.control.ZoomBox;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
33 import org.gwtopenmaps.openlayers.client.event.MapZoomListener;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
34 import org.gwtopenmaps.openlayers.client.feature.VectorFeature;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
35 import org.gwtopenmaps.openlayers.client.layer.Vector;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
36 import org.gwtopenmaps.openlayers.client.util.Attributes;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
37
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39 /**
4436
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
40 * Toolbar for the Map views.
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 */
2509
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
43 public class MapToolbar
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
44 extends Toolbar
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
45 implements MapZoomListener
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
46 {
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
49 protected FloodMap floodMap;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
50 protected DragPan pan;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
51 protected ZoomBox zoomBox;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
52 protected SelectFeature selectFeature;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
53 protected GetFeatureInfo getFeatureInfo;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
55 protected Button manageThemesButton;
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
56 protected Button datacageButton;
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
57 protected Button legendButton;
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
58
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
59 protected ImgButton addWMSButton;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 protected ImgButton zoomToMaxButton;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 protected ImgButton zoomBoxButton;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 protected ImgButton zoomOutButton;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 protected ImgButton panButton;
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
64 protected ImgButton selectButton;
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
65 protected ImgButton infoButton;
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
66 protected ImgButton removeButton;
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
67 protected ImgButton elevationButton;
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
68 protected ImgButton printMap;
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
69
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
70 protected Label epsgLabel;
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
71
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
72 protected DrawControl drawControl;
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
73 protected MeasureControl measureControl;
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
74
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
75 protected LegendWindow legendWindow;
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
76
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
77 protected Canvas position;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79
1386
9aa1a453eed5 Issue 294.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
80 public MapToolbar(FloodMap floodMap, boolean digitize) {
9aa1a453eed5 Issue 294.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
81 this(null, floodMap, digitize);
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
82 }
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
83
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
84
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
85 public MapToolbar(
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
86 MapOutputTab mapTab,
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
87 FloodMap floodMap,
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
88 boolean digitize)
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
89 {
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
90 super(mapTab);
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 setWidth100();
2452
0235cdb62c98 Issue 563.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2449
diff changeset
93 setHeight(38);
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 setMembersMargin(10);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 setPadding(5);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 setBorder("1px solid black");
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 this.floodMap = floodMap;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 zoomToMaxButton = createMaxExtentControl();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 zoomBoxButton = createZoomBoxControl();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 zoomOutButton = createZoomOutControl();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 panButton = createPanControl();
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
103 drawControl = createDrawControl();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
104 selectButton = createSelectFeatureControl();
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
105 infoButton = createGetFeatureInfo();
833
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
106 measureControl = createMeasureControl();
1386
9aa1a453eed5 Issue 294.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
107 position = createMousePosition();
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
108 removeButton = createRemoveFeatureControl();
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
109 elevationButton = createElevationControl();
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
110 epsgLabel = createEPSGLabel();
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
112 if (mapTab != null) {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
113 manageThemesButton = createManageThemesControl();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
114 addMember(manageThemesButton);
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
115
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
116 datacageButton = createDatacageControl();
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
117 addMember(datacageButton);
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
118
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
119 legendButton = createLegendControl();
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
120 addMember(legendButton);
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
121
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
122 addWMSButton = createWMSControl();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
123 addMember(addWMSButton);
2507
7ef59d7e113d Added link to print map.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2471
diff changeset
124
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
125 printMap = createMapPrintControl();
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
126 addMember(printMap);
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
127 }
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
128
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
129 addMember(zoomToMaxButton);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130 addMember(zoomBoxButton);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131 addMember(zoomOutButton);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132 addMember(panButton);
833
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
133
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
134 if (digitize) {
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
135 addMember(drawControl);
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
136 addMember(selectButton);
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
137 addMember(removeButton);
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
138 addMember(elevationButton);
833
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
139 }
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 825
diff changeset
140
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
141 if (infoButton != null) {
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
142 addMember(infoButton);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
143 }
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
144
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
145 addMember(measureControl);
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
146 addMember(createRightPanel());
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
147 }
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
148
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
149
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
150 protected HLayout createRightPanel() {
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
151 HLayout right = new HLayout();
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
152 right.setAlign(Alignment.RIGHT);
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
153
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
154 right.addMember(epsgLabel);
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
155 right.addMember(position);
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
156
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
157 return right;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
158 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
159
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
160
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
161 protected Map getMap() {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
162 return floodMap.getMap();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
163 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
164
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
165
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
166 protected void activatePan(boolean activate) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
167 if (activate) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
168 panButton.select();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
169 pan.activate();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
170 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
171 else {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
172 panButton.deselect();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
173 pan.deactivate();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
174 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
175 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
176
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
177
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
178 protected void activateZoomBox(boolean activate) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
179 if (activate) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
180 zoomBoxButton.select();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
181 zoomBox.activate();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
182 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
183 else {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
184 zoomBoxButton.deselect();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
185 zoomBox.deactivate();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
186 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
187 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
188
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
189
1389
d29a9fa10313 Issue 265.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1386
diff changeset
190 public void activateDrawFeature(boolean activate) {
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
191 drawControl.activate(activate);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
192 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
193
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
194
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
195 protected void activateSelectFeature(boolean activate) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
196 if (activate) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
197 selectButton.select();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
198 selectFeature.activate();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
199 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
200 else {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
201 selectButton.deselect();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
202 selectFeature.deactivate();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
203 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
204 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
205
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
206
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
207 protected void activateMeasureControl(boolean activate) {
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
208 measureControl.activate(activate);
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
209 }
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
210
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
211
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
212 protected void activateGetFeatureInfo(boolean activate) {
2469
505e68d8d131 Take care on nullpointers in the MapToolbar because the info button is not always enabled.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
213 if (infoButton == null) {
505e68d8d131 Take care on nullpointers in the MapToolbar because the info button is not always enabled.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
214 return;
505e68d8d131 Take care on nullpointers in the MapToolbar because the info button is not always enabled.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
215 }
505e68d8d131 Take care on nullpointers in the MapToolbar because the info button is not always enabled.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
216
2447
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
217 if (activate) {
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
218 infoButton.select();
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
219 }
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
220 else {
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
221 infoButton.deselect();
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
222 }
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
223
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
224 getFeatureInfo.activate(activate);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
225 }
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
226
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
227
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
228 protected ImgButton createButton(String img, ClickHandler handler) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
229 ImgButton btn = new ImgButton();
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
230
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
231 String baseUrl = GWT.getHostPageBaseURL();
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
232 btn.setSrc(baseUrl + img);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
233 btn.setWidth(20);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
234 btn.setHeight(20);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
235 btn.setShowDown(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
236 btn.setShowRollOver(false);
2471
a1ff911e8365 Replaced FLYS specific icon set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2469
diff changeset
237 btn.setShowRollOverIcon(false);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
238 btn.setShowDisabled(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
239 btn.setShowDisabledIcon(true);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
240 btn.setShowDownIcon(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
241 btn.setShowFocusedIcon(false);
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
242
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
243 if (handler != null) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
244 btn.addClickHandler(handler);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
245 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
246
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
247 return btn;
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
248 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
249
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
250
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
251 protected ImgButton createToggleButton(
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
252 String img,
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
253 final EnableDisableCmd cmd
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
254 ) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
255 final ImgButton btn = new ImgButton();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
256
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
257 String baseUrl = GWT.getHostPageBaseURL();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
258 btn.setSrc(baseUrl + img);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
259 btn.setActionType(SelectionType.CHECKBOX);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
260 btn.setSize(20);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
261 btn.setShowRollOver(false);
2471
a1ff911e8365 Replaced FLYS specific icon set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2469
diff changeset
262 btn.setShowRollOverIcon(false);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
263 btn.setSelected(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
264 btn.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
265 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
266 public void onClick(ClickEvent e) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
267 if (btn.isSelected()) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
268 cmd.enable();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
269 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
270 else {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
271 cmd.disable();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
272 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
273 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
274 });
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
275
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
276 return btn;
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
277 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
278
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
279
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
280 protected ImgButton createMaxExtentControl() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
281 ImgButton zoomToMax = createButton(MSG.zoom_all(), new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
282 @Override
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
283 public void onClick(ClickEvent event) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
284 floodMap.getMap().zoomToMaxExtent();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
285 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
286 });
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
287
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
288 zoomToMax.setTooltip(MSG.zoomMaxExtent());
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
289
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
290 return zoomToMax;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
291 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
292
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
293
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
294 protected ImgButton createZoomBoxControl() {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
295 zoomBox = new ZoomBox();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
296
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
297 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
298 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
299 public void enable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
300 activatePan(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
301 activateDrawFeature(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
302 activateSelectFeature(false);
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
303 activateMeasureControl(false);
2447
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
304 activateGetFeatureInfo(false);
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
305 activateZoomBox(true);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
306 }
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
307
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
308 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
309 public void disable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
310 activateZoomBox(false);
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
311 }
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
312 };
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
313
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
314 ImgButton button = createToggleButton(MSG.zoom_in(), cmd);
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
315 button.setTooltip(MSG.zoomIn());
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
316
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
317 Map map = getMap();
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
318 map.addControl(zoomBox);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
319
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
320 return button;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
321 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
322
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
323
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
324 protected ImgButton createZoomOutControl() {
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
325 ImgButton zoomOut = createButton(MSG.zoom_out(), new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
326 @Override
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
327 public void onClick(ClickEvent event) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
328 Map map = floodMap.getMap();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
329 int level = map.getZoom();
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
330
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
331 if (level > 1) {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
332 map.zoomTo(level-1);
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
333 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
334 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
335 });
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
336
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
337 zoomOut.setTooltip(MSG.zoomOut());
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
338
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
339 return zoomOut;
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
340 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
341
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
342
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
343 protected ImgButton createPanControl() {
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
344 pan = new DragPan();
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
345 getMap().addControl(pan);
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
346
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
347 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
348 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
349 public void enable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
350 activateZoomBox(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
351 activateDrawFeature(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
352 activateSelectFeature(false);
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
353 activateMeasureControl(false);
2447
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
354 activateGetFeatureInfo(false);
1695d66896f9 Deactivate GetFeatureInfo button if another toggle button is pressed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1433
diff changeset
355 activatePan(true);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
356 }
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
357
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
358 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
359 public void disable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
360 activatePan(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
361 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
362 };
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
363
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
364 final ImgButton button = createToggleButton(MSG.pan(), cmd);
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
365 button.setTooltip(MSG.moveMap());
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
366
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
367 return button;
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
368 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
369
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
370
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
371 protected DrawControl createDrawControl() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
372 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
373 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
374 public void enable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
375 activateZoomBox(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
376 activatePan(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
377 activateDrawFeature(true);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
378 activateSelectFeature(false);
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
379 activateMeasureControl(false);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
380 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
381
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
382 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
383 public void disable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
384 activateDrawFeature(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
385 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
386 };
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
387 return new DrawControl(getMap(), floodMap.getBarrierLayer(), cmd);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
388 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
389
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
390
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
391 protected ImgButton createSelectFeatureControl() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
392 SelectFeatureOptions opts = new SelectFeatureOptions();
825
1b9b7e9ab219 Save and reload user defined geometries (barriers) in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 802
diff changeset
393 opts.setBox(true);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
394
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
395 // VectorFeatures selected by the SelectFeature control are manually
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
396 // marked with the string "mark.delete". The control to remove selected
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
397 // features makes use of this string to determine if the feature should
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
398 // be deleted (is marked) or not. Actually, we would like to use the
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
399 // OpenLayers native mechanism to select features, but for some reason
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
400 // this doesn't work here. After a feature has been selected, the layer
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
401 // still has no selected features.
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
402 opts.onSelect(new SelectFeature.SelectFeatureListener() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
403 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
404 public void onFeatureSelected(VectorFeature feature) {
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
405 floodMap.selectFeature(feature);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
406 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
407 });
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
408
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
409 opts.onUnSelect(new SelectFeature.UnselectFeatureListener() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
410 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
411 public void onFeatureUnselected(VectorFeature feature) {
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
412 floodMap.disableFeature(feature);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
413 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
414 });
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
415
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
416 selectFeature = new SelectFeature(floodMap.getBarrierLayer(), opts);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
417 getMap().addControl(selectFeature);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
418
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
419 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
420 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
421 public void enable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
422 activateDrawFeature(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
423 activatePan(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
424 activateZoomBox(false);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
425 activateSelectFeature(true);
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
426 activateMeasureControl(false);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
427 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
428
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
429 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
430 public void disable() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
431 activateSelectFeature(false);
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
432 floodMap.disableFeatures();
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
433 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
434 };
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
435
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
436 ImgButton button = createToggleButton(MSG.selectFeature(), cmd);
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
437 button.setTooltip(MSG.selectObject());
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
438
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
439 return button;
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
440 }
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
441
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
442
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
443 protected ImgButton createRemoveFeatureControl() {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
444 ImgButton remove = createButton(MSG.removeFeature(),new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
445 @Override
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
446 public void onClick(ClickEvent event) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
447 Vector barriers = floodMap.getBarrierLayer();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
448 VectorFeature[] features = barriers.getFeatures();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
449
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
450 if (features == null || features.length == 0) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
451 return;
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
452 }
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
453
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
454 for (int i = features.length-1; i >= 0; i--) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
455 VectorFeature feature = features[i];
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
456
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
457 Attributes attr = feature.getAttributes();
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
458 int del = attr.getAttributeAsInt(FloodMap.MARK_SELECTED);
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
459
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
460 if (del == 1) {
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
461 barriers.removeFeature(feature);
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
462 feature.destroy();
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
463 }
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
464 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
465 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
466 });
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
467
880
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
468 remove.setTooltip(MSG.removeObject());
22dc88b17253 Added tooltips for the maptoolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 833
diff changeset
469
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
470 return remove;
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
471 }
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
472
800
95cc560ce7c4 Added map controls for digitizing and removing barriers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 799
diff changeset
473
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
474 protected ImgButton createElevationControl() {
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
475 ImgButton btn = createButton(MSG.adjustElevation(), new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
476 @Override
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
477 public void onClick(ClickEvent evt) {
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
478 Vector barriers = floodMap.getBarrierLayer();
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
479 VectorFeature[] features = barriers.getFeatures();
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
480
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
481 VectorFeature feature = null;
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
482
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
483 if (features == null || features.length == 0) {
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
484 SC.warn(MSG.error_no_feature_selected());
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
485 return;
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
486 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
487
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
488 boolean multipleFeatures = false;
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
489
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
490 for (VectorFeature f: features) {
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
491 Attributes attr = f.getAttributes();
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
492 if (attr.getAttributeAsInt(FloodMap.MARK_SELECTED) == 1) {
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
493 if (feature == null) {
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
494 feature = f;
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
495 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
496 else {
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
497 multipleFeatures = true;
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
498 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
499 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
500 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
501
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
502 if (feature == null) {
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
503 SC.warn(MSG.error_no_feature_selected());
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
504 return;
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
505 }
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
506
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
507 new ElevationWindow(floodMap, feature).show();
1317
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
508
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
509 if (multipleFeatures) {
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
510 SC.warn(MSG.warning_use_first_feature());
45b9b1fc26e2 Improved error handling while using the elevation control - Make selected features in the map visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1315
diff changeset
511 }
1315
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
512 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
513 });
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
514
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
515 btn.setTooltip(MSG.adjustElevationTooltip());
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
516
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
517 return btn;
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
518 }
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
519
cf0f906921de #297 Implemented a window to adjust elevations of geometries in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 880
diff changeset
520
1386
9aa1a453eed5 Issue 294.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
521 protected Canvas createMousePosition() {
9aa1a453eed5 Issue 294.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
522 return new MapPositionPanel(floodMap.getMapWidget());
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
523 }
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
524
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
525
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
526 protected MeasureControl createMeasureControl() {
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
527 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
528 @Override
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
529 public void enable() {
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
530 activateDrawFeature(false);
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
531 activatePan(false);
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
532 activateZoomBox(false);
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
533 activateSelectFeature(false);
2449
e73e92c70290 Deactivate measure control when activating GetFeatureInfo control and reverse.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2447
diff changeset
534 activateGetFeatureInfo(false);
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
535 }
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
536
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
537 @Override
802
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
538 public void disable() {
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
539 // do nothing
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
540 }
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
541 };
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
542
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
543 return new MeasureControl(floodMap, cmd);
d45ad7fd3027 Added map tools to measure lines and polygons.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 800
diff changeset
544 }
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
545
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
546
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
547 protected Button createDatacageControl() {
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
548 Button btn = new Button(MSG.databasket());
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
549 btn.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
550 @Override
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
551 public void onClick(ClickEvent evt) {
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
552 openDatacageWindow((MapOutputTab) getOutputTab());
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
553 }
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
554 });
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
555
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
556 return btn;
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1317
diff changeset
557 }
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
558
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
559
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
560 protected Button createLegendControl() {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
561 Button btn = new Button(MSG.legend());
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
562 btn.addClickHandler(new ClickHandler() {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
563 @Override
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
564 public void onClick(ClickEvent event) {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
565 openLegendWindow();
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
566 }
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
567 });
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
568
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
569 return btn;
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
570 }
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
571
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
572
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
573 protected void openLegendWindow() {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
574 if (legendWindow == null) {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
575 MapOutputTab tab = (MapOutputTab) getOutputTab();
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
576 legendWindow = new LegendWindow(tab.getThemePanel().getThemeList());
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
577 }
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
578
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
579 legendWindow.show();
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
580 }
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
581
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
582
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
583 protected ImgButton createGetFeatureInfo() {
1404
09566522e899 Query GetFeatureInfo with layers defined in MapThemePanel - which are the real layers in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1400
diff changeset
584 MapOutputTab ot = (MapOutputTab) getOutputTab();
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
585 if (ot == null) {
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
586 return null;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
587 }
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
588
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
589 //ThemeList tl = ot.getCollection().getThemeList("floodmap");
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
590
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
591 getFeatureInfo = new GetFeatureInfo(
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
592 getMap(),
1404
09566522e899 Query GetFeatureInfo with layers defined in MapThemePanel - which are the real layers in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1400
diff changeset
593 ot.getThemePanel(),
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
594 "gml");
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
595
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
596 EnableDisableCmd cmd = new EnableDisableCmd() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
597 @Override
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
598 public void enable() {
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
599 activateDrawFeature(false);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
600 activatePan(false);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
601 activateZoomBox(false);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
602 activateSelectFeature(false);
2449
e73e92c70290 Deactivate measure control when activating GetFeatureInfo control and reverse.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2447
diff changeset
603 activateMeasureControl(false);
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
604 activateGetFeatureInfo(true);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
605 }
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
606
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
607 @Override
1400
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
608 public void disable() {
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
609 activateGetFeatureInfo(false);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
610 }
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
611 };
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
612
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
613 ImgButton button = createToggleButton(MSG.getFeatureInfo(), cmd);
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
614 button.setTooltip(MSG.getFeatureInfoTooltip());
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
615
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
616 return button;
96708d81eaf6 Added an initial GetFeatureInfo tool to get information about points in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1389
diff changeset
617 }
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
618
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
619
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
620 protected Button createManageThemesControl() {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
621 Button btn = new Button(MSG.manageThemes());
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
622 btn.addClickHandler(new ClickHandler() {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
623
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
624 @Override
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
625 public void onClick(ClickEvent event) {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
626 ((MapOutputTab)getOutputTab()).toogleThemePanel();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
627 }
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
628 });
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
629 return btn;
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
630 }
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
631
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
632
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
633 protected ImgButton createMapPrintControl() {
4474
bd78d2b0e309 Map print settings can now be configured via settings window.
Christian Lins <christian.lins@intevation.de>
parents: 4473
diff changeset
634 final MapToolbar mtb = this;
4436
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
635 ImgButton btn = createButton(MSG.printMapSettings(), new ClickHandler() {
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
636 @Override
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
637 public void onClick(ClickEvent event) {
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
638 MapPrintWindow mpsw =
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
639 new MapPrintWindow(outputTab.getCollection(), mtb);
4472
dc7e41efd5ba Work (in progress) on a print settings dialog.
Christian Lins <christian.lins@intevation.de>
parents: 4436
diff changeset
640 outputTab.getCollectionView().addChild(mpsw);
4436
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
641 }
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
642 });
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
643 btn.setTooltip(MSG.printTooltip());
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
644
4436
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
645 return btn;
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
646 }
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
647
9fca4d60fb7c Reintroduce wrongly outbacked changes (rev 4418-4425).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4433
diff changeset
648
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
649 protected ImgButton createWMSControl() {
1418
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
650 final String srs = floodMap.getRiverProjection();
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
651
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
652 ImgButton add = createButton(MSG.addWMS(), new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2905
diff changeset
653 @Override
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
654 public void onClick(ClickEvent event) {
1412
659a488243da Added code to trigger loading selected WMS layers from ExternalWMSWindow. Note: no code for loading/adding layers to the current map existing yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
655 MapOutputTab ot = (MapOutputTab) getOutputTab();
1418
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
656 new ExternalWMSWindow(ot, srs).start();
1406
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
657 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
658 });
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
659
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
660 add.setTooltip(MSG.addWMSTooltip());
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
661
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
662 return add;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1404
diff changeset
663 }
1433
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
664
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
665
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
666 protected Label createEPSGLabel() {
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
667 Label epsgLabel = new Label(floodMap.getRiverProjection());
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
668
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
669 epsgLabel.setAlign(Alignment.RIGHT);
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
670 epsgLabel.setWidth(75);
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
671
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
672 return epsgLabel;
d73f503f2465 Added a label that displays the current map projection to the MapToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
673 }
2507
7ef59d7e113d Added link to print map.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2471
diff changeset
674
2509
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
675 @Override
3952429cc41b Added zoom listener a adjust the print link bbox.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2508
diff changeset
676 public void onMapZoom(MapZoomListener.MapZoomEvent e) {
5606
0d8564196d73 Break printing to rework the parametrization of the print job
Andre Heinecke <aheinecke@intevation.de>
parents: 4475
diff changeset
677 // updatePrintUrl();
4474
bd78d2b0e309 Map print settings can now be configured via settings window.
Christian Lins <christian.lins@intevation.de>
parents: 4473
diff changeset
678 }
bd78d2b0e309 Map print settings can now be configured via settings window.
Christian Lins <christian.lins@intevation.de>
parents: 4473
diff changeset
679
4329
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
680 public void updateThemes(ThemeList themeList) {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
681 if (legendWindow != null) {
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
682 legendWindow.update(themeList);
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
683 }
c9dcce9448f2 Added a new control 'show legend' to the map's toolbar. This control opens a window that displays the legends of all activated layers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4013
diff changeset
684 }
799
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
685 }
f4299b90c996 Added controls to navigate in the map.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
686 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org