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 -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
