Thanks.

Sorry for answering late - I had been thinking about this a while (some
days I was more inclined to say you should really use an intermediate view
for what you needed, other days I was more inclined to think I should
modify GSTable to use an intermediate view automatically; finally I
decided the simpler the better, and that even an intermediate view was too
complex, so I did what I did - which is basically a rewrite of your patch
:-) ).

I changed GSTable so that now setFrame: and setFrameSize: should cause
autorelayout of the managed views to be done.  I did that basically
without any change in code ... by just moving the existing code in a
private method, and calling it from setFrame: and setFrameSize:.

> Hi,
> 
> Recently I've added a proper preferences panel to LuserNET; each 'tab'
> there has a top-level view, a GSVbox or GSHbox, that gets added to an
> NSBox when the tab is selected. Unfortunately, the boxes won't re-'tile'
> themselves properly when they're added to the NSBox since they only
> re-'tile' when they are resized.
> 
> I've attached a patch that moves the entire tiling process to a
> _frameChanged: method, and ensures that this is called when the frame
> changed (resizes, setFrame:, etc.) and this solved my problems. (It
> loses some of the optimizations of the old version, but I don't think
> that matters; the time spent re-tiling is probably negligible compared
> to time spent actually redrawing everything.)
> 
> - Alexander Malmberg


_______________________________________________
Bug-gnustep mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to