Code clean up of clean up action
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/buildpath/ClasspathModifierOperation.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/buildpath/ClasspathModifierOperation.java
index 04f1989..ceb7bd5 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/buildpath/ClasspathModifierOperation.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/buildpath/ClasspathModifierOperation.java
@@ -130,4 +130,8 @@
     public List getSelectedElements() {
         return fInformationProvider.getSelection().toList();
     }
+    
+    public int getTypeId() {
+    	return fType;
+    }
 }
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CleanUpRefactoring.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CleanUpRefactoring.java
index a1f03e8..9c522c6 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CleanUpRefactoring.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CleanUpRefactoring.java
@@ -30,20 +30,21 @@
 
 import org.eclipse.ltk.core.refactoring.Change;
 import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringTickProvider;
+import org.eclipse.ltk.core.refactoring.NullChange;
 import org.eclipse.ltk.core.refactoring.Refactoring;
 import org.eclipse.ltk.core.refactoring.RefactoringStatus;
+import org.eclipse.ltk.core.refactoring.RefactoringTickProvider;
 import org.eclipse.ltk.core.refactoring.TextChange;
 import org.eclipse.ltk.core.refactoring.TextEditBasedChangeGroup;
 
 import org.eclipse.jdt.core.ICompilationUnit;
 import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jdt.core.dom.ASTParser;
 import org.eclipse.jdt.core.dom.ASTRequestor;
 import org.eclipse.jdt.core.dom.CompilationUnit;
 
 import org.eclipse.jdt.internal.corext.refactoring.changes.TextChangeCompatibility;
+import org.eclipse.jdt.internal.corext.refactoring.util.RefactoringASTParser;
 import org.eclipse.jdt.internal.corext.util.Messages;
 
 import org.eclipse.jdt.internal.ui.fix.IMultiFix;
