namespace Unity.VisualScripting
{
[Descriptor(typeof(Expose))]
public class ExposeDescriptor : UnitDescriptor<Expose>
{
public ExposeDescriptor(Expose unit) : base(unit) { }
protected override string DefinedTitle()
{
return $"Expose {unit.type.DisplayName()}";
}
protected override string DefinedSurtitle()
{
return "Expose";
}
protected override string DefinedShortTitle()
{
return unit.type.DisplayName();
}
protected override EditorTexture DefinedIcon()
{
return unit.type.Icon();
}
protected override void DefinedPort(IUnitPort port, UnitPortDescription description)
{
base.DefinedPort(port, description);
if (port is ValueOutput && unit.members.TryGetValue((ValueOutput)port, out Member member))
{
description.label = member.info.HumanName();
description.summary = member.info.Summary();
}
}
}
}