I had these same thoughts, but didn't want to push it too far - trying to keep the feature request in the realm of low-hanging fruit. A border-snapping feature, though, would be handy, as would having several common layouts pre-defined in the Windows menu - kind of like the way Eclipse and Blender have pre-defined layouts for specific types of work.
Learn to play with the widget geometry will be usefull.
Code: Select all
mw=FreeCADGui.getMainWindow() mdiarea=mw.findChild(QtGui.QMdiArea) sws=mdiarea.subWindowList() print mdiarea.geometry() a=mdiarea.geometry() l=a.left() r=a.right() t=a.top() b=a.bottom() h=b-t ls=len(sws) hh=h//ls-ls print "windows ..." for i,w2 in enumerate(sws): print str(w2.windowTitle()) print ("size",w2.size()) w2.setGeometry(0,i*hh,r-l,hh)