Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2009-12

Configure "Build Lazarus" was weird but no more...

5 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Phil Hess

I would tend to agree with Dimitry and lose the Hide/Show Details behavior. At the very least, Save Settings should be moved to the details sections - otherwise, what settings is it referring to when the details section is hidden - nothing is shown above that could be considered a setting. And is it "details" or "settings" - seems like they refer to the same thing, so maybe use the same term.

Dimitry also touches on something else to consider, which is the relationship between this dialog and the package build dialog. With most packages, if you look at the compiler options, it will show, for example, "default (win32/win64)". This is misleading if not outright wrong. The only thing that matters is what widgetset is selected on the configure build dialog. So if somebody compiles the LCL with a different widgetset and forgets to set it back to the correct default, the next time the IDE is built from the package dialog it will use the wrong widgetset.

Also, which "profile" will be used when the IDE is rebuilt from the package dialog?

The "Clean all" and "With packages" boxes have always confused me. Either I don't understand what they do (i.e., non intuitive labels) or else they don't work or don't behave as expected. Maybe you could just either eliminate these or present them with labels that are intuitive.

And maybe call it "Build Profiles" to be clear?

Thanks.

-Phil

----- "dmitry boyarintsev" wrote 62 lines
On Mon, Dec 14, 2009 at 11:51 PM, Juha Manninen wrote: > IMO this combobox is better than the original 2 tab-pages. This way you get > visual feedback of the changes. The original tab-control was just non- > intuitive. AFAIK, 2 tabs are actually 2 independent build options dialog. Settings on one tab won't effect another tab... Personally I never used "Quick build options" > What if someone wants to define and save new build options? > That was the idea of my configurable build profiles. On the current Adv.Build.Dlg there's a button bellow "Save settings". It just stores the build options globally, so it's possible to store configuration without building. Maybe 3 additional buttons can be added: "Save", "Save As" and "Delete", to manage custom settings. (i.e. next to the combobox) And "Save settings" are renamed to "Close". The button closes the dialog silently stores the latest build options as default. On the next dialog opening the last "closed" or "built" options are shown. IMHO: There's no need in saving/storing additional build options. Storing the last saved (or built) options is enough (It is now); > There is one problem with your solution though: It shows all the controls all > the time. The original idea with Quick Build Selections was to hide the > "advanced" options. My solution has a "Hide Details" button for that. And that's what i don't like about your idea. I see no reason in "Hide" or "Show" details at all. a) IDE developers would always use show details (to control components rebuilt). b) Even if they don't change them, they can always be sure about what will be rebuilt. c) The usual Lazarus user, would never use this dialog (i.e. installing a package rebuilds the IDE without showing the dialog) d) If a user ever needs the building dialog, he/she would be interested in the "details" anyway (simple human curiosity) e) It would be easier to explain a user how to use the build dialog, if the dialog is single-step, rather than 2 steps (the main form and the details) f) There's no other dialog in the IDE that uses "hide/show details" style. Every dialog in the IDE, even overloaded with controls, shows all possible options at once. Once again: I'm not the one to reject or accept your patch. I'm just sharing my thoughts and I'm NOT telling that "hide/show" is bad idea at all. thanks, dmitry -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply by email

Juha Manninen
to Phil Hess
Phil Hess wrote
I would tend to agree with Dimitry and lose the Hide/Show Details behavior.

It is meant to replace the quick options page! Clearly some people need it. At least they took the effort to discuss it on this mailing list 2,5 years ago and then Giuliano Colla implemented it.
This one button shouldn't disturb much if you don't need it.

Show quoted text 5 lines
At the very least, Save Settings should be moved to the details sections - otherwise, what settings is it referring to when the details section is hidden - nothing is shown above that could be considered a setting. And is it "details" or "settings" - seems like they refer to the same thing, so maybe use the same term.

Right, it was inconsistent. However the right choice is to change the button to "Save Profiles" because that's what it does.
If it's placed on the details section it would logically refer to only one profile's settings. Those are saved automatically (in memory structure) when switching profiles.
The button finally saves all profiles with their settings. Build button saves them, too.

Show quoted text 11 lines
Dimitry also touches on something else to consider, which is the relationship between this dialog and the package build dialog. With most packages, if you look at the compiler options, it will show, for example, "default (win32/win64)". This is misleading if not outright wrong. The only thing that matters is what widgetset is selected on the configure build dialog. So if somebody compiles the LCL with a different widgetset and forgets to set it back to the correct default, the next time the IDE is built from the package dialog it will use the wrong widgetset. Also, which "profile" will be used when the IDE is rebuilt from the package dialog?

