Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 334118 - Build Preferences need some tidying
Summary: Build Preferences need some tidying
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-build (show other bugs)
Version: 8.0   Edit
Hardware: PC Linux-GTK
: P3 normal (vote)
Target Milestone: 8.0   Edit
Assignee: James Blackburn CLA
QA Contact: Andrew Gvozdev CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-12 10:15 EST by James Blackburn CLA
Modified: 2011-02-13 09:13 EST (History)
1 user (show)

See Also:
angvoz.dev: review+


Attachments
patch 1 (21.61 KB, patch)
2011-01-14 05:24 EST, James Blackburn CLA
jamesblackburn+eclipse: iplog-
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description James Blackburn CLA 2011-01-12 10:15:25 EST
In the Eclipse Preferences, there are some build preferences:
 - Build scope
 - Building project configurations
That are at the root of the C/C++ node in the preferences tree

At C/C++ > Build there's (for me) a single property tab devoted to Error Parsers.  There's another error parser tab available under C/C++ > New CDT Project Wizard > Makefile Project.

I propose to move the settings at C/C++ level to C/C++ > Build.

And the current C/C++ > Build, to C/C++ > Build > Error Parsers.
Comment 1 Andrew Gvozdev CLA 2011-01-12 11:39:39 EST
As far as Error Parser tab being lonely I was planning to add Scanner Discovery tab and Binary Parsers tab. But I don't mind if we structure it differently or move to a subpage. On project Properties we got "Settings" tab for those. BTW what's up with "Settings" wording, aren't all the other properties are "settings"?

Comparing Preferences and Properties, the structure of Preferences look different from project Properties IMHO for little reason. That is confusing for users and inconvenience for the experts. Do you think we should develop a unified structure for all C/C++ preferences/properties which suits both and use that?

Another thought is that in properties there are 2 tabs under "C/C++ Build" and more tabs under "Settings". It is not clear to me why some tabs should fall into one page and some into the other.
Comment 2 Andrew Gvozdev CLA 2011-01-12 11:50:46 EST
(In reply to comment #0)
> At C/C++ > Build there's (for me) a single property tab devoted to Error
> Parsers.  There's another error parser tab available under C/C++ > New CDT
> Project Wizard > Makefile Project.
There is a subtle difference in those. The first list is used for "default" parsers, i.e. when a toolchain does not define error parsers to be used. The second list is for the default toolchain used to create unmanaged Makefile project. Those lists are persisted differently as far as I remember. My thinking goes that perhaps the difference is not justified and one of the lists should be eliminated.

> I propose to move the settings at C/C++ level to C/C++ > Build.
> And the current C/C++ > Build, to C/C++ > Build > Error Parsers.
Comment 3 James Blackburn CLA 2011-01-14 05:24:22 EST
Created attachment 186812 [details]
patch 1

Refactoring patch.

I guess there's more we can do here. At the outset this patch is a simple re-factoring:
 - Build settings now live at C/C++ > Build
 - Build settings moved out of CPluginPreferencePage  => BuildPreferencePage
 - new Build category defined in cdt.ui: org.eclipse.cdt.ui.preferences.BuildSettings (moved from make.ui: org.eclipse.cdt.make.ui.preferences.BuildSettings)
 - Original make.ui tab (with the error parsers renamed 'Settings' <= probably can do better here...

I need to do this so I can make progress on the preferences for bug 333992.
Comment 4 James Blackburn CLA 2011-01-14 05:29:03 EST
Committed to HEAD.
Andrew if you get a chance it would be good to cross-check that I haven't missed anything.
Comment 5 CDT Genie CLA 2011-01-14 06:23:03 EST
*** cdt cvs genie on behalf of jblackburn ***
Bug 334118 - Build Preferences need some tidying
Re-factor the build preferences out of CPluginPreferencePage to their own page BuildPreferencePage.  Build category defined by cdt.ui: org.eclipse.cdt.ui.preferences.BuildSettings

[*] plugin.properties 1.39 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.make.ui/plugin.properties?root=Tools_Project&r1=1.38&r2=1.39
[*] plugin.xml 1.87 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.make.ui/plugin.xml?root=Tools_Project&r1=1.86&r2=1.87

[*] plugin.xml 1.133 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.ui/plugin.xml?root=Tools_Project&r1=1.132&r2=1.133

[*] PreferencesMessages.java 1.50 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.java?root=Tools_Project&r1=1.49&r2=1.50
[*] PreferencesMessages.properties 1.101 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/PreferencesMessages.properties?root=Tools_Project&r1=1.100&r2=1.101
[*] CPluginPreferencePage.java 1.32 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CPluginPreferencePage.java?root=Tools_Project&r1=1.31&r2=1.32

[*] plugin.properties 1.209 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/plugin.properties?root=Tools_Project&r1=1.208&r2=1.209
[*] plugin.xml 1.394 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/plugin.xml?root=Tools_Project&r1=1.393&r2=1.394

[+] BuildPreferencePage.java  http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/build/BuildPreferencePage.java?root=Tools_Project&revision=1.1&view=markup

[*] MANIFEST.MF 1.60 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/META-INF/MANIFEST.MF?root=Tools_Project&r1=1.59&r2=1.60
Comment 6 Andrew Gvozdev CLA 2011-01-14 11:30:41 EST
Looks like an improvement to me. One trivial thing is that the new "Setting" page is now right under another "Setting" page from Makefile Editor but to have distinct names I'd rather renamed that second one.
Comment 7 CDT Genie CLA 2011-01-23 00:23:02 EST
*** cdt cvs genie on behalf of agvozdev ***
bug 334118: Fixed link to the moved preference page.

[*] RegexErrorParserOptionPage.java 1.8 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/RegexErrorParserOptionPage.java?root=Tools_Project&r1=1.7&r2=1.8
Comment 8 CDT Genie CLA 2011-02-10 09:12:32 EST
*** cdt cvs genie on behalf of agvozdev ***
bug 334118: missed typo

[*] plugin.xml 1.395 http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cdt/all/org.eclipse.cdt.ui/plugin.xml?root=Tools_Project&r1=1.394&r2=1.395
Comment 9 James Blackburn CLA 2011-02-13 09:13:04 EST
Fixed in HEAD.