[Lazarus] Configure Build Lazarus
Juha Manninen
juha.manninen at phnet.fi
Fri Dec 4 08:36:27 CET 2009
On torstai, 3. joulukuuta 2009 23:31:24 Mattias Gaertner wrote:
>[...]
> > There are also some logical mistakes in the UI. Like the Quick Build
> > Options page has separate settings for "LCL interface" Target and IDE. It
> > gives an impression you could set two different interfaces at once but
> > you can't because they are mapped to the same
> > "LCL [<-typofix] interface" list on advanced tab.
>
> You can build the IDE for qt and the LCL for wince.
>
> > The dialog has some more issues with its UI design but I am planning to
> > write another mail of it and propose improvements.
>
> The advanced page is for the IDE development or to compile the LCL with
> some special flags.
> The quick page is for those using svn or cross compilation.
Thanks for explaining.
I understand now that all the functionality there is needed.
But still, the UI design is not intuitive. I know this problem from my own UI
designs. I had a great idea but still it needs some "dummy" user to click and
find the problems.
Now the problems in Build Lazarus form :
1. Synchronized GUI controls. When synchronizing GUI controls they should not
be placed on different tabs. The "Advanced" tab should contain some seldom
used controls and they should not be changed automatically when clicking
controls in "Quick" tab because it is not intuitive. There must be some visual
feedback when the controls are synchronized. In practice they should be placed
on the same form (or tab).
2. Redundant controls. I maybe could build IDE for qt and LCL for wince in two
separate build runs but not during one build.
Those 2 comboboxes on Quick tab are synchronized to a single control on
Advanced tab. They are exclusive to each other and thus misleading and
useless.
3. For IDE developers only. I have basically just compiled Lazarus from SVN
but still I am using the Advanced tab most of the time. I even get
instructions like: "go to Advanced tab and deselect Examples".
It is used by most Lazarus users, I dare to say. Hands up who haven't used it?
Even a programmer's innate curiosity forces him to look at it and study its
logic. Detailed settings also work as visual explanation of what the quick
options do. I select Build All. What "All"? Then I see the detailed list and
realize: ok, that "All".
If you really want to create config options only for IDE developers then you
should hide them in a separate dialog and show it with a certain command line
switch. Then you must make sure that the remaining options are enough for
everyone else.
To make my point clear I created a mockup, or actually changed the Lazarus
project's form. Screenshots are here:
http://koti.phnet.fi/juhamann/Lazarus/BuildLazarusQuick.jpg
and
http://koti.phnet.fi/juhamann/Lazarus/BuildLazarusAdvanced.jpg
Notice how Advanced tab has only seldom used controls and they are not set
automatically in any situation.
There is one more issue which I didn't change (yet). The quick build selection
uses radiobutton which is not the best control here. A set of buttons would be
better, or bitbuttons with some pics.
Those are not really radio-selections but shortcuts to other selections.
They can be partly changed and overridden.
I can make another mockup of the form with buttons if this idea gets any
support.
I could even try to change the Lazarus code. This change is about GUI, not
program logic, so maybe I wouldn't mess up things badly.
Regards,
Juha Manninen
More information about the Lazarus
mailing list