@@ -51,8 +52,7 @@
 
 public class CleanUpRefactoring extends Refactoring {
 
-	private static final String CLEAN_UP_REFACTORING_NAME= FixMessages.CleanUpRefactoring_Refactoring_name;
-	private static final String PROCESSING_COMPILATION_UNIT_MESSAGE= FixMessages.CleanUpRefactoring_ProcessingCompilationUnit_message;
+	private static final int BATCH_SIZE= 40;
 
 	private class FixCalculationException extends RuntimeException {
 
@@ -108,7 +108,7 @@
 	 * @see org.eclipse.ltk.core.refactoring.Refactoring#getName()
 	 */
 	public String getName() {
-		return CLEAN_UP_REFACTORING_NAME;
+		return FixMessages.CleanUpRefactoring_Refactoring_name;
 	}
 
 	/* (non-Javadoc)
@@ -147,7 +147,7 @@
 			pm.beginTask("", 1); //$NON-NLS-1$
 			pm.worked(1);
 			pm.done();
-			return null;
+			return new NullChange();
 		}
 		
 		pm.beginTask("", fCompilationUnits.size()); //$NON-NLS-1$
@@ -156,7 +156,6 @@
 		
 		final List resultingFixes= new ArrayList();
 		
-		int length= 40;
 		int start= 0;
 		int end;
 
@@ -166,7 +165,7 @@
 		do {
 			end= start + 1;
 			while (
-					end - start < length && 
+					end - start < BATCH_SIZE && 
 					end < fCompilationUnits.size() &&
 					compilationUnitsIterator.hasNext() && 
 					beforeEndCU.getJavaProject().equals((endCU= (ICompilationUnit)compilationUnitsIterator.next()).getJavaProject())) {
@@ -204,21 +203,19 @@
 	 */
 	private Map getMultiFixOptions() {
 		Map fixOptions= new Hashtable();
-		
 		for (Iterator iter= fMultiFixes.iterator(); iter.hasNext();) {
 			IMultiFix fix= (IMultiFix)iter.next();
 			Map curFixOptions= fix.getRequiredOptions();
 			if (curFixOptions != null)
 				fixOptions.putAll(curFixOptions);
 		}
-		fixOptions.put(JavaCore.COMPILER_PB_MAX_PER_UNIT, "350"); //$NON-NLS-1$
 		return fixOptions;
 	}
 
 	private void parse(final List solutions, final int start, final ICompilationUnit[] compilationUnits, final SubProgressMonitor sub, ASTParser parser) throws CoreException {
 		final int[] index= new int[] {start};
 		final Integer size= new Integer(fCompilationUnits.size());
-		sub.subTask(Messages.format(PROCESSING_COMPILATION_UNIT_MESSAGE, new Object[] {getTypeName(compilationUnits[index[0]- start]), new Integer(index[0] + 1), size}));
+		sub.subTask(Messages.format(FixMessages.CleanUpRefactoring_ProcessingCompilationUnit_message, new Object[] {getTypeName(compilationUnits[index[0]- start]), new Integer(index[0] + 1), size}));
 		
 		try {
 			parser.createASTs(compilationUnits, new String[0], new ASTRequestor() {
@@ -228,7 +225,7 @@
 					calculateSolution(solutions, ast);
 					index[0]++;
 					if (index[0] - start < compilationUnits.length) {
-						sub.subTask(Messages.format(PROCESSING_COMPILATION_UNIT_MESSAGE, new Object[] {getTypeName(compilationUnits[index[0] - start]), new Integer(index[0] + 1), size}));
+						sub.subTask(Messages.format(FixMessages.CleanUpRefactoring_ProcessingCompilationUnit_message, new Object[] {getTypeName(compilationUnits[index[0] - start]), new Integer(index[0] + 1), size}));
 					}
 				}
 				
@@ -242,8 +239,8 @@
 		ASTParser parser= ASTParser.newParser(ASTProvider.AST_LEVEL);
 		parser.setResolveBindings(true);
 		parser.setProject(javaProject);
-		
-		Map options= javaProject.getOptions(true);
+				
+		Map options= RefactoringASTParser.getCompilerOptions(javaProject);
 		options.putAll(fixOptions);
 		parser.setCompilerOptions(options);
 		return parser;
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CodeStyleFix.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CodeStyleFix.java
index 974ede0..aa684aa 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CodeStyleFix.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/CodeStyleFix.java
@@ -55,10 +55,6 @@
  */
 public class CodeStyleFix extends AbstractFix {
 	
-	private static final String CHANGE_ACCESS_TO_STATIC_USING_0_DECLARING_TYPE= FixMessages.CodeStyleFix_ChangeAccessToStatic_description;
-	public static final String ADD_THIS_QUALIFIER= FixMessages.CodeStyleFix_AddThisQualifier_description;
-	public static final String QUALIFY_0_WITH_THIS= FixMessages.CodeStyleFix_QualifyWithThis_description;
-	
 	private final TupleForUnqualifiedAccess[] fBindingTuples;
 	private final TupleForNonStaticAccess[] fTupleDirects;
 
@@ -121,7 +117,7 @@
 			if (tupleDirect != null) {
 
 				ICompilationUnit cu= (ICompilationUnit)compilationUnit.getJavaElement();
-				String label= Messages.format(CHANGE_ACCESS_TO_STATIC_USING_0_DECLARING_TYPE, tupleDirect.getDeclaringTypeBinding().getName());
+				String label= Messages.format(FixMessages.CodeStyleFix_ChangeAccessToStatic_description, tupleDirect.getDeclaringTypeBinding().getName());
 				return new CodeStyleFix(label, cu, null, new TupleForNonStaticAccess[] {tupleDirect});
 			}
 		}
@@ -132,7 +128,7 @@
 				return null;
 			
 			ICompilationUnit cu= (ICompilationUnit)compilationUnit.getJavaElement();
-			String groupName= MessageFormat.format(QUALIFY_0_WITH_THIS, new Object[] {tuple.getName().getFullyQualifiedName()});
+			String groupName= MessageFormat.format(FixMessages.CodeStyleFix_QualifyWithThis_description, new Object[] {tuple.getName().getFullyQualifiedName()});
 			return new CodeStyleFix(groupName, cu, new TupleForUnqualifiedAccess[] {tuple}, null);
 		}
 		
@@ -274,7 +270,7 @@
 	
 	private void rewriteASTForNonStaticAccess(ImportRewrite imports, AST ast, ITypeBinding declaringTypeBinding, Expression qualifier, ASTRewrite rewrite, List groups) {
 		String typeName= imports.addImport(declaringTypeBinding);
-		TextEditGroup group= new TextEditGroup(Messages.format(CHANGE_ACCESS_TO_STATIC_USING_0_DECLARING_TYPE, declaringTypeBinding.getName()));
+		TextEditGroup group= new TextEditGroup(Messages.format(FixMessages.CodeStyleFix_ChangeAccessToStatic_description, declaringTypeBinding.getName()));
 		groups.add(group);
 		rewrite.replace(qualifier, ASTNodeFactory.newName(ast, typeName), group);
 	}
@@ -299,7 +295,7 @@
 		}
 
 		String replacement= qualifier + '.' + name.getIdentifier();
-		String groupName= MessageFormat.format(QUALIFY_0_WITH_THIS, new Object[] {name.getFullyQualifiedName()});
+		String groupName= MessageFormat.format(FixMessages.CodeStyleFix_QualifyWithThis_description, new Object[] {name.getFullyQualifiedName()});
 		TextEditGroup group= new TextEditGroup(groupName);
 		editGroups.add(group);
 		rewrite.replace(name, rewrite.createStringPlaceholder(replacement, ASTNode.SIMPLE_NAME), group);
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/Java50Fix.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/Java50Fix.java
index f946920..25cc501 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/Java50Fix.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/Java50Fix.java
@@ -51,11 +51,6 @@
  */
 public class Java50Fix extends AbstractFix {
 	
-	private static final String ADD_MISSING_0_ANNOTATION= FixMessages.Java50Fix_AddMissingAnnotation_description;
-	private static final String ADD_MISSING_ANNOTATIONS= FixMessages.Java50Fix_AddMissingAnnotations_description;
-	private static final String ADD_MISSING_DEPRECATED_ANNOTATION= FixMessages.Java50Fix_AddDeprecated_description;
-	private static final String ADD_MISSING_OVERRIDE_ANNOTATION= FixMessages.Java50Fix_AddOverride_description;
-	
 	private final AnnotationTuple[] fAnnotationTuples;
 
 	public static class AnnotationTuple {
@@ -111,16 +106,16 @@
 		String name= ""; //$NON-NLS-1$
 		if (addOverrideAnnotation && isMissingOverride(problem)) {
 			annotations.add("Override"); //$NON-NLS-1$
-			name= ADD_MISSING_OVERRIDE_ANNOTATION;
+			name= FixMessages.Java50Fix_AddOverride_description;
 		}
 		
 		if (addDepricatedAnnotation && isMissingDeprecated(problem)) {
 			annotations.add("Deprecated"); //$NON-NLS-1$
-			name= ADD_MISSING_DEPRECATED_ANNOTATION;
+			name= FixMessages.Java50Fix_AddDeprecated_description;
 		}
 		
 		if (annotations.size() == 2) {
-			name= ADD_MISSING_ANNOTATIONS;
+			name= FixMessages.Java50Fix_AddMissingAnnotations_description;
 		}
 		return name;
 	}
@@ -167,7 +162,7 @@
 			
 			TextEdit edit= applyEdits(getCompilationUnit(), rewrite, null);
 			
-			CompilationUnitChange result= new CompilationUnitChange(ADD_MISSING_ANNOTATIONS, getCompilationUnit());
+			CompilationUnitChange result= new CompilationUnitChange(FixMessages.Java50Fix_AddMissingAnnotations_description, getCompilationUnit());
 			result.setEdit(edit);
 			
 			for (Iterator iter= groups.iterator(); iter.hasNext();) {
@@ -187,7 +182,7 @@
 		for (int i= 0; i < annotationNames.length; i++) {
 			Annotation newAnnotation= ast.newMarkerAnnotation();
 			newAnnotation.setTypeName(ast.newSimpleName(annotationNames[i]));
-			TextEditGroup group= new TextEditGroup(MessageFormat.format(ADD_MISSING_0_ANNOTATION, new Object[] {annotationNames[i]}));
+			TextEditGroup group= new TextEditGroup(MessageFormat.format(FixMessages.Java50Fix_AddMissingAnnotation_description, new Object[] {annotationNames[i]}));
 			textEditGroups.add(group);
 			listRewrite.insertFirst(newAnnotation, group);	
 		}
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/StringFix.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/StringFix.java
index ec02c4a..806f50e 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/StringFix.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/StringFix.java
@@ -38,10 +38,6 @@
  */
 public class StringFix extends AbstractFix {
 	
-	private static final String ADD_REMOVE_$NON_NLS$_TAG= FixMessages.StringFix_AddRemoveNonNls_description;
-	private static final String ADD_$NON_NLS$_TAG= FixMessages.StringFix_AddNonNls_description;
-	private static final String REMOVE_$NON_NLS$_TAG= FixMessages.StringFix_RemoveNonNls_description;
-	
 	private final TextEdit fEdit;
 	private TextChange fChange;
 
@@ -64,12 +60,12 @@
 			MultiTextEdit root= new MultiTextEdit();
 			TextChangeCompatibility.insert(root, addEdit);
 			TextChangeCompatibility.insert(root, removeEdit);
-			StringFix stringFix= new StringFix(ADD_REMOVE_$NON_NLS$_TAG, root, cu);
+			StringFix stringFix= new StringFix(FixMessages.StringFix_AddRemoveNonNls_description, root, cu);
 			return stringFix;
 		} else if (addEdit != null) {
-			return new StringFix(ADD_$NON_NLS$_TAG, addEdit, cu);
+			return new StringFix(FixMessages.StringFix_AddNonNls_description, addEdit, cu);
 		} else {
-			return new StringFix(REMOVE_$NON_NLS$_TAG, removeEdit, cu);
+			return new StringFix(FixMessages.StringFix_RemoveNonNls_description, removeEdit, cu);
 		}
 	}
 	
diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/UnusedCodeFix.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/UnusedCodeFix.java
index b0ac272..0a85e91 100644
--- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/UnusedCodeFix.java
+++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/UnusedCodeFix.java
@@ -70,12 +70,6 @@
  */
 public class UnusedCodeFix extends AbstractFix {
 	
-	private static final String REMOVE_DECLARATION_AND_ASSIGNMENTS= FixMessages.UnusedCodeFix_RemoveFieldOrLocal_description;
-	private static final String REMOVE_METHOD= FixMessages.UnusedCodeFix_RemoveMethod_description;
-	private static final String REMOVE_CONSTRUCTOR= FixMessages.UnusedCodeFix_RemoveConstructor_description;
-	private static final String REMOVE_TYPE= FixMessages.UnusedCodeFix_RemoveType_description;
-	private static final String REMOVE_UNUSED_IMPORT= FixMessages.UnusedCodeFix_RemoveImport_description;
-
 	private static class SideEffectFinder extends ASTVisitor {
 
 		private ArrayList fSideEffectNodes;
@@ -143,7 +137,7 @@
 		) {
 			ImportDeclaration node= getImportDeclaration(problem, compilationUnit);
 			if (node != null) {
-				return new UnusedCodeFix(REMOVE_UNUSED_IMPORT, cu, new ImportDeclaration[] {node}, null, null);
+				return new UnusedCodeFix(FixMessages.UnusedCodeFix_RemoveImport_description, cu, new ImportDeclaration[] {node}, null, null);
 			}
 		}
 		if (
@@ -185,22 +179,22 @@
 		switch (binding.getKind()) {
 			case IBinding.TYPE:
 				fMultiFix= new UnusedCodeMultiFix(false, false, false, false, true, false);
-				return Messages.format(REMOVE_TYPE, name);
+				return Messages.format(FixMessages.UnusedCodeFix_RemoveType_description, name);
 			case IBinding.METHOD:
 				if (((IMethodBinding) binding).isConstructor()) {
 					fMultiFix= new UnusedCodeMultiFix(false, false, true, false, false, false);
-					return Messages.format(REMOVE_CONSTRUCTOR, name);
+					return Messages.format(FixMessages.UnusedCodeFix_RemoveConstructor_description, name);
 				} else {
 					fMultiFix= new UnusedCodeMultiFix(false, true, false, false, false, false);
-					return Messages.format(REMOVE_METHOD, name);
+					return Messages.format(FixMessages.UnusedCodeFix_RemoveMethod_description, name);
 				}
 			case IBinding.VARIABLE:
 				if (((IVariableBinding) binding).isField()) {
 					fMultiFix= new UnusedCodeMultiFix(false, false, false, true, false, false);
-					return Messages.format(REMOVE_DECLARATION_AND_ASSIGNMENTS, name);
+					return Messages.format(FixMessages.UnusedCodeFix_RemoveFieldOrLocal_description, name);
 				} else {
 					fMultiFix= new UnusedCodeMultiFix(false, false, false, false, false, true);
-					return Messages.format(REMOVE_DECLARATION_AND_ASSIGNMENTS, name);
+					return Messages.format(FixMessages.UnusedCodeFix_RemoveFieldOrLocal_description, name);
 				}
 			default:
 				return ""; //$NON-NLS-1$
@@ -233,7 +227,7 @@
 			rewrite= ASTRewrite.create(fImports[0].getAST());
 			for (int i= 0; i < fImports.length; i++) {
 				ImportDeclaration node= fImports[i];
-				TextEditGroup group= new TextEditGroup(REMOVE_UNUSED_IMPORT + " " + node.getName()); //$NON-NLS-1$
+				TextEditGroup group= new TextEditGroup(FixMessages.UnusedCodeFix_RemoveImport_description + " " + node.getName()); //$NON-NLS-1$
 				rewrite.remove(node, group);
 				groups.add(group);
 			}
diff --git a/org.eclipse.jdt.ui/plugin.properties b/org.eclipse.jdt.ui/plugin.properties
index e1d81c7..b471266 100644
--- a/org.eclipse.jdt.ui/plugin.properties
+++ b/org.eclipse.jdt.ui/plugin.properties
@@ -405,7 +405,7 @@
 
 OrganizeImportsAction.label= Or&ganize Imports
 
-CleanUpAction.label= Clean up
+CleanUpAction.label= Clean &up
 
 SurroundWithTryCatchAction.label= Surround with &try/catch Block
 
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/ActionMessages.properties b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/ActionMessages.properties
index 0e0ca58..d14736a 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/ActionMessages.properties
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/ActionMessages.properties
@@ -203,7 +203,7 @@
 OrganizeImportsAction_tooltip=Evaluate All Required Imports and Replace the Current Imports
 OrganizeImportsAction_description=Evaluate all required imports and replace the current imports
 
-CleanUpAction_label=Clean &Up
+CleanUpAction_label=Clean &up
 CleanUpAction_tooltip=Solve problems and improve code style on selected resources
 CleanUpAction_description=Solve problems and improve code style on selected resources
 
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java
index 552df34..f81d051 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java
@@ -46,18 +46,6 @@
 
 public class CleanUpRefactoringWizard extends RefactoringWizard {
 
-	private static final String SELECT_CLEAN_UPS_PAGE_MESSAGE= MultiFixMessages.CleanUpRefactoringWizard_SelectCleanUpsPage_message;
-	private static final String SELECT_COMPILATION_UNITS_PAGE_MESSAGE= MultiFixMessages.CleanUpRefactoringWizard_SelectCompilationUnitsPage_message;
-	private static final String SELECT_CLEAN_UPS_PAGE_NAME= MultiFixMessages.CleanUpRefactoringWizard_SelectCleanUpsPage_name;
-	private static final String SELECT_COMPILATION_UNITS_PAGE_NAME= MultiFixMessages.CleanUpRefactoringWizard_SelectCompilationUnitsPage_name;
-	private static final String CLEAN_UP_WIZARD_WINDOW_TITLE= MultiFixMessages.CleanUpRefactoringWizard_WindowTitle;
-	private static final String CLEAN_UP_WIZARD_PAGE_TITLE= MultiFixMessages.CleanUpRefactoringWizard_PageTitle;
-	
-	private static final String CODE_STYLE_SECTION_DESCRIPTION= MultiFixMessages.CleanUpRefactoringWizard_CodeStyleSection_description;
-	private static final String J2SE_5_0_SECTION_DESCRIPTION= MultiFixMessages.CleanUpRefactoringWizard_J2SE50Section_description;
-	private static final String UNUSED_CODE_SECTION_DESCRIPTION= MultiFixMessages.CleanUpRefactoringWizard_UnusedCodeSection_description;
-	private static final String STRING_EXTERNALIZATION_SECTION_DESCRIPTION= MultiFixMessages.CleanUpRefactoringWizard_StringExternalization_description;
-	
 	private final boolean fShowCUPage;
 	private final boolean fShowCleanUpPage;
 
@@ -213,16 +201,16 @@
 				fMultiFixes= new NameFixTuple[4];
 				if (section == null) {
 					section= settings.addNewSection(CLEAN_UP_WIZARD_SETTINGS_SECTION_ID);
-					fMultiFixes[0]= new NameFixTuple(CODE_STYLE_SECTION_DESCRIPTION, new CodeStyleMultiFix(false, true));
-					fMultiFixes[1]= new NameFixTuple(UNUSED_CODE_SECTION_DESCRIPTION, new UnusedCodeMultiFix(true, true, true, false, true, true));	
-					fMultiFixes[2]= new NameFixTuple(J2SE_5_0_SECTION_DESCRIPTION, new Java50MultiFix(true, true));
-					fMultiFixes[3]= new NameFixTuple(STRING_EXTERNALIZATION_SECTION_DESCRIPTION, new StringMultiFix(false, true));
+					fMultiFixes[0]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_CodeStyleSection_description, new CodeStyleMultiFix(false, true));
+					fMultiFixes[1]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_UnusedCodeSection_description, new UnusedCodeMultiFix(true, true, true, false, true, true));	
+					fMultiFixes[2]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_J2SE50Section_description, new Java50MultiFix(true, true));
+					fMultiFixes[3]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_StringExternalization_description, new StringMultiFix(false, true));
 					storeSettings();
 				} else {
-					fMultiFixes[0]= new NameFixTuple(CODE_STYLE_SECTION_DESCRIPTION, new CodeStyleMultiFix(section));
-					fMultiFixes[1]= new NameFixTuple(UNUSED_CODE_SECTION_DESCRIPTION, new UnusedCodeMultiFix(section));
-					fMultiFixes[2]= new NameFixTuple(J2SE_5_0_SECTION_DESCRIPTION, new Java50MultiFix(section));
-					fMultiFixes[3]= new NameFixTuple(STRING_EXTERNALIZATION_SECTION_DESCRIPTION, new StringMultiFix(section));
+					fMultiFixes[0]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_CodeStyleSection_description, new CodeStyleMultiFix(section));
+					fMultiFixes[1]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_UnusedCodeSection_description, new UnusedCodeMultiFix(section));
+					fMultiFixes[2]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_J2SE50Section_description, new Java50MultiFix(section));
+					fMultiFixes[3]= new NameFixTuple(MultiFixMessages.CleanUpRefactoringWizard_StringExternalization_description, new StringMultiFix(section));
 				}
 			}
 			return fMultiFixes;
