Changeset 17269 for branches/3026_IntegrationIntoSymSpace/HeuristicLab.Manufacture/ParameterTransformer/ConstrainedValueParameterTransformer.cs
- Timestamp:
- 09/25/19 17:18:41 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3026_IntegrationIntoSymSpace/HeuristicLab.Manufacture/ParameterTransformer/ConstrainedValueParameterTransformer.cs
r17266 r17269 12 12 if (x.GetType().Name == CastValue<string>(data.Default)) 13 13 parameter.ActualValue = x; 14 15 if (parameter.ActualValue is IParameterizedItem && data.Reference != null) 16 Transformer.Inject(parameter.ActualValue, data.Reference); 14 17 } 15 18 16 19 public override ParameterData ExtractData(IParameter value) { 20 17 21 return new ParameterData() { 18 22 Name = value.Name, 19 23 Default = value.ActualValue?.GetType().Name, 20 Range = GetValidValues(value) 24 Range = GetValidValues(value), 25 ParameterizedItems = GetParameterizedChilds(value) 21 26 }; 22 27 } … … 26 31 List<object> list = new List<object>(); 27 32 var values = value.Cast<dynamic>().ValidValues; 28 foreach (var x in values) list.Add(x); 29 return list.Select(x => x.GetType().Name).ToArray(); 33 foreach (var x in values) list.Add(x.GetType().Name); 34 return list.ToArray(); 35 } 36 37 private IList<ParameterData> GetParameterizedChilds(IParameter value) { 38 List<ParameterData> list = new List<ParameterData>(); 39 var values = value.Cast<dynamic>().ValidValues; 40 foreach(var x in values) { 41 if (x is IParameterizedItem && 42 ((IParameterizedItem)x).Parameters.Any(p => !p.Hidden)) { 43 ParameterData tmp = Transformer.Extract(x); 44 if (tmp.ParameterizedItems != null) 45 list.AddRange(tmp.ParameterizedItems); 46 else 47 list.Add(tmp); 48 } 49 } 50 return list.Count == 0 ? null : list; 30 51 } 31 52 #endregion
Note: See TracChangeset
for help on using the changeset viewer.