/// <summary> /// Get the property of the layer in the hierarchy /// </summary> /// <param name="node">The tree node that represents the layer</param> /// <param name="prop">The property name</param> /// <param name="inherit">The type of the inheritance (see WMS specification)</param> /// <returns></returns> private List <XmlNode> GetLayerProp(TreeNode node, string xpath, LayerInheritConstants inherit) { XmlNode layerDesc = (XmlNode)node.Tag; XmlNodeList propNodes = layerDesc.SelectNodes(xpath); List <XmlNode> retNodes = new List <XmlNode>(); foreach (XmlNode n in propNodes) { retNodes.Add(n); } if (inherit != LayerInheritConstants.No && node.Parent != null) { // trying to find the property from the parent layer if (propNodes.Count == 0 || inherit == LayerInheritConstants.Add) { retNodes.AddRange(GetLayerProp(node.Parent, xpath, inherit)); } } return(retNodes); }
/// <summary> /// Get the property of the layer in the hierarchy /// </summary> /// <param name="node">The tree node that represents the layer</param> /// <param name="prop">The property name</param> /// <param name="inherit">The type of the inheritance (see WMS specification)</param> /// <returns></returns> private List<XmlNode> GetLayerProp(TreeNode node, string xpath, LayerInheritConstants inherit) { XmlNode layerDesc = (XmlNode)node.Tag; XmlNodeList propNodes = layerDesc.SelectNodes(xpath); List<XmlNode> retNodes = new List<XmlNode>(); foreach (XmlNode n in propNodes) retNodes.Add(n); if (inherit != LayerInheritConstants.No && node.Parent != null) { // trying to find the property from the parent layer if (propNodes.Count == 0 || inherit == LayerInheritConstants.Add) retNodes.AddRange(GetLayerProp(node.Parent, xpath, inherit)); } return retNodes; }