Navigation
API > API/Editor > API/Editor/GraphEditor
| Name | SGraphPanel |
| Type | class |
| Header File | /Engine/Source/Editor/GraphEditor/Public/SGraphPanel.h |
| Include Path | #include "SGraphPanel.h" |
Syntax
class SGraphPanel :
public SNodePanel ,
public FGCObject
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → SWidget → SPanel → SNodePanel → SGraphPanel
- FSlateControlledConstruction → SWidget → SPanel → SNodePanel → SGraphPanel
- FGCObject → SGraphPanel
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~SGraphPanel() |
Destructor. | SGraphPanel.h |
Structs
| Name | Remarks |
|---|---|
| FArguments |
Enums
Protected
| Name | Remarks |
|---|---|
| AddNodeBehavior | Flag to control AddNode, more readable than a bool: |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FOnGetContextMenuFor | TBaseDelegate_OneParam< FActionMenuContent, const FGraphContextMenuArguments & > | SGraphPanel.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| MarkedPin | TWeakPtr< SGraphPin > | Pin marked via shift-clicking | SGraphPanel.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActiveTimerHandleInvalidatePerTick | TWeakPtr< FActiveTimerHandle > | Handle to timer callback that allows the UI to refresh it's arrangement each tick, allows animations to occur within the UI | SGraphPanel.h | |
| bCheckNodeGraphObjValidity | bool | A flag indicating that we need to check if we have any nodes which use invalid pointers | SGraphPanel.h | |
| ContextMenu | TWeakPtr< IMenu > | Weak pointer to the last summoned context menu, for dismissing it when requested. | SGraphPanel.h | |
| DisplayAsReadOnly | TAttribute< bool > | Should the graph display all nodes in a read-only state (grayed)? This does not affect functionality of using them (IsEditable) | SGraphPanel.h | |
| MyRegisteredGraphChangedDelegate | FOnGraphChanged::FDelegate | SGraphPanel.h | ||
| MyRegisteredGraphChangedDelegateHandle | FDelegateHandle | SGraphPanel.h | ||
| NodeFactory | TSharedPtr< class FGraphNodeFactory > | The current node factory to create nodes, pins and connections. | SGraphPanel.h | |
| NodeGuidMap | TMap< FGuid, TWeakPtr< SGraphNode > > | A map of guid -> graph nodes | SGraphPanel.h | |
| RelinkConnections | TArray< FConnectionDrawingPolicy::FRelinkConnection > | List of currently relinked connections. | SGraphPanel.h | |
| TimeLeftToInvalidatePerTick | float | Amount of time left to invalidate the UI per tick | SGraphPanel.h | |
| UserAddedNodes | TSet< const class UEdGraphNode * > | Set of user-added nodes for the panel, tracked while a visual update is pending | SGraphPanel.h | |
| UserSelectedNodes | TSet< TWeakObjectPtr< class UEdGraphNode > > | Set of nodes selected by the user, tracked while a visual update is pending | SGraphPanel.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddPinToHoverSet
(
UEdGraphPin* HoveredPin |
SGraphPanel.h | ||
virtual void AddReferencedObjects
(
FReferenceCollector& Collector |
SGraphPanel.h | ||
void ArrangeChildrenForContextMenuSummon
(
const FGeometry& AllottedGeometry, |
SGraphPanel.h | ||
void AttachGraphEvents
(
TSharedPtr< SGraphNode > CreatedSubNode |
Helper to attach graph events to sub node, which won't be placed directly on the graph | SGraphPanel.h | |
void Construct
(
const FArguments& InArgs |
Construct a widget | SGraphPanel.h | |
virtual bool CustomPrepass
(
float LayoutScaleMultiplier |
SGraphPanel.h | ||
void DismissContextMenu() |
SGraphPanel.h | ||
void GetAllPins
(
TSet< TSharedRef< SWidget > >& AllPins |
SGraphPanel.h | ||
bool GetBoundsForNode
(
const UObject* InNode, |
SGraphPanel.h | ||
bool GetBoundsForNode
(
const UObject* InNode, |
Attempt to retrieve the bounds for the specified node | SGraphPanel.h | |
UEdGraph * GetGraphObj() |
SGraphPanel.h | ||
TSharedPtr< SGraphNode > GetNodeWidgetFromGuid
(
FGuid Guid |
Get a graph node widget from the specified GUID, if it applies to any nodes in this graph | SGraphPanel.h | |
SGraphEditor::EPinVisibility GetPinVisibility() |
SGraphPanel.h | ||
const FGraphSplineOverlapResult & GetPreviousFrameSplineOverlap() |
SGraphPanel.h | ||
virtual FString GetReferencerName() |
SGraphPanel.h | ||
TArray< UEdGraphNode * > GetSelectedGraphNodes() |
Get a list of selected editor graph nodes from the selection manager. | SGraphPanel.h | |
EActiveTimerReturnType InvalidatePerTick
(
double InCurrentTime, |
When the graph panel needs to be dynamically refreshing for animations, this function is registered to tick and invalidate the UI. | SGraphPanel.h | |
bool IsGraphEditable() |
Returns if this graph is editable | SGraphPanel.h | |
bool IsNodeTitleVisible
(
const UEdGraphNode* Node, |
Use to determine if a comment title is currently visible | SGraphPanel.h | |
bool IsRectVisible
(
const UE::Slate::FDeprecateVector2DParameter& TopLeft, |
Use to determine if a rectangle is currently visible | SGraphPanel.h | |
bool IsRelinkingConnection() |
True in case a connection is currently being relinked, false if not. | SGraphPanel.h | |
void JumpToNode
(
const UEdGraphNode* JumpToMe, |
SGraphPanel.h | ||
void JumpToPin
(
const UEdGraphPin* JumptToMe |
SGraphPanel.h | ||
bool JumpToRect
(
const UE::Slate::FDeprecateVector2DParameter& BottomLeft, |
Focuses the view on rectangle, zooming if neccesary | SGraphPanel.h | |
void OnBeginMakingConnection
(
FGraphPinHandle PinHandle |
SGraphPanel.h | ||
void OnBeginMakingConnection
(
UEdGraphPin* InOriginatingPin |
SGraphPanel.h | ||
void OnBeginRelinkConnection
(
const FGraphPinHandle& InSourcePinHandle, |
Indicate that the connection from the given start to the given end pins is being relinked. | SGraphPanel.h | |
virtual void OnDragEnter
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual void OnDragLeave
(
const FDragDropEvent& DragDropEvent |
SGraphPanel.h | ||
virtual FReply OnDragOver
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual FReply OnDrop
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
void OnEndRelinkConnection
(
bool bForceStop |
The relink connection operation either got cancelled or has successfully been executed. | SGraphPanel.h | |
virtual FReply OnMouseButtonDoubleClick
(
const FGeometry& InMyGeometry, |
SGraphPanel.h | ||
virtual int32 OnPaint
(
const FPaintArgs& Args, |
SGraphPanel.h | ||
void OnStopMakingConnection
(
bool bForceStop |
SGraphPanel.h | ||
void PreservePinPreviewUntilForced() |
SGraphPanel.h | ||
void PurgeVisualRepresentation() |
Purges the existing visual representation (typically followed by an Update call in the next tick) | SGraphPanel.h | |
void RefreshNode
(
UEdGraphNode& Node |
Refresh the visual state of a single node | SGraphPanel.h | |
void RemovePinFromHoverSet
(
UEdGraphPin* UnhoveredPin |
SGraphPanel.h | ||
void SetNodeFactory
(
const TSharedRef< class FGraphNodeFactory >& NewNodeFactory |
Sets the current widget factory. | SGraphPanel.h | |
void SetPinVisibility
(
SGraphEditor::EPinVisibility InVisibility |
SGraphPanel.h | ||
void StraightenConnections () |
Straighten all connections between the selected nodes | SGraphPanel.h | |
void StraightenConnections
(
UEdGraphPin* SourcePin, |
Straighten any connections attached to the specified pin, optionally limiting to the specified pin to align | SGraphPanel.h | |
TSharedPtr< SWidget > SummonContextMenu
(
const UE::Slate::FDeprecateVector2DParameter& WhereToSummon, |
SGraphPanel.h | ||
void SummonCreateNodeMenuFromUICommand
(
uint32 NumNodesAdded |
SGraphPanel.h | ||
virtual bool SupportsKeyboardFocus() |
SGraphPanel.h | ||
void Update () |
Update this GraphPanel to match the data that it is observing. | SGraphPanel.h |
Overridden from SNodePanel
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddGraphNode
(
const TSharedRef< SNode >& NodeToAdd |
Add a slot to the CanvasPanel dynamically | SGraphPanel.h | |
virtual void OnArrangeChildren
(
const FGeometry& AllottedGeometry, |
SGraphPanel.h | ||
virtual bool OnHandleLeftMouseRelease
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual FReply OnKeyDown
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual FReply OnMouseButtonDown
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual FReply OnMouseButtonUp
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual FReply OnMouseMove
(
const FGeometry& MyGeometry, |
SGraphPanel.h | ||
virtual TSharedPtr< SWidget > OnSummonContextMenu
(
const FGeometry& MyGeometry, |
INTERFACE TO IMPLEMENT. | SGraphPanel.h | |
virtual void RemoveAllNodes() |
Remove all nodes from the panel | SGraphPanel.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddNode
(
UEdGraphNode* Node, |
Helper method to add a new node to the panel | SGraphPanel.h | |
const TSharedRef< SGraphNode > GetChild
(
int32 ChildIndex |
SGraphPanel.h | ||
void NotifyGraphChanged
(
const FEdGraphEditAction& InAction |
SGraphPanel.h | ||
void RemoveAllNodesWithInvalidPointers() |
Helper method to remove all nodes from the panel holding garbage / invalid pointers | SGraphPanel.h | |
void RemoveNode
(
const UEdGraphNode* Node |
Helper method to remove a node from the panel | SGraphPanel.h |