Bug 64971 Code manipulation actions - insertion point after an existing method will insert at the end instead
I am using Generate Delegate Methods. I want to specify the position of the newly generated methods. Any combination for insertion point works (cursor position, at the beginning, at the end) except when I want to insert the new methods after any existing method. If I choose this option they will get positioned at the end of the file rather than being located after the method I chose in the dialog. Build id: 200405290105
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/SourceActionDialog.java
fLabels.add(ActionMessages.getString("SourceActionDialog.last_method")); 
		if (hasCursorPositionElement(fEditor, members, fInsertPositions)) {
			fLabels.add(ActionMessages.getString("SourceActionDialog.cursor")); 
			fCurrentPositionIndex= 2;
		}
		
		for (int i = 0; i < methods.length; i++) {
			IMethod curr= methods[i];
			String methodLabel= JavaElementLabels.getElementLabel(curr, JavaElementLabels.M_PARAMETER_TYPES);
			fLabels.add(ActionMessages.getFormattedString("SourceActionDialog.after", methodLabel)); 
			fInsertPositions.add(findSibling(curr, members));
		}
		fInsertPositions.add(null);
	}
	
	private boolean asBoolean(String string, boolean defaultValue) {
		if (string != null) {
			return StringConverter.asBoolean(string, defaultValue);
		}
		return defaultValue;
	}
	private int asInt(String string, int defaultValue) {
		if (string != null) {
			return StringConverter.asInt(string, defaultValue);
		}
		return defaultValue;
	}
	private IJavaElement findSibling(IMethod curr, IJavaElement[] members) throws JavaModelException {
		IJavaElement res= null;
		int methodStart= curr.getSourceRange().getOffset();