FReply SGraphEditorImpl::OnKeyDown( const FGeometry& MyGeometry, const FKeyboardEvent& InKeyboardEvent ) { int32 NumNodes = GetCurrentGraph()->Nodes.Num(); if (Commands->ProcessCommandBindings( InKeyboardEvent ) ) { bool bPasteOperation = InKeyboardEvent.IsControlDown() && InKeyboardEvent.GetKey() == EKeys::V; if( !bPasteOperation && GetCurrentGraph()->Nodes.Num() > NumNodes ) { OnNodeSpawnedByKeymap.ExecuteIfBound(); } return FReply::Handled(); } else { return SCompoundWidget::OnKeyDown(MyGeometry, InKeyboardEvent); } }
FDiffPanel& GetDiffPanelForNode(const UEdGraphNode& Node, TArray< FDiffPanel >& Panels) { for (auto& Panel : Panels) { auto GraphEditor = Panel.GraphEditor.Pin(); if (GraphEditor.IsValid()) { if (Node.GetGraph() == GraphEditor->GetCurrentGraph()) { return Panel; } } } checkf(false, TEXT("Looking for node %s but it cannot be found in provided panels"), *Node.GetName()); static FDiffPanel Default; return Default; }