Mattias Gaertner wrote:
On Mon, 13 Sep 2010 09:54:45 +0000
Mark Morgan Lloyd <[email protected]> wrote:

I've got a form containing main menu, status lines top and bottom, and a couple of grids. I've been doing other things for a few days but I now seem to have a problem where resizing the form (diagonal mouse-drag on bottom-right corner) does not correctly resize/reposition all of the content.

Running on x86 Linux (Debian) and looking at the app built with different versions of Lazarus, each with its own LCL and preferred FPC version, and for either GTK1 or GTK2:

With 0.9.28.3 (27343) for GTK, neither status line changes when the form is resized, one of the grids which is left-aligned also stays unchanged with part of the bottom status line visible below it.

With 0.9.28.3 (27343) for GTK2, performance is erratic. The bottom status line sometimes changes correctly, but the width of the top line and its panes is always unchanged.

With 0.9.29 (27343) for both GTK and GTK2, attempting to resize the form sometimes results in it "snapping back" to the original size or sometimes to something intermediate; I suspect that this might be a DPI issue since I'm working over VNC and the setting of the two X servers might not be the same. Positioning of the status lines etc. appears to be correct.

For completeness, 0.9.26.2 (25955) and 0.9.28.2 (27246) appear to behave as 0.9.28. However I think that I've seen all of those working properly in the past, although details such as the resizing of panes within a status line might have been erratic.

The layout algorithm was rewritten in 0.9.29 to support complex layouts.
Please create a bug report with an example.

I've reviewed my code and not liked what I saw. After reorganising some things overall behavior is far better so I don't think it's worth treating as a bug.

For the record, I'd put in various hacks to work around the fact that a TDrawGrid doesn't have a resize event. This was having non-obvious side-effects including things like the menu bar not tracking the form width properly, moving the DrawGrid and its immediate siblings into a panel hence being able to use the panel's resize appears to have sorted things out.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to