public Layer FromXml(XmlNode layerNode, bool someFlag) { string layerClassName = layerNode.Attributes.GetNamedItem("Type").Value.ToString(); string overLayType = layerClassName.Replace("TerraViewer.", ""); if (overLayType == null) { return(null); } Layer newLayer = null; switch (overLayType) { case "SpreadSheetLayer": newLayer = new SpreadSheetLayer(); break; case "GreatCirlceRouteLayer": newLayer = new GreatCirlceRouteLayer(); break; default: return(null); } //Force inheritance. // TODO: Understand why this breaks in SS .8 Script.Literal("for(var method in this){\n /*if (({}).toString.call(this[method]).match(/\\s([a-zA-Z]+)/)[1].toLowerCase() == 'function'){\n*/ newLayer[method] = this[method];/*\n}*/\n}"); newLayer.InitFromXml(layerNode); return(newLayer); }
public Layer FromXml(XmlNode layerNode, bool someFlag) { string layerClassName = layerNode.Attributes.GetNamedItem("Type").Value.ToString(); string overLayType = layerClassName.Replace("TerraViewer.",""); if (overLayType == null) { return null; } Layer newLayer = null; switch (overLayType) { case "SpreadSheetLayer": newLayer = new SpreadSheetLayer(); break; case "GreatCirlceRouteLayer": newLayer = new GreatCirlceRouteLayer(); break; default: return null; } //Force inheritance. // TODO: Understand why this breaks in SS .8 Script.Literal("for(var method in this){\n /*if (({}).toString.call(this[method]).match(/\\s([a-zA-Z]+)/)[1].toLowerCase() == 'function'){\n*/ newLayer[method] = this[method];/*\n}*/\n}"); newLayer.InitFromXml(layerNode); return newLayer; }