http://www.trackze.ro/wsbe-2-rectangle-hq/
In this Wednesday's installment, we start to centralize our window creation so that we can dynamically keep track of the state of the whole windowing environment as new windows are needed, which will be critical to the implementation of critical window management functions like raising and lowering.