in GameLiftPlugin/Source/GameLiftPlugin/Private/SMenu/Anywhere/SAnywhereRegisterComputeMenu.cpp [119:212]
TSharedRef<SWidget> SAnywhereRegisterComputeMenu::CreateAddNewComputeUI()
{
TSharedRef<SVerticalBox> VerticalBox = SNew(SVerticalBox)
// Compute name text input
+ SVerticalBox::Slot()
.AutoHeight()
.HAlign(HAlign_Fill)
.Padding(SPadding::Right2x + SPadding::Top)
[
SNew(SNamedRow)
.NameText(Menu::DeployAnywhere::kComputeNameTitle)
.RowWidget(
SAssignNew(ComputeNameTextInput, SEditableTextBox)
.HintText(Menu::DeployAnywhere::kComputeNameTextHint)
.IsEnabled_Raw(this, &SAnywhereRegisterComputeMenu::CanEditComputeSettings)
)
]
+ SVerticalBox::Slot()
.AutoHeight()
.HAlign(HAlign_Fill)
.Padding(SPadding::Top2x + SPadding::Right2x)
[
SNew(SNamedRow)
.NameText(Menu::DeployAnywhere::kComputeIPTitle)
.NameTooltipText(Menu::DeployAnywhere::kComputeIPTextTooltip)
.RowWidget(
SAssignNew(ComputeIPTextInput, SIPAddressTextBox)
.HintText(Menu::DeployAnywhere::kComputeIPTextHint)
.IsEnabled_Raw(this, &SAnywhereRegisterComputeMenu::CanEditComputeSettings)
)
]
+ SVerticalBox::Slot()
.AutoHeight()
.Padding(SPadding::Top3x + SPadding::Right2x)
[
SNew(SHorizontalBox)
// Button to cancel adding new compute
+ SHorizontalBox::Slot()
.AutoWidth()
.HAlign(HAlign_Left)
.Padding(SPadding::Right2x)
[
SAssignNew(CancelButton, SButton)
.Text(Menu::DeployAnywhere::kCancelButtonText)
.OnClicked_Raw(this, &SAnywhereRegisterComputeMenu::OnCancelComputeButtonClicked)
.ButtonStyle(FGameLiftPluginStyle::Get(), Style::Button::kNormalButtonStyleName)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kButtonNormal)
]
// Button to register new compute
+ SHorizontalBox::Slot()
.AutoWidth()
.HAlign(HAlign_Left)
.Padding(SPadding::Right2x)
[
SNew(SButton)
.Text(Menu::DeployAnywhere::kRegisterFirstComputeButtonText)
.OnClicked_Raw(this, &SAnywhereRegisterComputeMenu::OnRegisterFirstComputeButtonClicked)
.IsEnabled_Raw(this, &SAnywhereRegisterComputeMenu::CanRegisterCompute)
.ButtonStyle(FGameLiftPluginStyle::Get(), Style::Button::kSuccessButtonStyleName)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kButtonLight)
]
// Loading indicator
+ SHorizontalBox::Slot()
.AutoWidth()
.HAlign(HAlign_Left)
.VAlign(VAlign_Center)
[
SNew(STextStatus)
.IconState(STextStatus::EIconState::Loading)
.Visibility_Lambda([&]
{
return IsLoading ? EVisibility::Visible : EVisibility::Hidden;
})
]
]
+ SVerticalBox::Slot()
.AutoHeight()
.VAlign(VAlign_Center)
.Padding(SPadding::Top2x + SPadding::Right2x)
[
SAssignNew(RegisterComputeErrorRow, SNamedRow)
.SecondaryColumnLeftPadding(true)
.RowWidget(
SAssignNew(RegisterComputeErrorTextBlock, STextBlock)
.TextStyle(FGameLiftPluginStyle::Get(), Style::Text::kNote)
.AutoWrapText(true)
)
.Visibility(EVisibility::Collapsed)
];
RegisterComputeErrorTextBlock->SetColorAndOpacity(FGameLiftPluginStyle::Get().GetColor(Style::Color::kError));
return VerticalBox;
}