> A,B,C and D are actually determined by the implementation of BRegion. In the > XFree86 > implementation of Region, the have some optimized sorting or the rects so you > can draw from top to > bottom. The science behind this is explained in the XFree86 source. We have already a BRegion implementation in the CVS. Though it follows BeOS's BRegion design very closely, that means rects aren't ordered by their top and left coordinates (like XFree's regions), but just by their top coordinate. Rects never overlap, so I guess it can be used for clipping. Anyway, you can have a look at my implementation in the CVS. It's tested and it works correctly.