add construct for window system 
(not yet test)