4#include "GameFramework/Character.h"
9#define LOCTEXT_NAMESPACE "DlgSystem"
23FText UDlgSystemSettings::GetSectionText()
const
25 return LOCTEXT(
"SectionText",
"Dialogue");
28FText UDlgSystemSettings::GetSectionDescription()
const
30 return LOCTEXT(
"SectionDescription",
"Configure how the Dialogue Editor behaves + Runtime behaviour");
34#if ENGINE_MINOR_VERSION >= 25
35bool UDlgSystemSettings::CanEditChange(
const FProperty* InProperty)
const
37bool UDlgSystemSettings::CanEditChange(
const UProperty* InProperty)
const
40 const bool bIsEditable = Super::CanEditChange(InProperty);
41 if (bIsEditable && InProperty)
43 const FName PropertyName = InProperty->GetFName();
46 if (!bShowPrimarySecondaryEdges &&
47 (PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, bDrawPrimaryEdges) ||
48 PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, bDrawSecondaryEdges)))
55 PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, DialogueTextGlobalNamespaceName))
62 PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, DialogueTextPrefixNamespaceName))
68 (PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, LocalizationIgnoredStrings)))
74 if (!bSetDefaultEdgeTexts &&
75 (PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, DefaultTextEdgeToEndNode) ||
76 PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, DefaultTextEdgeToNormalNode) ||
77 PropertyName == GET_MEMBER_NAME_CHECKED(ThisClass, bSetDefaultEdgeTextOnFirstChildOnly)))
86void UDlgSystemSettings::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
88 Super::PostEditChangeProperty(PropertyChangedEvent);
90 const FName PropertyName = PropertyChangedEvent.Property !=
nullptr ? PropertyChangedEvent.Property->GetFName() : NAME_None;
98 if (PropertyChangedEvent.Property !=
nullptr && PropertyChangedEvent.Property->HasMetaData(TEXT(
"Category")))
100 const FString& Category = PropertyChangedEvent.Property->GetMetaData(TEXT(
"Category"));
103 if (Category.Equals(TEXT(
"Logger"), ESearchCase::IgnoreCase))
123 const FString& TextSourceString = *FTextInspector::GetSourceString(Text);
145 return TEXT(
".dlg.json");
159 static TSet<FString> Extensions;
160 if (Extensions.Num() == 0)
165 TextFormatIndex < TextFormatsNum; TextFormatIndex++)
183 if (Ext.StartsWith(
".") && Ext !=
".uasset")
185 CurrentFileExtensions.Add(Ext);
189 return CurrentFileExtensions;
192#undef LOCTEXT_NAMESPACE
EDlgDialogueTextFormat
UENUM()
Self & SyncWithSettings()
static FDlgLogger & Get()
TSet< FString > GetAllTextFileExtensions() const
TSet< FString > LocalizationIgnoredStrings
UPROPERTY(Category = "Localization", Config, EditAnywhere, AdvancedDisplay, DisplayName = "Ignored St...
bool bEnableMessageLog
UPROPERTY(Category = "Logger", Config, EditAnywhere)
TArray< UClass * > BlacklistedReflectionClasses
UPROPERTY(Category = "Dialogue", Config, EditAnywhere)
TSet< FString > AdditionalTextFormatFileExtensionsToLookFor
UPROPERTY(Category = "Batch", Config, EditAnywhere)
static const TSet< FString > & GetAllCurrentTextFileExtensions()
static FString GetTextFileExtension(EDlgDialogueTextFormat TextFormat)
bool IsIgnoredTextForLocalization(const FText &Text) const
FText DefaultTextEdgeToNormalNode
UPROPERTY(Category = "Default Texts", Config, EditAnywhere, DisplayName = "Edge Text To Normal Node")
bool bEnableOutputLog
UPROPERTY(Config)
FText DefaultTextEdgeToEndNode
UPROPERTY(Category = "Default Texts", Config, EditAnywhere, DisplayName = "Edge Text To End Node")