using UnityEditor;
using UnityEngine;
namespace Unity.VisualScripting
{
[Inspector(typeof(ValuePortDefinition))]
public class ValuePortDefinitionInspector : UnitPortDefinitionInspector
{
public ValuePortDefinitionInspector(Metadata metadata) : base(metadata) { }
protected Metadata typeMetadata => metadata[nameof(ValueInputDefinition.type)];
protected float GetTypeHeight(float width)
{
return LudiqGUI.GetInspectorHeight(this, typeMetadata, width);
}
private void OnTypeGUI(Rect position)
{
LudiqGUI.Inspector(typeMetadata, position);
}
protected override float GetHeight(float width, GUIContent label)
{
var height = base.GetHeight(width, label);
height += EditorGUIUtility.standardVerticalSpacing;
height += GetTypeHeight(width);
return height;
}
protected override void OnFieldsGUI(Rect position)
{
base.OnFieldsGUI(position);
y += EditorGUIUtility.standardVerticalSpacing;
OnTypeGUI(position.VerticalSection(ref y, GetTypeHeight(position.width)));
}
}
}