26 lines
939 B
C#
26 lines
939 B
C#
namespace Unity.VisualScripting
|
|
{
|
|
[GraphContextExtension(typeof(FlowGraphContext))]
|
|
public sealed class FlowGraphContextStateExtension : GraphContextExtension<FlowGraphContext>
|
|
{
|
|
public FlowGraphContextStateExtension(FlowGraphContext context) : base(context) { }
|
|
|
|
public override bool AcceptsDragAndDrop()
|
|
{
|
|
return DragAndDropUtility.Is<StateGraphAsset>();
|
|
}
|
|
|
|
public override void PerformDragAndDrop()
|
|
{
|
|
var statemacro = DragAndDropUtility.Get<StateGraphAsset>();
|
|
var stateUnit = new StateUnit(statemacro);
|
|
context.canvas.AddUnit(stateUnit, DragAndDropUtility.position);
|
|
}
|
|
|
|
public override void DrawDragAndDropPreview()
|
|
{
|
|
GraphGUI.DrawDragAndDropPreviewLabel(DragAndDropUtility.offsetedPosition, DragAndDropUtility.Get<StateGraphAsset>().name, typeof(StateGraphAsset).Icon());
|
|
}
|
|
}
|
|
}
|