private void Project_EnableUnity(VCProject project, bool excluded) { if (project == null) { return; } string config = Connect.GetActiveConfigString(project.Object as Project); UnityManager um = new UnityManager(project); um.LoadUnities(); VCFilter unityfilter = um.Filter.GetVCFilter(); if (unityfilter == null || um.Unities.Count == 0) { return; } foreach (VCFile file in project.Files as IVCCollection) { if (file.Extension.ToLower() == ".cpp") { if (file.Parent == unityfilter) { Connect.SetExcludedFromBuild(file, config, !excluded); } else { Connect.SetExcludedFromBuild(file, config, excluded && (um.GetCppInUnity(file.RelativePath) != null)); } } } }
private void Item_RemoveFromUnity() { if (this.SelectedCppFile == null) { return; } UnityManager um = new UnityManager(this.ActiveVCProject); um.LoadUnities(); Cpp cpp = um.GetCppInUnity(this.SelectedCppFile.RelativePath); if (cpp != null) { cpp.Unity.Cpps.Remove(cpp.Name); cpp.Unity.Save(this.ActiveVCProject.ProjectDirectory, um.Filter.Path, Connect.GetPCH(um.VCProject, um.VCConfig)); Connect.SetExcludedFromBuild(this.SelectedCppFile, Connect.GetActiveConfigString(Connect.GetProject(this.SelectedCppFile)), false); } }
private void Project_EnableUnity(VCProject project, bool excluded) { if (project == null) return; string config = Connect.GetActiveConfigString(project.Object as Project); UnityManager um = new UnityManager(project); um.LoadUnities(); VCFilter unityfilter = um.Filter.GetVCFilter(); if (unityfilter == null || um.Unities.Count == 0) return; foreach (VCFile file in project.Files as IVCCollection) { if (file.Extension.ToLower() == ".cpp") { if (file.Parent == unityfilter) { Connect.SetExcludedFromBuild(file, config, !excluded); } else { Connect.SetExcludedFromBuild(file, config, excluded && (um.GetCppInUnity(file.RelativePath) != null)); } } } }
private void Item_RemoveFromUnity() { if (this.SelectedCppFile == null) return; UnityManager um = new UnityManager(this.ActiveVCProject); um.LoadUnities(); Cpp cpp = um.GetCppInUnity(this.SelectedCppFile.RelativePath); if (cpp != null) { cpp.Unity.Cpps.Remove(cpp.Name); cpp.Unity.Save(this.ActiveVCProject.ProjectDirectory, um.Filter.Path, Connect.GetPCH(um.VCProject, um.VCConfig)); Connect.SetExcludedFromBuild(this.SelectedCppFile, Connect.GetActiveConfigString(Connect.GetProject(this.SelectedCppFile)), false); } }