ULimenSetting
Overview
ULimenSetting is an abstract base class that defines the core functionality of a setting within the LimenModularSettings module. It inherits from ULimenStorageItem and provides methods to manage and apply settings, as well as events for when settings are updated or applied. Subclasses must implement specific logic for setting defaults, applying current settings, and handling initialization.
Properties
Type | Name | Access | Description |
|---|---|---|---|
| Description | Public | A description of the setting. |
| OwnerSubsystem | Protected | The subsystem that owns this setting. |
Functions
Return Type | Signature | Description |
|---|---|---|
| GetDescription() const | Returns the description of the setting. |
| ApplySetting(bool bUserRequest = false) | Applies the current setting and notifies the |
| IsApplied() const | Checks if the setting is currently applied. |
| SetDefaultValue() | Sets the default value of the setting. |
| InitializeSetting(ULimenModularSettingsSubsystem* InOwnerSubsystem) | Initializes the setting with a reference to its owner subsystem. |
| SubsystemInitialized(ULimenModularSettingsSubsystem* ModularSettingsSubsystem) | Called when the subsystem has initialized all settings. |
| SetDefaults() | Sets default values for the setting, such as possible states and default state. |
| BP_SetDefaults() | Blueprint-implementable version of |
| ApplyCurrentSetting(bool bUserRequest = false) | Applies the current setting without notifying the |
| SetIsApplied(bool bNewIsApplied) | Sets whether the setting is applied or not. |
| PostDataLoaded() override | Called after data has been loaded, applying the current setting. |
| ShouldLoadData() const override | Determines if data should be loaded for this setting. |
Usage & Implementation Notes
Threading Constraints: None.
Replication Requirements: None.
Memory Lifetime Management: The
OwnerSubsystemis managed by the subsystem that initializes it, ensuring proper lifetime management.Initialization Dependencies: Subclasses must call
InitializeSettingwith a validULimenModularSettingsSubsystem.
Properties (Table: Type | Name | Access | Description)
Type | Name | Access | Description |
|---|---|---|---|
FText | Description | Public | A description of the setting. |
TObjectPtr< ULimenModularSettingsSubsystem > | OwnerSubsystem | Protected | The subsystem that owns this setting. |
Functions (Table: Return Type | Signature | Description)
Return Type | Signature | Description |
|---|---|---|
const FText& | GetDescription() const | Returns the description of the setting. |
void | ApplySetting(bool bUserRequest = false) | Applies the current setting and notifies the |
bool | IsApplied() const | Checks if the setting is currently applied. |
virtual void | SetDefaultValue() | Sets the default value of the setting. |
void | InitializeSetting(ULimenModularSettingsSubsystem* InOwnerSubsystem) | Initializes the setting with a reference to its owner subsystem. |
virtual void | SubsystemInitialized(ULimenModularSettingsSubsystem* ModularSettingsSubsystem) | Called when the subsystem has initialized all settings. |
virtual void | SetDefaults() | Sets default values for the setting, such as possible states and default state. |
UFUNCTION(BlueprintImplementableEvent) | BP_SetDefaults() | Blueprint-implementable version of |
virtual void | ApplyCurrentSetting(bool bUserRequest = false) | Applies the current setting without notifying the |
void | SetIsApplied(bool bNewIsApplied) | Sets whether the setting is applied or not. |
virtual void | PostDataLoaded() override | Called after data has been loaded, applying the current setting. |
virtual bool | ShouldLoadData() const override | Determines if data should be loaded for this setting. |
Usage & Implementation Notes
Threading Constraints: None.
Replication Requirements: None.
Memory Lifetime Management: The
OwnerSubsystemis managed by the subsystem that initializes it, ensuring proper lifetime management.Initialization Dependencies: Subclasses must call
InitializeSettingwith a validULimenModularSettingsSubsystem.