You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
-Header and body container - Simple Title container - Column wrapping container - Zero State builder - Addition of favorites - moved additions of placement entries into the category builder #jira UE-205201 #rb JeanMichel.Dignard [CL 32977191 by karen jirak in ue5-main branch]
73 lines
1.7 KiB
C++
73 lines
1.7 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "Layout/Containers/WidgetContainer.h"
|
|
#include "Layout/Containers/SlateBuilder.h"
|
|
#include "Widgets/SNullWidget.h"
|
|
|
|
FWidgetContainer::FWidgetContainer(const FWidgetContainerArgs Args) :
|
|
FSlateBuilder ( nullptr, Args.Identifier )
|
|
{
|
|
}
|
|
|
|
FWidgetContainerArgs::FWidgetContainerArgs( FName InIdentifier) :
|
|
Identifier( InIdentifier )
|
|
{
|
|
}
|
|
|
|
FWidgetContainer& FWidgetContainer::AddBuilder(const TSharedRef<FSlateBuilder>& Builder)
|
|
{
|
|
ChildBuilderArray.Add( Builder );
|
|
return *this;
|
|
}
|
|
|
|
TSharedPtr<FSlateBuilder> FWidgetContainer::GetBuilderAtIndex(int32 Index)
|
|
{
|
|
if ( Index < ChildBuilderArray.Num() )
|
|
{
|
|
return ChildBuilderArray[Index];
|
|
}
|
|
return nullptr;
|
|
}
|
|
|
|
void FWidgetContainer::Empty()
|
|
{
|
|
ChildBuilderArray.Empty();
|
|
}
|
|
|
|
FWidgetContainer& FWidgetContainer::AddBuilder( TSharedRef<SWidget> Widget)
|
|
{
|
|
ChildBuilderArray.Add( MakeShared<FSlateBuilder>( Widget ) );
|
|
return *this;
|
|
}
|
|
|
|
TSharedPtr<SWidget> FWidgetContainer::GenerateWidget()
|
|
{
|
|
for ( int32 ChildBuilderIndex = 0; ChildBuilderIndex < ChildBuilderArray.Num(); ChildBuilderIndex++)
|
|
{
|
|
CreateAndPositionWidgetAtIndex( ChildBuilderIndex );
|
|
}
|
|
|
|
return MainContentWidget.IsValid() ? MainContentWidget : SNullWidget::NullWidget.ToSharedPtr();
|
|
}
|
|
|
|
void FWidgetContainer::UpdateWidget()
|
|
{
|
|
for ( int32 ChildBuilderIndex = 0; ChildBuilderIndex < ChildBuilderArray.Num(); ChildBuilderIndex++)
|
|
{
|
|
ChildBuilderArray[ChildBuilderIndex]->UpdateWidget();
|
|
}
|
|
}
|
|
|
|
FWidgetContainer& FWidgetContainer::SetBuilders( TArray<TSharedRef<FSlateBuilder>> Builders )
|
|
{
|
|
Empty();
|
|
|
|
for ( const TSharedRef<FSlateBuilder>& Builder : Builders )
|
|
{
|
|
ChildBuilderArray.Add( Builder );
|
|
}
|
|
return *this;
|
|
}
|
|
|
|
|