Navigation
API > API/Plugins > API/Plugins/PCGEditor
| Name | FPCGEditor |
| Type | class |
| Header File | /Engine/Plugins/PCG/Source/PCGEditor/Public/PCGEditor.h |
| Include Path | #include "PCGEditor.h" |
Syntax
class FPCGEditor :
public FWorkflowCentricApplication ,
public FGCObject ,
public FSelfRegisteringEditorUndoClient
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → FAssetEditorToolkit → FWorkflowCentricApplication → FPCGEditor
- FEditorUndoClient → FSelfRegisteringEditorUndoClient → FPCGEditor
- FGCObject → FPCGEditor
Implements Interfaces
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActiveToolViewportIndex | int32 | PCGEditor.h | ||
| AttributesWidgets | TSharedPtr< SPCGEditorGraphAttributeListView > | PCGEditor.h | ||
| CodeEditorWidget | TSharedPtr< SPCGCodeEditor > | PCGEditor.h | ||
| ContextualActionMask | PCGActionsHelpers::ECompatibilityMask | Contextual menu filter toggle state variable. | PCGEditor.h | |
| DataOverridesWidget | TSharedPtr< SPCGEditorGraphDataOverridesView > | PCGEditor.h | ||
| DebugObjectTreeWidget | TSharedPtr< SPCGEditorGraphDebugObjectTree > | PCGEditor.h | ||
| DeterminismWidget | TSharedPtr< SPCGEditorGraphDeterminismListView > | PCGEditor.h | ||
| DocumentManager | TSharedPtr< FDocumentTracker > | Document manager for workflow tabs | PCGEditor.h | |
| DocumentTabFactory | TWeakPtr< FDocumentTabFactory > | Factory that spawns graph editors; used to look up all tabs spawned by it. | PCGEditor.h | |
| EmbeddedSubgraphsWidget | TSharedPtr< SPCGEditorGraphEmbeddedSubgraphsView > | PCGEditor.h | ||
| FindWidget | TSharedPtr< SPCGEditorGraphFind > | PCGEditor.h | ||
| FocusedGraphEditor | TWeakPtr< SGraphEditor > | PCGEditor.h | ||
| GraphEditorCommands | TSharedPtr< FUICommandList > | PCGEditor.h | ||
| GraphEditorWidget | TSharedPtr< SGraphEditor > | PCGEditor.h | ||
| InspectionDataManager | FPCGEditorInspectionDataManager | PCGEditor.h | ||
| LastExecutionStatus | TOptional< TPair< const IPCGGraphExecutionSource *, EPCGGenerationStatus > > | Keep track of the last execution status to be able to break infinite loop when a source is triggered to be generated by inspection aborted and re-triggered. | PCGEditor.h | |
| LogWidget | TSharedPtr< SPCGEditorGraphLogView > | PCGEditor.h | ||
| MainGraph | TObjectPtr< UPCGGraph > | PCGEditor.h | ||
| PaletteWidget | TSharedPtr< SPCGEditorGraphNodePalette > | PCGEditor.h | ||
| PCGDefaultExecutionSource | TObjectPtr< UPCGDefaultExecutionSource > | PCGEditor.h | ||
| ProfilingWidget | TSharedPtr< SPCGEditorGraphProfilingView > | PCGEditor.h | ||
| PropertyDetailsWidgets | TSharedPtr< SPCGEditorGraphDetailsView > | PCGEditor.h | ||
| UserParamsWidget | TSharedPtr< SPCGEditorGraphUserParametersView > | PCGEditor.h | ||
| ViewportModeManagers | TSharedPtr< FAssetEditorModeManager > | PCGEditor.h | ||
| ViewportWidgets | TSharedPtr< SPCGEditorViewport > | PCGEditor.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BringFocusToPanel
(
const FName PanelID |
Focuses the user on a specific panel and flashes the tab. | PCGEditor.h | |
bool CanRunDeterminismGraphTest() |
Can determinism be tested on the current graph | PCGEditor.h | |
void ClearStackBeingInspected() |
Clear current inspection. | PCGEditor.h | |
void CloseDocument
(
UPCGGraph* InPCGGraph |
PCGEditor.h | ||
void CloseGraphPanel
(
const FName PanelID |
Attempts to close the specific panel if it's open. | PCGEditor.h | |
TSharedPtr< FWorkflowTabFactory > CreateAttributesTabFactory
(
int32 Index, |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateCodeEditorTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateDataOverridesTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateDebugObjectTreeTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateDeterminismTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateEmbeddedSubgraphsTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateFindTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateGraphParamsTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateLogTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateNodeSourceTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreatePaletteTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateProfilingTabFactory() |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreatePropertyDetailsTabFactory
(
int32 Index, |
PCGEditor.h | ||
TSharedPtr< FWorkflowTabFactory > CreateViewportTabFactory
(
int32 Index, |
PCGEditor.h | ||
void FocusOwningActorInLevelViewport() |
Selects the owner actor of the currently inspected PCG component and brings focus to the level viewport. | PCGEditor.h | |
PCGActionsHelpers::ECompatibilityMask GetContextualCompatibilityMask() |
Returns contextual menu filtering mask (no mask, compatible only, accept filtering and/or conversions). | PCGEditor.h | |
UPCGDefaultExecutionSource * GetDefaultExecutionSource() |
PCGEditor.h | ||
UPCGEditorGraph * GetFocusedEditorGraph() |
Get the focused PCG editor graph being edited. (root or embedded subgraph) | PCGEditor.h | |
UPCGGraph * GetFocusedGraph() |
Get the focused PCG graph being edited. (root or embedded subgraph) | PCGEditor.h | |
| PCGEditor.h | |||
| PCGEditor.h | |||
UPCGEditorGraph * GetMainEditorGraph() |
Get the root PCG editor graph being edited. | PCGEditor.h | |
UPCGGraph * GetMainGraph() |
Get the root PCG graph being edited | PCGEditor.h | |
UPCGEditorGraph * GetOrCreatePCGEditorGraph
(
UPCGGraph* InPCGGraph |
PCGEditor.h | ||
FName GetPanelID
(
EPCGEditorPanel Panel |
Get the TabID of the editor panel. | PCGEditor.h | |
UPCGComponent * GetPCGComponentBeingInspected() |
Gets the PCG source we are debugging | PCGEditor.h | |
UPCGEditorGraph * GetPCGEditorGraph () |
PCGEditor.h | ||
const UPCGGraph * GetPCGGraph() |
PCGEditor.h | ||
IPCGGraphExecutionSource * GetPCGSourceBeingInspected() |
PCGEditor.h | ||
const FPCGStack * GetStackBeingInspected() |
Gets the PCG stack we are inspecting | PCGEditor.h | |
void Initialize
(
const EToolkitMode::Type InMode, |
PCGEditor.h | ||
void InitializePCGEditorGraph
(
UPCGGraph* InPCGGraph |
Edits the specified PCGGraph | PCGEditor.h | |
bool IsPanelCurrentlyForeground
(
const FName PanelID |
Returns true if the selected tab is currently open and focused. | PCGEditor.h | |
bool IsPanelCurrentlyOpen
(
const FName PanelID |
Returns true if the selected tab is currently open. | PCGEditor.h | |
void JumpToNode
(
const UEdGraphNode* InNode |
Focus the graph view on a specific node | PCGEditor.h | |
void JumpToNode
(
const UPCGNode* InNode |
PCGEditor.h | ||
void NavigateTab
(
FDocumentTracker::EOpenDocumentCause InCause |
Open a document tab | PCGEditor.h | |
FActionMenuContent OnCreateActionMenu
(
UEdGraph* InGraph, |
PCGEditor.h | ||
void OnDeterminismGraphTest() |
Run the determinism test on the current graph | PCGEditor.h | |
void OnGraphEditorBackgrounded
(
const TSharedRef< SGraphEditor >& InGraphEditor |
Called when the graph editor tab is backgrounded | PCGEditor.h | |
void OnGraphEditorFocused
(
const TSharedRef< SGraphEditor >& InGraphEditor |
Called when graph editor focus is changed | PCGEditor.h | |
void OnGraphPreSave
(
const UPCGGraph* InGraph |
PCGEditor.h | ||
FReply OnSpawnNodeByShortcut
(
FInputChord InChord, |
Handles spawning a graph node in the current graph using the passed in chord. | PCGEditor.h | |
FReply OnSpawnNodeByShortcut
(
FInputChord InChord, |
PCGEditor.h | ||
void OpenDataOverridesAndInspect
(
UPCGEditorGraphNodeBase* InNode |
Brings focus to the Data Overrides tab and sets it to inspect the given node. | PCGEditor.h | |
TSharedPtr< SDockTab > OpenDocument
(
UPCGGraph* InPCGGraph, |
PCGEditor.h | ||
FPCGEditor * OpenEditorForGraph
(
UPCGGraph* InPCGGraph |
PCGEditor.h | ||
void RestoreEditedObjectState() |
PCGEditor.h | ||
void SaveEditedObjectState() |
PCGEditor.h | ||
void SelectManualEditNode
(
UPCGEditorGraphNodeBase* InNode |
Selects the given node in the level viewport's manual edit panel. | PCGEditor.h | |
void SetSourceEditorTargetObject
(
UObject* InObject |
PCGEditor.h | ||
void SetStackBeingInspected
(
const FPCGStack& FullStack |
Sets the execution stack that want to inspect. | PCGEditor.h | |
void SetStackBeingInspectedFromAnotherEditor
(
const FPCGStack& FullStack |
Sets the execution stack from another editor, which will set directly in the debug object tree view. | PCGEditor.h |
Public Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual UPCGAssetEditorMode * GetAssetEditorMode
(
int32 Index |
PCGEditor.h | ||
virtual TSubclassOf< UPCGEditorGraphSchema > GetSchemaClass() |
Can override the schema used for this editor. By default, it's UPCGEditorSchema. | PCGEditor.h | |
virtual IPCGBaseSubsystem * GetSubsystem() |
Helper to get to the subsystem. | PCGEditor.h | |
virtual bool IsPanelAvailable
(
const FName PanelID |
Returns true if the panel is available. | PCGEditor.h | |
virtual void OnNodeToolEnded
(
UPCGEditorGraphNodeBase* InteractiveNode |
PCGEditor.h | ||
virtual void OnNodeToolStarted
(
UPCGEditorGraphNodeBase* InteractiveNode |
PCGEditor.h |
Overridden from FAssetEditorToolkit
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void InitToolMenuContext
(
FToolMenuContext& MenuContext |
PCGEditor.h | ||
virtual void OnClose() |
PCGEditor.h |
Overridden from IToolkit
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FText GetBaseToolkitName() |
PCGEditor.h | ||
virtual FName GetToolkitFName() |
PCGEditor.h | ||
virtual FText GetToolkitName() |
PCGEditor.h | ||
virtual FLinearColor GetWorldCentricTabColorScale() |
PCGEditor.h | ||
virtual FString GetWorldCentricTabPrefix() |
PCGEditor.h | ||
virtual void RegisterTabSpawners
(
const TSharedRef< class FTabManager >& InTabManager |
PCGEditor.h |
Overridden from FGCObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddReferencedObjects
(
FReferenceCollector& Collector |
PCGEditor.h | ||
virtual FString GetReferencerName() |
PCGEditor.h |
Overridden from FEditorUndoClient
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool MatchesContext
(
const FTransactionContext& InContext, |
PCGEditor.h | ||
virtual void PostRedo
(
bool bSuccess |
PCGEditor.h | ||
virtual void PostUndo
(
bool bSuccess |
PCGEditor.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AutoLayoutFullGraph() |
Auto layout the nodes for better visualization. Returns true if a node has moved. | PCGEditor.h | |
FAssetEditorModeManager * GetViewportModeManager
(
int32 Index |
Returns the mode manager for the viewport at specified index, nullptr if not yet created | PCGEditor.h | |
TSharedPtr< SPCGEditorViewport > GetViewportWidget
(
int32 Index |
Returns viewport at specified index if it exists, nullptr otherwise | PCGEditor.h | |
void OnToggleInspected() |
Toggle node inspection state for selected nodes. | PCGEditor.h | |
void RegisterToolbarButton
(
FToolBarBuilder& ToolbarBuilder, |
Register PCG default editor toolbar button | PCGEditor.h | |
void RegisterToolbarButton
(
FToolMenuSection& Section, |
PCGEditor.h | ||
void SetNodeInspected
(
UPCGEditorGraphNodeBase* InspectedNode, |
Set inspection state for node. Can be null, in that case it will clear inspection. | PCGEditor.h |
Protected Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BindCommands() |
Bind commands to delegates | PCGEditor.h | |
virtual bool CanToggleDebug() |
Whether we can toggle debug state of selected nodes | PCGEditor.h | |
virtual bool CanToggleEnabled() |
Whether we can toggle enabled state of selected nodes | PCGEditor.h | |
virtual bool CanToggleInspected() |
Whether we can toggle inspection of selected nodes | PCGEditor.h | |
virtual TSharedRef< SPCGEditorViewport > CreateViewportWidget
(
int32 Index |
Create a new viewport widget for the given index. | PCGEditor.h | |
virtual TAttribute< FGraphAppearanceInfo > GetAppearanceInfo() |
PCGEditor.h | ||
virtual void OnGraphChanged
(
UPCGGraphInterface* InGraph, |
PCGEditor.h | ||
virtual void OnNodeDoubleClicked
(
UEdGraphNode* Node |
Called when a node is double clicked | PCGEditor.h | |
virtual void OnSelectedNodesChanged
(
const TSet< UObject* >& NewSelection |
Called when the selection changes in the GraphEditor | PCGEditor.h | |
virtual void RegisterToolbarInternal
(
FToolMenuSection& PCGSection |
PCGEditor.h | ||
virtual void RegisterToolbarInternal
(
FToolBarBuilder& ToolbarBuilder |
Register PCG specific toolbar for the editor | PCGEditor.h | |
virtual void SetupModeTools
(
FAssetEditorModeManager* InModeTools |
Set up AssetEditorModeManager with required Tool Contexts. | PCGEditor.h |
Overridden from FBaseToolkit
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void CreateEditorModeManager() |
PCGEditor.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UPCGEditorGraph * GetPCGEditorGraph
(
UPCGGraph* InGraph |
Gets/Creates the PCG graph editor for a given PCG graph | PCGEditor.h | |
static UPCGEditorGraph * GetPCGEditorGraph
(
const UPCGNode* InNode |
PCGEditor.h | ||
static UPCGEditorGraph * GetPCGEditorGraph
(
const UPCGSettings* InSettings |
PCGEditor.h | ||
static UPCGSubsystem * GetWorldSubsystem() |
PCGEditor.h | ||
static void OpenAssets
(
const FAssetOpenArgs& OpenArgs |
PCGEditor.h |