diff options
| author | Noopur Gupta | 2019-02-06 13:03:07 +0000 |
|---|---|---|
| committer | Noopur Gupta | 2019-02-06 13:03:07 +0000 |
| commit | 771245306eb6cc179f9449d3295b8104dd973fc4 (patch) | |
| tree | ade84df69180282c3e5a17acd3f57010f80059b2 | |
| parent | 6005a8a272056fefb8966cb57b70aae73aacb593 (diff) | |
| download | eclipse.jdt.ui-771245306eb6cc179f9449d3295b8104dd973fc4.tar.gz eclipse.jdt.ui-771245306eb6cc179f9449d3295b8104dd973fc4.tar.xz eclipse.jdt.ui-771245306eb6cc179f9449d3295b8104dd973fc4.zip | |
Bug 543669: [12][quick fix] Add quick fix to configure problem severityY20190206-2200
of preview features
Change-Id: I2f6861048e6841d3ebdb3feb35b6327724dc28be
4 files changed, 44 insertions, 5 deletions
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ConfigureProblemSeveritySubProcessor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ConfigureProblemSeveritySubProcessor.java index 7203e7ce54..f8ddf75418 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ConfigureProblemSeveritySubProcessor.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ConfigureProblemSeveritySubProcessor.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2018 IBM Corporation and others. + * Copyright (c) 2016, 2019 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 @@ -7,6 +7,10 @@ * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 + * + * This is an implementation of an early-draft specification developed under the Java + * Community Process (JCP) and is made available for testing and evaluation purposes + * only. The code is not compatible with any specification of the JCP. * * Contributors: * IBM Corporation - initial API and implementation @@ -59,10 +63,19 @@ public class ConfigureProblemSeveritySubProcessor { ChangeCorrectionProposal proposal= new ChangeCorrectionProposal(CorrectionMessages.ConfigureProblemSeveritySubProcessor_name, null, IProposalRelevance.CONFIGURE_PROBLEM_SEVERITY, JavaPluginImages.get(JavaPluginImages.IMG_CONFIGURE_PROBLEM_SEVERITIES)) { + @Override public void apply(IDocument document) { + PreferencePage preferencePage; + if ((problemId & IProblem.Javadoc) != 0) { + preferencePage= PreferencePage.JAVADOC; + } else if ((problemId & IProblem.Compliance) != 0) { + preferencePage= PreferencePage.COMPILER; + } else { + preferencePage= PreferencePage.ERRORS_WARNINGS; + } ConfigureProblemSeverityAction problemSeverityAction= new ConfigureProblemSeverityAction(context.getCompilationUnit().getJavaProject(), optionId, JavaCore.PLUGIN_ID, - (problemId & IProblem.Javadoc) != 0 ? PreferencePage.JAVADOC : PreferencePage.ERRORS_WARNINGS, + preferencePage, null); problemSeverityAction.run(); } @@ -78,7 +91,11 @@ public class ConfigureProblemSeveritySubProcessor { break; } } - return Messages.format(CorrectionMessages.ConfigureProblemSeveritySubProcessor_info, new String[] { problemMsg }); + String msg= CorrectionMessages.ConfigureProblemSeveritySubProcessor_info; + if ((problemId & IProblem.Compliance) != 0) { + msg= CorrectionMessages.ConfigureProblemSeveritySubProcessor_compiler_info; + } + return Messages.format(msg, new String[] { problemMsg }); } }; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.java index 266aadcbd8..cb913d7b08 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.java @@ -275,6 +275,7 @@ public final class CorrectionMessages extends NLS { public static String NewCUCompletionUsingWizardProposal_createnewinterface_inpackage_description; public static String NewCUCompletionUsingWizardProposal_createnewannotation_inpackage_description; public static String NewCUCompletionUsingWizardProposal_createnewenum_inpackage_description; + public static String ConfigureProblemSeveritySubProcessor_compiler_info; public static String ConfigureProblemSeveritySubProcessor_info; public static String ConfigureProblemSeveritySubProcessor_name; public static String ConstructorFromSuperclassProposal_description; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.properties b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.properties index ce176354fe..bb74150d3e 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.properties +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/CorrectionMessages.properties @@ -323,6 +323,7 @@ UnimplementedCodeFix_DependenciesStatusMessage=Can not implement the missing met UnimplementedCodeFix_MakeAbstractFix_label=Make classes abstract UnimplementedCodeFix_TextEditGroup_label=Add abstract modifier +ConfigureProblemSeveritySubProcessor_compiler_info=Open the Java > Compiler preference page and highlight the problem to configure its severity.<p></p><p>Problem: {0}</p> ConfigureProblemSeveritySubProcessor_info=Open the Java > Compiler > Errors/Warnings preference page and highlight the problem to configure its severity.<p></p><p>Problem: {0}</p> ConfigureProblemSeveritySubProcessor_name=Configure problem severity diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/ConfigureProblemSeverityAction.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/ConfigureProblemSeverityAction.java index 6539aaeddf..34a8cf03a1 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/ConfigureProblemSeverityAction.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/ConfigureProblemSeverityAction.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016, 2018 IBM Corporation and others. + * Copyright (c) 2016, 2019 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 @@ -7,6 +7,10 @@ * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 + * + * This is an implementation of an early-draft specification developed under the Java + * Community Process (JCP) and is made available for testing and evaluation purposes + * only. The code is not compatible with any specification of the JCP. * * Contributors: * IBM Corporation - initial API and implementation @@ -29,12 +33,15 @@ import org.eclipse.ui.PlatformUI; import org.eclipse.ui.dialogs.PreferencesUtil; import org.eclipse.jdt.core.IJavaProject; + import org.eclipse.jdt.internal.corext.util.Messages; import org.eclipse.jdt.ui.JavaElementLabels; import org.eclipse.jdt.internal.ui.JavaPluginImages; import org.eclipse.jdt.internal.ui.dialogs.OptionalMessageDialog; +import org.eclipse.jdt.internal.ui.preferences.ComplianceConfigurationBlock; +import org.eclipse.jdt.internal.ui.preferences.CompliancePreferencePage; import org.eclipse.jdt.internal.ui.preferences.JavaBuildConfigurationBlock; import org.eclipse.jdt.internal.ui.preferences.JavaBuildPreferencePage; import org.eclipse.jdt.internal.ui.preferences.JavadocProblemsConfigurationBlock; @@ -51,7 +58,7 @@ import org.eclipse.jdt.internal.ui.preferences.ProblemSeveritiesPreferencePage; */ public class ConfigureProblemSeverityAction extends Action { public enum PreferencePage { - BUILDING, ERRORS_WARNINGS, JAVADOC + BUILDING, ERRORS_WARNINGS, JAVADOC, COMPILER } private static final String CONFIGURE_PROBLEM_SEVERITY_DIALOG_ID= "configure_problem_severity_dialog_id"; //$NON-NLS-1$ @@ -144,6 +151,16 @@ public class ConfigureProblemSeverityAction extends Action { data.put(JavaBuildPreferencePage.DATA_SELECT_OPTION_KEY, fOptionId); data.put(JavaBuildPreferencePage.DATA_SELECT_OPTION_QUALIFIER, fOptionQualifier); break; + case COMPILER: + if (showPropertyPage) { + pageId= CompliancePreferencePage.PROP_ID; + data.put(CompliancePreferencePage.USE_PROJECT_SPECIFIC_OPTIONS, Boolean.TRUE); + } else { + pageId= CompliancePreferencePage.PREF_ID; + } + data.put(CompliancePreferencePage.DATA_SELECT_OPTION_KEY, fOptionId); + data.put(CompliancePreferencePage.DATA_SELECT_OPTION_QUALIFIER, fOptionQualifier); + break; default: return; // cannot happen } @@ -162,6 +179,9 @@ public class ConfigureProblemSeverityAction extends Action { private boolean hasProjectSpecificOptions() { Key[] keys; switch(fPreferencePage) { + case COMPILER: + keys= ComplianceConfigurationBlock.getKeys(fProject != null); + break; case BUILDING: keys= JavaBuildConfigurationBlock.getKeys(); break; |
