private static void BuildSubThemeForMap(ThemeNode node, IMap map) { SubThemeNode newNode = new SubThemeNode(map.Name, node, new ThemeData(null, "Map Data Frame", null), null, null, null); node.Add(newNode); int count = map.LayerCount; for (int i = 0; i < count; i++) BuildSubThemeForLayer(newNode, map.Layer[i]); }
private static void BuildSubThemeForLayer(ThemeNode node, ILayer subLayer) { if (subLayer is GroupLayer) { SubThemeNode newNode = new SubThemeNode(subLayer.Name, node, new ThemeData(null, "Group Layer", null), null, null, null); node.Add(newNode); BuildSubThemesForGroupLayer(newNode, subLayer); } else { string dataType = LayerUtilities.GetLayerDescriptionFromLayer(subLayer); ThemeData data = new ThemeData(null, dataType, null); BuildThemeDataForLayer(data, subLayer); Metadata md = Metadata.Find(data); TmNode newNode = new SubThemeNode(subLayer.Name, node, data, md, null, null); node.Add(newNode); } }