A game about forced loneliness, made by TACStudios
at master 1.2 kB view raw
1using System; 2using System.Collections.Generic; 3using UnityEditor.ShaderGraph.Drawing; 4using UnityEditor.ShaderGraph.Serialization; 5using UnityEngine; 6using UnityEngine.UIElements; 7 8namespace UnityEditor.ShaderGraph 9{ 10 11 [Serializable] 12 internal abstract class AbstractShaderGraphDataExtension : JsonObject 13 { 14 internal virtual int paddingIdentationFactor => 15; 15 16 internal abstract string displayName { get; } 17 18 internal abstract void OnPropertiesGUI(VisualElement context, Action onChange, Action<string> registerUndo, GraphData owner); 19 20 internal static List<AbstractShaderGraphDataExtension> ValidExtensions() 21 { 22 var result = new List<AbstractShaderGraphDataExtension>(); 23 foreach (var type in TypeCache.GetTypesDerivedFrom(typeof(AbstractShaderGraphDataExtension))) 24 { 25 if (type.IsGenericType || type == typeof(MultiJsonInternal.UnknownGraphDataExtension)) 26 continue; 27 28 var subData = (AbstractShaderGraphDataExtension)Activator.CreateInstance(type); 29 result.Add(subData); 30 } 31 return result; 32 } 33 } 34}