
On Wed, Feb 13, 2008 at 10:45:49AM -0500, David Roundy wrote:
Why not use the input-rectangle that's given to doLayout? i.e. what if I want to do something like this
'decorate' and 'pureDecoration' are using precisely that rectangle (the one passed to 'redoLayout', which is the one passed to 'doLayout').
(fooLayout *|* tabbedLikeDecoration floatingLayout) (tabbedLikeDecoration (fooLayout *|* floatingLayout)) (tabbedLikeDecoration fooLayout *|* tabbedLikeDecoration floatingLayout)
the fact that this is not happening with my previous TabbedDecoration is a bug I was not aware of. Now I can indeed see it and I want it to be fixed (which still doesn't mean that we will have just one TabbedDecoration for real tabbed layouts and for tabbed-like decorations, obviously).
Applying decorations after combining layouts is definitely something *very* good. I'm wondering if this is compatible with the above. (Probably not?)
I think this is compatible with a tabbedLikeDecoration that obeys its input rectangle (which ought to have a decent name, but I can't think of one at the moment), as described above.
The fact that it does not is puzzling, as I said. I need to have a closer look.
I don't think it's incompatible with combinators, as described above. Of course, you could get very weird effects if you did something like
tabbedLikeDecoration (tabbedLikeDecoration fooLayout *|* tabbedLikeDecoration floatingLayout)
I have a patch that at least will prevent Decoration from decorating decorations, but before pushing I want to rewrite isDecoration... ;) Andrea