public object Create(Type targetType, object source) { if (source != null) { Type?sourceType = source.GetType(); if (typeof(IDictionary).IsAssignableFrom(sourceType)) { #pragma warning disable CS8604 // Possible null reference argument. return(CreateFromDictionary(source as IDictionary)); #pragma warning restore CS8604 // Possible null reference argument. } if (typeof(MeshGeometry3D).IsAssignableFrom(sourceType)) { #pragma warning disable CS8604 // Possible null reference argument. return(CreateFromMeshGeometry3D(source as MeshGeometry3D)); #pragma warning restore CS8604 // Possible null reference argument. } if (ParentFactory != null) { return(Create(targetType, ParentFactory.Create <IDictionary>(source))); } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
public object?Create(Type targetType, object source) { if (targetType != typeof(Model3D)) { return(null); } if (Ignore(source)) { return(null); } if (source != null) { if (source is IDictionary dictionary) { return(CreateFromDictionary(dictionary)); } } if (ParentFactory != null) { IDictionary?dictionary = ParentFactory.Create <IDictionary>(source); if (dictionary != null) { return(CreateFromDictionary(dictionary)); } } return(null); }
public object Create(Type targetType, object source) { if (targetType == null) { #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. } if (!typeof(Material).IsAssignableFrom(targetType)) { #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. } if (source != null && source is Brush) { return(new DiffuseMaterial(source as Brush)); } if (ParentFactory != null) { Brush?brush = ParentFactory.Create <Brush>(source); if (brush != null) { return(new DiffuseMaterial(brush)); } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
private object CreateFromStream(Type target_type, Stream stream, object source) { if (stream == null) { #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. } if (ReadFunction != null) { object?instance = ReadFunction(stream); stream.Close(); if (instance is IDictionary dictionary) { IDictionary?new_dictionary = dictionary.ConvertTypes(IDictionaryTypes, DefaultObjectType, TypeKey); new_dictionary.DeepUpdateParents(); if (source != null && (source is string)) { string filename = stream.GetFileName(); if (filename.Length > 0) { new_dictionary.SetFileName(filename); } else { #pragma warning disable CS8604 // Possible null reference argument. new_dictionary.SetFileName(source.ToString()); #pragma warning restore CS8604 // Possible null reference argument. } } instance = new_dictionary; } if (instance != null) { if (target_type.IsInstanceOfType(instance)) { return(instance); } if (ParentFactory != null) { #pragma warning disable CS8603 // Possible null reference return. return(ParentFactory.Create(target_type, instance)); #pragma warning restore CS8603 // Possible null reference return. } } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
private Transform3D GetTransform3D(object source) { if (ParentFactory != null) { #pragma warning disable CS8603 // Possible null reference return. return(ParentFactory.Create(typeof(Transform3D), source) as Transform3D); #pragma warning restore CS8603 // Possible null reference return. } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
private Model3D GetUnscaledPrimaryModel3D(IDictionary source) { if (PrimaryModel3DHelperFunction != null) { Model3D?model = PrimaryModel3DHelperFunction(source); if (model != null) { return(model); } } if (ParentFactory != null) { string?type = source.Get <string>("Type"); if (type.Length > 0) { string?modelName = $"Model3D.{type}.xaml"; if (namedCache.ContainsKey(modelName)) { Model3D?m3d = namedCache[modelName]; if (m3d != null) { return(m3d); } } else { Model3D?m3d = ParentFactory.Create <Model3D>(modelName); namedCache.Add(modelName, m3d); if (m3d != null) { return(m3d); } } } if (ParentFactory.Create(typeof(GeometryModel3D), source) is GeometryModel3D geometry3D) { return(geometry3D); } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
public object Create(Type targetType, object source) { if (ParentFactory != null) { object?matrix3D = ParentFactory.Create(typeof(Matrix3D), source); if (matrix3D != null) { return(new MatrixTransform3D { Matrix = (Matrix3D)matrix3D }); } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
public object Create(Type targetType, object source) { if (source != null && source is IDictionary) { #pragma warning disable CS8604 // Possible null reference argument. return(CreateFromDictionary(source as IDictionary)); #pragma warning restore CS8604 // Possible null reference argument. } if (ParentFactory != null && source != null) { return(Create(targetType, ParentFactory.Create <IDictionary>(source))); } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
private Stream CreateStream(object source) { Stream?stream = source as Stream; if (stream == null && source != null && ParentFactory != null && !callingParent) { callingParent = true; try { stream = ParentFactory.Create(typeof(Stream), source) as Stream; } finally { callingParent = false; } } #pragma warning disable CS8603 // Possible null reference return. return(stream); #pragma warning restore CS8603 // Possible null reference return. }
public object Create(Type targetType, object source) { if (source != null) { if (source is Color) { return(new SolidColorBrush((Color)source)); } if (source is ImageSource) { #pragma warning disable CS8604 // Possible null reference argument. return(CreateFromImageSource(source as ImageSource)); #pragma warning restore CS8604 // Possible null reference argument. } } if (ParentFactory != null) { #pragma warning disable CS8604 // Possible null reference argument. object?color = ParentFactory.Create(typeof(Color), source); #pragma warning restore CS8604 // Possible null reference argument. if (color != null) { return(Create(targetType, color)); } #pragma warning disable CS8604 // Possible null reference argument. object?image = ParentFactory.Create(typeof(ImageSource), source); #pragma warning restore CS8604 // Possible null reference argument. if (image != null) { return(Create(targetType, image)); } } #pragma warning disable CS8603 // Possible null reference return. return(null); #pragma warning restore CS8603 // Possible null reference return. }
public object?Create(Type targetType, object source) { if (source == null) { return(null); } if (targetType == null) { return(null); } if (ParentFactory != null) { Model3D?model3D = ParentFactory.Create <Model3D>(source); if (model3D != null) { return(new ModelVisual3D { Content = model3D }); } } return(null); }