In the end I created a simple sub-class of QMdiSubWindow that has saveGeometry() and restoreGeometry() methods and a settable key for QSettings. I instantiate this manually and install the widget with setWidget().
As an added gotcha for newbies: The size of the QMdiSubWindow can be set before it is added to the MDI area, but its position cannot.
Bookmarks