annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/map/ExternalWMSWindow.java @ 4221:480de0dbca8e

Extended location input helper. The locationpicker has now an attribute whether the input is distance or location to display one or two clickable columns. Replaced the record click handler with cell click handler.
author Raimund Renkert <rrenkert@intevation.de>
date Tue, 23 Oct 2012 13:17:20 +0200
parents 8d27d2d33d70
children
rev   line source
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:
diff changeset
1 package de.intevation.flys.client.client.ui.map;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
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: 1411
diff changeset
3 import java.util.ArrayList;
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: 1411
diff changeset
4 import java.util.List;
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
5 import java.util.Map;
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
6 import java.util.LinkedHashMap;
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: 1411
diff changeset
7
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
8 import com.google.gwt.core.client.GWT;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
9 import com.google.gwt.user.client.rpc.AsyncCallback;
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:
diff changeset
10
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import com.smartgwt.client.util.SC;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12 import com.smartgwt.client.widgets.Button;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import com.smartgwt.client.widgets.Canvas;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import com.smartgwt.client.widgets.Window;
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
15 import com.smartgwt.client.widgets.form.DynamicForm;
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
16 import com.smartgwt.client.widgets.form.fields.ComboBoxItem;
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:
diff changeset
17 import com.smartgwt.client.widgets.events.ClickEvent;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.events.ClickHandler;
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: 1411
diff changeset
19 import com.smartgwt.client.widgets.grid.ListGridRecord;
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:
diff changeset
20 import com.smartgwt.client.widgets.layout.HLayout;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 import com.smartgwt.client.widgets.layout.Layout;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 import com.smartgwt.client.widgets.layout.VLayout;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
24 import de.intevation.flys.client.shared.model.Capabilities;
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: 1411
diff changeset
25 import de.intevation.flys.client.shared.model.WMSLayer;
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
26 import de.intevation.flys.client.client.FLYSConstants;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
27 import de.intevation.flys.client.client.services.GCService;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
28 import de.intevation.flys.client.client.services.GCServiceAsync;
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
29 import de.intevation.flys.client.client.services.MapUrlService;
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
30 import de.intevation.flys.client.client.services.MapUrlServiceAsync;
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
31
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:
diff changeset
32
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 public class ExternalWMSWindow extends Window {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34
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: 1411
diff changeset
35 public interface LayerLoader {
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: 1411
diff changeset
36 void load(List<WMSLayer> toLoad);
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: 1411
diff changeset
37 } // end of interface WMSLayerLoader
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: 1411
diff changeset
38
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: 1411
diff changeset
39
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
40 protected GCServiceAsync gcService = GWT.create(GCService.class);
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
41 protected MapUrlServiceAsync muService = GWT.create(MapUrlService.class);
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
42 protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
43
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:
diff changeset
44 protected Layout inputPanel;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 protected Layout infoPanel;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 protected Layout layersPanel;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
48 protected Capabilities capabilites;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
49
1418
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
50 protected String srs;
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
51
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
52 protected LinkedHashMap<String, String> urls;
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:
diff changeset
53 protected String url;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54
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: 1411
diff changeset
55 protected LayerLoader loader;
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:
diff changeset
56
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: 1411
diff changeset
57
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: 1411
diff changeset
58 public ExternalWMSWindow(LayerLoader loader) {
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:
diff changeset
59 super();
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
60 this.urls = new LinkedHashMap<String, String>();
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: 1411
diff changeset
61 this.loader = loader;
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:
diff changeset
62 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64
1418
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
65 public ExternalWMSWindow(LayerLoader loader, String srs) {
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
66 this(loader);
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
67 this.srs = srs;
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
68 }
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
69
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
70
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:
diff changeset
71 protected void setUrl(String url) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 this.url = url;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 protected String getUrl() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 return url;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
81 protected String getCapabilitiesUrl() {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
82 String cUrl = url;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
83
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
84 if (url.indexOf("?") >= 0) {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
85 cUrl += "&SERVICE=WMS&REQUEST=GetCapabilities";
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
86 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
87 else {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
88 cUrl += "?SERVICE=WMS&REQUEST=GetCapabilities";
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
89 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
90
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
91 return cUrl;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
92 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
93
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
94
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
95 protected void setCapabilites(Capabilities capabilites) {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
96 this.capabilites = capabilites;
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
97 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
98
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
99
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:
diff changeset
100 public void start() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 show();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 centerInPage();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104 goToInputPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
108 protected void goToInputPanel() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 clearItems();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
111 inputPanel = createInputPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 addItem(inputPanel);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
115 setWidth(380);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
116 setHeight(140);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
117 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
118
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
119
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
120 protected void goToInfoPanel() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
121 clearItems();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
122
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
123 infoPanel = createInfoPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
124
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
125 addItem(infoPanel);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127 setWidth(500);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
128 setHeight(500);
1409
ec6e4dad1279 Read and display all FLYS relevant information of Capabilities documents.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1408
diff changeset
129
ec6e4dad1279 Read and display all FLYS relevant information of Capabilities documents.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1408
diff changeset
130 centerInPage();
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:
diff changeset
131 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
134 protected void goToLayersPanel() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
135 clearItems();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
136
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137 layersPanel = createLayersPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
138
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
139 addItem(layersPanel);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
140
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
141 setWidth(500);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
142 setHeight(500);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
143 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
144
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
145
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
146 protected void clearItems() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
147 Canvas[] items = getItems();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
148
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
149 if (items != null) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
150 for (Canvas item: items) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
151 removeItem(item);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
152 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
153 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
154 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
155
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
156
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
157 protected void setUrls(Map<String, String> urls) {
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
158 this.urls.putAll(urls);
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
159 }
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
160
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
161 protected void readUrls() {
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
162 }
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
163
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
164
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:
diff changeset
165 protected Layout createInputPanel() {
1410
6bb2c1ffab2b Introduced i18n in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1409
diff changeset
166 setTitle(MSG.addwmsInputTitle());
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:
diff changeset
167
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
168 readUrls();
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
169
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
170 DynamicForm form = new DynamicForm();
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
171 final ComboBoxItem url = new ComboBoxItem("Url:");
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
172 url.setRedrawOnChange(true);
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
173 muService.getUrls(new AsyncCallback<Map<String, String> >() {
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
174 public void onFailure(Throwable caught) {
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
175 GWT.log("Error reading WMS-Services" + caught.getMessage());
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
176 }
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
177 public void onSuccess(Map<String, String> wms) {
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
178 urls.putAll(wms);
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
179 url.setValueMap(urls);
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
180
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
181 }
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
182 });
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:
diff changeset
183
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
184 String oldUrl = getUrl();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
185 if (oldUrl != null && oldUrl.length() > 0) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
186 url.setValue(oldUrl);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
187 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
188
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
189 ClickHandler goHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
190 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
191 public void onClick(ClickEvent e) {
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
192 String newUrl = url.getValue().toString();
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:
diff changeset
193
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
194 if (!isUrlValid(newUrl)) {
1410
6bb2c1ffab2b Introduced i18n in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1409
diff changeset
195 SC.warn(MSG.addwmsInvalidURL());
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:
diff changeset
196 return;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
197 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
198
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
199 setUrl(newUrl);
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
200
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
201 doCapabilitesRequest();
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:
diff changeset
202 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
203 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
204
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
205 ClickHandler cancelHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
206 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
207 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
208 quit();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
210 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
211
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
212 VLayout root = new VLayout();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
213 root.setHeight(75);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
214 root.setMargin(10);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
215 root.setLayoutMargin(10);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
216
2455
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
217 form.setFields(url);
0b7535e2e9aa Issue 508.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1420
diff changeset
218 root.addMember(form);
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:
diff changeset
219 root.addMember(createButtonPanel(null, goHandler, cancelHandler));
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
220
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
221 return root;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
222 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
223
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
224
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
225 protected Layout createInfoPanel() {
1410
6bb2c1ffab2b Introduced i18n in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1409
diff changeset
226 setTitle(MSG.addwmsInfoTitle());
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:
diff changeset
227
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
228 ClickHandler backHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
229 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
230 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
231 goToInputPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
232 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
233 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
234
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
235 ClickHandler goHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
236 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
237 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
238 goToLayersPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
239 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
240 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
241
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
242 ClickHandler cancelHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
243 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
244 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
245 quit();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
246 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
247 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
248
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
249 VLayout root = new VLayout();
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
250 VLayout panel = new CapabilitiesPanel(capabilites);
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:
diff changeset
251
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
252 root.setLayoutMargin(10);
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
253 panel.setHeight(420);
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:
diff changeset
254
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
255 root.addMember(panel);
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:
diff changeset
256 root.addMember(createButtonPanel(backHandler, goHandler, cancelHandler));
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
257
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
258 return root;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
259 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
260
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
261
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
262 protected Layout createLayersPanel() {
1410
6bb2c1ffab2b Introduced i18n in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1409
diff changeset
263 setTitle(MSG.addwmsLayerTitle());
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:
diff changeset
264
1418
750a53950e9f The WMSLayerTree displays WMS layers that support a given SRS only.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1412
diff changeset
265 final WMSLayersTree tree = new WMSLayersTree(capabilites, srs);
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: 1411
diff changeset
266
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:
diff changeset
267 ClickHandler backHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
268 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
269 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
270 goToInfoPanel();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
271 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
272 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
273
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
274 ClickHandler goHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
275 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
276 public void onClick(ClickEvent e) {
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: 1411
diff changeset
277 ListGridRecord[] selection = tree.getSelectedRecords();
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: 1411
diff changeset
278
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: 1411
diff changeset
279 if (selection == null || selection.length == 0) {
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: 1411
diff changeset
280 return;
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: 1411
diff changeset
281 }
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: 1411
diff changeset
282
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: 1411
diff changeset
283 List<WMSLayer> toLoad = new ArrayList<WMSLayer>();
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: 1411
diff changeset
284
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: 1411
diff changeset
285 for (ListGridRecord record: selection) {
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: 1411
diff changeset
286 toLoad.add(
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: 1411
diff changeset
287 ((WMSLayersTree.WMSLayerNode) record).getWMSLayer());
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: 1411
diff changeset
288
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: 1411
diff changeset
289 }
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: 1411
diff changeset
290
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: 1411
diff changeset
291 finish(toLoad);
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:
diff changeset
292 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
293 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
294
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
295 ClickHandler cancelHandler = new ClickHandler() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
296 @Override
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
297 public void onClick(ClickEvent e) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
298 quit();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
299 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
300 };
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
301
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: 1411
diff changeset
302 VLayout root = new VLayout();
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:
diff changeset
303
1411
63be3137abac Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1410
diff changeset
304 root.setLayoutMargin(10);
63be3137abac Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1410
diff changeset
305 tree.setHeight(420);
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:
diff changeset
306
1411
63be3137abac Parse and display WMS layers supported by a user specified WMS service.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1410
diff changeset
307 root.addMember(tree);
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:
diff changeset
308 root.addMember(createButtonPanel(backHandler, goHandler, cancelHandler));
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
309
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
310 return root;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
311 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
312
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
313
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
314 /**
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
315 * @param back
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
316 * @param ok
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
317 * @param cancel
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
318 *
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
319 * @return
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
320 */
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
321 protected Layout createButtonPanel(
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
322 ClickHandler backHandler,
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
323 ClickHandler goHandler,
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
324 ClickHandler cancelHandler
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
325 ) {
1420
c8481debff70 Added missing i18n labels for buttons used in ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
326 Button back = new Button(MSG.addwmsBack());
c8481debff70 Added missing i18n labels for buttons used in ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
327 Button go = new Button(MSG.addwmsContinue());
c8481debff70 Added missing i18n labels for buttons used in ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1418
diff changeset
328 Button cancel = new Button(MSG.addwmsCancel());
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:
diff changeset
329
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
330 if (backHandler != null) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
331 back.addClickHandler(backHandler);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
332 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
333 else {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
334 back.setDisabled(true);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
335 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
336
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
337 if (goHandler != null) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
338 go.addClickHandler(goHandler);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
339 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
340 else {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
341 go.setDisabled(true);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
342 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
343
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
344 if (cancelHandler != null) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
345 cancel.addClickHandler(cancelHandler);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
346 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
347 else {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
348 cancel.setDisabled(true);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
349 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
350
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
351 HLayout buttonPanel = new HLayout();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
352 buttonPanel.setHeight(25);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
353 buttonPanel.setMembersMargin(15);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
354 buttonPanel.setLayoutTopMargin(10);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
355 buttonPanel.addMember(back);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
356 buttonPanel.addMember(go);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
357 buttonPanel.addMember(cancel);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
358
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
359 return buttonPanel;
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
360 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
361
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
362
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
363 protected boolean isUrlValid(String url) {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
364 // TODO Improve URL validation
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
365 return !(url == null || url.length() == 0);
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
366 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
367
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
368
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: 1411
diff changeset
369 protected void finish(List<WMSLayer> toLoad) {
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: 1411
diff changeset
370 loader.load(toLoad);
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: 1411
diff changeset
371
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: 1411
diff changeset
372 quit();
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: 1411
diff changeset
373 }
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: 1411
diff changeset
374
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: 1411
diff changeset
375
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:
diff changeset
376 protected void quit() {
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
377 destroy();
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
378 }
1408
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
379
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
380
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
381 protected void doCapabilitesRequest() {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
382 gcService.query(getCapabilitiesUrl(),new AsyncCallback<Capabilities>() {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
383 public void onFailure(Throwable e) {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
384 SC.warn(MSG.getString(e.getMessage()));
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
385 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
386
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
387 public void onSuccess(Capabilities capabilites) {
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
388 setCapabilites(capabilites);
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
389 goToInfoPanel();
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
390 }
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
391 });
5b5a20e4c4e5 Added a service that loads the Capabilities of a specified WMS - display those information in the ExternalWMSWindow.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1406
diff changeset
392 }
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:
diff changeset
393 }
6c8a29abbe30 Added an initial control that allows (when it is finished) adding map layers from external WMS.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
394 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org