// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved. #include "AnimGraphPrivatePCH.h" #include "AnimationConduitGraphSchema.h" #include "AnimGraphNode_TransitionResult.h" #include "AnimationTransitionGraph.h" #include "AnimStateConduitNode.h" ///////////////////////////////////////////////////// // UAnimationConduitGraphSchema UAnimationConduitGraphSchema::UAnimationConduitGraphSchema(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer) { } void UAnimationConduitGraphSchema::CreateDefaultNodesForGraph(UEdGraph& Graph) const { FGraphNodeCreator NodeCreator(Graph); UAnimGraphNode_TransitionResult* ResultSinkNode = NodeCreator.CreateNode(); SetNodeMetaData(ResultSinkNode, FNodeMetadata::DefaultGraphNode); UAnimationTransitionGraph* TypedGraph = CastChecked(&Graph); TypedGraph->MyResultNode = ResultSinkNode; NodeCreator.Finalize(); } void UAnimationConduitGraphSchema::GetGraphDisplayInformation(const UEdGraph& Graph, /*out*/ FGraphDisplayInfo& DisplayInfo) const { DisplayInfo.PlainName = FText::FromString( Graph.GetName() ); if (const UAnimStateConduitNode* ConduitNode = Cast(Graph.GetOuter())) { FFormatNamedArguments Args; Args.Add(TEXT("NodeTitle"), ConduitNode->GetNodeTitle(ENodeTitleType::FullTitle) ); DisplayInfo.PlainName = FText::Format( NSLOCTEXT("Animation", "ConduitRuleGraphTitle", "{NodeTitle} (conduit rule)"), Args); } DisplayInfo.DisplayName = DisplayInfo.PlainName; }