How to make movable, dockable, sizable UMG windows with [-][X] in corner?

I want the player to move some gadgets around the screen, resize them, combine them so they become tab sheets, tear the tabs off to make separate windows, etc. Basically what I see the UE4 editor capable of doing.

What widgets do I start with in the Designer Palette? I don’t see any windows or tabs, just canvas, border and stuff to go inside.

How do I do this?

Thanks!

Are there any additional 2D GUI elements available that are not on the Designer Palette? How would I hook a drag event when it touches within a border object?

How were the widgets developed for the UE4 editor? I am assuming that the UE4 editor is an Unreal Engine application. I like the way each window has a tab and can be torn off, docked, or rejoined together into a stack of tabbed elements. I found a tutorial for dragging a widget across the screen, and another for dragging content off one widget onto another. I am hoping that someone can point me to a full-featured widget tutorial or example.

Thanks!