Sources from here : https://www.codeproject.com/KB/dialog/874005/TabWindow.zip
This sources creates a shell window called TabWindow embedded with TabControl that allows detaching a tab item to a new window through a drag-and-drop. It also allows a floating window being tabbed to a stationary window through the drag-and-drop.