My game now is working this way, a “one widget to rule them all” thing, I’m just “splitting” complexity among widgets related to each functionality, after, I place instances inside the “One Widget” in the own UMG editor, but I think that until by code this parent/child relationship means “who’s inside who”.
To manage what is shown or not I’m using a simple visibility toggle, but I think you could also create and parent/child them realtime.
Hope it works.
Added: Get a fullscreen “constant” widget doesn’t seen a so much crazy approach if you consider that our “mouse cursor layer” could be it.
Make the Canvas (the big blank area) of the widget “HitTestInvisible” so the underlying widget can receive input. Just because you can see trough doesnt mean you can click trough :). Altho the Childing Method is alot better for example if you have some widget windows wich you want to Zorder on click etc
What I usually do in these cases is that I create an enum in the character handling the menu with all the possible menus and use a switch to check on which menu you are on. Then you can just customize what happens in each menu.
Well it add some complexity, and at that point I’m not sure how to do moveable windows. But as I said, it’s more than enough for what I’m doing right now.
When you add your child to the present user interface. Save down a reference grab the Canvas Slot -> SetPosition. (easy spoken for the movement, might be doing a tutorial on moveable windows this we) The childing is an awesome feature. I can create a kind of Window styled widget with all the functionality (movement, close, minimize etc) and to that window widget you can add your special content widget. so you dont have to do the basic stuff over and over