EM_Task/UnrealEd/Classes/Settings/StructViewerSettings.h
Boshuang Zhao 5144a49c9b add
2026-02-13 16:18:33 +08:00

54 lines
1.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "StructViewerSettings.generated.h"
/** The developer folder view modes used in SStructViewer */
UENUM()
enum class EStructViewerDeveloperType : uint8
{
/** Display no developer folders*/
SVDT_None,
/** Allow the current user's developer folder to be displayed. */
SVDT_CurrentUser,
/** Allow all users' developer folders to be displayed.*/
SVDT_All,
/** Max developer type*/
SVDT_Max
};
/**
* Implements the Struct Viewer's loading and saving settings.
*/
UCLASS(config = EditorPerProjectUserSettings)
class UNREALED_API UStructViewerSettings: public UObject
{
GENERATED_BODY()
public:
/** Whether to display internal use structs. */
UPROPERTY(config)
bool DisplayInternalStructs;
/** The developer folder view modes used in SStructViewer */
UPROPERTY(config)
EStructViewerDeveloperType DeveloperFolderType;
public:
/**
* Returns an event delegate that is executed when a setting has changed.
*
* @return The delegate.
*/
DECLARE_EVENT_OneParam(UStructViewerSettings, FSettingChangedEvent, FName /*PropertyName*/);
static FSettingChangedEvent& OnSettingChanged() { return SettingChangedEvent; }
protected:
//~ UObject overrides
virtual void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent) override;
// Holds an event delegate that is executed when a setting has changed.
static FSettingChangedEvent SettingChangedEvent;
};