public static void InsertDefaults(Dictionary <string, ParameterDescription> parameterDescriptions, TransformManagerDataControl into, bool overriding) { foreach (var param in parameterDescriptions) { if (!into.ContainsParameter(param.Key) || overriding) { into[param.Key] = param.Value.DefaultValue; } } }
public ChangeParameterTool(TransformManagerDataControl transformManagerDataControl, params KeyValuePair <string, object>[] newValues) { this.transformManagerDataControl = transformManagerDataControl; this.newValues = newValues; this.oldValues = new Dictionary <string, object>(); foreach (var kv in newValues) { oldValues[kv.Key] = transformManagerDataControl.ContainsParameter(kv.Key) ? transformManagerDataControl[kv.Key] : null; } }
public static T GetValue <T>(this TransformManagerDataControl transformManagerDataControl, T @default, Converter <T>[] converters, params string[] names) { var value = names.Where(n => transformManagerDataControl.ContainsParameter(n)) .Select(n => transformManagerDataControl[n]).DefaultIfEmpty(@default).First(); if (value is T) { return((T)value); } if (converters != null) { var validConverter = converters.Where(c => c.OriginType == value.GetType()); if (validConverter.Any()) { return(validConverter.First().Convert(value)); } } return(@default); }