@@ -262,8 +250,8 @@
 		super(refactoring, flags);
 		fShowCUPage= showCUPage;
 		fShowCleanUpPage= showCleanUpPage;
-		setDefaultPageTitle(CLEAN_UP_WIZARD_PAGE_TITLE);
-		setWindowTitle(CLEAN_UP_WIZARD_WINDOW_TITLE);
+		setDefaultPageTitle(MultiFixMessages.CleanUpRefactoringWizard_PageTitle);
+		setWindowTitle(MultiFixMessages.CleanUpRefactoringWizard_WindowTitle);
 		
 	}
 
@@ -272,14 +260,14 @@
 	 */
 	protected void addUserInputPages() {
 		if (fShowCUPage) {
-			SelectCUPage selectCUPage= new SelectCUPage(SELECT_COMPILATION_UNITS_PAGE_NAME);
-			selectCUPage.setMessage(SELECT_COMPILATION_UNITS_PAGE_MESSAGE);
+			SelectCUPage selectCUPage= new SelectCUPage(MultiFixMessages.CleanUpRefactoringWizard_SelectCompilationUnitsPage_name);
+			selectCUPage.setMessage(MultiFixMessages.CleanUpRefactoringWizard_SelectCompilationUnitsPage_message);
 			addPage(selectCUPage);
 		}
 		
 		if (fShowCleanUpPage){
-			SelectSolverPage selectSolverPage= new SelectSolverPage(SELECT_CLEAN_UPS_PAGE_NAME);
-			selectSolverPage.setMessage(SELECT_CLEAN_UPS_PAGE_MESSAGE);
+			SelectSolverPage selectSolverPage= new SelectSolverPage(MultiFixMessages.CleanUpRefactoringWizard_SelectCleanUpsPage_name);
+			selectSolverPage.setMessage(MultiFixMessages.CleanUpRefactoringWizard_SelectCleanUpsPage_message);
 			addPage(selectSolverPage);
 		}
 	}
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CodeStyleMultiFix.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CodeStyleMultiFix.java
index 5163518..eac4216 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CodeStyleMultiFix.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CodeStyleMultiFix.java
@@ -34,6 +34,7 @@
 import org.eclipse.jdt.core.dom.CompilationUnit;
 
 import org.eclipse.jdt.internal.corext.fix.CodeStyleFix;
