Navigation
API > API/Editor > API/Editor/GraphEditor
Represents a pin on a node in the GraphEditor
| Name | SGraphPin |
| Type | class |
| Header File | /Engine/Source/Editor/GraphEditor/Public/SGraphPin.h |
| Include Path | #include "SGraphPin.h" |
Syntax
class SGraphPin : public SBorder
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → SWidget → SCompoundWidget → SBorder → SGraphPin
- FSlateControlledConstruction → SWidget → SCompoundWidget → SBorder → SGraphPin
Derived Classes
SGraphPin derived class hierarchy
- SCameraVariableNameGraphPin
- SDataflowPin
- SGraphPinBool
- SGraphPinColor
- SGraphPinEnum
- SGraphPinExec
- SGraphPinKnot
- SGraphPinNameList
- SGraphPinNum
- SGraphPinNumSlider
- SGraphPinObject
- SGraphPinString
- SGraphPinStructInstance
- SGraphPinVector
- SGraphPinVector2D
- SGraphPinVector2DSlider
- SGraphPinVector4
- SGraphPinVector4Slider
- SGraphPinVectorSlider
- SRigVMGraphPinCategory
- SRigVMGraphPinCurveFloat
- SRigVMGraphPinEnumPicker
- SRigVMGraphPinNameList
- SRigVMGraphPinQuat
- SRigVMGraphPinUserDataNameSpace
- SRigVMGraphPinUserDataPath
- SRigVMGraphPinVariableBinding
- SRigVMGraphPinVariableName
- SGraphPinAI
- SGraphPinMaterialInput
- SMaterialExpressionConvertGraphPin
- SMaterialExpressionOperatorGraphPin
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
SGraphPin() |
SGraphPin.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~SGraphPin() |
SGraphPin.h |
Structs
| Name | Remarks |
|---|---|
| FArguments |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsSnappingEnabled | bool | Cached value of snapping feature flag | SGraphPin.h | |
| PinNameLODBranchNode | TSharedPtr< SLevelOfDetailBranchNode > | SGraphPin.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AreConnectionsFaded() |
SGraphPin.h | ||
void ClearSnappedSGraphNode() |
SGraphPin.h | ||
void Construct
(
const FArguments& InArgs, |
Construct this widget | SGraphPin.h | |
void EnableDragAndDrop
(
bool bEnable |
Enables or disables drag and drop on the pin | SGraphPin.h | |
TOptional< FArrangedWidget > GetArrangedSnappedChildNode
(
const FGeometry& MyGeometry |
SGraphPin.h | ||
bool GetDefaultValueIsEditable() |
True if the pin's default value can be edited, false if it is read only | SGraphPin.h | |
virtual EVisibility GetDefaultValueVisibility() |
SGraphPin.h | ||
virtual TSharedRef< SWidget > GetDefaultValueWidget() |
Build the widget we should put into the 'default value' space, shown when nothing connected | SGraphPin.h | |
EEdGraphPinDirection GetDirection() |
SGraphPin.h | ||
TWeakPtr< SHorizontalBox > GetFullPinHorizontalRowWidget() |
Retrieves the full horizontal box that contains the pin's row content | SGraphPin.h | |
bool GetIsConnectable() |
Returns whether or not this pin is currently connectable | SGraphPin.h | |
TSharedRef< SWrapBox > GetLabelAndValue() |
Get the label/value part of the pin widget | SGraphPin.h | |
UE::Slate::FDeprecateVector2DResult GetNodeOffset() |
Gets Node Offset | SGraphPin.h | |
TSharedPtr< SWidget > GetPinImageWidget() |
Returns the current pin image widget that is being used | SGraphPin.h | |
UEdGraphPin * GetPinObj() |
SGraphPin.h | ||
TSharedPtr< SGraphNode > GetSnappedChildForPosition
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
TSharedPtr< SGraphNode > GetSnappedNode() |
SGraphPin.h | ||
virtual TSharedPtr< IToolTip > GetToolTip() |
SGraphPin.h | ||
TSharedRef< SWidget > GetValueWidget() |
Get the widget created by GetDefaultValueWidget() | SGraphPin.h | |
bool HasInteractiveTooltip() |
SGraphPin.h | ||
void InvalidateGraphData () |
Called when ed graph data is cleared, indicating this widget can no longer safely access GraphPinObj Typically an SGraphPin is destroyed before the ed graph data is actually deleted but because SWidget is reference counted we have had problems in the past with the SGraphPin (or Node) living unexpectedly long. | SGraphPin.h | |
bool IsArray() |
SGraphPin.h | ||
bool IsByMutableRef() |
SGraphPin.h | ||
bool IsConnected() |
SGraphPin.h | ||
bool IsDelegate() |
SGraphPin.h | ||
bool IsEditingEnabled() |
True if pin can be edited | SGraphPin.h | |
bool IsMap() |
SGraphPin.h | ||
EVisibility IsPinVisibleAsAdvanced() |
If pin in node is visible at all | SGraphPin.h | |
bool IsSet() |
SGraphPin.h | ||
bool IsSnapped() |
SGraphPin.h | ||
virtual void OnDragEnter
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
virtual void OnDragLeave
(
const FDragDropEvent& DragDropEvent |
SGraphPin.h | ||
virtual FReply OnDragOver
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
virtual FReply OnDrop
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
virtual FReply OnMouseButtonUp
(
const FGeometry& MyGeometry, |
The system calls this method to notify the widget that a mouse button was release within it. | SGraphPin.h | |
virtual void OnMouseEnter
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
virtual void OnMouseLeave
(
const FPointerEvent& MouseEvent |
SGraphPin.h | ||
virtual FReply OnMouseMove
(
const FGeometry& MyGeometry, |
SGraphPin.h | ||
virtual FReply OnPinMouseDown
(
const FGeometry& SenderGeometry, |
Handle clicking on the pin | SGraphPin.h | |
FReply OnPinNameMouseDown
(
const FGeometry& SenderGeometry, |
Handle clicking on the pin name | SGraphPin.h | |
void RefreshLOD() |
Refresh the level of detail applied to the pin name | SGraphPin.h | |
void SetCustomPinIcon
(
const FSlateBrush* InConnectedBrush, |
Override the visual look of the pin by providing two custom brushes | SGraphPin.h | |
void SetDiffHighlighted
(
bool bHighlighted |
SGraphPin.h | ||
void SetFadeConnections
(
bool bInFadeConnections |
Makes Pin Connection Wires transparent | SGraphPin.h | |
void SetIsEditable
(
TAttribute< bool > InIsEditable |
Set attribute for determining if pin is editable | SGraphPin.h | |
void SetOnlyShowDefaultValue
(
bool bNewOnlyShowDefaultValue |
Set this pin to only be used to display default value | SGraphPin.h | |
void SetOwner
(
const TSharedRef< SGraphNode > OwnerNode |
SGraphPin.h | ||
void SetPinColorModifier
(
FLinearColor InColor |
Allows the connection drawing policy to control the pin color | SGraphPin.h | |
void SetPinDiffColor
(
TOptional< FLinearColor > InColor |
Allows Diff to highlight pins | SGraphPin.h | |
void SetPinImageWidget
(
TSharedRef< SWidget > NewWidget |
Sets the pin widget for this pin | SGraphPin.h | |
void SetPinObj
(
UEdGraphPin* PinObj |
SGraphPin.h | ||
void SetShowLabel
(
bool bNewDrawLabel |
Control whether we draw the label on this pin | SGraphPin.h | |
bool SnapSGraphNode
(
TSharedRef< SGraphNode > Node |
SGraphPin.h | ||
virtual void Tick
(
const FGeometry& AllottedGeometry, |
SGraphPin.h | ||
virtual bool TryHandlePinConnection
(
SGraphPin& OtherSPin |
Tries to handle making a connection to another pin, depending on the schema and the pins it may do: | SGraphPin.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FReply ClickedOnPinStatusIcon() |
Toggle the watch pinning | SGraphPin.h | |
virtual bool DoesWidgetHandleSettingEditingEnabled () |
If true the graph pin subclass is responsible for setting the IsEnabled delegates for the aspects it cares about. | SGraphPin.h | |
virtual FSlateColor GetHighlightColor() |
SGraphPin.h | ||
void GetInteractiveTooltipLocation
(
FVector2D& InOutDesiredLocation |
Gets the window location (in screen coords) for an interactive tooltip (e.g. pin value inspector) | SGraphPin.h | |
void GetInteractiveTooltipLocation
(
FVector2f& InOutDesiredLocation |
SGraphPin.h | ||
virtual TSharedRef< SWidget > GetLabelWidget
(
const FName& InPinLabelStyle |
Get the widget we should put in the label space, which displays the name of the pin. | SGraphPin.h | |
const FSlateBrush * GetPinBorder() |
SGraphPin.h | ||
virtual FSlateColor GetPinColor() |
SGraphPin.h | ||
TOptional< EMouseCursor::Type > GetPinCursor() |
SGraphPin.h | ||
virtual FSlateColor GetPinDiffColor() |
SGraphPin.h | ||
virtual const FSlateBrush * GetPinIcon() |
SGraphPin.h | ||
FText GetPinLabel() |
SGraphPin.h | ||
EVisibility GetPinLabelVisibility() |
If we should show the label on this pin | SGraphPin.h | |
virtual const FSlateBrush * GetPinStatusIcon() |
SGraphPin.h | ||
virtual EVisibility GetPinStatusIconVisibility() |
SGraphPin.h | ||
virtual FSlateColor GetPinTextColor() |
SGraphPin.h | ||
EVisibility GetPinVisiblity() |
Determines the pin's visibility based on the LOD factor, when it is low LOD, no hit test will occur | SGraphPin.h | |
FSlateColor GetSecondaryPinColor() |
SGraphPin.h | ||
const FSlateBrush * GetSecondaryPinIcon() |
SGraphPin.h | ||
FText GetTooltipText() |
SGraphPin.h | ||
virtual TSharedRef< FDragDropOperation > SpawnPinDragEvent
(
const TSharedRef< class SGraphPanel >& InGraphPanel, |
Spawns a FDragConnection or similar class for the pin drag event | SGraphPin.h | |
virtual bool UseLowDetailPinNames() |
Should we use low-detail pin names? | SGraphPin.h |