Files
UnrealEngineUWP/Engine/Source/Editor/AnimGraph/Private/AnimGraphNode_SkeletalControlBase.cpp
Michael Schoell 0a41fb741e #summary Can search for nodes in the palette menu in Blueprints with both the native name and the localized name.
#add Added UEdGraphNode::GetNodeNativeTitle to return a native title for a node.
#add Added UEdGraphNode::GetNodeSearchTitle to return the native and localized title for a node, together, for searching.
#add Can hold "alt" over a node (in the graph panel, or the palette) to see the native name of the node.

#ttp 331252 - Blueprints: Editor: L10N: Blueprints need to consistently show localized node names and when searching need to search both the localized name and the native name

#codereview justin.sargent

[CL 2044506 by Michael Schoell in Main branch]
2014-04-23 18:30:37 -04:00

56 lines
1.9 KiB
C++

// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
#include "AnimGraphPrivatePCH.h"
#include "K2ActionMenuBuilder.h" // for FK2ActionMenuBuilder::AddNewNodeAction()
/////////////////////////////////////////////////////
// UAnimGraphNode_SkeletalControlBase
#define LOCTEXT_NAMESPACE "A3Nodes"
UAnimGraphNode_SkeletalControlBase::UAnimGraphNode_SkeletalControlBase(const FPostConstructInitializeProperties& PCIP)
: Super(PCIP)
{
}
FLinearColor UAnimGraphNode_SkeletalControlBase::GetNodeTitleColor() const
{
return FLinearColor(0.75f, 0.75f, 0.10f);
}
FString UAnimGraphNode_SkeletalControlBase::GetNodeCategory() const
{
return TEXT("Skeletal Controls");
}
FText UAnimGraphNode_SkeletalControlBase::GetControllerDescription() const
{
return LOCTEXT("ImplementMe", "Implement me");
}
FString UAnimGraphNode_SkeletalControlBase::GetTooltip() const
{
return GetControllerDescription().ToString();
}
void UAnimGraphNode_SkeletalControlBase::CreateOutputPins()
{
const UAnimationGraphSchema* Schema = GetDefault<UAnimationGraphSchema>();
CreatePin(EGPD_Output, Schema->PC_Struct, TEXT(""), FComponentSpacePoseLink::StaticStruct(), /*bIsArray=*/ false, /*bIsReference=*/ false, TEXT("Pose"));
}
void UAnimGraphNode_SkeletalControlBase::GetMenuEntries(FGraphContextMenuBuilder& ContextMenuBuilder) const
{
UAnimGraphNode_Base* TemplateNode = NewObject<UAnimGraphNode_Base>(GetTransientPackage(), GetClass());
FString Category = TemplateNode->GetNodeCategory();
FText MenuDesc = GetControllerDescription();
FString Tooltip = GetControllerDescription().ToString();
FString Keywords = TemplateNode->GetKeywords();
TSharedPtr<FEdGraphSchemaAction_K2NewNode> NodeAction = FK2ActionMenuBuilder::AddNewNodeAction(ContextMenuBuilder, Category, MenuDesc, Tooltip, 0, Keywords);
NodeAction->NodeTemplate = TemplateNode;
NodeAction->SearchTitle = NodeAction->NodeTemplate->GetNodeSearchTitle();
}
#undef LOCTEXT_NAMESPACE