InlineEditConditionToggle on Config bools prohibits them from being written to .ini file

Hi!

We have a settings class that writes its properties to an ini file.

I noticed today that all bool properties that are marked as InlineEditConditionToggle don’t actually cause any changes in the ini file when the are toggled.

Here’s an example:

`UCLASS(BlueprintType, Config = “PL_LoadingScreen”, DefaultConfig, AutoExpandCategories = “Loading Screen|Common”)
class PL_LOADINGSCREEN_API UPL_LoadingScreenSettings : public UPL_SettingsBase
{
GENERATED_BODY()

public:

/**

  • If true, the loading screen plugin is active and will take over loading screen rendering
  • If false, the plugin will play dead and not interfere with whatever other processing you perform
    */
    UPROPERTY(EditAnywhere, BlueprintReadOnly, Config, Category = “Loading Screen”, Meta = (DisplayName = “Enable Loading Screens”))
    bool bEnabled { true };

/** If true, enables showing the Pre Load Screen during engine startup */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Config, Category = “Loading Screen”, Meta = (InlineEditConditionToggle))
bool bEnablePreLoadScreen { true };

/** The Pre Load Screen is the early loading screen visible during initial engine startup */
UPROPERTY(EditAnywhere, BlueprintReadOnly, Config, Category = “Loading Screen”, Meta = (EditCondition = “bEnablePreLoadScreen”))
FPL_PreLoadScreenAttributes PreLoadScreen { };`The first bool (bEnabled) performs as expected, and toggling it will change the corresponding value in the .ini file.

The second bool (bEnablePreLoadScreen) doesn’t cause any updates to the .ini file when toggled.

I also noticed that when you mark a bool as InlineEditConditionToggle, it vanishes from the property hierarchy. So in e.g. a class detail customization, you cannot retrieve a TSharedPtr<IPropertyHandle> to it, you instead get an invalid (nullptr) handle. Possibly related.

In any case, I’m pretty sure InlineEditConditionToggle should be purely a visual change, by saving an extra line in the UI, and not cause a functional change like this.

Ciao, Daniel!

Hi there,

I have tested this on my end also, and I can confirm that I am seeing the same behaviour. To me, this seems like unintended behaviour and is likely a bug. I will submit a bug report to the Epic team and be in touch shortly when a tracking link becomes available.

My recommendation at this stage would be to not gate the edit condition of a property with a bool that you are looking to reflect in a settings .ini file.

Thanks,

Thomas

Hi there,

Here is the publicly available bug tracking link: https://issues.unrealengine.com/issue/UE-264640

From now on, this link will contain the most up-to-date information about the bug report. If you find any additional information you wish to add, please feel free to get back in touch.

Thank you again for the report.

Regards,

Thomas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.