Rasagar/Library/PackageCache/com.unity.shadergraph/Editor/Data/Interfaces/IInspectable.cs
2024-08-26 23:07:20 +03:00

22 lines
977 B
C#

using System;
using System.Reflection;
using UnityEngine.UIElements;
namespace UnityEditor.ShaderGraph.Drawing
{
interface IInspectable
{
// Implementors can override this in order to display their desired string when selected and viewed through the inspector
string inspectorTitle { get; }
// This function should return the underlying data object that user wishes to expose to the Inspector
// For simple data properties like Integers/Floats this is the object that contains the properties
// For complex types like GraphData this is the GraphData itself, its up to the PropertyDrawer to define what it needs
object GetObjectToInspect();
// Used to provide any data needed by the property drawer from the inspectable
// The inspectorUpdateDelegate is used to trigger an inspector update
void SupplyDataToPropertyDrawer(IPropertyDrawer propertyDrawer, Action inspectorUpdateDelegate);
}
}