Bug 93564 Preference setting for @Override annotation
20050503 The story for adding the @Override annotation is currently abit confusing. Only the override dialog offers to add the annotation, all other override actions (quick fix, code assist) don't add it. A code style preference setting should be added to be used by all of them and the override wizatd checkbox removed. Requesting PMC approval for new the preference constant /** * A named preference that controls whether to add a override annotation for newly created methods * <p> * Value is of type <code>Boolean</code>. * </p> * @since 3.1 */ PreferenceConstants.CODEGEN_USE_OVERRIDE_ANNOTATION
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/AnonymousTypeCompletionProposal.java
buffer.append("public class "); 
			buffer.append(dummyName);
			if (fDeclaringType.isInterface())
				buffer.append(" implements "); 
			else
				buffer.append(" extends "); 
			buffer.append(fDeclaringType.getFullyQualifiedName('.'));
			int start= buffer.length();
			buffer.append("{"); 
			buffer.append(lineDelim);
			buffer.append(lineDelim);
			buffer.append("}"); 
			workingCopy.getBuffer().setContents(buffer.toString());
			JavaModelUtil.reconcile(workingCopy);
			final ASTParser parser= ASTParser.newParser(AST.JLS3);
			parser.setResolveBindings(true);
			parser.setSource(workingCopy);
			parser.setProject(workingCopy.getJavaProject());
			final CompilationUnit unit= (CompilationUnit) parser.createAST(new NullProgressMonitor());
			IType dummyType= workingCopy.getType(dummyName);
			ITypeBinding binding= null;
			final AbstractTypeDeclaration declaration= (AbstractTypeDeclaration) ASTNodes.getParent(NodeFinder.perform(unit, dummyType.getNameRange()), AbstractTypeDeclaration.class);
			if (declaration != null) {
				binding= declaration.resolveBinding();
				if (binding != null) {
					IMethodBinding[] bindings= StubUtility2.getOverridableMethods(unit.getAST(), binding, true);
					CodeGenerationSettings settings= JavaPreferencesSettings.getCodeGenerationSettings(fDeclaringType.getJavaProject());
					String[] keys= null;
					boolean annotations= false;
					if (!fDeclaringType.isInterface() && !fDeclaringType.isAnnotation()) {