internal ExtensionNodeType FindType(ExtensionNodeSet nset, string name, string callingAddinId)
{
if (nset == null)
return null;
foreach (ExtensionNodeType nt in nset.NodeTypes) {
if (nt.Id == name)
return nt;
}
foreach (string ns in nset.NodeSets) {
ExtensionNodeSet regSet;
if (!nodeSets.TryGetValue (ns, out regSet)) {
ReportError ("Unknown node set: " + ns, callingAddinId, null, false);
return null;
}
ExtensionNodeType nt = FindType (regSet, name, callingAddinId);
if (nt != null)
return nt;
}
return null;
}