You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb prajwal.manjunath, sebastian.nordgren #preflight 62329b60ac0173aa413a0fe0 [CL 19416729 by Patrick Boutot in ue5-main branch]
48 lines
1.4 KiB
C++
48 lines
1.4 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "Graph/GraphFunctionDetailsCustomization.h"
|
|
#include "FieldNotification/CustomizationHelper.h"
|
|
#include "DetailLayoutBuilder.h"
|
|
#include "BlueprintEditorModule.h"
|
|
#include "Engine/BlueprintGeneratedClass.h"
|
|
#include "WidgetBlueprint.h"
|
|
|
|
|
|
#define LOCTEXT_NAMESPACE "GraphFunctionDetailsCustomization"
|
|
|
|
FGraphFunctionDetailsCustomization::FGraphFunctionDetailsCustomization(UWidgetBlueprint* InBlueprint)
|
|
: Helper(MakePimpl<UE::FieldNotification::FCustomizationHelper>(InBlueprint))
|
|
{}
|
|
|
|
TSharedPtr<IDetailCustomization> FGraphFunctionDetailsCustomization::MakeInstance(TSharedPtr<IBlueprintEditor> InBlueprintEditor)
|
|
{
|
|
const TArray<UObject*>* Objects = (InBlueprintEditor.IsValid() ? InBlueprintEditor->GetObjectsCurrentlyBeingEdited() : nullptr);
|
|
if (Objects)
|
|
{
|
|
TOptional<UWidgetBlueprint*> FinalBlueprint;
|
|
for (UObject* Object : *Objects)
|
|
{
|
|
UWidgetBlueprint* Blueprint = Cast<UWidgetBlueprint>(Object);
|
|
if (FinalBlueprint.IsSet() && FinalBlueprint.GetValue() != Blueprint)
|
|
{
|
|
return nullptr;
|
|
}
|
|
FinalBlueprint = Blueprint;
|
|
}
|
|
|
|
if (FinalBlueprint.IsSet())
|
|
{
|
|
return MakeShareable(new FGraphFunctionDetailsCustomization(FinalBlueprint.GetValue()));
|
|
}
|
|
}
|
|
|
|
return nullptr;
|
|
}
|
|
|
|
void FGraphFunctionDetailsCustomization::CustomizeDetails(IDetailLayoutBuilder& DetailLayout)
|
|
{
|
|
Helper->CustomizeFunctionDetails(DetailLayout);
|
|
}
|
|
|
|
|
|
#undef LOCTEXT_NAMESPACE |