Tell me about it, I kinda get the thinking behind it, but having no documentation and being impossible to debug properly makes it an incredibly painful thing to deal with.
I found how to use .Style by looking through the complete source code of an old version of Rocket.
Basically, you define a set of style properties under a single tree in a SlateStyleSet. This is how I did it for STreeView:
In my Style code:
Style.Set("MyGame.TreeStyle.Selection.Active",new FSlateColorBrush(FLinearColor(FColor(100,100,100))));
Style.Set("MyGame.TreeStyle.Selection.ActiveHovered",new FSlateColorBrush(FLinearColor(FColor(100,100,100))));
Style.Set("MyGame.TreeStyle.Selection.Inactive",new FSlateColorBrush(FLinearColor(FColor(80,80,80))));
Style.Set("MyGame.TreeStyle.Selection.InactiveHovered",new FSlateColorBrush(FLinearColor(FColor(80,80,80))));
Style.Set("MyGame.TreeStyle.EvenRowBackground",new FSlateColorBrush(FLinearColor(0,0,0,0)));
Style.Set("MyGame.TreeStyle.EvenRowBackgroundHovered",new FSlateColorBrush(FLinearColor(FColor(70,70,70))));
Style.Set("MyGame.TreeStyle.OddRowBackground",new FSlateColorBrush(FLinearColor(0,0,0,0)));
Style.Set("MyGame.TreeStyle.OddRowBackgroundHovered",new FSlateColorBrush(FLinearColor(FColor(70,70,70))));
Style.Set("MyGame.TreeStyle.Selection.SelectorFocused",new FSlateColorBrush(FLinearColor(0,0,0,0)));
In my slate STreeView definition:
.Style("MyGame.TreeStyle")
The problem is, those style names are set, but there’s no-where that actually defines what they are for each widget
I feel like I’m using a tool that was developed solely for in-house use where you could just talk to the guy who put it together, then just released to the public without any resources.
Still, hopefully that’s coming soon…