I don't know Spec, but this example on the Pharo list makes me wonder if Spec could be used to layout Roassal shapes within an element.  Although perhaps it is too heavy - and also perhaps I would need more fine grained control of being able to overlap shapes.

-ben

-------- Original Message --------
Subject: [Pharo-project] Spec default row layout
Date: Sun, 5 Aug 2012 11:51:01 -0700 (PDT)
From: Sean P. DeNigris <sean@clipperadams.com>
Reply-To: Pharo-project@lists.gforge.inria.fr
To: pharo-project@lists.gforge.inria.fr


SpecLayout composed
	newRow: [ :spec1 | spec1
		add: #debugModeSwitch ] height: 30;
	newRow: [ :spec2 | spec2 
		add: #jobListModel ] "origin: 0@0 corner: 1@1 offsetOrigin: 0@30
offsetCorner: 0@0";
	yourself.