Hi Yorik,Yes. I had started to implement something like the windows, that is, implement a getSubVolume function. If you look into the Arch Components processSubShapes functions, if the subtracted object is a roof, it uses a shape given by its getSubvolume() function, instead of the object's shape.
Windows are really awesome as FreeCAD is
However the getSubVolume method does not work for windows clones...I tried to correct that... Can you have a look at issue #1841 in mantis ?