[Lazarus] Lazarus Goal

Graeme Geldenhuys graeme at mastermaths.co.za
Fri Nov 13 07:47:49 CET 2009


Brian Prentice wrote:
> probably know Java has solved this problem nicely with layout 
> managers.  If layout managers were implemented in Lazarus the IDE


I fully agree, layout managers (or even only one layout manager) would
solve this problem. LCL has Anchors (a lot more advanced compared to say
Delphi 7's anchors), which goes some way to solve the problem, but it is
still a hit and miss case - as Lazarus proves. Constantly Lazarus
dialogs are broken, due to components overlapping, text being clipped
etc... This gives the application a very unpolished look. A layout
manager normally solves layout problems, preferred sizes, including
handling size changes due to language selections etc..

I am working on a solution though, but unfortunately the work in
progress is very slow at the moment due to day job (work) related
deadlines. I started implementing the Java MiG Layout Manager - first to
be used with fpGUI Toolkit. But the original design of MiG Layout allows
for other GUI toolkits to plug in very easily with minimal code needed.
I will try and duplicate that design, so that MiG Layout Manager can
work with fpGUI and LCL.

MiG Layout is a very advanced layout manager, yet very easy to use. It
can reproduce any GUI layout without the need for nested layout
managers. All accomplished with just one single layout manager per form.
There was actually a contest about this and MiG passed with flying
colors in each test.

Mig Layout even manages platform preferred button orders, positioning
can be specified in any units, not just pixels (eg: cm, inches, meters
etc.) & it's dpi independent. You can even toggle a "debug mode" at
runtime to see how MiG Layout manages the components.

For more information about MiG Layout, have a look at it's home page. I
would also suggest you download the Swing Demo and try it out. It's a
fantastic piece of engineering.

    http://www.miglayout.com/


Regards,
  - Graeme -

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/





More information about the Lazarus mailing list