You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Moved SmartObjects out of restricted folder Moved StateTree out of restricted folder Moved ZoneGraph out of restricted folder Moved ZoneGraphAnnotations out of restricted folder #jira UE-115297 #ROBOMERGE-OWNER: mieszko.zielinski #ROBOMERGE-AUTHOR: mieszko.zielinski #ROBOMERGE-SOURCE: CL 17648223 via CL 17648246 via CL 17648261 via CL 17648385 via CL 17648390 via CL 17648742 #ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v875-17642767) [CL 17648750 by mieszko zielinski in ue5-main branch]
82 lines
2.5 KiB
C++
82 lines
2.5 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
#include "ZoneLaneProfileDetails.h"
|
|
#include "Widgets/DeclarativeSyntaxSupport.h"
|
|
#include "Widgets/Images/SImage.h"
|
|
#include "DetailWidgetRow.h"
|
|
#include "DetailLayoutBuilder.h"
|
|
#include "IPropertyUtilities.h"
|
|
#include "IDetailPropertyRow.h"
|
|
#include "IDetailChildrenBuilder.h"
|
|
#include "Widgets/Input/SComboButton.h"
|
|
#include "Framework/MultiBox/MultiBoxBuilder.h"
|
|
#include "ScopedTransaction.h"
|
|
#include "ZoneGraphSettings.h"
|
|
#include "ZoneGraphTypes.h"
|
|
#include "Modules/ModuleManager.h"
|
|
#include "ISettingsModule.h"
|
|
|
|
#define LOCTEXT_NAMESPACE "ZoneGraphEditor"
|
|
|
|
TSharedRef<IPropertyTypeCustomization> FZoneLaneProfileDetails::MakeInstance()
|
|
{
|
|
return MakeShareable(new FZoneLaneProfileDetails);
|
|
}
|
|
|
|
void FZoneLaneProfileDetails::CustomizeHeader(TSharedRef<class IPropertyHandle> StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils)
|
|
{
|
|
StructProperty = StructPropertyHandle;
|
|
PropUtils = StructCustomizationUtils.GetPropertyUtilities().Get();
|
|
|
|
NameProperty = StructProperty->GetChildHandle(TEXT("Name"));
|
|
LanesProperty = StructProperty->GetChildHandle(TEXT("Lanes"));
|
|
|
|
HeaderRow
|
|
.WholeRowContent()
|
|
[
|
|
SNew(SHorizontalBox)
|
|
// Description
|
|
+ SHorizontalBox::Slot()
|
|
.FillWidth(1.0f)
|
|
.VAlign(VAlign_Center)
|
|
.Padding(FMargin(6.0f, 2.0f))
|
|
[
|
|
SNew(STextBlock)
|
|
.Text(this, &FZoneLaneProfileDetails::GetDescription)
|
|
.Font(IDetailLayoutBuilder::GetDetailFontBold())
|
|
]
|
|
+ SHorizontalBox::Slot()
|
|
.Padding(FMargin(12.0f, 0.0f))
|
|
.HAlign(HAlign_Right)
|
|
[
|
|
StructPropertyHandle->CreateDefaultPropertyButtonWidgets()
|
|
]
|
|
];
|
|
}
|
|
|
|
void FZoneLaneProfileDetails::CustomizeChildren(TSharedRef<class IPropertyHandle> StructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils)
|
|
{
|
|
uint32 ChildNum = 0;
|
|
if (StructPropertyHandle->GetNumChildren(ChildNum) == FPropertyAccess::Success)
|
|
{
|
|
for (uint32 ChildIndex = 0; ChildIndex < ChildNum; ++ChildIndex)
|
|
{
|
|
TSharedPtr<IPropertyHandle> ChildProperty = StructPropertyHandle->GetChildHandle(ChildIndex);
|
|
if (ChildProperty)
|
|
{
|
|
StructBuilder.AddProperty(ChildProperty.ToSharedRef());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
FText FZoneLaneProfileDetails::GetDescription() const
|
|
{
|
|
FName Name;
|
|
if (NameProperty && NameProperty->GetValue(Name) == FPropertyAccess::Success)
|
|
{
|
|
return FText::FromName(Name);
|
|
}
|
|
return FText::GetEmpty();
|
|
}
|
|
|
|
#undef LOCTEXT_NAMESPACE |