Projekt for SPIE - Avatar for safety briefing / managment event
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

48 lines
1.4 KiB

// Fill out your copyright notice in the Description page of Project Settings.
#include "LogWidget.h"
TSharedRef<SWidget> ULogWidget::RebuildWidget()
{
if (!MyLogWidgetSwitcher.IsValid())
{
if (GEngine && GEngine->GameViewport && GEngine->GameViewport->Viewport)
{
GEngine->GameViewport->Viewport->ViewportResizedEvent.AddUObject(this, &ULogWidget::OnViewportResized);
IsVertical = (GEngine->GameViewport->Viewport->GetDesiredAspectRatio() < 1.0f);
}
}
MyLogWidgetSwitcher = SNew(SLogWidgetSwitcher).IsVertical(IsVertical).StyleSet(&GlobalBLoggerStyle->StyleSet);
return MyLogWidgetSwitcher.ToSharedRef();
}
void ULogWidget::OnViewportResized(FViewport* Viewport, uint32 ID)
{
if (MyLogWidgetSwitcher.IsValid())
{
if (IsVertical != (GEngine->GameViewport->Viewport->GetDesiredAspectRatio() < 1.0f))
{
IsVertical = !IsVertical;
MyLogWidgetSwitcher->ChooseWidgetIndex(IsVertical);
}
}
}
ULogWidget::ULogWidget(const FObjectInitializer& ObjectInitializer)
{
static ConstructorHelpers::FObjectFinder<UBLoggerStyles> BLoggerStyleFinder(TEXT("BLoggerStyles'/BLogger/Styles/DA_BLoggerStyles.DA_BLoggerStyles'"));
GlobalBLoggerStyle = BLoggerStyleFinder.Object;
}
void ULogWidget::ReleaseSlateResources(const bool bReleaseChildren)
{
Super::ReleaseSlateResources(bReleaseChildren);
MyLogWidgetSwitcher.Reset();
}
void ULogWidget::SynchronizeProperties()
{
Super::SynchronizeProperties();
}