diff options
author | Andrew Gvozdev | 2012-05-23 11:16:17 +0000 |
---|---|---|
committer | Andrew Gvozdev | 2012-05-24 12:31:16 +0000 |
commit | f2bb8b1f6fb4c6e2c61997cc8279e683cfb47321 (patch) | |
tree | 586d184c88995e9540740612a14f34d1a1de6bb2 /build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui | |
parent | d1e2d46fad69791059303e3338e8f013afb8a3b9 (diff) | |
download | org.eclipse.cdt-f2bb8b1f6fb4c6e2c61997cc8279e683cfb47321.tar.gz org.eclipse.cdt-f2bb8b1f6fb4c6e2c61997cc8279e683cfb47321.tar.xz org.eclipse.cdt-f2bb8b1f6fb4c6e2c61997cc8279e683cfb47321.zip |
bug 379480: changing "command to get compiler specs" does not take
effect
Diffstat (limited to 'build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui')
-rw-r--r-- | build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/language/settings/providers/BuiltinSpecsDetectorOptionPage.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/language/settings/providers/BuiltinSpecsDetectorOptionPage.java b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/language/settings/providers/BuiltinSpecsDetectorOptionPage.java index 9888493ed5e..bb8d0062a53 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/language/settings/providers/BuiltinSpecsDetectorOptionPage.java +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/language/settings/providers/BuiltinSpecsDetectorOptionPage.java @@ -10,11 +10,14 @@ *******************************************************************************/ package org.eclipse.cdt.managedbuilder.internal.ui.language.settings.providers; +import org.eclipse.cdt.core.language.settings.providers.ILanguageSettingsProvider; import org.eclipse.cdt.managedbuilder.internal.ui.Messages; import org.eclipse.cdt.managedbuilder.language.settings.providers.AbstractBuiltinSpecsDetector; import org.eclipse.cdt.ui.language.settings.providers.AbstractLanguageSettingProviderOptionPage; import org.eclipse.cdt.utils.ui.controls.ControlFactory; +import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; +import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.Path; import org.eclipse.jface.dialogs.Dialog; import org.eclipse.swt.SWT; @@ -32,6 +35,8 @@ import org.eclipse.swt.widgets.Text; /** * Options page for {@link AbstractBuiltinSpecsDetector}. + * + * @noinstantiate This class is not intended to be instantiated by clients. */ public final class BuiltinSpecsDetectorOptionPage extends AbstractLanguageSettingProviderOptionPage { private boolean fEditable; @@ -152,4 +157,18 @@ public final class BuiltinSpecsDetectorOptionPage extends AbstractLanguageSettin }); } + @Override + public void performApply(IProgressMonitor monitor) throws CoreException { + ILanguageSettingsProvider provider = providerTab.getProvider(providerId); + if ((provider instanceof AbstractBuiltinSpecsDetector)) { // basically check for working copy + ILanguageSettingsProvider initialProvider = providerTab.getInitialProvider(providerId); + if (!(initialProvider instanceof AbstractBuiltinSpecsDetector) || !((AbstractBuiltinSpecsDetector) initialProvider).getCommand().equals(((AbstractBuiltinSpecsDetector) provider).getCommand())) { + // clear and reset isExecuted flag + ((AbstractBuiltinSpecsDetector) provider).clear(); + } + } + + super.performApply(monitor); + } + } |