+import org.eclipse.jdt.internal.corext.fix.FixMessages;
 import org.eclipse.jdt.internal.corext.fix.IFix;
 import org.eclipse.jdt.internal.corext.fix.CodeStyleFix.TupleForNonStaticAccess;
 import org.eclipse.jdt.internal.corext.fix.CodeStyleFix.TupleForUnqualifiedAccess;
@@ -46,9 +47,6 @@
  */
 public class CodeStyleMultiFix extends AbstractMultiFix {
 
-	private static final String CHANGE_NON_STATIC_ACCESS_TO_STATIC_MULTI_FIX_DESCRIPTION= MultiFixMessages.CodeStyleMultiFix_ChangeNonStaticAccess_description;
-	private static final String ADD_THIS_QUALIFIER_MULTI_FIX_DESCRIPTION= MultiFixMessages.CodeStyleMultiFix_AddThisQualifier_description;
-	
 	private static final String CHANGE_NON_STATIC_ACCESS_TO_STATIC_SETTINGS_ID= "ChangeNonStaticAccessToStatic"; //$NON-NLS-1$
 	private static final String ADD_THIS_QUALIFIER_SETTINGS_ID= "AddThisQualifier"; //$NON-NLS-1$
 	
@@ -96,13 +94,15 @@
 		ICompilationUnit cu= (ICompilationUnit)compilationUnit.getJavaElement();
 		TupleForUnqualifiedAccess[] nonQualifiedAccesses= (TupleForUnqualifiedAccess[])bindingTuples.toArray(new TupleForUnqualifiedAccess[bindingTuples.size()]);
 		TupleForNonStaticAccess[] nonStaticAccesses= (TupleForNonStaticAccess[])nonStaticTuples.toArray(new TupleForNonStaticAccess[nonStaticTuples.size()]);
-		return new CodeStyleFix(CodeStyleFix.ADD_THIS_QUALIFIER, cu, nonQualifiedAccesses, nonStaticAccesses);
+		return new CodeStyleFix(FixMessages.CodeStyleFix_AddThisQualifier_description, cu, nonQualifiedAccesses, nonStaticAccesses);
 	}
 
 	public Map getRequiredOptions() {
 		Map options= new Hashtable();
-		if (fAddThisQualifier)
+		if (fAddThisQualifier) {
 			options.put(JavaCore.COMPILER_PB_UNQUALIFIED_FIELD_ACCESS, JavaCore.WARNING);
+			options.put(JavaCore.COMPILER_PB_MAX_PER_UNIT, "350"); //$NON-NLS-1$
+		}
 		if (fChangeNonStaticAccessToStatic)
 			options.put(JavaCore.COMPILER_PB_INDIRECT_STATIC_ACCESS, JavaCore.WARNING);
 		return options;
@@ -114,7 +114,7 @@
 		composite.setLayout(new GridLayout(1, true));
 		
 		Button addThisQualifier= new Button(composite, SWT.CHECK);
-		addThisQualifier.setText(ADD_THIS_QUALIFIER_MULTI_FIX_DESCRIPTION);
+		addThisQualifier.setText(MultiFixMessages.CodeStyleMultiFix_AddThisQualifier_description);
 		addThisQualifier.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		addThisQualifier.setSelection(fAddThisQualifier);
 		addThisQualifier.addSelectionListener(new SelectionAdapter() {
@@ -124,7 +124,7 @@
 		});
 		
 		Button removeNonStaticAccess= new Button(composite, SWT.CHECK);
-		removeNonStaticAccess.setText(CHANGE_NON_STATIC_ACCESS_TO_STATIC_MULTI_FIX_DESCRIPTION);
+		removeNonStaticAccess.setText(MultiFixMessages.CodeStyleMultiFix_ChangeNonStaticAccess_description);
 		removeNonStaticAccess.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removeNonStaticAccess.setSelection(fChangeNonStaticAccessToStatic);
 		removeNonStaticAccess.addSelectionListener(new SelectionAdapter() {
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/Java50MultiFix.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/Java50MultiFix.java
index dfb1c78..946eeae 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/Java50MultiFix.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/Java50MultiFix.java
@@ -49,9 +49,6 @@
  */
 public class Java50MultiFix extends AbstractMultiFix {
 
-	private static final String ADD_MISSING_DEPRECATED_ANNOTATION_MULTI_FIX_DESCRIPTION= MultiFixMessages.Java50MultiFix_AddMissingDeprecated_description;
-	private static final String ADD_MISSING_OVERRIDE_ANNOTATION_MULTI_FIX_DESCRIPTION= MultiFixMessages.Java50MultiFix_AddMissingOverride_description;
-	
 	private static final String ADD_DEPRICATED_ANNOTATION_SETTINGS_ID= "AddDepricatedAnnotation"; //$NON-NLS-1$
 	private static final String ADD_OVERRIDE_ANNOTATION_SETTINGS_ID= "AddOverrideAnnotation"; //$NON-NLS-1$
 	
@@ -128,7 +125,7 @@
 		composite.setLayout(new GridLayout(1, true));
 		
 		Button addOverrid= new Button(composite, SWT.CHECK);
-		addOverrid.setText(ADD_MISSING_OVERRIDE_ANNOTATION_MULTI_FIX_DESCRIPTION);
+		addOverrid.setText(MultiFixMessages.Java50MultiFix_AddMissingOverride_description);
 		addOverrid.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		addOverrid.setSelection(fAddOverrideAnnotation);
 		addOverrid.addSelectionListener(new SelectionAdapter() {
@@ -138,7 +135,7 @@
 		});
 		
 		Button addDepricated= new Button(composite, SWT.CHECK);
-		addDepricated.setText(ADD_MISSING_DEPRECATED_ANNOTATION_MULTI_FIX_DESCRIPTION);
+		addDepricated.setText(MultiFixMessages.Java50MultiFix_AddMissingDeprecated_description);
 		addDepricated.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		addDepricated.setSelection(fAddDepricatedAnnotation);
 		addDepricated.addSelectionListener(new SelectionAdapter() {
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/MultiFixMessages.properties b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/MultiFixMessages.properties
index 26857e1..2b1add2 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/MultiFixMessages.properties
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/MultiFixMessages.properties
@@ -1,26 +1,26 @@
-StringMultiFix_AddMissingNonNls_description=Add missing '$NON-NLS$' tag
-StringMultiFix_RemoveUnnecessaryNonNls_description=Remove unnecessary '$NON-NLS$' tag
+StringMultiFix_AddMissingNonNls_description=&Add missing '$NON-NLS$' tag
+StringMultiFix_RemoveUnnecessaryNonNls_description=&Remove unnecessary '$NON-NLS$' tag
 
-UnusedCodeMultiFix_RemoveUnusedVariable_description=Remove declaration of unused local variable and assignments without possible side effects
-UnusedCodeMultiFix_RemoveUnusedField_description=Remove declaration of unused private field and assignments without possible side effects
-UnusedCodeMultiFix_RemoveUnusedType_description=Remove unused private types
-UnusedCodeMultiFix_RemoveUnusedConstructor_description=Remove unused private constructors
-UnusedCodeMultiFix_RemoveUnusedMethod_description=Remove unused private methods
-UnusedCodeMultiFix_RemoveUnusedImport_description=Remove unused import
+UnusedCodeMultiFix_RemoveUnusedVariable_description=Remove declaration of unused &local variable and assignments without possible side effects
+UnusedCodeMultiFix_RemoveUnusedField_description=Remove declaration of unused private &field and assignments without possible side effects
+UnusedCodeMultiFix_RemoveUnusedType_description=Remove unused private &types
+UnusedCodeMultiFix_RemoveUnusedConstructor_description=Remove unused private &constructors
+UnusedCodeMultiFix_RemoveUnusedMethod_description=Remove unused private &methods
+UnusedCodeMultiFix_RemoveUnusedImport_description=Remove unused &import
 
-CodeStyleMultiFix_ChangeNonStaticAccess_description=Change access to static using declaring type
-CodeStyleMultiFix_AddThisQualifier_description=Add 'this' qualifier to unqualified field accesses
+CodeStyleMultiFix_ChangeNonStaticAccess_description=C&hange access to static using declaring type
+CodeStyleMultiFix_AddThisQualifier_description=Add 'this' &qualifier to unqualified field accesses
 
-Java50MultiFix_AddMissingDeprecated_description=Add missing @Deprecated annotation
-Java50MultiFix_AddMissingOverride_description=Add missing @Override annotation
+Java50MultiFix_AddMissingDeprecated_description=Add missing @&Deprecated annotation
+Java50MultiFix_AddMissingOverride_description=Add missing @&Override annotation
 
-CleanUpRefactoringWizard_SelectCleanUpsPage_message=Select the code clean ups to be applied to the selected Java elements.
-CleanUpRefactoringWizard_SelectCompilationUnitsPage_message=Select compilation units on which you want to apply the code clean ups. You can select individual code clean ups on the next page.
-CleanUpRefactoringWizard_SelectCleanUpsPage_name=Select clean ups Page
-CleanUpRefactoringWizard_SelectCompilationUnitsPage_name=Select Compilation units Page
-CleanUpRefactoringWizard_WindowTitle=Code Clean Up
-CleanUpRefactoringWizard_PageTitle=Code Clean Up
-CleanUpRefactoringWizard_CodeStyleSection_description=Code style
-CleanUpRefactoringWizard_J2SE50Section_description=J2SE 5.0
-CleanUpRefactoringWizard_UnusedCodeSection_description=Unused code
-CleanUpRefactoringWizard_StringExternalization_description=String externalization
+CleanUpRefactoringWizard_SelectCleanUpsPage_message=Select cleanup options and apply them to the selected compilation units.
+CleanUpRefactoringWizard_SelectCompilationUnitsPage_message=Select compilation units on which you want to apply the cleanups. You can select individual cleanups on the next page.
+CleanUpRefactoringWizard_SelectCleanUpsPage_name=Select cleanups Page
+CleanUpRefactoringWizard_SelectCompilationUnitsPage_name=Select Compilation Units Page
+CleanUpRefactoringWizard_WindowTitle=Clean up
+CleanUpRefactoringWizard_PageTitle=Clean up
+CleanUpRefactoringWizard_CodeStyleSection_description=Code &style
+CleanUpRefactoringWizard_J2SE50Section_description=&J2SE 5.0
+CleanUpRefactoringWizard_UnusedCodeSection_description=&Unused code
+CleanUpRefactoringWizard_StringExternalization_description=String &externalization
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/StringMultiFix.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/StringMultiFix.java
index 1027735..cf9283d 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/StringMultiFix.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/StringMultiFix.java
@@ -51,9 +51,6 @@
 	private static final String REMOVE_NLS_TAG_SETTINGS_ID= "RemoveNlsTag"; //$NON-NLS-1$
 	private static final String ADD_NLS_TAG_SETTINGS_ID= "AddNlsTag"; //$NON-NLS-1$
 	
-	private static final String ADD_NON_NLS_TAG= MultiFixMessages.StringMultiFix_AddMissingNonNls_description;
-	private static final String REMOVE_NON_NLS_TAG= MultiFixMessages.StringMultiFix_RemoveUnnecessaryNonNls_description;
-	
 	private boolean fAddNlsTag;
 	private boolean fRemoveNlsTag;
 
@@ -89,7 +86,7 @@
 				if (edit != null) {
 					if (result == null) 
 						result= new CompilationUnitChange("", cu); //$NON-NLS-1$
-					TextChangeCompatibility.addTextEdit(result, ADD_NON_NLS_TAG, edit);
+					TextChangeCompatibility.addTextEdit(result, MultiFixMessages.StringMultiFix_AddMissingNonNls_description, edit);
 				}
 			}
 			if (fRemoveNlsTag && problem.getID() == IProblem.UnnecessaryNLSTag) {
@@ -99,7 +96,7 @@
 					if (edit != null) {
 						if (result == null)
 							result= new CompilationUnitChange("", cu); //$NON-NLS-1$
-						TextChangeCompatibility.addTextEdit(result, REMOVE_NON_NLS_TAG, edit);
+						TextChangeCompatibility.addTextEdit(result, MultiFixMessages.StringMultiFix_RemoveUnnecessaryNonNls_description, edit);
 					}
 				}
 			}
@@ -123,7 +120,7 @@
 		composite.setLayout(new GridLayout(1, true));
 		
 		Button addNLSTag= new Button(composite, SWT.CHECK);
-		addNLSTag.setText(ADD_NON_NLS_TAG);
+		addNLSTag.setText(MultiFixMessages.StringMultiFix_AddMissingNonNls_description);
 		addNLSTag.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		addNLSTag.setSelection(fAddNlsTag);
 		addNLSTag.addSelectionListener(new SelectionAdapter() {
@@ -133,7 +130,7 @@
 		});
 		
 		Button removeNLSTag= new Button(composite, SWT.CHECK);
-		removeNLSTag.setText(REMOVE_NON_NLS_TAG);
+		removeNLSTag.setText(MultiFixMessages.StringMultiFix_RemoveUnnecessaryNonNls_description);
 		removeNLSTag.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removeNLSTag.setSelection(fRemoveNlsTag);
 		removeNLSTag.addSelectionListener(new SelectionAdapter() {
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/UnusedCodeMultiFix.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/UnusedCodeMultiFix.java
index 7fe20a7..adb99f6 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/UnusedCodeMultiFix.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/UnusedCodeMultiFix.java
@@ -49,13 +49,6 @@
  */
 public class UnusedCodeMultiFix extends AbstractMultiFix {
 
-	private static final String REMOVE_UNUSED_LOCAL_VARIABLE_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedVariable_description;
-	private static final String REMOVE_UNUSED_FIELD_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedField_description;
-	private static final String REMOVE_UNUSED_PRIVATE_TYPES_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedType_description;
-	private static final String REMOVE_UNUSED_PRIVATE_CONSTRUCTORS_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedConstructor_description;
-	private static final String REMOVE_UNUSED_PRIVATE_METHODS_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedMethod_description;
-	private static final String REMOVE_UNUSED_IMPORT_MULTI_FIX_DESCRIPTION= MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedImport_description;
-	
 	private static final String REMOVE_UNUSED_PRIVATE_CONSTRUCTORS_SETTINGS_ID= "RemoveUnusedPrivateConstructors"; //$NON-NLS-1$
 	private static final String REMOVE_UNUSED_IMPORTS_SETTINGS_ID= "RemoveUnusedImports"; //$NON-NLS-1$
 	private static final String REMOVE_UNUSED_PRIVATE_METHODES_SETTINGS_ID= "RemoveUnusedPrivateMethods"; //$NON-NLS-1$
@@ -155,7 +148,7 @@
 		composite.setLayout(new GridLayout(1, true));
 		
 		Button removeUnusedImport= new Button(composite, SWT.CHECK);
-		removeUnusedImport.setText(REMOVE_UNUSED_IMPORT_MULTI_FIX_DESCRIPTION);
+		removeUnusedImport.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedImport_description);
 		removeUnusedImport.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removeUnusedImport.setSelection(fRemoveUnusedImports);
 		removeUnusedImport.addSelectionListener(new SelectionAdapter() {
@@ -165,7 +158,7 @@
 		});
 		
 		Button removePrivateMethods= new Button(composite, SWT.CHECK);
-		removePrivateMethods.setText(REMOVE_UNUSED_PRIVATE_METHODS_MULTI_FIX_DESCRIPTION);
+		removePrivateMethods.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedMethod_description);
 		removePrivateMethods.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removePrivateMethods.setSelection(fRemoveUnusedPrivateMethods);
 		removePrivateMethods.addSelectionListener(new SelectionAdapter() {
@@ -175,7 +168,7 @@
 		});
 		
 		Button removePrivateConstructors= new Button(composite, SWT.CHECK);
-		removePrivateConstructors.setText(REMOVE_UNUSED_PRIVATE_CONSTRUCTORS_MULTI_FIX_DESCRIPTION);
+		removePrivateConstructors.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedConstructor_description);
 		removePrivateConstructors.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removePrivateConstructors.setSelection(fRemoveUnusedPrivateConstructors);
 		removePrivateConstructors.addSelectionListener(new SelectionAdapter() {
@@ -185,7 +178,7 @@
 		});
 		
 		Button removePrivateType= new Button(composite, SWT.CHECK);
-		removePrivateType.setText(REMOVE_UNUSED_PRIVATE_TYPES_MULTI_FIX_DESCRIPTION);
+		removePrivateType.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedType_description);
 		removePrivateType.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removePrivateType.setSelection(fRemoveUnusedPrivateTypes);
 		removePrivateType.addSelectionListener(new SelectionAdapter() {
@@ -195,7 +188,7 @@
 		});
 		
 		Button removePrivateFields= new Button(composite, SWT.CHECK);
-		removePrivateFields.setText(REMOVE_UNUSED_FIELD_MULTI_FIX_DESCRIPTION);
+		removePrivateFields.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedField_description);
 		removePrivateFields.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removePrivateFields.setSelection(fRemoveUnusedPrivateFields);
 		removePrivateFields.addSelectionListener(new SelectionAdapter() {
@@ -205,7 +198,7 @@
 		});
 		
 		Button removeLocals= new Button(composite, SWT.CHECK);
-		removeLocals.setText(REMOVE_UNUSED_LOCAL_VARIABLE_MULTI_FIX_DESCRIPTION);
+		removeLocals.setText(MultiFixMessages.UnusedCodeMultiFix_RemoveUnusedVariable_description);
 		removeLocals.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));
 		removeLocals.setSelection(fRemoveUnusedLocalVariables);
 		removeLocals.addSelectionListener(new SelectionAdapter() {
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/newsourcepage/DialogPackageExplorerActionGroup.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/newsourcepage/DialogPackageExplorerActionGroup.java
index ad639ab..e986827 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/newsourcepage/DialogPackageExplorerActionGroup.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/newsourcepage/DialogPackageExplorerActionGroup.java
@@ -259,7 +259,11 @@
      * @see IClasspathInformationProvider
      */
     public ClasspathModifierAction getAction(int type) {
-        return fActions[type];
+    	for (int i= 0; i < fActions.length; i++) {
+			if (fActions[i].getOperation().getTypeId() == type)
+				return fActions[i];
+		}
+    	throw new ArrayIndexOutOfBoundsException();
     }
     
     /**