WindowReference(const ContainerWindow &root, Window &_window) :window(&_window) { const ContainerWindow *parent = window->GetParent(); while (true) { if (parent == &root) return; if (parent == NULL || parents.full()) { window = NULL; return; } parents.append(parent); parent = parent->GetParent(); } }