caretOffset[0] += beginning;
caretOffset[0]= caretRelativeToParagraphOffset ? caretOffset[0] + beginning : caret + beginning;
	private void jdocWrapParagraphFromLine(IDocument document, int line, int[] caretOffset, boolean always) throws BadLocationException {		String indent= jdocExtractLinePrefix(document, line);		if (!always) {			if (!indent.trim().startsWith("*")) //$NON-NLS-1$				return;			if (indent.trim().startsWith("*/")) //$NON-NLS-1$				return;			if (!isLineTooLong(document, line) && !isLineTooShort(document, line))				return;		}		int caret= caretOffset[0];		int caretLine= document.getLineOfOffset(caret);		int lineOffset= document.getLineOffset(line);		int paragraphOffset= lineOffset + indent.length();		caret -= paragraphOffset;		StringBuffer buffer= new StringBuffer();		int currentLine= line;		while (line == currentLine || isJavaDocLine(document, currentLine)) {						if (buffer.length() != 0 && !Character.isWhitespace(buffer.charAt(buffer.length() - 1))) {				buffer.append(' ');				if (currentLine <= caretLine)					++caret;			}			String string= getLineContents(document, currentLine);						buffer.append(string);			currentLine++;		}		String paragraph= buffer.toString();		if (paragraph.trim().length() == 0)			return;		caretOffset[0]= caret;		String delimiter= document.getLineDelimiter(0);		String wrapped= formatParagraph(paragraph, caretOffset, indent, delimiter, getMargin());		int beginning= document.getLineOffset(line);		int end= document.getLineOffset(currentLine);		document.replace(beginning, end - beginning, wrapped.toString());		caretOffset[0] += beginning;	}