Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/map/WMSLayersTree.java @ 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.
flys-client/trunk@3299 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 22 Nov 2011 13:04:46 +0000 |
parents | 63be3137abac |
children | 750a53950e9f |
comparison
equal
deleted
inserted
replaced
1411:63be3137abac | 1412:659a488243da |
---|---|
11 import de.intevation.flys.client.shared.model.Capabilities; | 11 import de.intevation.flys.client.shared.model.Capabilities; |
12 import de.intevation.flys.client.shared.model.WMSLayer; | 12 import de.intevation.flys.client.shared.model.WMSLayer; |
13 | 13 |
14 | 14 |
15 public class WMSLayersTree extends TreeGrid { | 15 public class WMSLayersTree extends TreeGrid { |
16 | |
17 /** | |
18 * An internal TreeNode that stores besides some string attribute a WMSLayer | |
19 * object. | |
20 */ | |
21 public static class WMSLayerNode extends TreeNode { | |
22 | |
23 protected WMSLayer wms; | |
24 | |
25 public WMSLayerNode(WMSLayer wms) { | |
26 super(); | |
27 this.wms = wms; | |
28 | |
29 setAttribute("name", wms.getName()); | |
30 setAttribute("title", wms.getTitle()); | |
31 } | |
32 | |
33 public WMSLayer getWMSLayer() { | |
34 return wms; | |
35 } | |
36 } // end of class WMSLayerNode | |
37 | |
16 | 38 |
17 protected Capabilities capabilites; | 39 protected Capabilities capabilites; |
18 | 40 |
19 public WMSLayersTree(Capabilities capabilites) { | 41 public WMSLayersTree(Capabilities capabilites) { |
20 super(); | 42 super(); |
55 | 77 |
56 protected TreeNode[] buildTree(List<WMSLayer> layers) { | 78 protected TreeNode[] buildTree(List<WMSLayer> layers) { |
57 List<TreeNode> layerNodes = new ArrayList<TreeNode>(); | 79 List<TreeNode> layerNodes = new ArrayList<TreeNode>(); |
58 | 80 |
59 for (WMSLayer layer: layers) { | 81 for (WMSLayer layer: layers) { |
60 TreeNode tn = new TreeNode(); | 82 WMSLayerNode tn = buildTreeNode(layer); |
61 tn.setAttribute("name", layer.getName()); | 83 TreeNode[] tns = buildTree(layer.getLayers()); |
62 tn.setAttribute("title", layer.getTitle()); | |
63 | |
64 TreeNode[] tns = buildTree(layer.getLayers()); | |
65 | 84 |
66 if (tns != null && tns.length > 0) { | 85 if (tns != null && tns.length > 0) { |
67 tn.setAttribute("children-nodes", tns); | 86 tn.setAttribute("children-nodes", tns); |
68 } | 87 } |
69 | 88 |
70 layerNodes.add(tn); | 89 layerNodes.add(tn); |
71 } | 90 } |
72 | 91 |
73 return (TreeNode[]) layerNodes.toArray(new TreeNode[layerNodes.size()]); | 92 return (TreeNode[]) layerNodes.toArray(new TreeNode[layerNodes.size()]); |
74 } | 93 } |
94 | |
95 | |
96 protected static WMSLayerNode buildTreeNode(WMSLayer wms) { | |
97 return new WMSLayerNode(wms); | |
98 } | |
75 } | 99 } |