Skip to content

USMGraphSchema

Module: SMSystemEditor

Inherits from UEdGraphSchema

Public Functions

Name
virtual void CreateDefaultNodesForGraph(UEdGraph & Graph) const override
virtual EGraphType GetGraphType(const UEdGraph * TestEdGraph) const override
virtual void GetGraphContextActions(FGraphContextMenuBuilder & ContextMenuBuilder) const override
virtual void GetContextMenuActions(class UToolMenu * Menu, class UGraphNodeContextMenuContext * Context) const override
virtual const FPinConnectionResponse CanCreateConnection(const UEdGraphPin * PinA, const UEdGraphPin * PinB) const override
virtual bool TryCreateConnection(UEdGraphPin * PinA, UEdGraphPin * PinB) const override
virtual bool CreateAutomaticConversionNodeAndConnections(UEdGraphPin * A, UEdGraphPin * B) const override
virtual FConnectionDrawingPolicy * CreateConnectionDrawingPolicy(int32 InBackLayerID, int32 InFrontLayerID, float InZoomFactor, const FSlateRect & InClippingRect, class FSlateWindowElementList & InDrawElements, class UEdGraph * InGraphObj) const override
virtual FLinearColor GetPinTypeColor(const FEdGraphPinType & PinType) const override
virtual void GetGraphDisplayInformation(const UEdGraph & Graph, FGraphDisplayInfo & DisplayInfo) const override
virtual void BreakNodeLinks(UEdGraphNode & TargetNode) const override
virtual void BreakPinLinks(UEdGraphPin & TargetPin, bool bSendsNodeNotification) const override
virtual void BreakSinglePinLink(UEdGraphPin * SourcePin, UEdGraphPin * TargetPin) const override
virtual bool SupportsDropPinOnNode(UEdGraphNode * InTargetNode, const FEdGraphPinType & InSourcePinType, EEdGraphPinDirection InSourcePinDirection, FText & OutErrorMessage) const override
virtual bool CanDuplicateGraph(UEdGraph * InSourceGraph) const override
virtual void HandleGraphBeingDeleted(UEdGraph & GraphBeingRemoved) const override
virtual void OnPinConnectionDoubleCicked(UEdGraphPin * PinA, UEdGraphPin * PinB, const FVector2D & GraphPosition) const override
bool DoesUserAllowPlacement(const UEdGraphNode * A, const UEdGraphNode * B, FPinConnectionResponse & ResponseOut)
bool CanReplaceNode(const UEdGraphNode * InGraphNode)
bool CanReplaceNodeWith(const UEdGraphNode * InGraphNode, bool & bStateMachine, bool & bStateMachineRef, bool & bState, bool & bConduit, bool & bStateMachineParent)
bool SetTransitionClassFromRules(USMGraphNode_TransitionEdge * InTransitionEdge, const UClass * InFromStateClass, const UClass * InToStateClass, const UClass * InStateMachineClass, TSubclassOf< USMTransitionInstance > InBaseClass =nullptr)
void RenameNodeFromTemplateData(USMGraphNode_Base * InGraphNode)

Protected Functions

Name
void GetReplaceWithMenuActions(class FMenuBuilder & MenuBuilder, const UEdGraphNode * InGraphNode) const

Public Functions Documentation

function CreateDefaultNodesForGraph

virtual void CreateDefaultNodesForGraph(
    UEdGraph & Graph
) const override

function GetGraphType

virtual EGraphType GetGraphType(
    const UEdGraph * TestEdGraph
) const override

function GetGraphContextActions

virtual void GetGraphContextActions(
    FGraphContextMenuBuilder & ContextMenuBuilder
) const override

function GetContextMenuActions

virtual void GetContextMenuActions(
    class UToolMenu * Menu,
    class UGraphNodeContextMenuContext * Context
) const override

function CanCreateConnection

virtual const FPinConnectionResponse CanCreateConnection(
    const UEdGraphPin * PinA,
    const UEdGraphPin * PinB
) const override

function TryCreateConnection

virtual bool TryCreateConnection(
    UEdGraphPin * PinA,
    UEdGraphPin * PinB
) const override

function CreateAutomaticConversionNodeAndConnections

virtual bool CreateAutomaticConversionNodeAndConnections(
    UEdGraphPin * A,
    UEdGraphPin * B
) const override

function CreateConnectionDrawingPolicy

virtual FConnectionDrawingPolicy * CreateConnectionDrawingPolicy(
    int32 InBackLayerID,
    int32 InFrontLayerID,
    float InZoomFactor,
    const FSlateRect & InClippingRect,
    class FSlateWindowElementList & InDrawElements,
    class UEdGraph * InGraphObj
) const override

function GetPinTypeColor

virtual FLinearColor GetPinTypeColor(
    const FEdGraphPinType & PinType
) const override

function GetGraphDisplayInformation

virtual void GetGraphDisplayInformation(
    const UEdGraph & Graph,
    FGraphDisplayInfo & DisplayInfo
) const override

virtual void BreakNodeLinks(
    UEdGraphNode & TargetNode
) const override

virtual void BreakPinLinks(
    UEdGraphPin & TargetPin,
    bool bSendsNodeNotification
) const override

virtual void BreakSinglePinLink(
    UEdGraphPin * SourcePin,
    UEdGraphPin * TargetPin
) const override

function SupportsDropPinOnNode

virtual bool SupportsDropPinOnNode(
    UEdGraphNode * InTargetNode,
    const FEdGraphPinType & InSourcePinType,
    EEdGraphPinDirection InSourcePinDirection,
    FText & OutErrorMessage
) const override

function CanDuplicateGraph

inline virtual bool CanDuplicateGraph(
    UEdGraph * InSourceGraph
) const override

function HandleGraphBeingDeleted

virtual void HandleGraphBeingDeleted(
    UEdGraph & GraphBeingRemoved
) const override

function OnPinConnectionDoubleCicked

virtual void OnPinConnectionDoubleCicked(
    UEdGraphPin * PinA,
    UEdGraphPin * PinB,
    const FVector2D & GraphPosition
) const override

function DoesUserAllowPlacement

static bool DoesUserAllowPlacement(
    const UEdGraphNode * A,
    const UEdGraphNode * B,
    FPinConnectionResponse & ResponseOut
)

function CanReplaceNode

static bool CanReplaceNode(
    const UEdGraphNode * InGraphNode
)

function CanReplaceNodeWith

static bool CanReplaceNodeWith(
    const UEdGraphNode * InGraphNode,
    bool & bStateMachine,
    bool & bStateMachineRef,
    bool & bState,
    bool & bConduit,
    bool & bStateMachineParent
)

function SetTransitionClassFromRules

static bool SetTransitionClassFromRules(
    USMGraphNode_TransitionEdge * InTransitionEdge,
    const UClass * InFromStateClass,
    const UClass * InToStateClass,
    const UClass * InStateMachineClass,
    TSubclassOf< USMTransitionInstance > InBaseClass =nullptr
)

Determine the transition class to use when creating a new connection based on user rules.


function RenameNodeFromTemplateData

static void RenameNodeFromTemplateData(
    USMGraphNode_Base * InGraphNode
)

Attempt to rename the graph node based on the node instance template information.


Protected Functions Documentation

function GetReplaceWithMenuActions

void GetReplaceWithMenuActions(
    class FMenuBuilder & MenuBuilder,
    const UEdGraphNode * InGraphNode
) const