compiler options

Discussion about CodeLite development process and patches
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

compiler options

Post by jfouche »

Hi

I'm working on the compiler option as switches / checkboxes to make project settings easier for the user.
The user will be able to check options (-Wall, ...) directly, without knowing all compiler / linker options.
I would like to know what do you prefer ?
Actually, I created to more pages in the build settings : CompilerOptions and LinkerOptions.
We can add all compiler switches in thoses pages (switch and comments). Example : -Wall : Enable warning
In Project settings, we list all options found in the current compiler settings.
Moreover, I think I'm going to use the wxPropertyGrid control (which is part of wxWidgets trunk) for the project settings.
Is that OK for you ?
Jérémie
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: compiler options

Post by eranif »

jfouche wrote:I'm working on the compiler option as switches / checkboxes to make project settings easier for the user.
This is great :D
jfouche wrote:Actually, I created to more pages in the build settings : CompilerOptions and LinkerOptions.
We can add all compiler switches in thoses pages (switch and comments). Example : -Wall : Enable warning
In Project settings, we list all options found in the current compiler settings.
Moreover, I think I'm going to use the wxPropertyGrid control (which is part of wxWidgets trunk) for the project settings.
You need to put in mind that this should be per compiler ofc.

I suggest something like:
- New page per compiler 'Compiler options' / Linker Options (like you suggested)
- In project settings, the button on the left to the 'Compiler Options' text should now open a dialog with list AND the output (see attachment)
same for linker options
Also:
When ticking entry in the check list box, the text control to the right should be updated.

Same goes for linker.
jfouche wrote:Moreover, I think I'm going to use the wxPropertyGrid control (which is part of wxWidgets trunk) for the project settings.
Since codelite is built against WX2.8.7 on Windows and 2.8.4 on Linux, and this is not going to be changed anytime soon, I prefer to use the simple wxCheclListBox (as I used in the attachment)

Eran
You do not have the required permissions to view the files attached to this post.
Make sure you have read the HOW TO POST thread
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: compiler options

Post by jfouche »

Hi Eran

Thanks for your point of view.
Of courses, I modified the Compiler class to add compiler / linker options.
I don't use wxWidgets trunk, but 2.8.9. I just use the 1.4.3 wxPropertyGrid.
Never mind, I will use wxCheckListBox as you suggested (maybe it will be a future implementation in a few month).
Jérémie
sdolim
CodeLite Veteran
Posts: 69
Joined: Fri Oct 24, 2008 10:29 pm
Contact:

Re: compiler options

Post by sdolim »

Eran,

Is there any possibility we could add the latest release of wxPropertyGrid's source code to the sdk directory like wxScintilla and wxsqlite3? I would also like to use it for an addition to the SymbolView plugin.

Scott
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: compiler options

Post by eranif »

The only reason I hate doing such things is the maintenance: editing the makefiles for Linux -> if you would willing to do it --> by all means go a head and add it

Eran
Make sure you have read the HOW TO POST thread
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: compiler options

Post by jfouche »

Here is a patch

It is not completly finished because :
- I think i can refactor a little bit my code
- it miss help informations for each switch
- I didn't provide build_settings.xml.default

Have a look, enjoy, and give me your feed back ;)
You do not have the required permissions to view the files attached to this post.
Jérémie
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: compiler options

Post by eranif »

Some UI comments:

- The dialogs should retain their size & position (Just need to add single line the ctor & dtor (search the code for WindowAttrManager usage))
- There is no title in the 'options' dialog
- Some tooltips/static text will be nice
- All 'OK' buttons should have 'Default' checked in wxFormBuilder (this allows dismissing the dialog with 'enter' hit)
- Keep the 5 pixels border around the buttons and make them middle aligned (I might have missed 1 or 2 dialogs in codelite, but I think that most of the codelite dialogs places the button in the middle)

OR

I can wait for the complete patch and fix the UI after wards :)

In general nicely done, looks like you got your way around codelite, which is nice ;)
Eran
Make sure you have read the HOW TO POST thread
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: compiler options

Post by jfouche »

Thank you for your reply, Eran
Let me finish the request according to your remarks. This patch was just a first shot to have your impression about my try. Let's continue.
Maybe tomorrow evening...
Jérémie
jfouche
CodeLite Guru
Posts: 351
Joined: Mon Oct 20, 2008 7:26 pm
Genuine User: Yes
IDE Question: C++
Location: France
Contact:

Re: compiler options

Post by jfouche »

eranif wrote: - All 'OK' buttons should have 'Default' checked in wxFormBuilder (this allows dismissing the dialog with 'enter' hit)
What buttons are you talking about ? I use wxStdDialogButtonDialog and I don't see this option.
Jérémie
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: compiler options

Post by eranif »

jfouche wrote:What buttons are you talking about ?
The 'OK' 'Cancel' buttons.

If you create the buttons using wxBoxSizer with 2 buttons, you can set the OK button to 'Default' ( which allows dismissing the dialog when hitting enter, currently hitting enter on that dialog simply moves to next control or does nothing )

try replacing the wxStdbuttonSizer with what I suggested.

Eran
Make sure you have read the HOW TO POST thread
Post Reply