UControlRigGraphSchema

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

ControlRigDeveloper

Header

/Engine/Plugins/Experimental/ControlRig/Source/ControlRigDeveloper/Public/Graph/ControlRigGraphSchema.h

Include

#include "Graph/ControlRigGraphSchema.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)()
class UControlRigGraphSchema : public UEdGraphSchema

Constructors

Name Description

Public function

UControlRigGraphSchema()

Functions

Name Description

Public function Const

UControlRigG...

 

CreateGraphNode

(
    UControlRigGraph* InGraph,
    const FName& InPropertyName
)

Create a graph node for a rig

Public function Virtual Const

void

 

GetVariablePinTypes

(
    TArray< FEdGraphPinType >& PinType...
)

Returns all of the applicable pin types for variables within a control rig

Public function Virtual Const

bool

 

IsStructEditable

(
    UStruct* InStruct
)

Public function Const

void

 

LayoutNodes

(
    UControlRigGraph* InGraph,
    const TArray< UControlRigGraphNode ...
)

Automatically layout the passed-in nodes

Public function Const

void

 

RenameNode

(
    UControlRigGraphNode* Node,
    const FName& InNewNodeName
)

Helper function to rename a node

Public function Virtual Const

void

 

ResetPinDefaultsRecursive

(
    UEdGraphPin* InPin
)

Helper function to recursively reset the pin defaults

Overridden from UEdGraphSchema

Name Description

Public function Virtual Const

bool

 

ArePinsCompatible

(
    const UEdGraphPin* PinA,
    const UEdGraphPin* PinB,
    const UClass* CallingContext,
    bool bIgnoreArray
)

Returns true if the types and directions of two pins are schema compatible.

Public function Virtual Const

void

 

BreakPinLinks

(
    UEdGraphPin& TargetPin,
    bool bSendsNodeNotifcation
)

Breaks all links from/to a single pin

Public function Virtual Const

void

 

BreakSinglePinLink

(
    UEdGraphPin* SourcePin,
    UEdGraphPin* TargetPin
)

Breaks the link between two nodes.

Public function Virtual Const

const FPinCo...

 

CanCreateConnection

(
    const UEdGraphPin* A,
    const UEdGraphPin* B
)

Determine if a connection can be created between two pins.

Public function Virtual Const

void

 

ClearPinWatch

(
    UEdGraphPin const* Pin
)

If the specified pin is currently being watched, then this will clear the watch from the graph's debug system.

Public function Virtual Const

FConnectionD...

 

CreateConnectionDrawingPolicy

(
    int32 InBackLayerID,
    int32 InFrontLayerID,
    float InZoomFactor,
    const FSlateRect& InClippingRect,
    FSlateWindowElementList& InDrawEle...,
    UEdGraph* InGraphObj
)

Returns new FConnectionDrawingPolicy from this schema

Public function Virtual Const

bool

 

DoesSupportPinWatching()

An easy way to check to see if the current graph system supports pin watching.

Public function Virtual Const

void

 

GetContextMenuActions

(
    UToolMenu* Menu,
    UGraphNodeContextMenuContext* ...
)

Gets actions that should be added to the right-click context menu for a node or pin

Public function Virtual Const

void

 

GetGraphContextActions

(
    FGraphContextMenuBuilder& ContextM...
)

Get all actions that can be performed when right clicking on a graph or drag-releasing on a graph from a pin

Public function Virtual Const

FLinearColor

 

GetPinTypeColor

(
    const FEdGraphPinType& PinType
)

Gets the draw color of a pin based on it's type.

Public function Virtual Const

bool

 

IsPinBeingWatched

(
    UEdGraphPin const* Pin
)

Checks to see if the specified pin is being watched by the graph's debug system.

Public function Virtual Const

bool

 

MarkBlueprintDirtyFromNewNode

(
    UBlueprint* InBlueprint,
    UEdGraphNode* InEdGraphNode
)

Returns true if the schema wants to overdrive the behaviour of dirtying the blueprint on new node creation.

Public function Virtual Const

void

 

OnPinConnectionDoubleCicked

(
    UEdGraphPin* PinA,
    UEdGraphPin* PinB,
    const FVector2D& GraphPosition
)

Handles double-clicking on a pin<->pin connection

Public function Virtual Const

bool

 

SafeDeleteNodeFromGraph

(
    UEdGraph* Graph,
    UEdGraphNode* Node
)

Perform any logic necessary to safely remove this node from the graph.

Public function Virtual Const

bool

 

ShouldAlwaysPurgeOnModification()

When a node is removed, this method determines whether we should remove it immediately or use the old (slower) code path that results in all node being recreated:

Public function Virtual Const

bool

 

ShouldHidePinDefaultValue

(
    UEdGraphPin* Pin
)

If we should disallow viewing and editing of the supplied pin

Public function Virtual Const

bool

 

TryCreateConnection

(
    UEdGraphPin* A,
    UEdGraphPin* B
)

Try to make a connection between two pins.

Public function Virtual Const

void

 

TrySetDefaultObject

(
    UEdGraphPin& Pin,
    UObject* NewDefaultObject,
    bool bMarkAsModified
)

Sets the object to the specified pin

Public function Virtual Const

void

 

TrySetDefaultText

(
    UEdGraphPin& InPin,
    const FText& InNewDefaultText,
    bool bMarkAsModified
)

Sets the text to the specified pin

Public function Virtual Const

void

 

TrySetDefaultValue

(
    UEdGraphPin& Pin,
    const FString& NewDefaultValue,
    bool bMarkAsModified
)

Sets the string to the specified pin; even if it is invalid it is still set.

Constants

Name

Description

GraphName_ControlRig

Name constants

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss