How to change Selected Background Color in blueprint for Editable Text Multi-line

How can you change Selected Background Color for Editable Text Multi-line with a call from a blueprint? It doesn’t have a Set Selected Background Color, and if you call Set Widget Style it is not there either.

Also, if you call set style in PreConstruct, then you can’t change the value from Designer anymore. After compiling it reverts to the purple inherit value.

It reverts to this, no matter what you set the color to and uncheck inherit:

image

Is this a simple case of Epic Engine team forgetting to make that accessible in blueprint and by calling set style it always reverts to default value?

It does seem that they forgot to make it visible, also they didn’t made color (and opacity) visible either, for that as well you have to go though the whole style like in the image from original post where you have to get the style and only change the color.

I made 2 simple functions to change those 2 values:

UFUNCTION(BlueprintCallable, Category = ".My Functions|UI")
static void setColor(UMultiLineEditableText* editableTextMultiLine, const FSlateColor& color);

UFUNCTION(BlueprintCallable, Category = ".My Functions|UI")
static void setSelectedBackgroundColor(UMultiLineEditableText* editableTextMultiLine, const FSlateColor& color);
void UGeneral::setColor(UMultiLineEditableText* editableTextMultiLine, const FSlateColor& color)
{
FTextBlockStyle style = editableTextMultiLine->WidgetStyle;
style.ColorAndOpacity = color;
editableTextMultiLine->SetWidgetStyle(style);
}
void UGeneral::setSelectedBackgroundColor(UMultiLineEditableText* editableTextMultiLine, const FSlateColor& color)
{
FTextBlockStyle style = editableTextMultiLine->WidgetStyle;
style.SelectedBackgroundColor = color;
editableTextMultiLine->SetWidgetStyle(style);
}

For both colors in blueprint just choose Slate Color.

Until they make them visible in editor, I’ll just use these 2.