You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
42 lines
1.1 KiB
C++
42 lines
1.1 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "LuminLocalePickerWidget.h"
|
|
#include "Widgets/Input/STextComboBox.h"
|
|
|
|
void SLuminLocalePickerWidget::Construct(const FArguments& Args)
|
|
{
|
|
OnPickLocale = Args._OnPickLocale.Get();
|
|
|
|
TArray<FString> CultureNames;
|
|
FInternationalization::Get().GetCultureNames(CultureNames);
|
|
|
|
for (FString& Locale : CultureNames)
|
|
{
|
|
Locales.Add(MakeShareable(new FString(Locale)));
|
|
}
|
|
|
|
int32 CurrLocaleIndex = 0;
|
|
FString InitiallySelectedLocale = Args._InitiallySelectedLocale.Get();
|
|
for (int32 LocaleIndex = 0; LocaleIndex < Locales.Num(); ++LocaleIndex)
|
|
{
|
|
if (*Locales[LocaleIndex].Get() == InitiallySelectedLocale)
|
|
{
|
|
CurrLocaleIndex = LocaleIndex;
|
|
break;
|
|
}
|
|
}
|
|
|
|
ChildSlot
|
|
[
|
|
SNew(STextComboBox)
|
|
.OptionsSource(&Locales)
|
|
.InitiallySelectedItem(Locales[CurrLocaleIndex])
|
|
.OnSelectionChanged(this, &SLuminLocalePickerWidget::OnSelectedLocaleChanged)
|
|
];
|
|
}
|
|
|
|
void SLuminLocalePickerWidget::OnSelectedLocaleChanged(TSharedPtr<FString> NewLocale, ESelectInfo::Type SelectInfo)
|
|
{
|
|
OnPickLocale.Execute(*NewLocale.Get());
|
|
}
|