Best practice for implementing a window system with Widgets?

Hey all, I’m trying to design a drag-able window system and I’m not quite sure the best way to architect it in Unreal.

At the moment I have followeda YouTube tutorial on how to create a C++ class for the HUD and also for a widget.

I have gotten all the dragging and buttons working, so no problems *until *I tried to implement a second Widget class.

Apparently if you have two Widgets visible at the same time there is no way to set the ZOrder, and whichever Widget your code created LAST is going to take input until you hide it.

In my case, I can open up my Inventory window, then open up a Confirmation Box, and the Confirmation Box remains underneath the Inventory until I close Inventory.

So… my question is : Should I be putting Everything in a single Widget class and just calling ZOrder on groups of things in order to float a dialog to the front?

Any suggestions would be much appreciated!