void CreateCombineConfigurations(SolutionFolder folder) { IDictionary extendedProperties = folder.ExtendedProperties; CombineConfigurationSet configs = CreateCombineConfigurationSet(folder.ParentSolution, folder.IsRoot); configs.Active = folder.ParentSolution.DefaultConfigurationId; extendedProperties ["Configurations"] = configs; foreach (SolutionItem it in folder.Items) { if (it is SolutionFolder) { foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) { CombineConfiguration cc = configs.GetConfig(conf.Id); CombineConfigurationEntry ce = new CombineConfigurationEntry(it.Name, true, conf.Id); cc.Entries.Add(ce); } CreateCombineConfigurations((SolutionFolder)it); } else if (it is SolutionEntityItem) { SolutionEntityItem sit = (SolutionEntityItem)it; foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) { CombineConfiguration cc = configs.GetConfig(conf.Id); SolutionConfigurationEntry sce = conf.GetEntryForItem(sit); CombineConfigurationEntry ce = null; if (sce == null) { ce = new CombineConfigurationEntry(it.Name, true, conf.Id); } else { ce = new CombineConfigurationEntry(it.Name, sce.Build, sce.ItemConfiguration); } cc.Entries.Add(ce); } } } }
void CreateCombineConfigurations (SolutionFolder folder) { IDictionary extendedProperties = folder.ExtendedProperties; CombineConfigurationSet configs = CreateCombineConfigurationSet (folder.ParentSolution, folder.IsRoot); configs.Active = folder.ParentSolution.DefaultConfigurationId; extendedProperties ["Configurations"] = configs; foreach (SolutionItem it in folder.Items) { if (it is SolutionFolder) { foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) { CombineConfiguration cc = configs.GetConfig (conf.Id); CombineConfigurationEntry ce = new CombineConfigurationEntry (it.Name, true, conf.Id); cc.Entries.Add (ce); } CreateCombineConfigurations ((SolutionFolder) it); } else if (it is SolutionEntityItem) { SolutionEntityItem sit = (SolutionEntityItem) it; foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) { CombineConfiguration cc = configs.GetConfig (conf.Id); SolutionConfigurationEntry sce = conf.GetEntryForItem (sit); CombineConfigurationEntry ce = null; if (sce == null) ce = new CombineConfigurationEntry (it.Name, true, conf.Id); else ce = new CombineConfigurationEntry (it.Name, sce.Build, sce.ItemConfiguration); cc.Entries.Add (ce); } } } }