Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWalter Harley2006-04-13 22:33:03 +0000
committerWalter Harley2006-04-13 22:33:03 +0000
commitba817bc66501a247c08115b9c5d0975672ee47ce (patch)
treec48b1bf38757413de32046add712daf303de698e /org.eclipse.jdt.apt.ui
parent931f9abc01ffde10b8deb0208d22a402929fa505 (diff)
downloadeclipse.jdt.core-ba817bc66501a247c08115b9c5d0975672ee47ce.tar.gz
eclipse.jdt.core-ba817bc66501a247c08115b9c5d0975672ee47ce.tar.xz
eclipse.jdt.core-ba817bc66501a247c08115b9c5d0975672ee47ce.zip
bug 136498: make it easier for users to enable APT via the UI. Remove workspace pref panes, fix help, automatically check "enable APT".
Diffstat (limited to 'org.eclipse.jdt.apt.ui')
-rw-r--r--org.eclipse.jdt.apt.ui/plugin.xml5
-rw-r--r--org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java17
-rw-r--r--org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java8
3 files changed, 28 insertions, 2 deletions
diff --git a/org.eclipse.jdt.apt.ui/plugin.xml b/org.eclipse.jdt.apt.ui/plugin.xml
index 6b18d3d783..91b47ee0e1 100644
--- a/org.eclipse.jdt.apt.ui/plugin.xml
+++ b/org.eclipse.jdt.apt.ui/plugin.xml
@@ -5,7 +5,8 @@
<!-- =================================================================================== -->
<!-- Extension: Preferences -->
<!-- =================================================================================== -->
- <extension
+ <!-- Disabled: see Bugzilla 136498
+ extension
point="org.eclipse.ui.preferencePages">
<page
category="org.eclipse.jdt.ui.preferences.CompliancePreferencePage"
@@ -17,7 +18,7 @@
class="org.eclipse.jdt.apt.ui.internal.preferences.FactoryPathPreferencePage"
id="org.eclipse.jdt.apt.ui.preferences.factoryPathPreferences"
name="%factoryPathName"/>
- </extension>
+ </extension -->
<extension
point="org.eclipse.ui.propertyPages">
<page
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
index 21d8b3f656..4cf7a2f658 100644
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
+++ b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/AptConfigurationBlock.java
@@ -87,6 +87,9 @@ public class AptConfigurationBlock extends BaseConfigurationBlock {
private String fOriginalGenSrcDir;
private boolean fOriginalAptEnabled;
+ // used to distinguish actual changes from re-setting of same value - see useProjectSpecificSettings()
+ private boolean fPerProjSettingsEnabled;
+
/**
* Event handler for Processor Options list control.
*/
@@ -307,6 +310,7 @@ public class AptConfigurationBlock extends BaseConfigurationBlock {
fOriginalProcOptions= AptConfig.getRawProcessorOptions(fJProj);
fOriginalGenSrcDir = AptConfig.getGenSrcDir(fJProj);
fOriginalAptEnabled = AptConfig.isEnabled(fJProj);
+ fPerProjSettingsEnabled = hasProjectSpecificOptionsNoCache(fProject);
}
protected void initContents() {
@@ -442,6 +446,18 @@ public class AptConfigurationBlock extends BaseConfigurationBlock {
}
/**
+ * Bugzilla 136498: when project-specific settings are enabled, force APT to be enabled.
+ */
+ @Override
+ public void useProjectSpecificSettings(boolean enable) {
+ super.useProjectSpecificSettings(enable);
+ if (enable ^ fPerProjSettingsEnabled) {
+ fAptEnabledField.setSelection(enable);
+ fPerProjSettingsEnabled = enable;
+ }
+ }
+
+ /**
* Save the contents of the options list.
*/
private void saveProcessorOptions(List<ProcessorOption> elements) {
@@ -469,6 +485,7 @@ public class AptConfigurationBlock extends BaseConfigurationBlock {
@Override
public void performDefaults() {
+ fPerProjSettingsEnabled = false;
if (fJProj != null) {
// If project-specific, load workspace settings
loadProcessorOptions(null);
diff --git a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
index 6cebaa5afb..f96b4c13d8 100644
--- a/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
+++ b/org.eclipse.jdt.apt.ui/src/org/eclipse/jdt/apt/ui/internal/preferences/BasePreferencePage.java
@@ -75,6 +75,14 @@ public abstract class BasePreferencePage extends PropertyAndPreferencePage {
return getConfigurationBlock().hasProjectSpecificOptionsNoCache(project);
}
+ /*
+ * See bug 136498: don't show workspace preferences.
+ */
+ @Override
+ protected boolean offerLink() {
+ return false;
+ }
+
/*
* @see org.eclipse.jface.preference.IPreferencePage#performApply()
*/

Back to the top