I have ended up creating a few renderers. But the interface you mention is a desirable addition!
#renderingBlock: [:item :html :optionalRow :optionalReportColumn | ... ]
invoked with #cull: so that the end user need only define :item and :html.
And if you don't modify Magritte, then make a pluggable-component that can accept a rendering block. And then install your renderer, which accepts your block in the factory method.
-
If I am missing some already provided functionality, please educate me! -- thanks.
-Cam