private static CSharpFormattingOptions CreateOptionSet(FormattingOptionSet defaultOptionSet) { switch (defaultOptionSet) { case FormattingOptionSet.Orcomp: return(CreateOrcompOptions()); case FormattingOptionSet.KRStyle: return(FormattingOptionsFactory.CreateKRStyle()); case FormattingOptionSet.Mono: return(FormattingOptionsFactory.CreateMono()); case FormattingOptionSet.SharpDevelop: return(FormattingOptionsFactory.CreateSharpDevelop()); case FormattingOptionSet.VisualStudio: return(FormattingOptionsFactory.CreateAllman()); case FormattingOptionSet.GNU: return(FormattingOptionsFactory.CreateGNU()); case FormattingOptionSet.Whitesmiths: return(FormattingOptionsFactory.CreateWhitesmiths()); default: return(FormattingOptionsFactory.CreateAllman()); } }
public static CSharpFormattingOptions GetOptions(string fileName = null, CSharpFormattingOptions defaultOptions = null, FormattingOptionSet defaultOptionSet = FormattingOptionSet.VisualStudio) { var result = defaultOptions ?? CreateOptionSet(defaultOptionSet); if (fileName == null) { return(result); } var properties = Load(fileName); foreach (var propertyInfo in typeof(CSharpFormattingOptions).GetProperties()) { bool found; var value = properties.Get(propertyInfo.Name, GetDefaultValue(propertyInfo.PropertyType), out found); if (found && (value != null) && (value.GetType() == propertyInfo.PropertyType)) { propertyInfo.SetValue(result, value, new object[0]); } } return(result); }