Files
UnrealEngineUWP/Engine/Source/Editor/AnimGraph/Classes/AnimGraphNode_Mirror.h
timothy daoust 1c1c0d2c94 Show mirror node in animation blueprint if no compatible mirror data tables exist
#jira UE-121511
#rb jurre.debarre
#preflight 6127bd80c068e50001c1d7ce

#ROBOMERGE-SOURCE: CL 17323478 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)

[CL 17323496 by timothy daoust in ue5-release-engine-test branch]
2021-08-26 14:42:26 -04:00

43 lines
1.8 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "AnimGraphNode_Base.h"
#include "AnimNodes/AnimNode_Mirror.h"
#include "AnimGraphNode_Mirror.generated.h"
UCLASS(MinimalAPI)
class UAnimGraphNode_Mirror : public UAnimGraphNode_Base
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, Category = Settings)
FAnimNode_Mirror Node;
virtual FLinearColor GetNodeTitleColor() const override;
virtual FText GetTooltipText() const override;
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
virtual FText GetMenuCategory() const override;
virtual void PostPlacedNewNode() override;
virtual void PostLoad() override;
virtual void GetOutputLinkAttributes(FNodeAttributeArray& OutAttributes) const override;
virtual void GetMenuActions(FBlueprintActionDatabaseRegistrar& ActionRegistrar) const override;
virtual bool IsActionFilteredOut(class FBlueprintActionFilter const& Filter) override;
virtual EAnimAssetHandlerType SupportsAssetClass(const UClass* AssetClass) const override;
virtual void PreEditChange(FProperty* PropertyThatWillChange) override;
virtual void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent) override;
virtual void PreloadRequiredAssets() override;
void ValidateAnimNodeDuringCompilation(class USkeleton* ForSkeleton, class FCompilerResultsLog& MessageLog) override;
private:
static FText GetTitleGivenAssetInfo(const FText& AssetName);
void OnMirrorDataTableChanged();
void BindMirrorDataTableChangedDelegate();
bool HasMirrorDataTableForBlueprints(const TArray<UBlueprint*>& Blueprints) const;
/** Used for filtering in the Blueprint context menu when the sequence asset this node uses is unloaded */
FString UnloadedSkeletonName;
};