Except for the main application window, each floating window has a parent window. The parent of a window is typically the current window at the time the new window is created. For example, if the application starts off by creating two floating windows in a row, the parent of the first window will be the main application window, while the parent of the second window will be the first window.
The converse of a parent window is a child window. If window A is window B's parent, then window B is window A's child.
Windows are considered siblings if they have the same parent.
A floating window always displays over its parent wherever they intersect on the screen. This is true even when the parent window is the current window. An active window will always display over any of its siblings.
If you destroy a floating window, all of its children are also destroyed.