It also has a further facility to pick a wholly differnet class based on the DynamicState of the Widget. You may also just override variesWithState when you use this flag.
mixin OverrideStyle!( DynamicState.focus, YourFocusedStyle, DynamicState.hover, YourHoverStyle, YourDefaultStyle )
It checks if dynamicState matches the state and if so, returns the object given.
If there is no state mask given, the next one matches everything. The first match given is used.
However, since in most cases you'll want check state inside your individual methods, you probably won't find much use for this whole-class swap out.
Added May 16, 2021
This mixin overrides the useStyleProperties method to direct it toward your own style class. The basic usage is simple:
This exists just because useStyleProperties has a somewhat convoluted signature and its overrides must repeat them. Moreover, its implementation uses a stack class to optimize GC pressure from small fetches and that's a little tedious to repeat in your child classes too when you only care about changing the type.