It is the last one selected as "current" profile. This follows the same concept as with other build settings. The last saved state.

The "Clean all" and "With packages" boxes have always confused me. Either I don't understand what they do (i.e., non intuitive labels) or else they don't work or don't behave as expected. Maybe you could just either eliminate these or present them with labels that are intuitive.

I don't want to touch those boxes because I also don't understand fully their working. Mattias G?rtner explained that they are needed and I believed. See the beginning of this thread.

And maybe call it "Build Profiles" to be clear?

Done. Changed some other texts, too. Later I would like to replace widgetset radiogroup with combobox like Dimitry suggested.
I replaced the screenshots with new versions:

http://koti.phnet.fi/juhamann/Lazarus/BuildLazSimple.jpg http://koti.phnet.fi/juhamann/Lazarus/BuildLazDetails.jpg

Juha

Reply by email

Mattias Gaertner
to Phil Hess: I would tend to agree with Dimitry and lose the Hide/Show Details behavior. At the very…
[...] Dimitry also touches on something else to consider, which is the relationship between this dialog and the package build dialog. With most packages, if you look at the compiler options, it will show, for example, "default (win32/win64)". This is misleading if not outright wrong. The only thing that matters is what widgetset is selected on the configure build dialog. So if somebody compiles the LCL with a different widgetset and forgets to set it back to the correct default, the next time the IDE is built from the package dialog it will use the wrong widgetset.

At the moment the LCL is a special package, which is not rebuilt with the project. This will change when the conditionals a complete. I'm working on that.
So at the moment the only solution to build the LCL is at command line or via the build lazarus dialog.

But otherwise the project widgetset is applied. If you set the widgetset to gtk2 then code navigation will work in the gtk2 interface.

Also, which "profile" will be used when the IDE is rebuilt from the package dialog?

The "current" selected.

The "Clean all" and "With packages" boxes have always confused me. Either I don't understand what they do (i.e., non intuitive labels) or else they don't work or don't behave as expected. Maybe you could just either eliminate these or present them with labels that are intuitive.

I already explained them two weeks ago:
"Clean all" is needed when some files were renamed. It cleans more than the normal files.
"With packages" - create an IDE with/without your installed packages.

And maybe call it "Build Profiles" to be clear?

Note:
In the dialog you can use such abbreviations. But in the wiki and in code they should be written in the long version to avoid confusion with build modes/variables/conditionals. Maybe 'Build Lazarus profiles' or 'Build IDE profiles'.

Mattias

Reply by email

dmitry boyarintsev
to Mattias Gaertner
Mattias Gaertner wrote
> Also, which "profile" will be used when the IDE is rebuilt from the package dialog? The "current" selected.

Are you sure? I usually need to rebuild LCL only, so my current **advanced build** settings are set to "LCL" (buid+clean), while anything else is set "no changes"
If i add/remove a package and press "Save and Build IDE", the whole IDE is rebuilt (and eventually restarted), not only LCL.

or is there 2 different "current" settings, after all: ("current quick", and "current advanced")?
or is there a special "build" settings (IDE+packages) for package installation (it seems quite logical to me). Because package management has little common with IDE rebuilt.

thanks,
dmitry

Reply by email

Mattias Gaertner
to dmitry boyarintsev
Show quoted text 11 lines
On Tue, Dec 15, 2009 at 1:30 PM, Mattias Gaertner wrote: >> Also, which "profile" will be used when the IDE is rebuilt from the package dialog? > > The "current" selected. Are you sure? I usually need to rebuild LCL only, so my current **advanced build** settings are set to "LCL" (buid+clean), while anything else is set "no changes" If i add/remove a package and press "Save and Build IDE", the whole IDE is rebuilt (and eventually restarted), not only LCL.

The current profile is used to build the IDE.
Including the options, target OS, target CPU, widgetset. Excluding 'clean all', 'with packages' and parts.

or is there 2 different "current" settings, after all: ("current quick", and "current advanced")?

no

or is there a special "build" settings (IDE+packages) for package installation (it seems quite logical to me). Because package management has little common with IDE rebuilt.

Depends on pov.

Mattias

Reply by email