As far as I understood from this and seeing the code as well as other sources, though I didn’t dive too deep and this is just surface knowledge, is as under -
- SWidget or other classes that use Slate module ( hereby referred as Slate Classes) are actual classes that actually create the UI elements such as a button.
2.UWidget or other classes that use UMG module ( hereby referred as UMG Classes ) are for easy handling of Slate classes and in the background, they call Slate classes for any kind of behavior.
3.UMG Classes don’t actually do anything itself, it just calls Slate Classes and only makes changes to Slate Classes properties or call function in Slate Classes,
4.UI can solely be made using Slate Classes without using UMG Classes (Not too sure about this ) though it will be incredibly difficult when compared to using UMG.