in GameLiftPlugin/Source/GameLiftPlugin/Private/SMenu/Containers/SControlBarSection.cpp [232:339]
TSharedRef<SWidget> SControlBarSection::CreateDeploymentButtonSwitcher()
{
return SNew(SWidgetSwitcher)
.WidgetIndex_Lambda([&]
{
UGameLiftContainersStatus* ContainersStatus = GetMutableDefault<UGameLiftContainersStatus>();
return ContainersStatus->ContainerFleetDeploymentStatus;
})
+ SWidgetSwitcher::Slot()
[
SNew(SBox)
.HeightOverride(OverrideButtonHeight)
.HAlign(HAlign_Center)
[
SNew(SButton)
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
.Text(Menu::DeployContainers::kDeployContainerFleetButtonText)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kButtonNormal)
.IsEnabled_Raw(this, &SControlBarSection::IsAccountBootstrapped)
.ToolTipText_Lambda([&]()
{
if (!IsAccountBootstrapped())
{
return Menu::DeployCommon::kDeploymentDisabledNeedBootstrapTooltip;
}
return Menu::DeployCommon::kDeploymentEnabledTooltip;
})
.ButtonStyle(FGameLiftPluginStyle::Get(), Style::Button::kSuccessButtonStyleName)
.OnClicked_Lambda([this]
{
UGameLiftContainersStatus* ContainersStatus = GetMutableDefault<UGameLiftContainersStatus>();
ContainersStatus->ContainerFleetDeploymentStatus = (int)EContainerFleetDeploymentStatus::DeploymentInProgress;
ContainersStatus->SaveConfig();
OnNewDeploymentMultiDelegate.Broadcast();
return FReply::Handled();
})
]
]
+ SWidgetSwitcher::Slot()
[
SNew(SBox)
.HeightOverride(OverrideButtonHeight)
.HAlign(HAlign_Center)
[
SNew(SButton)
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
.Text(Menu::DeployContainers::kResetDeploymentButtonText)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kButtonNormal)
.ButtonStyle(FGameLiftPluginStyle::Get(), Style::Button::kErrorButtonStyleName)
.OnClicked_Lambda([this]
{
DisplayResetModal();
return FReply::Handled();
})
]
]
+ SWidgetSwitcher::Slot()
[
SNew(SButton)
.ButtonStyle(FGameLiftPluginStyle::Get(), Style::Button::kNormalButtonStyleName)
.OnClicked_Lambda([]
{
UGameLiftContainersStatus* ContainersStatus = GetMutableDefault<UGameLiftContainersStatus>();
ContainersStatus->ContainerFleetDeploymentStatus = (int)EContainerFleetDeploymentStatus::DeploymentNotStart;
ContainersStatus->SaveConfig();
return FReply::Handled();
})
.Content()
[
SNew(SBox)
.HeightOverride(OverrideButtonHeight)
.HAlign(HAlign_Center)
[
SNew(SHorizontalBox)
+ SHorizontalBox::Slot()
.AutoWidth()
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
[
SNew(SBox)
.WidthOverride(Style::kResetIconSize)
.HeightOverride(Style::kResetIconSize)
[
SNew(SImage)
.Image(FGameLiftPluginStyle::Get().GetBrush(Style::Brush::kResetIconName))
#if(ENGINE_MAJOR_VERSION == 4)
.ColorAndOpacity(FColor::Black)
#endif
]
]
+ SHorizontalBox::Slot()
.AutoWidth()
.Padding(SPadding::Left)
.HAlign(HAlign_Left)
.VAlign(VAlign_Center)
[
SNew(STextBlock)
.Text(Menu::DeployContainers::kResetDeploymentButtonText)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kButtonNormal)
]
]
]
];
}