2018-12-14 13:41:00 -05:00
// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
2014-03-14 14:13:41 -04:00
2014-04-24 08:49:31 -04:00
# include "AnimGraphNode_CopyBone.h"
2014-03-14 14:13:41 -04:00
/////////////////////////////////////////////////////
// UAnimGraphNode_CopyBoneSkeletalControl
2014-04-23 18:30:37 -04:00
# define LOCTEXT_NAMESPACE "A3Nodes"
2014-10-14 10:29:11 -04:00
UAnimGraphNode_CopyBone : : UAnimGraphNode_CopyBone ( const FObjectInitializer & ObjectInitializer )
: Super ( ObjectInitializer )
2014-03-14 14:13:41 -04:00
{
}
2014-04-23 18:30:37 -04:00
FText UAnimGraphNode_CopyBone : : GetControllerDescription ( ) const
2014-03-14 14:13:41 -04:00
{
2014-04-23 18:30:37 -04:00
return LOCTEXT ( " CopyBone " , " Copy Bone " ) ;
2014-03-14 14:13:41 -04:00
}
2014-09-03 18:14:09 -04:00
FText UAnimGraphNode_CopyBone : : GetTooltipText ( ) const
2014-03-14 14:13:41 -04:00
{
2014-09-03 18:14:09 -04:00
return LOCTEXT ( " AnimGraphNode_CopyBone_Tooltip " , " The Copy Bone control copies the Transform data or any component of it - i.e. Translation, Rotation, or Scale - from one bone to another. " ) ;
2014-03-14 14:13:41 -04:00
}
2014-04-23 18:30:37 -04:00
FText UAnimGraphNode_CopyBone : : GetNodeTitle ( ENodeTitleType : : Type TitleType ) const
2014-03-14 14:13:41 -04:00
{
2014-09-16 15:01:38 -04:00
if ( ( TitleType = = ENodeTitleType : : ListView | | TitleType = = ENodeTitleType : : MenuTitle ) & & ( Node . TargetBone . BoneName = = NAME_None ) & & ( Node . SourceBone . BoneName = = NAME_None ) )
2014-08-21 18:50:33 -04:00
{
2014-09-04 11:25:05 -04:00
return GetControllerDescription ( ) ;
}
2014-09-24 14:15:13 -04:00
// @TODO: the bone can be altered in the property editor, so we have to
// choose to mark this dirty when that happens for this to properly work
2015-04-02 11:16:23 -04:00
else //if (!CachedNodeTitles.IsTitleCached(TitleType, this))
2014-09-04 11:25:05 -04:00
{
FFormatNamedArguments Args ;
Args . Add ( TEXT ( " ControllerDescription " ) , GetControllerDescription ( ) ) ;
Args . Add ( TEXT ( " SourceBoneName " ) , FText : : FromName ( Node . SourceBone . BoneName ) ) ;
Args . Add ( TEXT ( " TargetBoneName " ) , FText : : FromName ( Node . TargetBone . BoneName ) ) ;
2014-09-16 15:01:38 -04:00
if ( TitleType = = ENodeTitleType : : ListView | | TitleType = = ENodeTitleType : : MenuTitle )
2014-08-21 18:50:33 -04:00
{
2015-04-02 11:16:23 -04:00
CachedNodeTitles . SetCachedTitle ( TitleType , FText : : Format ( LOCTEXT ( " AnimGraphNode_CopyBone_ListTitle " , " {ControllerDescription} - Source Bone: {SourceBoneName} - Target Bone: {TargetBoneName} " ) , Args ) , this ) ;
2014-08-21 18:50:33 -04:00
}
else
{
2015-04-02 11:16:23 -04:00
CachedNodeTitles . SetCachedTitle ( TitleType , FText : : Format ( LOCTEXT ( " AnimGraphNode_CopyBone_Title " , " {ControllerDescription} \n Source Bone: {SourceBoneName} \n Target Bone: {TargetBoneName} " ) , Args ) , this ) ;
2014-08-21 18:50:33 -04:00
}
}
2014-09-04 11:25:05 -04:00
return CachedNodeTitles [ TitleType ] ;
2014-03-14 14:13:41 -04:00
}
2014-04-23 18:30:37 -04:00
# undef LOCTEXT_NAMESPACE