Index: model/org/eclipse/jdt/internal/core/CreateFieldOperation.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/CreateFieldOperation.java,v retrieving revision 1.26 diff -u -r1.26 CreateFieldOperation.java --- model/org/eclipse/jdt/internal/core/CreateFieldOperation.java 8 Apr 2005 20:30:28 -0000 1.26 +++ model/org/eclipse/jdt/internal/core/CreateFieldOperation.java 17 May 2005 15:36:07 -0000 @@ -11,6 +11,7 @@ package org.eclipse.jdt.internal.core; import org.eclipse.jdt.core.ICompilationUnit; +import org.eclipse.jdt.core.IField; import org.eclipse.jdt.core.IJavaElement; import org.eclipse.jdt.core.IJavaModelStatus; import org.eclipse.jdt.core.IJavaModelStatusConstants; @@ -71,11 +72,19 @@ protected void initializeDefaultPosition() { IType parentElement = getType(); try { - IJavaElement[] elements = parentElement.getFields(); - if (elements != null && elements.length > 0) { - createAfter(elements[elements.length - 1]); + IField[] fields = parentElement.getFields(); + if (fields != null && fields.length > 0) { + final IField lastField = fields[fields.length - 1]; + if (parentElement.isEnum()) { + IField field = lastField; + if (!field.isEnumConstant()) { + createAfter(lastField); + } + } else { + createAfter(lastField); + } } else { - elements = parentElement.getChildren(); + IJavaElement[] elements = parentElement.getChildren(); if (elements != null && elements.length > 0) { createBefore(elements[0]); }