/// <summary> /// Returns all directories where included files are being searched. /// </summary> /// <param name="fileName">name of the file for which the check is being performed. /// If this is null, then only project default include location will be returned.</param> public IList <string> GetIncludeDirectories(string fileName) { IList <string> result = GetEvaluatedProperty("IncludePath") .Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); if (fileName != null) { FileProjectItem fileItem = FindFile(fileName); if (fileItem != null) { string additionalIncludes = fileItem.GetEvaluatedMetadata("AdditionalIncludeDirectories"); result = result.Concat( additionalIncludes.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries)).ToList(); } } for (int i = 0; i < result.Count; i++) { if (!Path.IsPathRooted(result[i])) { result[i] = FileUtility.NormalizePath(Path.Combine(Directory, result[i])); } } return(result); }
public IList <string> GetProjectUndefines(string fileName) { if (fileName == null) { throw new ArgumentNullException("fileName"); } FileProjectItem fileItem = FindFile(fileName); IList <string> result; if (fileItem != null) { string undefinedSymbols = fileItem.GetEvaluatedMetadata("UndefinePreprocessorDefinitions"); result = undefinedSymbols.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); } else { result = new string[0]; } return(result); }
public void GenerateCode(FileProjectItem item, CustomToolContext context) { XmlDocument doc = new XmlDocument(); doc.Load(item.FileName); SettingsDocument setDoc = new SettingsDocument(doc.DocumentElement, DummySettingsEntryHost.Instance); string customToolNamespace = item.GetEvaluatedMetadata("CustomToolNamespace"); if (!string.IsNullOrEmpty(customToolNamespace)) { setDoc.GeneratedClassNamespace = customToolNamespace; } CodeCompileUnit ccu = new CodeCompileUnit(); var ns = ccu.AddNamespace(setDoc.GeneratedClassNamespace); ns.Types.Add(CreateClass(setDoc)); if (setDoc.UseMySettingsClassName) { ns.Types.Add(CreateMySettingsProperty(setDoc)); } context.WriteCodeDomToFile(item, context.GetOutputFileName(item, ".Designer"), ccu); }
string GetCustomToolNamespace() { return(templateFile.GetEvaluatedMetadata("CustomToolNamespace")); }
public void ProxyFileItemAutoGenProperty() { Assert.AreEqual("True", proxyFileProjectItem.GetEvaluatedMetadata("AutoGen")); }
public void ReferenceMapFileItemGeneratorProperty() { Assert.AreEqual("MSDiscoCodeGenerator", referenceMapFileProjectItem.GetEvaluatedMetadata("Generator")); }