Those are external windows that runs alongside the main. You can pop out some component and as many as you like.
They handle their own lifetime (closeButtonPressed call delete this) but still I want that they don't survive the main one.
So I'm not a huge fan of the ScopedPointers thingy in that case as it would mean forwarding to this in the closeButtonPressed complexifying the code a lot.