multi-window constructor