#pragma once #include "CoreMinimal.h" #include "Engine/DeveloperSettings.h" #include "InputCoreTypes.h" #include "ActionIconMapping.h" #include "InputTranslationTable.h" #include "ControllerIconSettings.generated.h" UCLASS(Blueprintable, Config=Engine, DefaultConfig, Config=Game) class UControllerIconSettings : public UDeveloperSettings { GENERATED_BODY() public: UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true)) FInputTranslationTable InputTranslationTable; protected: UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true)) TArray Xbox_KeyIcons; UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true)) TArray Playstation_KeyIcons; UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true)) TArray Playstation5_KeyIcons; UPROPERTY(BlueprintReadWrite, Config, EditAnywhere, meta=(AllowPrivateAccess=true)) TArray MouseKeyboard_KeyIcons; public: UControllerIconSettings(); UFUNCTION(BlueprintCallable, BlueprintPure) static bool FindMouseKeyboardKeyIcon(FKey Key, FActionIconMapping& KeyIcon); UFUNCTION(BlueprintCallable, BlueprintPure) static bool FindKeyIcon(FKey Key, FActionIconMapping& KeyIcon); UFUNCTION(BlueprintCallable, BlueprintPure) static bool FindControllerKeyIcon(FKey Key, FActionIconMapping& KeyIcon); };