UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CustomCultureImplementation.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
8
9#if UE_ENABLE_ICU
11#else
13#endif
14
16{
17public:
19#if UE_ENABLE_ICU
20 : FCultureImplementation(InCustomCulture->GetBaseCulture()->GetName())
21#else
23 FText::AsCultureInvariant(InCustomCulture->GetBaseCulture()->GetDisplayName()),
24 InCustomCulture->GetBaseCulture()->GetEnglishName(),
25 InCustomCulture->GetBaseCulture()->GetKeyboardLayoutId(),
26 InCustomCulture->GetBaseCulture()->GetLCID(),
27 InCustomCulture->GetBaseCulture()->GetName(),
28 InCustomCulture->GetBaseCulture()->GetNativeName(),
29 InCustomCulture->GetBaseCulture()->GetUnrealLegacyThreeLetterISOLanguageName(),
30 InCustomCulture->GetBaseCulture()->GetThreeLetterISOLanguageName(),
31 InCustomCulture->GetBaseCulture()->GetTwoLetterISOLanguageName(),
32 InCustomCulture->GetBaseCulture()->GetDecimalNumberFormattingRules(),
33 InCustomCulture->GetBaseCulture()->GetPercentFormattingRules(),
34 InCustomCulture->GetBaseCulture()->GetCurrencyFormattingRules(FString()),
35 InCustomCulture->GetBaseCulture()->IsRightToLeft()
36 )
37#endif
38 , CustomCulture(InCustomCulture)
39 {
40 }
41
42 virtual ~FCustomCultureImplementation() = default;
43
44 //~ ICultureImplementation interface
45 virtual FString GetDisplayName() const override { return CustomCulture->GetDisplayName(); }
46 virtual FString GetEnglishName() const override { return CustomCulture->GetEnglishName(); }
47 virtual FString GetName() const override { return CustomCulture->GetName(); }
48 virtual FString GetNativeName() const override { return CustomCulture->GetNativeName(); }
49 virtual FString GetUnrealLegacyThreeLetterISOLanguageName() const override { return CustomCulture->GetUnrealLegacyThreeLetterISOLanguageName(); }
50 virtual FString GetThreeLetterISOLanguageName() const override { return CustomCulture->GetThreeLetterISOLanguageName(); }
51 virtual FString GetTwoLetterISOLanguageName() const override { return CustomCulture->GetTwoLetterISOLanguageName(); }
52 virtual FString GetNativeLanguage() const override { return CustomCulture->GetNativeLanguage(); }
53 virtual FString GetNativeRegion() const override { return CustomCulture->GetNativeRegion(); }
54 virtual FString GetRegion() const override { return CustomCulture->GetRegion(); }
55 virtual FString GetScript() const override { return CustomCulture->GetScript(); }
56 virtual FString GetVariant() const override { return CustomCulture->GetVariant(); }
57 virtual bool IsRightToLeft() const override { return CustomCulture->IsRightToLeft(); }
58
59private:
60 TSharedRef<ICustomCulture> CustomCulture;
61};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FLegacyCultureImplementation FCultureImplementation
Definition Culture.h:19
Definition CustomCultureImplementation.h:16
virtual bool IsRightToLeft() const override
Definition CustomCultureImplementation.h:57
virtual FString GetName() const override
Definition CustomCultureImplementation.h:47
virtual FString GetRegion() const override
Definition CustomCultureImplementation.h:54
virtual FString GetDisplayName() const override
Definition CustomCultureImplementation.h:45
virtual FString GetUnrealLegacyThreeLetterISOLanguageName() const override
Definition CustomCultureImplementation.h:49
virtual FString GetEnglishName() const override
Definition CustomCultureImplementation.h:46
virtual FString GetNativeLanguage() const override
Definition CustomCultureImplementation.h:52
FCustomCultureImplementation(const TSharedRef< ICustomCulture > &InCustomCulture)
Definition CustomCultureImplementation.h:18
virtual FString GetScript() const override
Definition CustomCultureImplementation.h:55
virtual FString GetNativeRegion() const override
Definition CustomCultureImplementation.h:53
virtual FString GetTwoLetterISOLanguageName() const override
Definition CustomCultureImplementation.h:51
virtual FString GetNativeName() const override
Definition CustomCultureImplementation.h:48
virtual ~FCustomCultureImplementation()=default
virtual FString GetThreeLetterISOLanguageName() const override
Definition CustomCultureImplementation.h:50
virtual FString GetVariant() const override
Definition CustomCultureImplementation.h:56
Definition LegacyCulture.h:17
static CORE_API FText AsCultureInvariant(const ANSICHAR *String)
Definition Text.cpp:1171
virtual FString GetScript() const =0
virtual FString GetEnglishName() const =0
virtual FString GetVariant() const =0
virtual FString GetThreeLetterISOLanguageName() const =0
virtual FString GetTwoLetterISOLanguageName() const =0
virtual FString GetDisplayName() const =0
virtual FString GetUnrealLegacyThreeLetterISOLanguageName() const =0
virtual FString GetRegion() const =0
virtual FString GetName() const =0
virtual FString GetNativeLanguage() const =0
virtual bool IsRightToLeft() const =0
virtual FString GetNativeRegion() const =0
virtual FString GetNativeName() const =0
Definition SharedPointer.h:153