Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/EdGraph
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UEdGraphNode
- UEdGraphNode_Documentation
- UEdGraphNode_Reference
- UEdGraphNode_ReferencedProperties
- UObjectTreeGraphNode
- UCameraNodeGraphNode
- UCameraRigNodeGraphNode
- UCameraRigInterfaceParameterGraphNode
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Classes/EdGraph/EdGraphNode.h |
| Include | #include "EdGraph/EdGraphNode.h" |
Syntax
UCLASS (MinimalAPI)
class UEdGraphNode : public UObject
Variables
| Type | Name | Description | |
|---|---|---|---|
| TEnumAsByte< ENodeAdvancedPins::Type > | AdvancedPinDisplay | Enum to indicate if a node has advanced-display-pins, and if they are shown | |
| uint8: 1 | bCanRenameNode | If true, this node can be renamed in the editor | |
| uint8: 1 | bCanResizeNode | If true, this node can be resized and should be drawn with a resize handle | |
| uint8: 1 | bCommentBubbleMakeVisible | Make comment bubble visible | |
| uint8: 1 | bCommentBubblePinned | Comment bubble pinned state | |
| uint8: 1 | bCommentBubbleVisible | Comment bubble visibility | |
| uint8: 1 | bDisableOrphanPinSaving | When true, overrides whatever OrphanedPinSaveMode specifies and behaves as if it were SaveNone. | |
| uint8: 1 | bHasCompilerMessage | Flag to check for compile error/warning | |
| TWeakPtr< SGraphNode > | DEPRECATED_NodeWidget | Widget representing this node if it exists; Note: This is not safe to use in general and will be removed in the future, as there is no guarantee that only one graph editor/panel is viewing a given graph | |
| TArray< TObjectPtr< class UEdGraphPin_Deprecated > > | DeprecatedPins | List of connector pins | |
| FString | ErrorMsg | Error/Warning description | |
| int32 | ErrorType | Flag to store node specific compile error/warning | |
| FString | NodeComment | Comment string that is drawn on the node | |
| FGuid | NodeGuid | GUID to uniquely identify this node, to facilitate diffing versions of this graph | |
| int32 | NodeHeight | Height of node in the editor; only used when the node can be resized | |
| int32 | NodePosX | X position of node in the editor | |
| int32 | NodePosY | Y position of node in the editor | |
| FText | NodeUpgradeMessage | Note for a node that lingers until saved | |
| int32 | NodeWidth | Width of node in the editor; only used when the node can be resized | |
| ESaveOrphanPinMode | OrphanedPinSaveMode | When reconstructing a node should the orphaned pins be retained and transfered to the new pin list. | |
| TArray< UEdGraphPin * > | Pins |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UEdGraphNode
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddNodeUpgradeNote
(
FText InUpgradeNote |
Adds an upgrade note to this node | |
| void | AddPinSearchMetaDataInfo
(
const UEdGraphPin* Pin, |
Adds node pin data to the search metadata, override to collect more data that may be desirable to search for | |
| void | AddReferencedObjects
(
UObject* InThis, |
||
| void | AddSearchMetaDataInfo
(
TArray< struct FSearchTagDataPair >& OutTaggedMetaData |
Add's node data to the search metadata, override to collect more data that may be desirable to search for | |
| void | Allocate default pins for a given node, based only the NodeType, which should already be filled in. | ||
| void | AutowireNewNode
(
UEdGraphPin* FromPin |
Autowire a newly created node. | |
| void | BreakAllNodeLinks
(
bool bAlwaysMarkDirty |
Break all links on this node | |
| bool | CanCreateUnderSpecifiedSchema
(
const UEdGraphSchema* Schema |
Determine if this node can be created under the specified schema | |
| bool | Whether or not this node can be safely duplicated (via copy/paste, etc...) in the graph | ||
| bool | Returns true if it is possible to jump to the definition of this node (e.g., if it's a variable get or a function call) | ||
| bool | CanPasteHere
(
const UEdGraph* TargetGraph |
Determine if this node can live in the specified graph | |
| bool | CanSplitPin
(
const UEdGraphPin* Pin |
Whether or not struct pins belonging to this node should be allowed to be split or not. | |
| bool | Whether or not this node can be deleted by user action | ||
| bool | Whether or not this node allows users to edit the advanced view flag of pins (actually edit the property, not the same as show/hide advanced pins). | ||
| void | Clear error flag | ||
| void | Create a new unique Guid for this node | ||
| TSharedPtr< SWidget > | Create the background image for the widget representing this node | ||
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
Create a new pin on this node using the supplied pin type, and return the new pin | |
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
||
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
||
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
||
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
Create a new pin on this node using the supplied pin type, and return the new pin | |
| UEdGraphPin * | CreatePin
(
EEdGraphPinDirection Dir, |
Create a new pin on this node using the supplied info, and return the new pin | |
| FName | CreateUniquePinName
(
FName SourcePinName |
Generate a unique pin name, trying to stick close to a passed in name | |
| TSharedPtr< SGraphNode > | Create a visual widget to represent this node in a graph editor or graph panel. | ||
| void | DeclareCustomVersions
(
FArchive& Ar, |
||
| void | DestroyNode () |
Destroy the specified node | |
| void | DestroyPin
(
UEdGraphPin* Pin |
Destroys the specified pin, does not modify its owning pin's Pins list | |
| void | DiffProperties
(
UStruct* StructA, |
Finds the difference in properties of node instance, for arbitrary UStructs | |
| void | DiffProperties
(
UClass* StructA, |
Finds the difference in properties of node instance, for subobjects | |
| void | FindDiffs
(
UEdGraphNode* OtherNode, |
Gives the node the option to customize how diffs are discovered within it. | |
| UEdGraphPin * | FindPin
(
const TCHAR* PinName, |
Find a pin on this node with the supplied name and optional direction | |
| UEdGraphPin * | FindPin
(
const FString& PinName, |
Find a pin on this node with the supplied name and optional direction | |
| UEdGraphPin * | FindPin
(
const FName PinName, |
Find a pin on this node with the supplied name and optional direction | |
| UEdGraphPin * | FindPinById
(
const FGuid PinId |
Find the pin on this node with the supplied guid | |
| UEdGraphPin * | FindPinByIdChecked
(
const FGuid PinId |
Find the pin on this node with the supplied guid and assert if it is not present | |
| UEdGraphPin * | FindPinByPredicate
(
TFunctionRef< bool(UEdGraphPin*InPin)> InFunction |
Find a pin using a user-defined predicate | |
| UEdGraphPin * | FindPinChecked
(
const FName PinName, |
Find a pin on this node with the supplied name and optional direction and assert if it is not present | |
| UEdGraphPin * | FindPinChecked
(
const FString& PinName, |
Find a pin on this node with the supplied name and optional direction and assert if it is not present | |
| UEdGraphPin * | FindPinChecked
(
const TCHAR* PinName, |
Find a pin on this node with the supplied name and optional direction and assert if it is not present | |
| void | ForEachNodeDirectlyConnected
(
TFunctionRef< void(UEdGraphNode*)> Func |
Execute a provided function once for each node that is directly connected to this node, will not include the node itself | |
| void | ForEachNodeDirectlyConnectedIf
(
TFunctionRef< bool(const UEdGraphPin*Pin)> Filter, |
Often we are only interested in a subset of our connections (e.g. only output pins, or only output pins except our exec pin) This function provides the ability to execute a provided function once for each node that is directly connected to this node, but first filters out which of this node's pins to consider: | |
| void | ForEachNodeDirectlyConnectedToInputs
(
TFunctionRef< void(UEdGraphNode*)> Func |
Execute a provided function once for each node that is directly connected to this node's input pins, will not include the node itself Implementation provides an example usage of ForEachNodeDirectlyConnectedIf. | |
| void | ForEachNodeDirectlyConnectedToOutputs
(
TFunctionRef< void(UEdGraphNode*)> Func |
Execute a provided function once for each node that is directly connected to this node's output pins, will not include the node itself Implementation provides an example usage of ForEachNodeDirectlyConnectedIf. | |
| void | GatherForLocalization
(
FPropertyLocalizationDataGatherer& PropertyLocalizationDataGatherer, |
||
| const TArray< UEdGraphPin * > & | GetAllPins () |
Get all pins this node owns | |
| bool | If true, this node can be renamed in the editor | ||
| FEdGraphNodeDeprecationResponse | GetDeprecationResponse
(
EEdGraphNodeDeprecationType DeprecationType |
Returns the response to use when reporting a deprecation. | |
| FString | Tries to come up with a descriptive name for the compiled output | ||
| ENodeEnabledState | Returns the specific sort of enable state this node wants | ||
| FString | Returns the name of the excerpt to display from the specified external documentation link for the graph node Default behavior is to return the class name (including prefix) | ||
| FString | Returns the link used for external documentation for the graph node | ||
| FString | Gets the search string to find references to this node | ||
| FString | Gets the search string to find references to this node | ||
| FString | |||
| UEdGraph * | GetGraph () |
Returns the graph that contains this node | |
| FSlateIcon | GetIconAndTint
(
FLinearColor& OutColor |
||
| UObject * | Returns the object that should be focused when double-clicking on this node (the object can be an actor, which selects it in the world, or a node/graph/pin) | ||
| FText | GetKeywords () |
Returns the keywords that should be used when searching for this node | |
| void | GetMenuEntries
(
FGraphContextMenuBuilder& ContextMenuBuilder |
This function gets menu items that can be created using this node given the specified context. | |
| FLinearColor | Gets the draw color of a node's body tine | ||
| FLinearColor | Get the draw color for a node's comment popup | ||
| void | GetNodeContextMenuActions
(
UToolMenu* Menu, |
Gets a list of actions that can be done to this particular node | |
| FText | GetNodeTitle
(
ENodeTitleType::Type TitleType |
Gets the name of this node, shown in title bar | |
| FLinearColor | Gets the draw color of a node's title bar | ||
| UEdGraphPin * | GetPassThroughPin
(
const UEdGraphPin* FromPin |
Return the matching "pass-through" pin for the given pin (if supported by this node) | |
| UEdGraphPin * | Gets the pin at a given index | ||
| FText | GetPinDisplayName
(
const UEdGraphPin* Pin |
Gets the display name for a pin | |
| void | GetPinHoverText
(
const UEdGraphPin& Pin, |
Fetch the hover text for a pin when the graph is being edited. | |
| int32 | GetPinIndex
(
UEdGraphPin* Pin |
Gets the index for a pin | |
| FString | GetPinMetaData
(
FName InPinName, |
Return the requested metadata for the pin if there is any | |
| FText | GetPinNameOverride
(
const UEdGraphPin& Pin |
Gets the overridden name for the specified pin, if any | |
| UEdGraphPin * | GetPinWithDirectionAt
(
int32 Index, |
Gets the pin with the given direction, at the given index. | |
| FString | GetPropertyNameAndValueForDiff
(
const FProperty* Prop, |
Returns a human-friendly description of the property in the form "PropertyName: Value". | |
| const UEdGraphSchema * | GetSchema () |
Shorthand way to access the schema of the graph that owns this node | |
| TArray< UEdGraph * > | GetSubGraphs () |
||
| FText | Gets the tooltip to display when over the node | ||
| FText | Visual Warning tooltip message to show | ||
| bool | Returns true if this node references a deprecated type or member. | ||
| bool | HasExternalDependencies
(
TArray< class UStruct* >* OptionalOutput |
Returns whether or not this node has dependencies on an external structure If OptionalOutput isn't null, it should be filled with the known dependencies objects (Classes, Structures, Functions, etc). | |
| bool | Has the user set the enabled state or is it still using the automatic settings? | ||
| bool | Does the node context menu inherit parent class's menu | ||
| bool | Returns true if this is a disabled automatically placed ghost node (see the DefaultEventNodes ini section) | ||
| bool | IsCompatibleWithGraph
(
UEdGraph const* Graph |
Determine if a node of this type can be created for the specified graph. | |
| bool | Return false if the node and any expansion will isolate itself during compile | ||
| bool | IsDeprecated () |
Returns true if this node is deprecated. | |
| bool | |||
| bool | Determines whether or not the node will compile in development mode. | ||
| bool | Returns whether the node was created by UEdGraph::CreateIntermediateNode. | ||
| bool | Is the node actually enabled | ||
| bool | Determines whether this node is unrelated to the selected nodes or not. | ||
| void | Jump to the definition of this node (should only be called if CanJumpToDefinition() return true) | ||
| void | Marks this node as an automatically placed ghost node (see the DefaultEventNodes ini section) | ||
| TSharedPtr< class INameValidatorInterface > | Create a name validator for this node | ||
| void | Called when something external to this node has changed the connection list of any of the pins in the node | ||
| void | OnCommentBubbleToggled
(
bool bInCommentBubbleVisible |
Called when the node's comment bubble is toggled | |
| void | OnPinRemoved
(
UEdGraphPin* InRemovedPin |
Called when a pin is removed | |
| void | OnRenameNode
(
const FString& NewName |
Called when this node is being renamed after a successful name validation | |
| void | OnUpdateCommentText
(
const FString& NewComment |
Called to replace this nodes comment text | |
| void | PinConnectionListChanged
(
UEdGraphPin* Pin |
Called when the connection list of one of the pins of this node is changed in the editor | |
| void | PinDefaultValueChanged
(
UEdGraphPin* Pin |
Called when the DefaultValue of one of the pins of this node is changed in the editor | |
| void | PinTypeChanged
(
UEdGraphPin* Pin |
Called when one of the pins of this node has had its' pin type changed from an external source (like the SPinTypeSelector in the case of kismet) | |
| void | Perform any fixups (deep copies of associated data, etc...) necessary after a node has been pasted in the editor | ||
| void | A chance to initialize a new node; called just once when a new node is created, before AutowireNewNode or AllocateDefaultPins is called. | ||
| void | Perform any steps necessary prior to copying a node into the paste buffer | ||
| void | Refresh the connectors on a node, preserving as many connections as it can. | ||
| bool | RemovePin
(
UEdGraphPin* Pin |
Find a pin on this node with the supplied name and remove it, returns TRUE if successful | |
| void | RemovePinAt
(
const int32 PinIndex, |
Removes the specified pin from the node, preserving remaining pin ordering. | |
| void | ResizeNode
(
const FVector2D& NewSize |
Update node size to new value | |
| void | SetEnabledState
(
ENodeEnabledState NewState, |
Set the enabled state of the node to a new value | |
| void | SetForceDisplayAsDisabled
(
const bool bInNewDisplayState |
Set whether or not this node should be forced to display as disabled | |
| void | SetMakeCommentBubbleVisible
(
bool MakeVisible |
Sets a flag if the comment bubble needs to be made visible immediately | |
| void | SetNodeUnrelated
(
bool bNodeUnrelated |
Set this node unrelated or not. | |
| bool | ShouldDrawNodeAsControlPointOnly
(
int32& OutInputPinIndex, |
Returns whether to draw this node as a control point only (knot/reroute node). | |
| bool | If the comment bubble needs to be made visible immediately | ||
| bool | If the node has a subgraph, should they be merged into the main graph? | ||
| bool | Whether or not this node should be given the chance to override pin names. | ||
| bool | Should we show the Palette Icon for this node on the node title | ||
| bool | If true, this node whill show the Visual Warning message | ||
| void | SnapToGrid
(
uint32 GridSnapSize |
Snap this node to a specified grid size | |
| bool | Returns true if this node supports comment bubbles | ||
| void | ValidateNodeDuringCompilation
(
FCompilerResultsLog& MessageLog |
Gives each visual node a chance to do final validation before it's node is harvested for use at runtime. |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. | |
| void | ExportCustomProperties
(
FOutputDevice& Out, |
Exports the property values for the specified object as text to the output device. | |
| void | ImportCustomProperties
(
const TCHAR* SourceText, |
Exports the property values for the specified object as text to the output device. | |
| void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally | |
| void | PostEditUndo () |
Called after applying a transaction to the object. | |
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. | |
| PRAGMA_DISABLE_DEPRECATION_WARNINGS void | PreSave
(
const ITargetPlatform* TargetPlatform |
||
| PRAGMA_ENABLE_DEPRECATION_WARNINGS void | PreSave
(
FObjectPreSaveContext ObjectSaveContext |
Presave function. | |
| void | Handles reading, writing, and reference collecting using FArchive. |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FCreatePinParams | Parameter struct of less common options for CreatePin | ||
| FNameParameterHelper |
Constants
| Name | Description |
|---|---|
| PooledPins |